文章目录

  • 1.摘要
  • 2.引入
  • 3.游戏数据描述
    • 3.1 逆水寒中的游戏日志
    • 3.2 社交图分析
    • 3.3 行为序列
    • 3.4 角色属性构造
  • 4.MVAN模型
    • 4.1 multi-graph attention network
    • 4.2 behaviour attention network
    • 4.3 behaviour attention network
    • 4.4 Data Source Attention Network
  • 5.模型效果
    • 5.1 baseline 对比
    • 5.2 注意力权重的内在本质

1.摘要

论文:MVAN: Multi-view attention networks for real money trading detection in online games 里分析了在网游中存在的真实金钱交易行为。(Real money trading)这种交易行为,用真实世界的货币交换虚拟世界中的资产,导致游戏经济的不平衡和贫富不均。

论文中主要提出了一种新的模型MVAN(Multi-view Attention Networks),通过利用多种数据源检测真实的金钱交易。

这个模型主要包括以下几个部分:

  • multi-graph attention:基于图结构
  • behaviour attention network:基于顶点内容(vertex content),也即是角色的行为序列
  • portrait attention network:基于角色属性(vertex attribute),也即是角色的性别,等级等等
  • data source attention network :多种不同的数据进行结合

这个模型主要用来分析游戏《逆水寒》里面的交易行为。

2.引入

在MMORPG游戏中,不同的角色会有不同的特征。例如外貌,性别,名字,等级等等。在这些游戏当中,玩家会在虚拟世界中追逐富有。这样一种需求,会催生出真实的金钱交易行为**(real money trading, RMT)**在RMT行为中,通常有三种不同的角色:

  • Gold Farmers(金农):通过使用自动化程序或雇佣低成本劳动力以获取虚拟商品。金农们作为一个团队一起工作来完成挑战性的任务,比如完成一个复杂的任务。
  • Gold Bankers(金币商):聚集了从金农中获得的虚拟物品,然后交易给金币购买者
  • Gold Buyers(金币购买者):从金币商中用真实的金钱购买大量物品。

这三种RMT行为的角色,被称为RMTers。

这种RMT行为,会危害游戏内的正常交易行为,同时会损害MMORPG游戏的声誉。如果要检测RMT的存在,有如下几个挑战点:

  • 需要大量人力:传统的检测方法需要大量的人力来标记该行为是否属于RMT行为
  • 标签不确定性:难以利用规则来确认禁止交易行为、不能观察的角色是否是RMTers
  • 组识别:大多数的方法目标是对不同的Gold Farmers(金农)进行独立检测
  • 不能快速反应

下图为交易行为的发生情况:

  • 图1(b)中,通常金币商-金币购买者中,存在真实金钱交易;金币商-金农,存在虚拟金钱收集
  • 图1(c)中,通过网络结构(network structure)、vertex attribute和vertex content,最后输出节点的label。

本论文的贡献有四个方面:

  • multi-view data sources:利用多种不同的数据结构来预测RMTers。
  • The MVAN:论文中提出的新模型,结合了多种不同的网络结构,同时引入了多个attention机制,最后把不同的loss进行相加,使得模型结构有所提升。
  • real evaluation:利用真实世界中的数据集来评估论文中的模型
  • 工业应用:把论文的模型应用到不同的游戏中,从而验证模型效果

3.游戏数据描述

3.1 逆水寒中的游戏日志

该游戏中有以下信息:

  • 时间戳:定义了事件发生的时间
  • 角色信息:包含角色的id,等级,金钱等等
  • log ID:定义活动的ID号,包括打猎ID,交易ID等
  • 目标角色的信息:即当前角色与其他角色有交互时,其他角色的信息
  • 其他细节信息

使用了逆水寒中共227,148个角色(时间跨度为11月1日到12月31日),其中:

gold farmers gold bankers gold buyers
12,529 1,549 2,737

3.2 社交图分析

构建了5个图:交易图、设备分享图、交友图、团队图、聊天图

  • 图(a):交易行为,有连接的点表示已经建立了交易行为
  • 图(b):有一部分角色进行过设备共享

同时,论文中把相邻1个节点的相关性图画出来:

  • 图(a):金农中,与金币商交易的行为相关性比较高
  • 图(b):金币商,与金币购买者聊天相关性较高
  • 图(c):金币购买者,与其他金农在共享设备方面相关性较高

3.3 行为序列

每一个角色的行为都包含一系列的事件信息,具体包含三个主要的特征:

  • event ID:事件ID,角色当前发生的事件,比如使用一个技能,获取一个物品
  • interval:间隔,事件之间的间隔
  • level:该角色的等级

