本发明涉及互联网技术领域,特别涉及一种信息识别模型的建立方法及系统、网络信息的拦截方法及系统、设备、存储介质。
背景技术:
随着互联网络的发展,越来越多的用户倾向于通过网络发表自己的观点,或将网络作为与他人沟通的工具。然而部分人员会利用网络的便捷性,传播敏感信息、发布虚假广告或发送骚扰信息,需要对其进行拦截过滤。例如,在电商平台中,im(instantmessaging,即时通讯)作为消费者和店铺运营人员之间的沟通工具,在提升店铺的运营效率、改善用户体验方面发挥着重要的作用。但有部分人员,例如刷单、刷排名、刷评论等人员,借助im工具向店铺运营人员频繁发送广告和骚扰消息,影响店铺的正常运营。这些广告、骚扰消息不仅影响到店铺正常运营,同时也侵害了电商平台的利益。因此在保障消费者和店铺通过im进行正向消息交流的前提下,有效检测广告和骚扰等负向消息并进行相应的拦截过滤处理,成为了一个关注的焦点。
目前,对于信息的拦截过滤主要采用数据分析方法:通过聊天消息流水统计出发送广告和骚扰消息的用户、ip(互联网协议)地址等维度信息,当发现消息是这些用户或者ip地址发出时直接拦截;或者统计出广告和骚扰消息的发送频度,当某条消息的发送频度超过统计值时直接拦截。这种基于ip地址、用户和发送频度等信息拦截广告和骚扰消息的方式,一方面拦截策略易被破解,导致拦截策略失效,另一方面容易造成误拦截。
技术实现要素:
本发明要解决的技术问题是为了克服现有技术中拦截网络信息的方式,容易造成误拦截,准确度较低的缺陷,提供一种信息识别模型的建立方法及系统、网络信息的拦截方法及系统、设备、存储介质。
本发明是通过下述技术方案来解决上述技术问题:
一种信息识别模型的建立方法,所述建立方法包括以下步骤:
获取已标识类型的网络信息作为训练样本,并对每则网络信息的文本内容进行分词处理,得到特征词;
计算每则网络信息中,至少两个特征词组合后的词组的tf-idf值;
根据所述tf-idf值训练svm模型,得到所述信息识别模型;
所述信息识别模型用于识别所述网络信息的类型。
较佳地,所述网络信息的类型包括:待拦截信息和正常信息;
所述tf-idf值的计算公式如下:
tf-idf=tf*idf;
tf={j:ni∈dneg}/dneg;
idf=log(d/{j:ni∈dpos});
其中,dneg表示所述训练样本中待拦截信息的条数;{j:ni∈dneg}表示所述待拦截信息中包含词组ni的消息j的条数;dpos表示所述训练样本中正常信息的条数;{j:ni∈dpos}表示所述正常信息中包含词组ni的消息j的条数;d表示所述训练样本中所述网络信息的条数;j∈{1,2,…,d}。
较佳地,根据所述tf-idf值训练svm模型的步骤,具体包括:
选取数值最大的若干tf-idf值输入svm模型进行模型训练;
或,将大于训练阈值的tf-idf值输入svm模型进行模型训练。
较佳地,对每则网络信息的文本内容进行分词处理的步骤之后,还包括:
对分词结果进行清洗以去除所述文本内容中的停用词。
较佳地,将至少两个特征词组合成词组的步骤,具体包括:
将所述文本内容中顺序的两个特征词组合成一个词组。
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项所述的信息识别模型的建立方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的信息识别模型的建立方法的步骤。
一种网络信息的拦截方法,所述拦截方法包括:
利用上述任意一项所述的信息识别模型的建立方法建立信息识别模型;
根据所述信息识别模型识别网络信息的类别;
根据所述类别拦截网络信息。
较佳地,根据所述类别拦截网络信息的步骤,具体包括:
判断所述类别为待拦截信息的网络信息与所述svm模型的分类函数的几何距离是否大于距离阈值;
在判断为是时,拦截所述网络信息。
较佳地,在判断所述几何距离不大于所述距离阈值时,所述拦截方法还包括:
获取每个特征词的tf-idf值并累加;
在判断累加结果在第一范围内时,拦截所述网络信息。
较佳地,在判断所述累加结果在第二范围内时,发送验证提醒至发布所述网络信息的客户端;
在接收到验证信息时,发布所述网络信息;
所述第二范围的上限值小于所述第一范围的下限值。
一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项所述的网络信息的拦截方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的网络信息的拦截方法的步骤。
一种信息识别模型的建立系统,所述建立系统包括:
分词模块,用于将获取的已标识类型的网络信息作为训练样本,并对每则网络信息的文本内容进行分词处理,得到特征词;
计算模块,用于计算每则网络信息中,至少两个特征词组合后的词组的tf-idf值;
模型训练模块,用于根据所述tf-idf值训练svm模型,得到所述信息识别模型;
所述信息识别模型用于识别所述网络信息的类型。
较佳地,所述网络信息的类型包括:待拦截信息和正常信息;
所述tf-idf值的计算公式如下:
tf-idf=tf*idf;
tf={j:ni∈dneg}/dneg;
idf=log(d/{j:ni∈dpos});
其中,dneg表示所述训练样本中所述待拦截信息的条数;{j:ni∈dneg}表示所述待拦截信息中包含词组ni的消息的条数;dpos表示所述训练样本中所述正常信息的条数;{j:ni∈dpos}表示所述正常信息中包含词组ni的消息的条数;d表示所述训练样本中所述网络信息的条数;j∈{1,2,…,d}。
较佳地,所述模型训练模块具体用于选取数值最大的若干tf-idf值输入svm模型进行模型训练;或,将大于训练阈值的tf-idf值输入svm模型进行模型训练。
较佳地,所述建立系统还包括:
清洗模块,用于对分词结果进行清洗以去除所述文本内容中的停用词。
较佳地,所述计算模块具体包括:组合单元;
所述组合单元用于将所述文本内容中顺序的两个特征词组合成一个词组。
一种网络信息的拦截系统,所述拦截系统包括:
拦截模块和利用上述任意一项所述的信息识别模型的建立系统建立的信息识别模型;
所述信息识别模型用于识别网络信息的类别;
所述拦截模块用于根据所述类别拦截网络信息。
较佳地,所述拦截模块具体包括:判断单元和拦截单元;
所述判断单元用于判断所述类别为待拦截信息的网络信息与所述svm模型的分类函数的几何距离是否大于距离阈值,并在判断为是时调用所述拦截单元;
所述拦截单元用于拦截所述网络信息。
较佳地,所述拦截系统还包括:计算单元;
所述判断单元还用于在判断所述几何距离不大于距离阈值时调用所述计算单元;
所述计算单元用于获取每个特征词的tf-idf值并累加;
所述判断单元还用于判断累加结果是否在第一范围内,并在判断为是时调用所述拦截单元。
较佳地,所述拦截系统还包括验证提醒单元和发布单元;
所述判断单元还用于判断所述累加结果是否在第二范围内,并在判断为是时,调用所述验证提醒单元;
所述验证提醒单元用于发送验证提醒至发布所述网络信息的客户端;
所述发布单元用于在接收到验证信息时,发布所述网络信息;
所述第二范围的上限值小于所述第一范围的下限值。
本发明的积极进步效果在于:本发明提高了网络信息类别识别的准确度,为广告、骚扰信息的快速、准确拦截提供帮助。
附图说明
图1为本发明实施例1的信息识别模型的建立方法的流程图。
图2为本发明实施例2的电子设备的结构示意图。
图3本发明实施例4的网络信息的拦截方法的第一流程图。
图4本发明实施例4的网络信息的拦截方法的第二流程图。
图5本发明实施例7的信息识别模型的建立系统的模块示意图。
图6本发明实施例8的网络信息的拦截系统的模块示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
如图1所示,本实施例的信息识别模型的建立方法包括以下步骤:
步骤101、获取已标识类型的网络信息作为训练样本,并对每则网络信息的文本内容进行分词处理。
其中,网络信息的类型包括:待拦截信息和正常信息。待拦截信息例如敏感信息、广告和骚扰信息等负向信息;正常信息也即可安全发布,不涉及敏感信息,不是广告和骚扰信息等正向信息。需要说明的是,网络信息的类型可根据实际情形自行设置,不限于本实施例中的2种,可以是3种,甚至更多。
步骤102、对分词结果进行清洗以去除文本内容中的停用词,得到特征词。
其中,停用词例如可以是“啊”、“呢”、“的”等无实际意义的词,标点符号,特殊符号等。通过对网络信息进行清洗、去除停用词,得到的特征词更能反映网络信息的真实含义,且可减小算法的复杂度。
步骤103、计算每则网络信息中,至少两个特征词组合后的词组的tf-idf值。
由于,通过单个特征词一般无法表征消息含义,本实施例中将多个特征词组合后,能很好地表示消息的含义,分别统计每个词组的tf-idf值,且词组的组合方式不限。
优选地,将每则网络信息的文本内容中顺序的两个特征词组合成一个词组,若一则网络信息包括k个特征词,组合得到k-1个词组。
本实施例中,词组的tf-idf值的计算公式如下:
tf-idf=tf*idf;
tf={j:ni∈dneg}/dneg;
idf=log(d/{j:ni∈dpos});
其中,dneg表示训练样本中待拦截信息的条数;{j:ni∈dneg}表示待拦截信息中包含词组ni的消息的条数;dpos表示训练样本中正常信息的条数;{j:ni∈dpos}表示正常信息中包含词组ni的消息的条数;d表示训练样本中网络信息的条数;j∈{1,2,…,d}。
步骤104、根据tf-idf值训练svm模型,得到信息识别模型。
其中,信息识别模型用于识别网络信息的类型。
具体的,将每则网络信息的词组的tf-idf值构成特征向量,输入svm模型进行模型训练,训练网络信息类别的线性划分。训练样本包括正向训练集和负向训练集,正向训练集也即类型为正常信息的词组的tf-idf值的集合,负向训练集也即类型为待拦截信息的词组的tf-idf值的集合。其中,可将组合后的所有词组的tf-idf值输入svm模型进行模型训练,也可从中选取数值最大的若干tf-idf值输入svm模型进行模型训练,或者从中选取大于训练阈值的tf-idf值输入svm模型进行模型训练。需要说明的是,训练阈值可根据实际需求自行设置。
训练svm也即确定模型的分类函数,本实施例中,该分类函数表现为二维平面上的一条直线,正向消息(正常信息)、负向消息(待拦截信息)分别划分在直线两边。当识别新的网络消息时,无需重新训练信息识别模型,也就是不改变分类函数,即能准确识别新的网络消息的类型。
本实施例中,使用负向消息和较少量正向消息的情况下,即能建立识别准确度较高的网络信息识别模型,节省训练资源消耗,能为广告、骚扰信息的快速、准确拦截提供帮助。
实施例2
图2为本发明实施例提供的一种电子设备的结构示意图,示出了适于用来实现本发明实施方式的示例性电子设备30的框图。图2显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图2所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
总线33包括数据总线、地址总线和控制总线。
存储器32可以包括易失性存储器,例如随机存取存储器(ram)321和/或高速缓存存储器322,还可以进一步包括只读存储器(rom)323。
存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1所提供的信息识别模型的建立方法。
电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口35进行。并且,模型生成的电子设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器36通过总线33与模型生成的电子设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的电子设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例3
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现实施例1所提供的信息识别模型的建立方法的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现实施例1所提供的信息识别模型的建立方法中的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
实施例4
如图3所示,本实施例的网络信息的拦截方法包括:
步骤210、建立信息识别模型。
具体的,利用实施例1中的信息识别模型的建立方法建立信息识别模型。
步骤220、根据信息识别模型确定待发布的网络信息的类别。
本实施例中,步骤220之前,还包括:
步骤211、对待发布的网络信息的文本内容进行分词处理。
步骤212、对分词结果进行清洗以去除文本内容中的停用词,得到特征词。
步骤213、计算至少两个特征词组合后的词组的tf-idf值。
其中,计算过程同实施例1中的训练样本的计算过程。
需要说明的是,若实施例1中将训练样本、该新的网络信息以及其tf-idf值和类型存储于数据库中,则待发布的网络信息的词组的tf-idf值只需通过查找数据库,即可获得,无需计算。
步骤230、根据类别拦截网络信息。
本实施例中,如图4所示,根据类别拦截网络信息的步骤,具体包括:
步骤230-1、判断网络信息的类别。
若该待发布的网络信息的类别为正常信息,则发布该网络信息。
若该待发布的网络信息的类别为待拦截信息,则执行步骤203-2,对网络信息做进一步判断,减小误拦截的概念。
步骤230-2、判断网络信息与svm模型的分类函数的几何距离是否大于距离阈值。
其中,距离阈值可根据实际情况自行设置,例如设为80。该距离阈值也可以通过仿真和系统运行情况灵活调整。
步骤230-2中,若判断为是,则拦截网络信息,不予发布;若判断为否,则执行步骤230-3。
步骤230-3、获取每个特征词的tf-idf值并累加。
其中,待发布的网络信息的特征词的tf-idf值的获取方式与词组的tf-idf值的获取相同,此处不再赘述。
步骤230-4、判断步骤230-3中的累加结果是否在第一范围内。
其中,第一范围可根据实际情况自行设置,例如设为区间(90,100)。
步骤230-4中,若判断为是,则拦截网络信息,不予发布。若判断为否,则执行步骤230-5。
步骤230-5、判断步骤230-3中的累加结果是否在第二范围内。
其中,第二阈值可根据实际情况自行设置,例如设为区间(70,90]。
步骤230-5中,若判断为是,则执行步骤230-6。若判断为否,说明该待发布的网络信息的词组的tf-idf值的累加结果落入区间(0,70]范围内,则发布网络信息。
其中,特征词的累加结果是一个0到100的分数,将其作为网络消息的负面值,根据该负面值可灵活采用拦截策略。
步骤230-6、发送验证提醒至发布网络信息的客户端。
步骤230-6中的验证提醒,可通过语音验证方式,也可通过验证码方式。例如,若累加结果落入区间(70,80],则采用验证码方式;若累加结果落入区间(80,90],则采用语音验证方式。
步骤230-7、判断预设时间段内是否接收到验证信息。
若判断为是,则发布网络信息;若判断为否,则拦截网络信息,不予发布。
本实施例中的拦截方法能准确拦截广告、骚扰信息等负向信息,且通过设置与分类函数的距离、第一范围和第二范围作为拦截与否的评判条件,一方面提高了拦截准确度,降低了误拦截概率,另一方面提高了拦截策略的复杂程度,使其较难被破解。
实施例5
本实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例4示出的网络信息的拦截方法。
实施例6
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现实施例4示出的网络信息的拦截方法的步骤。
实施例7
如图5所示,本实施例的信息识别模型的建立系统包括:分词模块11、清洗模块12、计算模块13和模型训练模块14。
分词模块11用于将获取的已标识类型的网络信息作为训练样本,并对每则网络信息的文本内容进行分词处理。其中,网络信息的类型包括:待拦截信息和正常信息。待拦截信息例如敏感信息、广告和骚扰信息等负向信息;正常信息也即可安全发布的正常信息,不涉及敏感信息,不是广告和骚扰信息等。需要说明的是,网络信息的类型可根据实际情形自行设置,不限于本实施例中的2种,可以是3种,甚至更多。
清洗模块12用于对分词结果进行清洗以去除文本内容中的停用词,得到特征词。其中,停用词例如可以是“啊”、“呢”、“的”等无实际意义的词,标点符号,特殊符号等。通过对网络信息进行清洗、去除停用词,得到的特征词更能反映网络信息的真实含义,且可减小算法的复杂度。
计算模块13用于计算每则网络信息中,至少两个特征词组合后的词组的tf-idf值。本实施例中,计算模块13具体包括:组合单元和计算单元。
组合单元用于将文本内容中至少两个特征词组合成词组。由于,通过单个特征词一般无法表征消息含义,本实施例中将多个特征词组合后,能很好地表示消息的含义,且词组的组合方式不限。优选地,组合单元将每则网络信息的文本内容中顺序的两个特征词组合成一个词组,若一则网络信息包括k个特征词,组合得到k-1个词组。
计算单元用于通过以下公式计算每个词组的tf-idf值:
tf-idf=tf*idf;
tf={j:ni∈dneg}/dneg;
idf=log(d/{j:ni∈dpos});
其中,dneg表示训练样本中待拦截信息的条数;{j:ni∈dneg}表示待拦截信息中包含词组ni的消息的条数;dpos表示训练样本中正常信息的条数;{j:ni∈dpos}表示正常信息中包含词组ni的消息的条数;d表示训练样本中网络信息的条数;j∈{1,2,…,d}。
模型训练模块14用于根据tf-idf值训练svm模型,得到信息识别模型;其中,信息识别模型用于识别网络信息的类型。
具体的,模型训练模块可将组合后的所有词组的tf-idf值构成特征向量输入svm模型进行模型训练,也可从中选取数值最大的若干tf-idf值构成特征向量输入svm模型进行模型训练,或者从中选取大于训练阈值的tf-idf值构成特征向量输入svm模型进行模型训练,训练网络信息类别的线性划分。需要说明的是,训练阈值可根据实际需求自行设置
训练svm也即确定模型的分类函数,本实施例中,该分类函数表现为二维平面上的一条直线,正向消息(正常信息)、负向消息(待拦截信息)分别划分在直线两边。当识别新的网络消息时,无需重新训练信息识别模型,也就是不改变分类函数,即能准确识别新的网络消息的类型。
本实施例中,使用负向消息和较少量正向消息的情况下,即能建立识别准确度较高的网络信息识别模型,节省训练资源消耗,能为广告、骚扰信息等负向信息的快速、准确拦截提供帮助。
实施例8
如图6所示,本实施例的网络信息的拦截系统包括:信息识别模型21和拦截模块22。信息识别模型21利用实施例7的信息识别模型的建立系统获得。拦截模块22用于根据信息识别模型识别的网络信息的类别,拦截网络信息。
当然,将待发布网络信息输入信息识别模型前,需要计算该网络信息的词组的tf-idf值,计算过程与实施例7中的训练样本的tf-idf值的计算过程类似,此处不再赘述。需要说明的是,若实施例7中将训练样本、该新的网络信息以及其tf-idf值和类型存储于数据库中,则待发布的网络信息的词组的tf-idf值只需通过查找数据库,即可获得,无需计算。
具体的,拦截模块22具体包括:判断单元221、拦截单元222、计算单元223、验证提醒单元224和发布单元225。
若信息识别模型21识别出待发布的网络信息为正常信息,则调用发布单元225发布该网络信息;若识别出待发布的网络信息为待拦截信息,则调用判断单元221。
判断单元221判断类别为待拦截信息的网络信息与svm模型的分类函数的几何距离是否大于距离阈值,并在判断为是时调用拦截单元222,以拦截该网络信息,不予发布;在判断为否时,调用计算单元223。
其中,距离阈值可根据实际情况自行设置,例如设为80。该距离阈值也可以通过仿真和系统运行情况灵活调整。
计算单元223用于获取每个特征词的tf-idf值并累加。其中,特征词的tf-idf值的获取方式与词组的tf-idf值的获取相同,此处不再赘述。特征词的累加结果是一个0到100的分数,将其作为网络消息的负面值,根据该负面值可灵活采用拦截策略。
判断单元221还用于判断计算单元223的累加结果是否在第一范围内,并在判断为是时,调用拦截单元222;在判断为否时,进一步判断累加结果是否在第二范围内。
其中,第一范围和第二范围可根据实际需求自行设置,例如第一范围设为(90,100),第二范围设为区间(70,90]。
若累加结果不在第二范围内,说明累加结果落入区间(0,70]范围内,则判断单元221调用发布单元225,发布该网络信息。
若累加结果在第二范围内,则判断单元221调用验证提醒单元224。验证提醒单元224用于发送验证提醒至发布网络信息的客户端;发布单元225用于在接收到验证信息时,发布该网络信息。
本实施例中,验证提醒单元224可采用语音验证方式,也可采用验证码方式。例如,若累加结果落入区间(70,80],则采用验证码方式;若累加结果落入区间(80,90],则采用语音验证方式。
本实施例中的拦截方法能准确拦截广告、骚扰信息等负向信息,且通过设置与分类函数的距离、第一范围和第二范围作为拦截与否的评判条件,一方面提高了拦截准确度,降低了误拦截概率,另一方面提高了拦截策略的复杂程度,使其较难被破解。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。