针对不平衡数据的融合用户行为规则的垃圾评论过滤方法技术

技术编号:17912539 阅读:45 留言:0更新日期:2018-05-10 18:21
本发明专利技术提供一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法,包括:对少类样本数据进行重新构建,对多类样本数据集中的多类样本数据进行欠采样,重新构造得到平衡的训练样本语料库;利用训练样本语料库,提取分类特征词,对构建的贝叶斯模型进行训练;调用用户行为规则模型,检测待分类的评论数据是否为垃圾评论,对评论数据进行初步分类;对待分类的评论数据进行特征提取,使用已训练好的贝叶斯分类模型进行分类;使用Adaboosting算法,对用户行为规则模型和贝叶斯分类模型进行集成学习,利用已标记的训练样本数据进行训练,得到最终的待分类的评论数据的分类结果。优点为:全面提高垃圾评论过滤效率。

【技术实现步骤摘要】
针对不平衡数据的融合用户行为规则的垃圾评论过滤方法
本专利技术属于垃圾评论过滤
,具体涉及一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法。
技术介绍
随着互联网的飞速发展,越来越多的人们通过发布各种各样的言论信息来进行交流、表述自己的观点态度。与此同时,也为一些黑客提供了方便,在正常评论的平台上投放大量的广告、宣传以及辱骂的言语评论,使得用户无法获得有用的信息,也阻碍了对信息的挖掘。因此垃圾评论过滤非常重要。从技术角度来看,对于这个垃圾评论的过滤属于文本分类范畴。现有的垃圾评论过滤技术一般分两种:监督学习方法和非监督学习方法。非监督学习:不需要人工预先标注的语料,来对评论进行分类过滤。但对于互联网上产生的多样口语化不规范的评论的情景,非监督学习方法是无法准确的识别过滤出垃圾评论的。相比非监督学习的问题,监督学习可以在一定程度上解决口语化比较重的文本分类问题。但监督学习前期需要大量的人工标注语料库,耗费人力物力很大。一些专家学者尝试使用机器学习的方法解决这一问题,如现有的垃圾评论过滤技术-贝叶斯分类算法,虽然该方法用于过滤垃圾邮件效果很好,但前提是训练语料库是均衡的。然而实际网络媒体中,用户的评论形式各异,垃圾评论负例搜集比较困难,容易使得训练数据集中某个类别的样本数远远小于另一个类别,从而使分类的性能急剧下降;并且网络媒体中,用户评论表述形式多变,尤其是广告变化多样,从而加大了对新词识别和广告识别的难度。
技术实现思路
针对现有技术存在的缺陷,本专利技术提供一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法,可有效解决上述问题。本专利技术采用的技术方案如下:本专利技术提供一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法,包括以下步骤:步骤1,抓取网络媒体频道上的评论样本数据组成评论样本数据集,标记每条评论样本数据的评论数据类型;其中,所述评论数据类型包括正例样本类型和负例样本类型;步骤2,比较所述评论样本数据集中正例样本数据和负例样本数据的数量,如果正例样本数据的数量多于负例样本数据的数量,则将正例样本数据作为多类样本数据,将负例样本数据作为少类样本数据;反之,如果正例样本数据的数量少于负例样本数据的数量,则将正例样本数据作为少类样本数据,将负例样本数据作为多类样本数据;由此将评论样本数据集划分为少类样本数据集和多类样本数据集;步骤3,对少类样本数据集中的少类样本数据进行重新构建,对多类样本数据集中的多类样本数据进行欠采样,重新构造得到平衡的训练样本语料库;其中,训练样本语料库中的每个训练样本均被标记评论数据类型,因此,训练样本区分正例训练样本和负例训练样本;训练样本语料库包括正例训练样本子库和负例训练样本子库;步骤4,利用训练样本语料库,提取分类特征词,对构建的贝叶斯模型进行训练;本步骤具体包括:步骤4.1,根据公式计算正例训练样本的先验概率P(c1)和负例训练样本的先验概率P(c2):其中:N表示训练样本语料库中的训练样本的总数量;n1表示训练样本语料库中正例训练样本的数量;n2表示训练样本语料库中负例训练样本的数量;步骤4.2,对于每个训练样本,对其进行分词,基于下式,采用信息增益的方法计算每个词w对模型分类的贡献值IG(w):其中:P(w)表示训练样本语料库中包含单词w的训练样本的出现概率,即:P(w)=包含单词w的训练样本的数量/训练样本的总数量N;P(c1|w)表示包含单词w的正例训练样本的条件概率,即:P(c1|w)=包含单词w的正例训练样本的数量/包含单词w的训练样本的数量;P(c2|w)表示包含单词w的负例训练样本的条件概率,即:P(c2|w)=包含单词w的负例训练样本的数量/包含单词w的训练样本的数量;表示训练样本语料库中不包含单词w的训练样本的出现概率,即:表示不包含单词w的正例训练样本的条件概率,即:表示不包含单词w的负例训练样本的条件概率,即:步骤4.3,预设定贡献阈值,提取贡献值高于贡献阈值的词作为特征词,设共提取到m个特征词,分别为w1,w2,...,wm,由此得到特征词集F={w1,w2,...,wm};步骤4.4,对于特征词集中任意特征词wi,i=1,2,...,m,采用下式计算特征词wi属于正例训练样本类别的条件概率值P(wi|c1)以及wi属于负例训练样本类别的条件概率值P(wi|c2):其中:表示训练样本语料库中出现特征词wi的正例训练样本数量;表示训练样本语料库中正例训练样本数量;表示训练样本语料库中出现特征词wi的负例训练样本数量;表示训练样本语料库中负例训练样本数量;步骤5,对于待分类的评论数据,首先进行敏感词检测,若存在敏感词直接视为垃圾评论;若不存在敏感词,进入步骤6;步骤6,对经步骤5检测后的待分类的评论数据进行新词发现检测,如果含有新词,将新词标注评论数据类型后,将其加入到训练样本语料库中,扩展更新训练样本语料库;如果不含有新词,进入步骤7;步骤7,调用用户行为规则模型,检测待分类的评论数据是否为垃圾评论,对评论数据进行初步分类;然后进入步骤8;步骤8,对待分类的评论数据进行特征提取,使用已训练好的贝叶斯分类模型进行分类;本步骤具体包括:步骤8.1,对于待分类的评论数据进行分词预处理,得到若干个分词;从得到的若干个分词中,提取属于步骤4.3得到的特征词集F的分词作为特征词,假设共提取到s个特征词,分别为x1,x2,...,xs,由此得到表现出评论分类倾向的特征词向量X={x1,x2,...,xs};步骤8.2,采用下式计算待分类的评论数据在正例训练样本子库出现的先验条件概率P(X|c1)和在负例训练样本子库出现的先验条件概率P(X|c2):其中:uj表示待分类的评论数据中是否包含特征词xj,如果含有特征词xj,则uj为1;反之为0;p(xj|c1)表示特征词xj属于正例训练样本类别的条件概率值,与步骤4.4计算得到的同一个特征词的P(wi|c1)的值相等;ujp(xj|c2)表示特征词xj属于负例训练样本类别的条件概率值,与步骤4.4计算得到的同一个特征词的P(wi|c2)的值相等;步骤8.3,采用下式计算在训练样本语料库中,待分类的评论数据出现的概率P(X):P(X)=P(X|c1)P(c1)+P(X|c2)P(c2)步骤8.4,采用下式计算待分类的评论数据属于正例评论类别的概率P(c1|X)以及属于负例评论类别的概率P(c2|X):步骤9,使用Adaboosting算法,对用户行为规则模型和贝叶斯分类模型进行集成学习,利用已标记的训练样本数据进行训练,采用下式得到最终的待分类的评论数据的分类结果Qk(X):其中:K为分类模型的个数,此处为常量值2;μt表示第t个分类模型在最终精确的分类器中占的权重值,始终大于0;ft(X)表示为在X维特征词向量空间上第t个分类模型的分类判断结果,其中,f1(X)表示在X维特征词向量空间上贝叶斯分类模型的分类判断结果,f2(X)表示在X维特征词向量空间上用户行为规则模型的分类判断结果,即为步骤7得到的初步分类结果。优选的,步骤1中,所述正例样本类型为正常评论样本类型;所述负例样本类型为垃圾评论样本类型。优选的,步骤3中,对少类样本数据集中的少类样本数据进行重新构建,具体为:步骤3.1,假设少类样本文档来自技高网...
针对不平衡数据的融合用户行为规则的垃圾评论过滤方法