下图展示了三个不同的RMTers的行为序列:

每个slot代表不同的事件,红色代表交易事件

  • 金农的行为是比较相似和简单的,因为金农通过继续接收和完成任务并定期将其转移给黄金银行家来获取虚拟资产。
  • 金币商和金币购买者的行为比金农的行为更复杂和更难以预测

3.4 角色属性构造

角色的属性之前就提过,包括等级,性别,游戏分数等等。

下图展示了RMTers在不同属性中的表现:

  • 金币购买者会花费更多的时间去捏脸
  • 金币商的虚拟资金会比较多
  • 金币购买者在等级上会比其他两个类型要高

4.MVAN模型

该模型主要由四个部分所构成,模型结构图如下:

这四个不同的结构包括:

  • multi-graph attention network:GPT网络图结构,同时加上attention mechanism
  • behaviour attention network:利用了Bi-LSTM,同时加上attention mechanism
  • portrait attention network:使用了CNN模型,同时加上attention mechanism
  • data source attention network:把上面三个网络进行结构,构造输出

4.1 multi-graph attention network

在GAT网络中,使用embedding矩阵 M e m d c M_{emd}^c Memdc来对节点 c i c_i ci进行向量化。同时使用5个维度的向量来表征边状态和权重。这5个维度就是上面所说的交易图(ta)、设备分享图(ds)、交友图(fr)、团队图(tm)、聊天图(ct),从而得到每个节点的表征:

其中 i i ij j j表示不同的角色节点。

看上面这张图已经比较明显可以解释过程了。这部分首先把每个节点特征向量化为 h i ⃗ \vec{h_i} hi

,同时计算节点 i i i和节点 j j j之间的关系,即 W g h i ⃗ ∣ ∣ W g h j ⃗ W_g\vec{h_i}||W_g\vec{h_j} Wghi

Wghj

。然后再利用softmax求出对应的注意力权重 a i j t a_{ij}^t aijt。唯一和GAT不同的地方在于,这篇论文引入了新的5维度向量 e i j t ⃗ \vec{e_{ij}^t} eijt

,使得模型学习到更多的信息。

4.2 behaviour attention network

这里主要使用了两个Bi-LSTM模型,其实也就是一个双重Attention mechanism

第一个Bi-LSTM称为Event Encoder,它的输入为 e i j , j ∈ E i e_{ij},j \in E_i eij,jEi,其中 i i i为某个任务(quest), j j j为该任务中发生的事件(event)。具体的任务和事件如下图:

之后通过Bi-LSTM进行转换,然后利用attention转换得到基于事件的输出。

第二个Bi-LSTM主要针对的是任务(quest)的输入,把第一个Bi-LSTM得到的事件输出进行输入后,再次通过一个attention mechanism进行转换得到最后的输出。

假设有任务Q个,每个任务就有E个事件,这样就构成了两个Bi-LSTM网络了。

综上所述,这两个attention都比较简单。

4.3 behaviour attention network

这里主要使用了CNN模型,输入的是角色的属性,输入构成成 T ∗ P T * P TP的形式。 T T T为时间, P P P为对应的角色属性。

4.4 Data Source Attention Network

最后把三种输出进行拼接:

其中 n s ns nsv c vc vcv a va va分别对应于三个网络结构的输出,然后再引入一次attention mechanism形成三个不同的注意力权重 a a a,最后把注意力权重进行拼接得到 V d s ⃗ \vec{V_{ds}} Vds

然后利用交叉熵进行输出:

5.模型效果

5.1 baseline 对比


该模型在三个不同的RMTers识别中,都达到了最优的效果。

5.2 注意力权重的内在本质

论文中展示了几个attention中的权重:

  • 图a中展示:虚拟金钱Virtual money这个特征可以有效挖掘RMTers
  • 图b中展示Quest:金币农获得更多的物品(item)和杀更多怪兽(monster)
  • 图b中展示Event:PVE这个事件在金农中比较明显

下图为在图网络中的权重注意力矩阵:

它们分别有以下几个高相关性的特征:

  • 金农;设备共享
  • 金币商:聊天关系
  • 金币购买者:朋友关系

