基于水军检测模型构建方法和系统及水军检测方法

文档序号:6543577阅读:337来源:国知局
基于水军检测模型构建方法和系统及水军检测方法
【专利摘要】本发明涉及水军检测模型构建方法,包括步骤:对一组样本数据进行任务分割得到多个任务,平均特征抽取得到多个任务的训练样本集;多任务特征选择,得到多个任务的特征权重矩阵;设定一个阈值δ,判断特征权重矩阵中的一个列向量中的最大值是否大于阈值δ,如是,下一步;否则,放弃所述列向量,执行步骤5;将所述列向量添加到共享特征项集合中;判断特征权重矩阵中是否存在未与阈值δ进行比较的列向量,如是,执行步骤3;否则,下一步;输入新的训练数据集;计算得到线性分类值;设置水军阈值,使线性分类值大于水军阈值时判定其为水军。本发明利用多任务学习的方法建立水军检测模型,实现了方便快捷的识别出水军用户。
【专利说明】基于水军检测模型构建方法和系统及水军检测方法【技术领域】
[0001]本发明涉及水军检测方法,尤其涉及一种基于多任务学习的水军检测模型构建方法和系统及水军检测方法,属于网络安全领域。
【背景技术】
[0002]随着社交网络的普及,论坛已经成为最热门的上网应用之一。但网络论坛的开放性质决定了很难对论坛中的信息进行绝对严格的监管,这就导致论坛中出现了一批以获利为目的,蓄意散播某些言论的网络水军。从“7.23”动车事故天价赔偿事件到秦火火事件,网络水军对网络环境甚至社会秩序造成很严重的影响,可见,对网络水军的识别和监管,已经迫在眉睫。
[0003]传统的水军检测的机器学习的方法是建立一个统一的模型,采用的单一任务学习的方法,对于每一个任务都采用独立训练的模式。这种学习方式存在几方面的弊端:其一,训练集合中的样本只反映单个任务的信息,学习的结果往往受到特定任务的限制。例如,现在新浪微博对于水军的判断的标准和论坛的标准是不一样的,通过新浪微博的规则学习出来的水军判定模型,应用至其他论坛可能导致将正常用户误判为水军用户。其二,当训练集合中的样本量较少时,导致单一任务学习构造的模型存在一定的信息特征丢失。而传统方法通过过采样技术生成的新样本试图解决这一问题,但生成的新样本仍不能保证和原来样本的特征属性完全一致。

【发明内容】

