基于游戏虚拟社交空间的玩家时空序列预测
Last updated
Last updated
时间序列预测问题是一个经久不衰的问题,在游戏中针对整个游戏、服务器的相关指标,如物品、货币等的价值预测已经取得不错的效果,但是由于用户行为的随机性和动态性,针对用户的时间序列预测存在很多挑战。在这其中预测用户的在线时间对于分析用户的游戏模式及生命周期具有十分重要的意义。
在逆水寒等大型MMORPG,社交是维持用户游戏粘性的重要因素,因此游戏用户社交网络可以有效的提高用户在线时间预测的效果。图网络和时间序列预测结合的问题,如时空序列预测(spatial-temporal prediction)问题已经得到了广泛的研究,并且已经应用到交通流量、水电用量预测等服务中。在这里不同于时空序列预测问题,用户的社交图是动态变化的,同时用户的预测指标如在线时长也是动态变化的,因此基于动态社交图的用户在线时间预测问题存在许多挑战和重要的研究意义。
游戏中的社交图是多关系的同时也是动态变化的,如图1所示,设定 为 时间步时的游戏在线人数,每两个玩家之间可以存在 种关系(如聊天、交易、组队、好友等),每个玩家在该时间步可以得到 种属性值,因此每个时间步有这样的一个多关系的属性带权图 ,其中 表示节点集合(代表玩家), , 表示边的集合(代表了不同关系), 表示不同关系的带权邻接矩阵, 表示每个玩家的属性矩阵,其中包括玩家在该时间步的在线时长,如图2所示,玩家在线时长也是动态变化的。
基于社交网络的用户在线时长预测问题主要存在以下几个挑战:
如何将动态社交图和时间序列有效结合。
如何解决游戏过程中新用户的冷启动问题。
如何有效解决玩家当天没上线导致该玩家节点在当天聊天、组队、交易图中变成孤立点问题。
用户在线时间预测主要通过以下指标进行评估:
在线时间准确率:RMSE、MSE、R Squared
数据集按照天进行分割,其中每天数据包括下面五部分:用户该天属性数据(包括画像和在线时长)、该天聊天数据、该天交易数据、该天组队数据、该天好友数据。
用户属性数据
role_id
玩家id
login_cnt
当天登录次数
online_time
当天在线时间
total_yuan_bao
最新的累计兑换元宝数(用来筛选玩家)
server
服务器
role_class
职业
role_gender
性别
role_level
等级
create_time
账号创建时间
role_base_score
基础评分
role_talisman_score
法宝评分
role_skill_score
技能评分
role_practice_score
修炼评分
role_equip_score
装评
role_total_score
战斗力
role_wuxue_score
武学修为
not_binded_charged_yuanbao
不绑定元宝
hstb
元宝票
bdyb
绑定元宝
yin_liang
铜钱
yin_piao
交子
ck_yin_liang
仓库铜钱
bhgx
帮会贡献
sjtxjf
试剑天下积分
kjjf
科举积分
liang_shi
良师值
jj
军阶
ttsw
论文声望
role_cor
根骨
role_agi
身法
role_int
气海
role_sta
耐力
role_str
力量
finished_task_acm_cnt
累计完成任务次数
watch_movie_acm_pct_avg
累计观看剧情平均百分比
npc_interact_acm_tms
累计NPC交互次数
punish_cnt
被惩罚次数
f_bl_task_acm_num
累计完成的支线任务个数
acm_get_free_yuanbao_amt
玩家累计获得的免费元宝数
acm_get_recharge_yuanbao_amt
玩家累计获得的直充元宝数
acm_get_charge_yuanbao_amt
玩家累计获得的收费元宝数
acm_get_yl_amt
玩家累计获得的铜钱数
acm_get_yp_amt
玩家累计获得的交子数
acm_use_free_yuanbao_amt
玩家累计消耗的免费元宝数
acm_use_recharge_yuanbao_amt
玩家累计消耗直充元宝数
acm_use_charge_yuanbao_amt
玩家累计消耗的收费元宝数
acm_use_yl_amt
玩家累计消耗的铜钱数
acm_use_yp_amt
玩家累计消耗的交子数
learned_production_num
玩家已学习的生活技能数
lear
当前职业技能平均等级
该天聊天数据
playera
聊天发起者
playerb
聊天接受者
server
服务器id
count
聊天次数
该天交易数据
playera
交易发起者
playerb
交易收取者
server
服务器id
money
交易涉及金钱数
tradetype
交易类型
其中交易类型:
1-3为面对面交易:1正常交易,2乞讨,3赠与
4:摆摊
5:玩家商店
6:红包交易
该天组队数据
playera
组队玩家a
playerb
组队玩家b
server
服务器id
count
同在一个队伍次数
该天好友数据
playera
好友发起者
playerb
好友接受者
server
服务器id
status
状态,1=新增,0=删除
relationship
关系类型
sub_relationship_type
子关系类型
sub_relationship_value
子关系值
关系类型:
1-好友 2-师徒 6-临时好友 7-临时仇敌 8-仇敌 9-黑名单 10-别人加我为好友。
子关系类型/值对应:
如果主关系是师徒,子关系类型是2,子关系值true表示师傅,false表示徒弟。
如果主关系是好友,子关系类型是3,子关系值true表示双向好友,false表示单向好友。
如果主关系是仇敌,子关系类型是4,子关系值true表示该仇敌置顶,false表示未置顶。
Fuxi-UP团队针对该问题,从多任务学习角度,提出了通过Attention结合图数据的时空序列预测框架GMTL,工作已发表在CIKM'2019
Tao, Jianrong, Linxia Gong, Changjie Fan, Longbiao Chen, Dezhi Ye, and Sha Zhao. "GMTL: A GART Based Multi-task Learning Model for Multi-Social-Temporal Prediction in Online Games." In Proceedings of the 28th ACM International Conference on Information and Knowledge Management, pp. 2841-2849. ACM, 2019.
有任何问题,请联系 lihao01@corp.netease.com
基于社交网络的用户在线时间预测可以定义为:给定一个一段时间的多关系带属性的社交图序列,学习得到一个函数 预测未来一段时间每个玩家的在线时长属性。