【技术保护点】
一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法,其特征在于,包括以下步骤:步骤1,抓取网络媒体频道上的评论样本数据组成评论样本数据集,标记每条评论样本数据的评论数据类型;其中,所述评论数据类型包括正例样本类型和负例样本类型;步骤2,比较所述评论样本数据集中正例样本数据和负例样本数据的数量,如果正例样本数据的数量多于负例样本数据的数量,则将正例样本数据作为多类样本数据,将负例样本数据作为少类样本数据;反之,如果正例样本数据的数量少于负例样本数据的数量,则将正例样本数据作为少类样本数据,将负例样本数据作为多类样本数据;由此将评论样本数据集划分为少类样本数据集和多类样本数据集;步骤3,对少类样本数据集中的少类样本数据进行重新构建,对多类样本数据集中的多类样本数据进行欠采样,重新构造得到平衡的训练样本语料库;其中,训练样本语料库中的每个训练样本均被标记评论数据类型,因此,训练样本区分正例训练样本和负例训练样本;训练样本语料库包括正例训练样本子库和负例训练样本子库;步骤4,利用训练样本语料库,提取分类特征词,对构建的贝叶斯模型进行训练;本步骤具体包括:步骤4.1,根据公式计算正例训练样本的先验概率P(c1)和负例训练样本的先验概率P(c2):...

