当前位置: 首页 > 专利查询>福州大学专利>正文

一种基于机器学习的社交网络垃圾用户过滤方法技术

技术编号:10525904 阅读:171 留言:0更新日期:2014-10-09 11:19
本发明专利技术涉及一种基于机器学习的社交网络垃圾用户过滤方法,包括以下步骤:1、针对一社交网络,定义需要从社交网络的社交用户中提取的特征向量,构建一垃圾消息过滤规则集;2、从社交网络中取一定数量的社交用户作为训练样本,然后对各训练样本发布的社交消息进行特征提取,得到各训练样本的特征向量中除平均垃圾关键字得分之外的所有元素;3、根据垃圾消息过滤规则集,计算各训练样本的平均垃圾关键字得分,得到各训练样本完整的特征向量;4、将各训练样本的特征向量,输入支持向量机进行训练,得到垃圾用户过滤模型;5、利用垃圾用户过滤模型对待测用户进行检测,判断待测用户是否为垃圾用户。该方法有利于准确提取、过滤社交网络中的垃圾用户。

【技术实现步骤摘要】
一种基于机器学习的社交网络垃圾用户过滤方法
本专利技术涉及网络垃圾过滤
,特别是一种基于机器学习的社交网络垃圾用户过滤方法。
技术介绍
在线社交网络平台如Facebook、Twitter、新浪微博等都是Web2.0最受欢迎的应用程序。数以百万的用户活跃在社交网络中(好友互动,阅读新闻等),并且用户的规模正在逐年增加。社交网站在用户规模扩大的同时,也吸引了大量的垃圾消息(Spam)和垃圾用户(Spammer),Spammer在社交平台上散布广告、色情、暴力、恐怖等活动,给正常用户的社交带来严重的影响。有研究表明:发布在Twitter上的20万条URL中有8%是钓鱼或者色情链接,而由于社交网络中大量用户的存在,每条URL被点击的概率为0.13%,这个比例远远高于垃圾邮件中URL被点击的概率,因此,在社交网站中,用户更容易受到钓鱼网站的攻击。传统的基于内容的垃圾邮件过滤是指通过对邮件内容进行分析来判定邮件是否属于垃圾邮件。由于垃圾邮件和正常邮件的内容风格迥异,因此可以利用机器学习算法对垃圾邮件和正常邮件的内容进行训练,利用训练好的模型进行预测。但是,在社交网络(例如新浪微博、Twitter等)中,由于用户发布的消息受到字数(例如140)的限制,垃圾消息和正常消息在内容上并没有太大区别,因此,传统的基于内容的过滤算法不再适用于社交网络Spam过滤。
技术实现思路
本专利技术的目的在于提供一种基于机器学习的社交网络垃圾用户过滤方法,该方法有利于准确提取、过滤社交网络中的垃圾用户。本专利技术采用的技术方案是:一种基于机器学习的社交网络垃圾用户过滤方法,包括以下步骤:步骤S1:针对一社交网络,定义需要从所述社交网络的社交用户中提取的特征向量,构建一垃圾消息过滤规则集;所述垃圾消息过滤规则集中定义有多个垃圾关键字,各垃圾关键字对应有一分值,从而可根据社交消息中出现垃圾关键字的个数、频次,计算社交消息的垃圾关键字得分;步骤S2:从所述社交网络中取一定数量的社交用户作为训练样本,所述社交用户包括正常用户和垃圾用户,然后通过信息增益算法对各训练样本发布的社交消息进行特征提取,得到各训练样本的特征向量中除平均垃圾关键字得分之外的所有元素;步骤S3:根据垃圾消息过滤规则集,计算各训练样本发布的所有社交消息的垃圾关键字得分,进而求得各训练样本的平均垃圾关键字得分,得到各训练样本完整的特征向量;步骤S4:将步骤S3得到的各训练样本的特征向量,输入支持向量机进行训练,得到垃圾用户过滤模型;步骤S5:利用所述垃圾用户过滤模型对待测用户进行检测,判断待测用户是否为垃圾用户。进一步的,步骤S1中,所述社交用户的特征向量V2为:V2=[关注数,粉丝数,消息数,双向关注数,收藏数,注册天数,关注数/粉丝数,日发消息数,平均被转发次数,平均被评论次数,平均被赞次数,平均URL链接数,平均图片数,平均话题数,平均@的用户数,平均垃圾关键字得分,原创消息比例,垃圾消息比例]。进一步的,步骤S1中,所述垃圾消息过滤规则集的建立方法如下:步骤S101:从所述社交网络中获取一定数量的垃圾消息;步骤S102:对每条垃圾消息进行中文分词,每条垃圾消息得到一个词语列表{key1,key2,…,keyi,…},keyi表示所述垃圾消息的第i个分词;步骤S103:对每个词语列表采用信息增益算法计算信息增益值,每个词语列表得到一个键值对集合{key1:IG(key1),key2:IG(key2),…,keyi:IG(keyi),…},IG(keyi)表示第i个分词的信息增益值;步骤S104:将不同的键值对集合进行合并,其中对不同键值对集合中均有出现的分词的信息增益值进行累加,作为合并后的键值对集合对应于该分词的信息增益值;步骤S105:对于合并后的键值对集合,根据信息增益值从大到小对分词进行排序,取出前n个分词作为垃圾消息过滤规则集的垃圾关键字,分词的信息增益值作为垃圾关键字的分值,从而建立所述垃圾消息过滤规则集。本专利技术的有益效果是将机器学习算法和社交元素相结合,提出了一种基于机器学习的社交网络垃圾用户过滤方法,该方法适用于社交网络Spammer过滤,能够准确提取、过滤社交网络中的垃圾用户,具有很强的实用性和广阔的应用前景。附图说明图1是本专利技术实施例的实现流程图。图2是本专利技术实施例中建立垃圾消息过滤规则集的流程图。具体实施方式下面结合附图及具体实施例对本专利技术作进一步的详细说明。本专利技术将机器学习算法和社交元素相结合,通过社交元素自身特征而不是内容来提取社交网络垃圾消息。在社交网络中,垃圾用户(Spammer)通常会关注大量用户,大量发布消息,希望借此达到宣传的目的,但是由于这些用户很少受到正常用户的关注,因此他们具有较少的粉丝数。通过提取这些社交元素特征,运用于过滤社交网络Spammer。本专利技术基于机器学习的社交网络垃圾用户过滤方法,如图1所示,包括以下步骤:步骤S1:针对一社交网络(如微博、Twitter等),定义需要从所述社交网络的社交用户中提取的特征向量,构建一垃圾消息过滤规则集;所述垃圾消息过滤规则集中定义有多个垃圾关键字,各垃圾关键字对应有一分值,从而可根据社交消息中出现垃圾关键字的个数、频次,计算社交消息的垃圾关键字得分。所述社交用户的特征向量V2为:V2=[关注数,粉丝数,消息数,双向关注数,收藏数,注册天数,关注数/粉丝数,日发消息数,平均被转发次数,平均被评论次数,平均被赞次数,平均URL链接数,平均图片数,平均话题数,平均@的用户数,平均垃圾关键字得分,原创消息比例,垃圾消息比例]。其中,关注数,粉丝数,消息数,双向关注数,收藏数,注册天数,关注数/粉丝数,日发消息数可以通过社交用户的个人信息得到,其他的特征根据社交用户发布的社交消息来计算,类似于垃圾消息过滤,计算每条消息转发评论以及垃圾关键字得分,然后求平均值。图2是本专利技术实施例中建立垃圾消息过滤规则集的流程图。如图2所示,所述垃圾消息过滤规则集的建立方法如下:步骤S101:从所述社交网络中获取一定数量(如10万条)的垃圾消息。步骤S102:对每条垃圾消息进行中文分词,每条垃圾消息得到一个词语列表{key1,key2,…,keyi,…},keyi表示所述垃圾消息的第i个分词。步骤S103:对每个词语列表采用信息增益算法计算信息增益值,每个词语列表得到一个键值对集合{key1:IG(key1),key2:IG(key2),…,keyi:IG(keyi),…},IG(keyi)表示第i个分词的信息增益(IG,InfoGain)值。所述信息增益算法为:上式中,表示t不出现的概率,表示t出现的情况下文本属于分类的概率,表示t不出现的情况下文本属于分类的概率。因此,IG的值反映了特征在各分类的分布状况。步骤S104:将不同的键值对集合进行合并,其中对不同键值对集合中均有出现的分词的信息增益值进行累加,作为合并后的键值对集合对应于该分词的信息增益值。步骤S105:对于合并后的键值对集合,根据信息增益值从大到小对分词进行排序,取出前n个(如前5000个)分词作为垃圾消息过滤规则集的垃圾关键字,分词的信息增益值作为垃圾关键字的分值,从而建立所述垃圾消息过滤规则集。步骤S2:从所述社交网络中取一定数量的社交用本文档来自技高网...
一种基于机器学习的社交网络垃圾用户过滤方法