分析游戏中的金钱交易:Multi-view Attention Networks相关推荐

  1. 国际战略中aaa模式_AAA游戏中的微交易将继续存在(但仍然很糟糕)

    国际战略中aaa模式 This weekend, while most of the technology and gaming press wasn't working on anything pa ...

  2. 深度分析游戏中的随机概率

    这段时间公司开发的游戏上线测试,许多玩家在抽卡时抱怨脸黑,很难抽到所需要的卡牌,而又有一部分玩家反应运气好能连着抽到紫卡,检查了下随机相关逻辑代码,并没有找出问题所在,玩家运气好与坏只是觉得真有可能是 ...

  3. 从游戏中学习产品设计1:充值篇

    游戏,是人类文明的最基本组成部分之一,已知的最古老的数字游戏,是早在公元前15世纪到公元前11世纪的计数游戏<宝石棋>,第一部记述游戏的历史书是3000多年前希罗多德编著的<历史&g ...

  4. 从游戏中学习产品设计2:消费篇

    上一期,我们介绍了游戏中的诱导充值套路,没有看的朋友可点击 从游戏中学习产品设计1:充值篇!了解游戏中是如何引诱玩家充值的,今天我们来聊一聊游戏中的消费套路,上文介绍了游戏中的三类货币:金币,钱币和时 ...

  5. 《MA‑CRNN: a multi‑scale attention CRNN for Chinese text line recognition in natural scenes》论文阅读

    参考博文: CRNN的一个变种,可以读一读,看看相对于CRNN来说有什么变化?以及为什么? 文章目录 make decision step1:读摘要 step2:读Introduction step3 ...

  6. Dota游戏中的护甲分析

    摘要:Dota(Defence of the Ancients,远古的守护), 是指基于魔兽争霸3:冰封王座(暴雪娱乐公司出品)的多人即时对战自定义地图,可支持10个人同时连线游戏.Dota以对立的两 ...

  7. android的构成和工作流程,分析Android中View的工作流程

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 在分析View的工作流程时,需要先分析一个很重要的类,MeasureSpec.这个类在View的测量(Measure)过 ...

  8. 游戏中的卡片模态面板设计【1】—运用案例分析

    什么是卡片模态面板 1)什么是模态面板 模态面板是从属于应用程序主窗口的图形控制元素.它创建了一个模式--禁用主窗口但保持主窗口可见(主窗口作为背景,菜单.弹窗.二次确认等覆盖在上一层),通常可见的是 ...

  9. Fruit Ninja(水果忍者)游戏源代码下载、分析(中)---可运行Android,Ios,Window,Mac,Html5平台

    背景: 上一篇,已经实现了水果不断向上抛的效果和开始界面,这一篇我们将分析如何切水果,获得分数:运行demo需要配置好CocosEditor,暂不支持其他工具.demo是跨平台的,可移植运行andro ...

最新文章

  1. 深入揭秘 epoll 是如何实现 IO 多路复用的
  2. mac下安装brew下载非常慢解决方法
  3. 为何要清除浮动?如何清除?
  4. HDU 3651 A Simple Problem
  5. oracle ora12514错误,【ORACLE】提示ORA-12514错误处理
  6. 【Java与智能设备】Ch0402 Activity的生命周期
  7. RabbitMQ五种工作模式学习总结
  8. Can I insert a countdown timer in a Powerpoint presentation?
  9. 什么是ROM、EPROM、EEPROM、FLASH ROM、RAM?
  10. 【串口服务器】的桥接模式
  11. JPA之Specification复杂条件查询
  12. CSS 发明者 Håkon Wium Lie 访谈--csdn zhangxin09
  13. GPS定位(四)-经纬度格式转换-(互转 度转度分秒 度分秒转度……)
  14. 2022-8-03 第七小组 黄均睿 学习日记 (day27)线程2
  15. WordPress 网站怎么做会员中心功能【会员中心】
  16. 【Linux入门指北】Linux实验综合训练
  17. 【SpringBoot】:springboot整合FTP文件上传与下载功能
  18. 采用Tagged Pointer的字符串
  19. 腾讯云 云点播 JAVASDK上传
  20. python导入类中函数不能用_我可以使用本地类中导入模块中的函数吗?(Python)...

热门文章

  1. Android之Layout布局
  2. linux查看刷卡pos机_LINUX饭堂收费机/会员LINUX刷卡机/LINUX手持收费机
  3. 【自动驾驶中的卡尔曼滤波算法——无迹卡尔曼滤波的实现】
  4. uboot 2021.10源码分析(启动流程)
  5. springboot整合es7.12,实现数据聚合
  6. K8S篇-安装nfs插件
  7. 用html 做一个低调的邮箱名片
  8. docker-compose 固定容器IP地址
  9. vue中设置全屏背景
  10. 用函数判断是否为水仙花数