不良信息检测方法及服务端的制作方法

文档序号:6374431阅读:293来源:国知局
专利名称:不良信息检测方法及服务端的制作方法
技术领域
本发明涉及网络技术领域,尤其涉及一种不良信息检测方法及服务端。
背景技术
随着计算机和通讯技术的高速发展,网络的信息量以指数级增加,不良信息的检查难度同时也大大增强。随着web2. O技术的大力发展,特别是微博技术的发展,使得信息的传播方式发生了巨大的变化。信息不再由某些人或者某个团体发出,让公众消费,而是信息逐渐扁平化,每个人都可以是一个自媒体,都是信息的生产者,由此使得现有的信息审查技术变得力不从心。目前,通常采用的一种技术是封锁不良用户的ID来实现对不良信息的审查,而这种方式需要网站的审查者做大量的工作来保证不造成误杀。例如,审查者需要关心微博作者通常在何时发表哪些言论,需要对所有言论一一审查,以判断其中哪些言论为不良言论,这无疑增加了审查员的工作量。现有采用的另一种技术是直接查封不良言论用户的账号,使得该用户无法进行任何操作,这种方式的优点在于,可以屏蔽大用户,但是却无法避免该用户重新注册账号。而且由于查封账号还具有一定的延迟性,因此对于新注册用户的审查效果并不明显。另外,有的网站只对关键词限制,此种方式中,网站需维护一个关键词词库,当微博中含有关键词时,系统予以直接替换,这种方式的缺点是无法理解语义上的具体含义,则有可能将第一句的末尾字和第二句的首字看成一个词,从而造成误杀。同时采用这种严格限定的方式,会造成很多语句被屏蔽。还有的网站会对某一个IP段进行过滤,这种方法通常易适合对付木马爬虫等恶意程序,对于不良信息,则会让同IP的其他人无法操作。

发明内容
本发明的主要目的在于提供一种不良信息检测方法及服务端,旨在有效阻止不良信息的传播。为了达到上述目的,本发明提出一种不良信息检测方法,包括服务端接收客户端发送的信息发布请求;将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度;当所述相关度大于预置的阈值时,对所述信息进行过滤处理。优选地,所述将信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度的步骤包括对所述信息发布请求所携带的信息进行语义分析,获取供信息搜索的查询词;将所述查询词与预设的过滤词库中的敏感词列表进行对比,以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。优选地,所述预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。优选地,所述对信息进行过滤处理的步骤之后还包括在数据库中为所述信息设置一标记位,将所述信息限制在所述客户端的发布者可见而非发布者不可见的范围。优选地,所述对信息进行过滤处理的步骤之后还包括根据所述信息中的敏感词,更新所述信息发布者的不良信息统计表。本发明还提出一种检测不良信息的服务端,包括信息接收模块,用于接收客户端发送的信息发布请求;匹配计算模块,用于将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度;信息处理模块,用于当所述相关度大于预置的阈值时,对所述信息进行过滤处理。优选地,所述匹配计算模块包括分析单元,用于对所述信息发布请求所携带的信息进行语义分析,获取供信息搜索的查询词;匹配计算单元,用于将所述查询词与预设的过滤词库中的敏感词列表进行对比,以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。优选地,所述预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。优选地,所述处理模块还用于对信息进行过滤处理后,在数据库中为所述信息设置一标记位,将所述信息限制在所述客户端的发布者可见而非发布者不可见的范围。优选地,所述处理模块还用于对信息进行过滤处理后,根据所述信息中的敏感词,更新所述信息发布者的不良信息统计表。本发明提出的一种不良信息检测方法及服务端,通过维护一个过滤词库,对每一条信息进行分词匹配,计算出该条信息与过滤词库中敏感词的相关度,并将该相关度与预置的阈值进行比对,当相关度大于预置的阈值时,对该条信息进行过滤处理,并在数据库中作上相应标记,使这条信息仅对发布者自己可见,而对其他人不可见。这样即使用户发布了不当言论也可以使之无法扩散,而发布者本人也无法知晓别人无法看到,从而有效阻止了不良信息的传播,增强了网站的维护性与良好的交互性;此外,由于减少了人工参与力度,从而提高了网站信息管理的效率。