【技术特征摘要】
1.一种针对不平衡数据的融合用户行为规则的垃圾评论过滤方法,其特征在于,包括以下步骤:步骤1,抓取网络媒体频道上的评论样本数据组成评论样本数据集,标记每条评论样本数据的评论数据类型;其中,所述评论数据类型包括正例样本类型和负例样本类型;步骤2,比较所述评论样本数据集中正例样本数据和负例样本数据的数量,如果正例样本数据的数量多于负例样本数据的数量,则将正例样本数据作为多类样本数据,将负例样本数据作为少类样本数据;反之,如果正例样本数据的数量少于负例样本数据的数量,则将正例样本数据作为少类样本数据,将负例样本数据作为多类样本数据;由此将评论样本数据集划分为少类样本数据集和多类样本数据集;步骤3,对少类样本数据集中的少类样本数据进行重新构建,对多类样本数据集中的多类样本数据进行欠采样,重新构造得到平衡的训练样本语料库;其中,训练样本语料库中的每个训练样本均被标记评论数据类型,因此,训练样本区分正例训练样本和负例训练样本;训练样本语料库包括正例训练样本子库和负例训练样本子库;步骤4,利用训练样本语料库,提取分类特征词,对构建的贝叶斯模型进行训练;本步骤具体包括:步骤4.1,根据公式计算正例训练样本的先验概率P(c1)和负例训练样本的先验概率P(c2):其中:N表示训练样本语料库中的训练样本的总数量;n1表示训练样本语料库中正例训练样本的数量;n2表示训练样本语料库中负例训练样本的数量;步骤4.2,对于每个训练样本,对其进行分词,基于下式,采用信息增益的方法计算每个词w对模型分类的贡献值IG(w):其中:P(w)表示训练样本语料库中包含单词w的训练样本的出现概率,即:P(w)=包含单词w的训练样本的数量/训练样本的总数量N;P(c1|w)表示包含单词w的正例训练样本的条件概率,即:P(c1|w)=包含单词w的正例训练样本的数量/包含单词w的训练样本的数量;P(c2|w)表示包含单词w的负例训练样本的条件概率,即:P(c2|w)=包含单词w的负例训练样本的数量/包含单词w的训练样本的数量;表示训练样本语料库中不包含单词w的训练样本的出现概率,即:表示不包含单词w的正例训练样本的条件概率,即:表示不包含单词w的负例训练样本的条件概率,即:步骤4.3,预设定贡献阈值,提取贡献值高于贡献阈值的词作为特征词,设共提取到m个特征词,分别为w1,w2,...,wm,由此得到特征词集F={w1,w2,...,wm};步骤4.4,对于特征词集中任意特征词wi,i=1,2,...,m,采用下式计算特征词wi属于正例训练样本类别的条件概率值P(wi|c1)以及wi属于负例训练样本类别的条件概率值P(wi|c2):其中:表示训练样本语料库中出现特征词wi的正例训练样本数量;表示训练样本语料库中正例训练样本数量;表示训练样本语料库中出现特征词wi的负例训练样本数量;表示训练样本语料库中负例训练样本数量;步骤5,对于待分类的评论数据,首先进行敏感词检测,若存在敏感词直接视为垃圾评论;若不存在敏感词,进入步骤6;步骤6,对经步骤5检测后的待分类的评论数据进行新词发现检测,如果含有新词,将新词标注评论数据类型后,将其加入到训练样本语料库中,扩展更新训练样本语料库;如果不含有新词,进入步骤7;步骤7,调用用户行为规则模型,检测待分类的评论数据是否为垃圾评论,对评论数据进行初步分类;然后进入步骤8;步骤8,对待分类的评论数据进行特征提取,使用已训练好的贝叶斯分类模型...

【专利技术属性】
技术研发人员:丁茜武琼孙剑
申请(专利权)人:北京中视广信科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1