【技术保护点】
一种基于机器学习的社交网络垃圾用户过滤方法,其特征在于,包括以下步骤:步骤S1:针对一社交网络,定义需要从所述社交网络的社交用户中提取的特征向量,构建一垃圾消息过滤规则集;所述垃圾消息过滤规则集中定义有多个垃圾关键字,各垃圾关键字对应有一分值,从而可根据社交消息中出现垃圾关键字的个数、频次,计算社交消息的垃圾关键字得分;步骤S2:从所述社交网络中取一定数量的社交用户作为训练样本,所述社交用户包括正常用户和垃圾用户,然后通过信息增益算法对各训练样本发布的社交消息进行特征提取,得到各训练样本的特征向量中除平均垃圾关键字得分之外的所有元素;步骤S3:根据垃圾消息过滤规则集,计算各训练样本发布的所有社交消息的垃圾关键字得分,进而求得各训练样本的平均垃圾关键字得分,得到各训练样本完整的特征向量;步骤S4:将步骤S3得到的各训练样本的特征向量,输入支持向量机进行训练,得到垃圾用户过滤模型;步骤S5:利用所述垃圾用户过滤模型对待测用户进行检测,判断待测用户是否为垃圾用户。

【技术特征摘要】
1.一种基于机器学习的社交网络垃圾用户过滤方法,其特征在于,包括以下步骤:步骤S1:针对一社交网络,定义需要从所述社交网络的社交用户中提取的特征向量,构建一垃圾消息过滤规则集;所述垃圾消息过滤规则集中定义有多个垃圾关键字,各垃圾关键字对应有一分值,从而可根据社交消息中出现垃圾关键字的个数、频次,计算社交消息的垃圾关键字得分;步骤S2:从所述社交网络中取一定数量的社交用户作为训练样本,所述社交用户包括正常用户和垃圾用户,然后通过信息增益算法对各训练样本发布的社交消息进行特征提取,得到各训练样本的特征向量中除平均垃圾关键字得分之外的所有元素;步骤S3:根据垃圾消息过滤规则集,计算各训练样本发布的所有社交消息的垃圾关键字得分,进而求得各训练样本的平均垃圾关键字得分,得到各训练样本完整的特征向量;步骤S4:将步骤S3得到的各训练样本的特征向量,输入支持向量机进行训练,得到垃圾用户过滤模型;步骤S5:利用所述垃圾用户过滤模型对待测用户进行检测,判断待测用户是否为垃圾用户;步骤S1中,所述垃圾消息过滤规则集的建立方法如下:步骤S101:从所述社交网络中获取一定数量的垃圾消息;步骤S102:对每条垃圾消息进行中文分词,每条垃圾消息得...

【专利技术属性】
技术研发人员:郑相涵陈国龙曾志鹏
申请(专利权)人:福州大学
类型:发明
国别省市:福建;35

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

1