图I是本发明不良信息检测方法第一实施例的流程示意图;图2是本发明不良信息检测方法第二实施例的流程示意图;图3是本发明检测不良信息的服务端较佳实施例的结构示意图;图4是本发明检测不良信息的服务端较佳实施例中匹配计算模块的结构示意图。为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。
具体实施例方式本发明中信息指用户通过网站发布的信息,比如微博信息等,以下实施例以微博信息举例说明,但并不限于此种情形。如图I所示,本发明第一实施例提出一种不良信息检测方法,包括步骤S101,服务端接收客户端发送的信息发布请求;以微博信息为例,用户通过客户端向服务端发送微博信息发布请求,该请求中携带有用户欲发表的微博信息。步骤S102,将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度;步骤S103,当所述相关度大于预置的阈值时,对所述信息进行过滤处理。当服务端接收到客户端发来的请求后,对整条微博信息进行语义分析,获取查询词,该查询词将作为在预设的过滤词库中对微博信息进行搜索过滤时的索引。具体地,本实施例预先设置有一过滤词库,该过滤词库包括敏感词列表,在通过对微博信息进行语义分析获取到查询词后,将所述查询词与预设的过滤词库中的敏感词列表进行对比,并以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。其中,预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。该匹配算法涉及的匹配公式的推导原理为首先,将过滤词库看成一个向量,过滤词库中每一个词都具有一个权重,不同的词有不同的权重。因此,基于该过滤词库将产生两个向量,其中过滤词库的向量表示为Dictionary= {terml, term2, ···, termN};过滤词库中词的权重的向量表示为DictionaryVector= {weightl, weight2, ···, weightN};同理,用户所发的微博信息在分词后也会生成两个向量,其中整条微博信息的向量表不为Topic= {Topicterml, Topicterm2, ···, Topicterm3};微博信息中词的权重的向量表不为TopicVector= {Topicterml, Topicterm2, ···, Topicterm3};通常,当两个向量的相关度较大时,则二者的矢量积也越大。也就是说,当两个向量的夹角越小时,两个向量的相关性就越大。因此,为了简化计算,这里可以采用两个向量的夹角的余弦值来表示两个向量的匹配度,即相关度,其匹配计算公式可以表示如下malch(J), 'I) = cosa = ~(I)
Vd X Vt上述公式(I)中,match (D,T)表示微博向量与过滤词库向量的匹配度,|匕|表示过
滤词库向量,Kl表示微博向量。在此,假设
微博向量为:fT =< 11(/1,/'), 11(/2,7'),..., ) > ;其中,tl表示微博信息中词的
向量,T表示整条微博的向量;过滤词库的向量为=<11(6/1, /)), u(c/2, ιι(6//Υ, /)) > ;其中,dl 表示过滤词
库中词的向量,D表示整个过滤词库的向量。上述表达式中,过滤词库和所发微博信息的维度一致,均为N。此时N值为两者的并集。当某一向量不存在某一个维度时,其权重用O表示。上述表达式中,w为词的权重w=tf*idf(2)上述公式(2)中,tf为分词后的t在文档T中出现的词频,idf为Term t出现的次数。将上述公式(2)带入到点积公式中
V;, · yr = i-ο *V = if(i ι η * mu η * /‘(成 /)) * /#(々 /))+ //(/2, Τ) * /6//(/2, Τ) * //( /2,1)) */))(3 )
+ ··· +Τ) * /#(/",Τ) * Ifidiu D) * //\ ι, I))考虑到过滤词库中一个词只出现一次,所以tf(tl,D)==l,idf是该词出现的次
数,因为在过滤词库中只出现过一次,所以,结果为词库长度的倒数另外,由于词库是
N
动态变动的,总会有新的词加入进来,所以,这里将N设置为大于词库长度的值,这样以后就不会因为词库变动使得N增大。这样,所述点积公式变为
Vn · y-r = Vd * K = 1/(117.) * /6//(/1,7.) * 去 +1/(12,7.) * klfia' 7.) *NN(4)
+ …+ If HnJYicif { η:
N将上述公式(4)代入到匹配公式(I)中,匹配公式(I)为maich(DJ') = Cosa= [1} *1 ,(//'(/,7')*/i//'()*χ^-) (5)
Vj^ X Vj V^ t innN其中P I =+yy(i2jf +... + w(iNjf = 0f{tJ)yJdf{iJ).
^tinn所以匹配公式(I)变为maich(l).. Τ) = cos a = 1Jj ·' = -J7X^!-χ / Y//'(/,/')χ/6//(/,7) :C6)
Vd X Vt N Vd此外,考虑到过滤词库中的敏感词列表是已知的,所以|vD|通常为1,因此,还有一种基于上述匹配算法的扩展,则是预先设定过滤词库中每个词的权重,由此,可以根据设定的权重值更好地更动态的优化匹配结果。然后,可以根据用户所发微博信息在过滤词库的敏感词列表中非法词的次数与频率的积求和,之后去根,得出相关度的值。当用户所发微博信息不含有敏感词时,则可以得出这个相关度值为0,也就是完全不相关,用户所发微博信息中没有敏感词,则允许用户发布该微博信息。当用户所发微博信息与过滤词库的匹配度大于O时,说明用户发表了敏感词。本实施例预先设置一敏感信息度的阈值,根据用户所发微博信息与过滤词库的匹配度和该阈值的比较结果来动态判断该微博信息是否可以发表。上述敏感信息度的阈值以根据实际情况做出改变。当用户所发微博信息与过滤词库的匹配度小于该阈值时,表示用户所发微博信息含有的敏感词比较少,服务端则允许用户发表。另外还可以根据敏感词设定的权重不同,来判定该条信息不太敏感,可以适量放行。当用户所发微博信息与过滤词库的匹配度大于该阈值时,说明此条微博信息很敏感,需要过滤。由此,实现了对不良信息的检测。本实施例上述对不良信息的检测方法,通过维护一个过滤词库,对每一条信息进行分词匹配,计算出该条信息与过滤词库中敏感词的相关度,并将该相关度与预置的阈值进行比对,当相关度大于预置的阈值时,对该条信息进行过滤处理,有效阻止了不良信息的传播,并减少了人工参与力度,进而提高了网站信息管理的效率。如图2所示,本发明第二实施例提出一种不良信息检测方法,在上述第一实施例的基础上,在步骤S103对信息进行过滤处理之后还包括步骤S104,在数据库中为所述信息设置一标记位,将所述信息限制在所述客户端的发布者可见而非发布者不可见的范围。步骤S105,根据所述信息中的敏感词,更新所述信息发布者的不良信息统计表。本实施例与上述第一实施例的区别在于,本实施例还包括对过滤出来的微博信息的处理过程。在现有技术中,当检测出用户所要发布的微博信息为不良信息时,通常做法是通知客户,此信息敏感,不予发表,这种处理方式中,用户可以猜测出系统的敏感词列表,从而做出语义上或者拼写上的适当改变,然后再重新发表微博信息,以达到扩散信息的效果。为了规避现有技术的缺陷,本实施例采用以下处理方式在数据库中针对此不良微博信息设置一个标记位,表示此条微博信息只是对发布者本人可见,而对其他人永远不可见。这样发布者并不知道系统过滤了此条微博,而不会想办法绕过系统。而且其他用户也无法看到此微博,从而达到了不良信息无法扩散的效果。此外,本实施例还对发布不良信息用户进行不良信息统计,以便后续做出相应的封杀策略。具体地,当检测到用户发布的微博信息包含敏感词时,找出用户发表的敏感词,然后在服务端的系统中找到该敏感词对应的映射标记,在用户的标记列表中将此类标记加1,由此,根据所述信息中的敏感词,更新信息发布者的不良信息统计表,通过此种统计方式,可便于后续很方便的统计出每个用户发表的敏感信息,同时为以后的过滤词库的搜索索引提供更大的方便。此外,当出现某些紧急事件时,可以通过上述统计结果找到某类用户,并利于制定相应的封杀策略。
本实施例不良信息检测的方法,通过维护一个过滤词库,对每一条信息进行分词匹配,计算出该条信息与过滤词库中敏感词的相关度,并将该相关度与预置的阈值进行比对,当相关度大于预置的阈值时,对该条信息进行过滤处理,并在数据库中作上相应标记,使这条信息仅对发布者自己可见,而对其他人不可见。这样即使用户发布了不当言论也可以使之无法扩散,而发布者本人也无法知晓别人无法看到,从而有效阻止了不良信息的传播,增强了网站的维护性与良好的交互性;此外,由于减少了人工参与力度,从而提高了网站信息管理的效率。如图3所示,本发明较佳实施例提出一种检测不良信息的服务端,包括信息接收模块301、匹配计算模块302以及信息处理模块303,其中信息接收模块301,用于接收客户端发送的信息发布请求;匹配计算模块302,用于将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度;信息处理模块303,用于当所述相关度大于预置的阈值时,对所述信息进行过滤处理。以微博信息为例,用户通过客户端向服务端发送微博信息发布请求,该请求中携带有用户欲发表的微博信息。当服务端的信息接收模块301接收到客户端发来的请求后,匹配计算模块302对整条微博信息进行语义分析,获取查询词,该查询词将作为在预设的过滤词库中对微博信息进行搜索过滤时的索引。具体地,本实施例预先设置有一过滤词库,该过滤词库包括敏感词列表,在通过对微博信息进行语义分析获取到查询词后,将所述查询词与预设的过滤词库中的敏感词列表进行对比,并以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。其中,预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。该匹配算法涉及的匹配公式的推导原理为首先,将过滤词库看成一个向量,过滤词库中每一个词都具有一个权重,不同的词有不同的权重。因此,基于该过滤词库将产生两个向量,其中过滤词库的向量表示为Dictionary= {terml, term2,…,termN};过滤词库中词的权重的向量表示为DictionaryVector= {weightl, weight2, ···, weightN};同理,用户所发的微博信息在分词后也会生成两个向量,其中整条微博信息的向量表不为Topic= {Topicterml, Topicterm2, ···, Topicterm3};微博信息中词的权重的向量表不为TopicVector= {Topicterml, Topicterm2, ···, Topicterm3};通常,当两个向量的相关度较大时,则二者的矢量积也越大。也就是说,当两个向量的夹角越小时,两个向量的相关性就越大。因此,为了简化计算,这里可以采用两个向量的夹角的余弦值来表示两个向量的匹配度,即相关度,其匹配计算公式可以表示如下
权利要求
1.一种不良信息检测方法,其特征在于,包括 服务端接收客户端发送的信息发布请求; 将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度; 当所述相关度大于预置的阈值时,对所述信息进行过滤处理。
2.根据权利要求I所述的方法,其特征在于,所述将信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度的步骤包括 对所述信息发布请求所携带的信息进行语义分析,获取供信息搜索的查询词; 将所述查询词与预设的过滤词库中的敏感词列表进行对比,以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。
3.根据权利要求2所述的方法,其特征在于,所述预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。
4.根据权利要求I、或3所述的方法,其特征在于,所述对信息进行过滤处理的步骤之后还包括 在数据库中为所述信息设置一标记位,将所述信息限制在所述客户端的发布者可见而非发布者不可见的范围。
5.根据权利要求4所述的方法,其特征在于,所述对信息进行过滤处理的步骤之后还包括 根据所述信息中的敏感词,更新所述信息发布者的不良信息统计表。
6.一种检测不良信息的服务端,其特征在于,包括 信息接收模块,用于接收客户端发送的信息发布请求; 匹配计算模块,用于将所述信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度; 信息处理模块,用于当所述相关度大于预置的阈值时,对所述信息进行过滤处理。
7.根据权利要求6所述的服务端,其特征在于,所述匹配计算模块包括 分析单元,用于对所述信息发布请求所携带的信息进行语义分析,获取供信息搜索的查询词; 匹配计算单元,用于将所述查询词与预设的过滤词库中的敏感词列表进行对比,以预定的匹配算法计算所述查询词与所述敏感词列表中敏感词的相关度。
8.根据权利要求7所述的服务端,其特征在于,所述预定的匹配算法基于所述查询词与所述敏感词列表的空间向量模型而设定。
9.根据权利要求6、7或8所述的服务端,其特征在于,所述处理模块还用于对信息进行过滤处理后,在数据库中为所述信息设置一标记位,将所述信息限制在所述客户端的发布者可见而非发布者不可见的范围。
10.根据权利要求9所述的服务端,其特征在于,所述处理模块还用于对信息进行过滤处理后,根据所述信息中的敏感词,更新所述信息发布者的不良信息统计表。
全文摘要
本发明公开一种不良信息检测方法及服务端,其方法包括服务端接收客户端发送的信息发布请求;将信息发布请求所携带的信息与预设的过滤词库进行分词匹配,计算出相关度;当相关度大于预置的阈值时,对信息进行过滤处理。本发明通过维护一个过滤词库,对每一条信息进行分词匹配,计算出该条信息与过滤词库中敏感词的相关度,并将该相关度与预置的阈值进行比对,当相关度大于预置的阈值时,对该条信息进行过滤处理,并在数据库中作上相应标记,使这条信息仅对发布者自己可见,而对其他人不可见。从而有效阻止了不良信息的传播,增强了网站的维护性与良好的交互性;此外,由于减少了人工参与力度,从而提高了网站信息管理的效率。
文档编号G06F17/30GK102880636SQ20121027537
公开日2013年1月16日 申请日期2012年8月3日 优先权日2012年8月3日
发明者山其本 申请人:深圳证券信息有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1