[0004]本发明将多任务学习应用与水军检测问题中,以单一任务为标准,能够提取出各个任务学习过程中的共享用户特征信息,提高水军检测的精度。多任务学习和传统的单任务学习不同,它试图通过共享不同任务之间的信息构建一个联合的学习模型。一方面,训练集合中的样本均反映了单个任务的信息,训练集合中的样本存在一定的差异性,可以根据差异度建立多个学习任务,差异度相似的作为同一个任务,将这些任务同时学习,学习的过程中通过共享不同任务之间的信息,从而达到更好的学习效果;另一方面,对于特定数据样本较少的情况,通过融合其他相关任务的数据学习,从而对原始数据的信息进行补偿学习,避免信息特征丢失的情况。实际应用中也证明了通过使用相关任务的数据确实能够提高预测的精度。
[0005]本发明所要解决的技术问题是针对现有技术的不足,提供一种基于多任务学习的水军检测模型构建方法。
[0006]本发明解决上述技术问题的技术方案如下:一种水军检测模型构建方法,包括如下步骤:
[0007]步骤1:对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集;
[0008]步骤2:对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权重矩阵;
[0009]步骤3:设定一个阈值δ,判断所述特征权重矩阵中的一个列向量中的最大值是否大于阈值δ,如果是,执行步骤4 ;否则,放弃所述列向量,执行步骤5 ;
[0010]步骤4:将所述列向量添加到共享特征项集合中;
[0011]步骤5:判断特征权重矩阵中是否存在未与阈值δ进行比较的列向量,如果是,执行步骤3;否则,执行步骤6;
[0012]步骤6:输入新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将在集合中排列位置匹配的特征项集合在一起,得到新共享特征项集合;
[0013]步骤7:对新共享特征项集合通过感知器学习算法(Perceptron LearningAlgorithm)计算得到特征系数,通过计算共享特征项集合与特征系数的乘积得到标准线性分类值;
[0014]步骤8:根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建,结束。
[0015]本发明的有益效果是:本发明利用多任务学习的方法建立水军检测模型,实现了方便快捷的识别出水军用户。
[0016]在上述技术方案的基础上,本发明还可以做如下改进。
[0017]进一步,还包括水军检测模型测试过程,所述水军检测模型测试过程包括以下步骤:
[0018]步骤9:给定一组已知是水军的水军用户集合,采集水军用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量;
[0019]步骤10:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成水军用户低维的特征向量;
[0020]步骤11:结合水军用户低维的特征向量与步骤7中的特征系数计算得到水军用户的线性分类值;
[0021]步骤12:判断线性分类值是否大于水军阈值,如果是,执行下一步,否则,将水军阈值适当减小并重新设置,返回执行步骤9 ;
[0022]步骤13:给定一组已知不是水军的正常用户集合,采集正常用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量;
[0023]步骤14:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成用户低维的特征向量;
[0024]步骤15:结合正常用户低维的特征向量与步骤7中的特征系数计算得到正常用户的线性分类值;
[0025]步骤16:判断线性分类值是否小于水军阈值,如果是,执行下一步,否则,将水军阈值适当增大并重新设置,返回执行步骤9 ;
[0026]步骤17:完成对水军检测模型的测试,结束。
[0027]进一步,所述步骤2中采用求解正则化最小二乘法回归实现多任务特征选择。[0028]进一步,所述步骤I中的多个任务大小相同。
[0029]本发明所要解决的技术问题是针对现有技术的不足,提供一种基于多任务学习的水军检测模型构建系统。
[0030]本发明解决上述技术问题的技术方案如下:一种基于多任务学习的水军检测模型构建系统,包括:任务分割抽取模块、特征选择模块、阈值设定模块、匹配模块、线性分类值计算模块和水军模型模块;
[0031]所述任务分割抽取模块对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集;
[0032]所述特征选择模块对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权重矩阵;
[0033]所述阈值设定模块用于设定一个阈值δ,判断所述特征权重矩阵中的所有列向量中的最大值是否大于阈值I如果是,将所述列向量添加到共享特征项集合中;否则,放弃所述列向量;
[0034]所述匹配模块用于接收新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将位置匹配的特征项集合在一起,得到新共享特征项集合;
[0035]所述线性分类值计算模块对新共享特征项集合通过感知器学习算法(PerceptronLearning Algorithm)计算得到特征系数,计算共享特征项集合与特征系数的乘积得到线性分类值;
[0036]所述水军模型模块用于根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建。
[0037]本发明的有益效果是:本发明利用多任务学习的方法建立水军检测模型,实现了方便快捷的识别出水军用户。
[0038]在上述技术方案的基础上,本发明还可以做如下改进。
[0039]进一步,还包括特征提取模块;
[0040]所述特征提取模块用于接收给定一组已知水军特性的用户集合,采集用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量,并将特征向量发送到匹配模块;
[0041]所述匹配模块将特征向量与匹配模块中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成用户低维的特征向量并发送到线性分类值计算模块;
[0042]所述线性分类值计算模块结合用户低维的特征向量与线性分类值计算模块中的特征系数计算得到用户的线性分类值,并将线性分类值发送到水军模型模块;
[0043]所述水军模型模块判断线性分类值与水军阈值相比较,如果水军用户的线性分类值大于水军阈值,则无需调整水军阈值;如果水军用户的线性分类值小于水军阈值,将水军阈值适当减小并重新设置;如果正常用户的线性分类值小于水军阈值,则无需调整水军阈值;如果正常用户的线性分类值小于水军阈值,将水军阈值适当增大并重新设置。
[0044]进一步,所述特征选择模块中采用求解正则化最小二乘法回归实现多任务特征选择。
[0045]本发明所要解决的技术问题是针对现有技术的不足,提供一种基于多任务学习的水军检测方法。[0046]本发明解决上述技术问题的技术方案如下:一种水军检测方法,具体包括以下步骤:
[0047]步骤1:接收被测用户集合,采集被测用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到被测特征向量;
[0048]步骤2:将被测特征向量与匹配模块中共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成被测用户低维的特征向量;
[0049]步骤3:结合被测用户低维的特征向量与线性分类值计算模块中的特征系数计算得到被测用户的线性分类值;
[0050]步骤4:判断线性分类值是否大于水军阈值,如果是,判定被测用户为水军;否则,判定被测用户为正常用户;
[0051]步骤5:结束水军判断过程。
【专利附图】

