本发明涉及一种网络游戏外挂的识别方法。
背景技术:
网络游戏是指通过互联网登录后可以多人在线进行的游戏,游戏客户端可以是台式机、笔记本、浏览器、手机、平板电脑、vr设备等。
游戏外挂是指在网络游戏中通过外挂程序、辅助软件、脚本等工具谋求以非正常方式获取虚拟物品的行为。市面上存在大量游戏外挂工作室或从业人员,通过交易虚拟物品而获利。游戏外挂直接影响游戏玩家平衡,导致游戏通胀快速放大,外挂非法牟利给游戏运营商带来巨大损失。
神经网络算法是一种学习型算法,包括有监督学习和无监督学习。其中有监督学习的算法结构一般分为输入层(inputlayer)、隐藏层(hiddenlayer)、输出层(outputlayer),如图1所示,输入层负责接受特征变量传参;隐藏层负责计算传参,是算法的学习机构,通过训练不断调整并最终确定各变量权重值,输出层负责输出分类结果。
技术实现要素:
本发明的目的在于提供一种网络游戏外挂的识别方法,基于大数据基础通过算法学习外挂行为特征实现自动识别外挂。
本发明一种网络游戏外挂的识别方法,包括如下步骤:
步骤1、从游戏账号中筛选出一定数量包括外挂账号和非外挂账号的样本账号,随机筛选一部分的外挂账号和非外挂账号作为训练知识库;剩下的外挂账号和非外挂账号作为验证知识库,对所有训练知识库和验证知识库中的账号都标注为外挂账号还是非外挂账号,后续算法将基于该标注来强化特征变量对应的权重;
步骤2、采集上述样本账号的游戏行为数据,提取出任务日均参与次数、游戏币获得数、达到最高级所用时间、游戏币流通账号数、游戏币流通地点数、游戏币流通次数、游戏币盈余量的统计值作为能区分外挂与否的特征数据,将该特征数据作为样本的特征变量xi,i为特征变量序号:
步骤3、根据神经网络算法学习训练知识库,开始学习时,先将一个样本账号的样本特征变量xi与对应权重wi作为激励函数
训练前样本外挂账号被标记为1,非外挂账号标记为0,与期望输出信号值si存在误差ei,若样本账号为外挂账号,则误差ei=1-si;若样本账号为非外挂账号,则ei=si,当误差ei不超过预置的期望误差e时,该样本账号学习结束,执行下一个样本账号的学习过程,否则重复上述学习过程,直至训练知识库的所有样本账号学习完成后,得到最终的权重wi,其中wi∈(-1,1);
步骤4、将验证知识库的所有样本账号的能区分外挂与否的特征数据输入计算,将输出的计算结果验证该样本账号的标注,如果此时验证准确率达到预定要求,训练知识库学习结束,否则,需要重新对训练知识库进行学习,重复步骤3,直到验证准确率达到预定要求,此时权重wi已确定;
步骤5、输入待识别账号的特征数据以及权重,计算后输出结果,根据该结果可知该待识别账号是外挂账号或者非外挂账号。
本发明通过采集游戏行为数据,提取出任务日均参与次数、游戏币获得数、达到最高级所用时间、游戏币流通账号数、游戏币流通地点数、游戏币流通次数、游戏币盈余量的统计值作为能区分外挂与否的特征数据,将该特征数据作为样本的特征变量,然后建立包含外挂和非外挂账号特征信息的训练知识库和验证知识库,通过神经网络算法学习训练知识库,并用验证知识库验证识别准确率来调整权重,当验证通过权重确定后,即可用于自动识别外挂账号。
附图说明
图1为神经网络算法结构示意图;
图2为本发明外挂识别流程示意图;
图3为本发明学习过程示意图。
以下结合附图和实施例对本发明作进一步详述。
具体实施方式
本实施例只是本发明技术方案的应用实例之一。
本发明不受限于游戏客户端,无论是基于台式机、笔记本、浏览器、手机、平板电脑、vr设备等联网设备皆可适用。
本实施例所指的外挂主要表现为批量建号然后重复参与任务而获取大量游戏币,通过交易平台将游戏币卖出获利。
如图2所示,本发明一种网络游戏外挂的识别方法,具体包括如下步骤:
步骤1、从游戏账号中筛选出6017个样本账号,其中外挂账号3119个,非外挂账号2808个,随机筛选1810条外挂账号和1808条非外挂账号作为训练知识库;其他1309条外挂账号和1000条非外挂账号作为验证知识库,对所有训练知识库和验证知识库中的账号都标注为外挂账号还是非外挂账号,后续算法将基于该标注来强化特征变量对应的权重;
步骤2、采集上述样本账号的游戏行为数据,提取出任务日均参与次数、游戏币获得数、达到最高级所用时间、游戏币流通账号数、游戏币流通地点数、游戏币流通次数、游戏币盈余量(卖出-买进)的统计值作为能区分外挂与否的特征数据(如下表所示),将该特征数据作为样本的特征变量xi,i为特征变量序号:
步骤3、根据神经网络算法学习训练知识库,开始学习时,先将一个样本账号的样本特征变量xi与对应权重wi作为激励函数
训练前样本外挂账号被标记为1,非外挂账号标记为0,与期望输出信号值si存在误差ei,若样本账号为外挂账号,则误差ei=1-si;若样本账号为非外挂账号,则ei=si,当误差ei不超过预置的期望误差e时,该样本账号学习结束,执行下一个样本账号的学习过程,否则重复上述学习过程,直至训练知识库的所有样本账号学习完成后,得到最终的权重wi,其中wi∈(-1,1);
步骤4、将验证知识库的所有样本账号的能区分外挂与否的特征数据作为特征变量输入计算,将输出的计算结果验证该样本账号的标注,如果此时验证准确率达到预定要求,训练知识库学习结束,否则,需要重新对训练知识库进行学习,重复步骤3,直到验证准确率达到预定要求,此时权重wi已确定;
步骤5、输入待识别账号的特征数据以及权重,计算后输出结果,根据该结果可知该待识别账号是外挂账号或者非外挂账号。
本发明通过采集游戏行为数据,提取出任务日均参与次数、游戏币获得数、达到最高级所用时间、游戏币流通账号数、游戏币流通地点数、游戏币流通次数、游戏币盈余量的统计值作为能区分外挂与否的特征数据,将该特征数据作为样本的特征变量,然后建立包含外挂和非外挂账号特征信息的训练知识库和验证知识库,通过神经网络算法学习训练知识库,并用验证知识库验证识别准确率来调整权重,当验证通过权重确定后,即可用于自动识别外挂账号。
以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。