【附图说明】
[0052]图1为本发明所述一种水军检测模型构建方法流程图;
[0053]图2为本发明所述所述水军检测模型测试流程图;
[0054]图3为本发明所述一种基于多任务学习的水军检测模型构建系统结构图;
[0055]图4为本发明所述一种水军检测流程图;
[0056]图5为矩阵的〈I范数〉和〈1,2>范数;
[0057]图6为本发明所述的多任务特征水军检测架构图。
[0058]附图中,各标号所代表的部件列表如下:
[0059]1、任务分割抽取模块,2、特征选择模块,3、阈值设定模块,4、匹配模块,5、线性分类值计算模块,6、水军模型模块,7、特征提取模块。
【具体实施方式】
[0060]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0061]如图1所示,一种基于多任务学习的水军检测模型构建方法,包括如下步骤:
[0062]步骤1:对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集;
[0063]步骤2:对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权
重矩阵;
[0064]步骤3:设定一个阈值δ,判断所述特征权重矩阵中的一个列向量中的最大值是否大于阈值δ,如果是,执行步骤4 ;否则,放弃所述列向量,执行步骤5 ;
[0065]步骤4:将所述列向量添加到共享特征项集合中;
[0066]步骤5:判断特征权重矩阵中是否存在未与阈值δ进行比较的列向量,如果是,执行步骤3;否则,执行步骤6;
[0067]步骤6:输入新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将在集合中排列位置匹配的特征项集合在一起,得到新共享特征项集合;[0068]步骤7:对新共享特征项集合通过感知器学习算法(Perceptron LearningAlgorithm)计算得到特征系数,通过计算共享特征项集合与特征系数的乘积得到标准线性分类值;
[0069]步骤8:根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建,结束。
[0070]如图2所示,还包括水军检测模型测试过程,所述水军检测模型测试过程包括以下步骤:
[0071]步骤9:给定一组已知是水军的水军用户集合,采集水军用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量;
[0072]步骤10:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成水军用户低维的特征向量;
[0073]步骤11:结合水军用户低维的特征向量与步骤7中的特征系数计算得到水军用户的线性分类值;
[0074]步骤12:判断线性分类值是否大于水军阈值,如果是,执行下一步,否则,将水军阈值适当减小并重新设置,返回执行步骤9 ;
[0075]步骤13:给定一组已知不是水军的正常用户集合,采集正常用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量;
[0076]步骤14:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成正常用户低维的特征向量;
[0077]步骤15:结合正常用户低维的特征向量与步骤7中的特征系数计算得到正常用户的线性分类值;
[0078]步骤16:判断线性分类值是否小于水军阈值,如果是,执行下一步,否则,将水军阈值适当增大并重新设置,返回执行步骤9 ;
[0079]步骤17:完成对水军检测模型的测试,结束。
[0080]所述步骤2中采用求解正则化最小二乘法回归实现多任务特征选择。
[0081]所述步骤I中的多个任务大小相同。
[0082]如图3所示,一种基于多任务学习的水军检测模型构建系统,包括:任务分割抽取模块1、特征选择模块2、阈值设定模块3、匹配模块4、线性分类值计算模块5和水军模型模块6 ;
[0083]所述任务分割抽取模块I对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集;
[0084]所述特征选择模块2对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权重矩阵;
[0085]所述阈值设定模块3用于设定一个阈值δ,判断所述特征权重矩阵中的所有列向量中的最大值是否大于阈值δ,如果是,将所述列向量添加到共享特征项集合中;否则,放弃所述列向量;
[0086]所述匹配模块4用于接收新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将位置匹配的特征项集合在一起,得到新共享特征项集合;
[0087]所述线性分类值计算模块5对新共享特征项集合通过感知器学习算法(Perceptron Learning Algorithm)计算得到特征系数,计算共享特征项集合与特征系数的乘积得到线性分类值;
[0088]所述水军模型模块6用于根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建。
[0089]还包括特征提取模块7 ;
[0090]所述特征提取模块7用于接收给定一组已知水军特性的用户集合,采集用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量,并将特征向量发送到匹配模块4 ;
[0091]所述匹配模块4将特征向量与匹配模块中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成用户低维的特征向量并发送到线性分类值计算模块5 ;
[0092]所述线性分类值计算模块5结合用户低维的特征向量与线性分类值计算模块中的特征系数计算得到用户的线性分类值,并将线性分类值发送到水军模型模块6 ;
[0093]所述水军模型模块6判断线性分类值与水军阈值相比较,如果水军用户的线性分类值大于水军阈值,则无需调整水军阈值;如果水军用户的线性分类值小于水军阈值,将水军阈值适当减小并重新设置;如果正常用户的线性分类值小于水军阈值,则无需调整水军阈值;如果正常用户的线性分类值小于水军阈值,将水军阈值适当增大并重新设置。
[0094]所述特征选择模块2中采用求解正则化最小二乘法回归实现多任务特征选择。
[0095]如图4所示,一种水军检测方法,具体包括以下步骤:
[0096]步骤1:接收被测用户集合,采集被测用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到被测特征向量;
[0097]步骤2:将被测特征向量与匹配模块中共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成被测用户低维的特征向量;
[0098]步骤3:结合被测用户低维的特征向量与线性分类值计算模块中的特征系数计算得到被测用户的线性分类值;
[0099]步骤4:判断线性分类值是否大于水军阈值,如果是,判定被测用户为水军;否则,判定被测用户为正常用户;
[0100]步骤5:结束水军判断过程。
[0101]用户属性特征表示
[0102]“网络水军”的检测过程,本质是根据相关用户信息进行用户分类的过程,因此,在算法执行前需要将用户描述信息转化为某种数学形式进行表示。客观上,一个网络论坛用户包含很多描述信息,比如用户注册时间、历次登陆时间、用户名、密码、登陆IP、浏览历史记录、发帖历史记录、回帖历史记录、论坛好友记录、粉丝记录、关注用户记录等。本专利中,我们选取其中比较有代表性的信息作为参考,对用户进行分类,并据此提出用户信息多属性描述框架,框架结构如表I所示。
【权利要求】
1.一种水军检测模型构建方法,其特征在于,包括如下步骤: 步骤1:对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集; 步骤2:对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权重矩阵; 步骤3:设定一个阈值δ,判断所述特征权重矩阵中的一个列向量中的最大值是否大于阈值δ,如果是,执行步骤4 ;否则,放弃所述列向量,执行步骤5 ; 步骤4:将所述 列向量添加到共享特征项集合中; 步骤5:判断特征权重矩阵中是否存在未与阈值δ进行比较的列向量,如果是,执行步骤3;否则,执行步骤6; 步骤6:输入新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将在集合中排列位置匹配的特征项集合在一起,得到新共享特征项集合;步骤7:对新共享特征项集合通过感知器学习算法(Perceptron Learning Algorithm)计算得到特征系数,通过计算共享特征项集合与特征系数的乘积得到标准线性分类值;步骤8:根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建,结束。
2.根据权利要求1所述的一种基于多任务学习的水军检测模型构建方法,其特征在于,还包括水军检测模型测试过程,所述水军检测模型测试过程包括以下步骤: 步骤9:给定一组已知是水军的水军用户集合,采集水军用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量; 步骤10:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成水军用户低维的特征向量; 步骤11:结合水军用户低维的特征向量与步骤7中的特征系数计算得到水军用户的线性分类值; 步骤12:判断线性分类值是否大于水军阈值,如果是,执行下一步,否则,将水军阈值适当减小并重新设置,返回执行步骤9 ; 步骤13:给定一组已知不是水军的正常用户集合,采集正常用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量; 步骤14:将特征向量与步骤4中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成用户低维的特征向量; 步骤15:结合正常用户低维的特征向量与步骤7中的特征系数计算得到正常用户的线性分类值; 步骤16:判断线性分类值是否小于水军阈值,如果是,执行下一步,否则,将水军阈值适当增大并重新设置,返回执行步骤9 ; 步骤17:完成对水军检测模型的测试,结束。
3.根据权利要求1或2所述的一种基于多任务学习的水军检测模型构建方法,其特征在于,所述步骤2中采用求解正则化最小二乘法回归实现多任务特征选择。
4.根据权利要求3所述的一种基于多任务学习的水军检测模型构建方法,其特征在于,所述步骤I中的多个任务大小相同。
5.一种基于多任务学习的水军检测模型构建系统,其特征在于,包括:任务分割抽取模块、特征选择模块、阈值设定模块、匹配模块、线性分类值计算模块和水军模型模块; 所述任务分割抽取模块对一组给定的向量化的样本数据先进行任务分割,得到对应的多个任务,对多个任务进行平均特征抽取,得到多个任务的训练样本集; 所述特征选择模块对多个任务的训练样本集进行多任务特征选择,得到多个任务的特征权重矩阵; 所述阈值设定模块用于设定一个阈值S,判断所述特征权重矩阵中的所有列向量中的最大值是否大于阈值I如果是,将所述列向量添加到共享特征项集合中;否则,放弃所述列向量; 所述匹配模块用于接收新的已知水军特性的向量化的训练数据集,将训练数据集与共享特征项集合进行匹配,将在集合中排列位置匹配的特征项集合在一起,得到新共享特征项集合; 所述线性分类值计算模块对新共享特征项集合通过感知器学习算法(PerceptronLearning Algorithm)计算得到特征系数,计算共享特征项集合与特征系数的乘积得到线性分类值; 所述水军模型模块用于根据标准线性分类值的大小设置水军阈值,使被测线性分类值大于水军阈值时判定其数据来源于水军,完成水军判断模型的构建。
6.根据权利要求5所述的一种基于多任务学习的水军检测模型构建系统,其特征在于,还包括特征提取模块; 所述特征提取模块用于接收给定一组已知水军特性的用户集合,采集用户集合中所有用户的包括用户行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到特征向量,并将特征向量发送到匹配模块; 所述匹配模块将特征向量与匹配模块中得到的共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成用户低维的特征向量并发送到线性分类值计算模块; 所述线性分类值计算模块结合用户低维的特征向量与线性分类值计算模块中的特征系数计算得到用户的线性分类值,并将线性分类值发送到水军模型模块; 所述水军模型模块判断线性分类值与水军阈值相比较,如果水军用户的线性分类值大于水军阈值,则无需调整水军阈值;如果水军用户的线性分类值小于水军阈值,将水军阈值适当减小并重新设置;如果正常用户的线性分类值小于水军阈值,则无需调整水军阈值;如果正常用户的线性分类值小于水军阈值,将水军阈值适当增大并重新设置。
7.根据权利要求5或6所述的一种基于多任务学习的水军检测模型构建系统,其特征在于,所述特征选择模块中采用求解正则化最小二乘法回归实现多任务特征选择。
8.一种水军检测方法,其特征在于,具体包括以下步骤: 步骤1:接收被测用户集合,采集被测用户集合中所有用户的行为特征和内容特征的原始数据,并对每个维度的原始数据进行量化表示得到被测特征向量; 步骤2:将被测特征向量与匹配模块中共享特征项集合进行匹配,将位置匹配的特征项集合在一起,构成被测用户低维的特征向量;步骤3:结合被测用户低维的特征向量与线性分类值计算模块中的特征系数计算得到被测用户的线性分类值; 步骤4:判断线性分类值是否大于水军阈值,如果是,判定被测用户为水军;否则,判定被测用户为正常用户; 步骤5:结 束水军判断过程。
【文档编号】G06K9/66GK103955714SQ201410146467
【公开日】2014年7月30日 申请日期:2014年4月9日 优先权日:2014年4月9日
【发明者】李倩, 牛温佳, 管洋洋, 黄超, 孙卫强, 李丹, 胡玥, 郭莉 申请人:中国科学院信息工程研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1