CN112632219B - 一种垃圾短信的拦截方法和拦截装置 - Google Patents

一种垃圾短信的拦截方法和拦截装置 Download PDF

Info

Publication number
CN112632219B
CN112632219B CN202011498137.6A CN202011498137A CN112632219B CN 112632219 B CN112632219 B CN 112632219B CN 202011498137 A CN202011498137 A CN 202011498137A CN 112632219 B CN112632219 B CN 112632219B
Authority
CN
China
Prior art keywords
spam
cluster
message sample
library
suspected
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011498137.6A
Other languages
English (en)
Other versions
CN112632219A (zh
Inventor
李�根
贲卫国
王扬
郭超
黄鹏
王科峰
于波
宋微
刘佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202011498137.6A priority Critical patent/CN112632219B/zh
Publication of CN112632219A publication Critical patent/CN112632219A/zh
Application granted granted Critical
Publication of CN112632219B publication Critical patent/CN112632219B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提出了一种垃圾短信的拦截方法和拦截装置。本申请提出的技术方案中,将新的垃圾短信变种加入到已有的垃圾短信样本库中,重新训练模型,进而对原有模型进行了更新,使得更新后的模型能够根据垃圾短信内容变化而变化,从而在遇到新的变种短信时可以准确识别,提升了对垃圾短信变种的识别率;此外,通过动态形成不同权重的簇来影响分类模型的训练,使得更新后的分类模型可以提高对高频垃圾短信的灵敏程度,而降低对低频垃圾短信的灵敏程度。

Description

一种垃圾短信的拦截方法和拦截装置
技术领域
本申请涉及短信技术领域,尤其涉及一种垃圾短信的拦截方法和拦截装置。
背景技术
随着通讯业务的发展,手机的普及和短信的资费的下降,用户使用短信传递信息越来越多。但是,用户接收广告短信、诈骗短信等垃圾短信的次数也越来越多,垃圾短信越来越泛滥。垃圾短信的泛滥已经严重影响到用户对短信使用的感受,甚至超出了用户的忍受限度,因此,针对垃圾短信进行治理已经刻不容缓。
目前,垃圾短信的拦截方式为基于神经网络模型进行拦截,即根据大量的垃圾短信样本和非垃圾短信样本训练一个神经网络模型,然后利用训练出来的神经网络模型对垃圾短信进行分类识别,对识别出的垃圾短信进行拦截。
但是,当遇到垃圾短信的未知变种时,基于神经网络模型的拦截方法的拦截率会降低。例如,垃圾短信的发送者会根据垃圾短信发送的成功与否情况,更改部分文字,文字顺序,采用拼接字、合体字、同音字、同型字等等手段迷惑欺骗基于神经网络模型的拦截系统。
发明内容
本申请提供一种垃圾短信的拦截方法,可以提高垃圾短信的拦截成功率。
第一方面,本申请提供一种垃圾短信的拦截方法。该拦截方法包括:步骤一:获取第一垃圾短信样本库,所述第一垃圾短信样本库中的垃圾短信划分为T个类别,所述T类别中第Ti个类别的垃圾短信划分为Mi个簇,Ti为小于或等于T的正整数,Mi为正整数;步骤二:获取嫌疑垃圾短信样本库,所述嫌疑垃圾短信样本库中的嫌疑垃圾短信样本的类别属于所述T个类别;步骤三:计算嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与第一垃圾短信样本库中与每个嫌疑垃圾短信样本中属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定每个嫌疑垃圾短信样本的簇为每个嫌疑垃圾短信样本所属的类别中的第一簇,将嫌疑垃圾短信样本加入第一垃圾短信样本库中的第一簇中,得到第二垃圾短信样本库;步骤四:判断第二垃圾短信样本库中的每个类别中的簇的数量是否小于或等于簇数量阈值且每个簇中的垃圾短信之间的最小相似度高于或等于相似度阈值;步骤五:若第二垃圾短信样本库中的任意一个类别中的簇的数量大于簇数量阈值或任意一个簇中的垃圾短信之间的最小相似度小于相似度阈值,则判断计算每个嫌疑垃圾短信样本所属的所述第一簇的迭代次数是否小于或等于次数阈值;步骤六:若迭代次数小于或等于次数阈值,则从第二垃圾短信样本库中获取第一子库和第二子库,所述第一子库包括所述第二垃圾短信样本库中指定类别中权值小的P个簇中的垃圾短信样本和指定簇中的垃圾短信样本,所述指定类别为T个类别中簇的数量大于簇数量阈值的类别,所述P个簇包括指定类别中除前数量阈值个簇以外的簇,所述指定簇是指垃圾短信之间的最小相似度小于所述相似度阈值的簇,所述第一子库中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,所述第二子库包括第二垃圾短信样本库中除第一子库以外的垃圾短信样本;步骤七:将嫌疑垃圾短信样本库更新为所述第一子库,将第一垃圾短信样本库更新为第二子库,重新从步骤三开始执行;步骤八:若第二垃圾短信样本库中的任意一个类别中的簇的数量小于或等于簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于相似度阈值,或者,若迭代次数大于次数阈值,则从第二垃圾短信样本库中提取目标簇中的垃圾短信样本,得到垃圾短信负样本,所述目标簇是指包含至少两个垃圾短信样本的簇;步骤九:在垃圾短信负样本中加入正常短信正样本,得到训练样本;步骤十:使用训练样本对神经网络模型进行训练,得到更新后的分类模型;步骤十一:基于更新后的分类模型进行垃圾短信拦截。
本申请提供的垃圾短信的拦截方法,将新的垃圾短信变种加入到已有的垃圾短信样本库中,重新训练模型,进而对原有模型进行了更新,使得更新后的模型能够根据垃圾短信内容变化而变化,从而在遇到新的变种短信时可以准确识别,提升了对垃圾短信变种的识别率。此外,通过动态形成不同权重的簇来影响分类模型的训练,使得更新后的分类模型可以提高对高频垃圾短信的灵敏程度,而降低对低频垃圾短信的灵敏程度。
结合第一方面,在一种可能的实现方式中,嫌疑垃圾短信样本库中包括以下至少一种:垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本。
结合第一方面,在一种可能的实现方式中,计算嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与第一垃圾短信样本库中与每个嫌疑垃圾短信样本属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定每个嫌疑垃圾短信样本的簇为每个嫌疑垃圾短信样本所属的类别中的第一簇,将嫌疑垃圾短信样本加入第一垃圾短信样本库中的第一簇中,得到第二垃圾短信样本库,包括:如果嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与第一垃圾短信样本库中的同一所述类别属性的任意一个垃圾短信样本的相似度不大于K,所述每个嫌疑垃圾短信样本所属的第一簇为新增加的单独的一个簇,将嫌疑垃圾短信样本加入第一垃圾短信样本库中的第一簇中,得到第二垃圾短信样本库;如果嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所第一垃圾短信样本库中的同一类别属性的一个垃圾短信样本的相似度大于K,每个嫌疑垃圾短信样本所属的第一簇为的所述一个垃圾短信样本所属的簇,将嫌疑垃圾短信样本加入第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;所述K为大于0的自然数。
结合第一方面或上述任意一种可能的实现方式,在一种可能的实现方式中,使用训练样本对神经网络模型进行训练,得到更新后的分类模型之后,还可以包括:若当前用于训练的目标簇的个数大于簇数量阈值,将K值减小。
第二方面,本申请提供一种拦截装置,该拦截装置包括用于实现第一方面或其中任意一种可能的实现方式中的拦截方法的各个功能模块。
第三方面,本申请提供一种芯片,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行如第一方面或其中任意一种可能的实现方式所述的垃圾短信的拦截方法。
第四方面,本申请提供一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如第一方面或其中任意一种可能的实现方式所述的垃圾短信的拦截方法。
第五方面,本申请提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行如第一方面或其中任意一种可能的实现方式所述的垃圾短信的拦截方法。
附图说明
图1为本申请一个实施例提供的短信拦截系统示意图;
图2为本申请一个实施例提供的另一短信拦截系统示意图;
图3为本申请一个实施例提供的垃圾短信拦截方法的示意图;
图4为本申请一个实施例提供的垃圾短信拦截方法的示意性流程图;
图5为本申请一个实施例提供的垃圾短信的拦截装置的结构示意图;
图6为本申请另一个实施例提供的垃圾短信的拦截装置的结构示意图。
具体实施方式
为于理解,首先对本申请所涉及到的相关术语进行说明。
1、编辑距离
编辑距离(minimum edit distance,MED)是由俄罗斯科学家VladimirLevenshtein在1965年提出。
在信息论、语言学和计算机科学领域,MED是用来度量两个序列相似程度的指标。通俗地来讲,编辑距离指的是在两个单词之间,由其中一个单词转换为另一个单词所需要的最少单字符编辑操作的次数。其中,单字符编辑操作有且仅有三种,插入、删除与替换。例如,对于英文单词“kitten”和“sitting”,由“kitten”转换为“sitting”需要的最少单字符编辑操作有:将“kitten”中的“k”先替换为“s”变成“sitten”,再将“sitten”中的“e”变成“sittin”,最后在“sittin”中插入“g”变为“sitting”,因此,“kitten”和“sitting”之间的编辑距离为3。
2、神经网络模型
人工智能(artificial intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
当今人工智能的关键技术是神经网络(neural networks,NN)。神经网络通过模拟人脑神经细胞连接,将大量的、简单的处理单元(称为神经元)广泛互连,形成复杂的网络系统。
一个简单的神经网络包含三个层次,分别是输入层、输出层和隐藏层(也称中间层),每一层之间的连接都对应一个权重(其值称为权值、参数)。神经网络之所以能在计算机视觉、自然语言处理等领域有出色性能,是因为通过训练算法调整权值,使神经网络的预测结果最佳。
神经网络的训练一般包含两个计算步骤,第一步为前向计算,第二步为反向计算。其中,前向计算为:输入值与参数经过计算后,再经过一个非线性函数产生输出值。输出值或作为网络的最终输出,或将作为后续的输入值继续执行类似的计算。网络的输出值与对应样本的实际标签值的偏差,用模型损失函数来衡量,损失函数表示为输入样本x和网络参数W的函数f(x,w),为了使损失函数降至最小,需要不断调整网络的参数W,而反向计算是为了得到参数W的更新值,在基于梯度下降的算法中,反向计算从神经网络的最后一层开始,计算损失函数对每一层参数的偏导数,最后得到全部参数的偏导数,称为梯度。每次迭代时,把参数W以一定步长η向梯度的反方向更新,得到新的参数W,即完成一步训练。该更新过程用下式表示:
Figure GDA0002960117530000051
其中,wt表示第t次迭代时使用的参数,wt+1表示更新后的参数,η称为学习率,Bt表示第t次迭代输入的样本集合。
训练神经网络的过程也就是对神经元对应的权重进行学习的过程,其最终目的是得到训练好的神经网络模型的每一层神经元对应的权重。
图1为本申请一个实施例提供的短信拦截系统示意图。如图1所示,本申请实施例提供的短信拦截系统可以包括拦截装置和短信平台,拦截装置与短信平台相连接。
其中,拦截装置可以是云服务器、实体服务器等,能够对垃圾短信进行识别拦截。对于图1所示的短信拦截系统,当行业用户101向终端设备102发送短信时,短信平台首先将待处理的短信信息发送给拦截装置,拦截装置根据拦截算法对待处理的短信信息进行识别,识别是否为垃圾短信,如果判断为是垃圾短信,则对其进行拦截,如果不是垃圾短信,则将其返回给短信平台,短信平台再将拦截后的短信信息正常发送给终端设备102其中,行业用户101可以是银行、航空公司、餐厅等等可以为用户提供服务的企业或者单位等。
作为一种示例,对于图1所示的拦截系统,假设短信平台接收到了短信1、短信2、短信3和短信4,则该短信平台先将这4条短信发送给拦截装置,拦截装置根据其使用的拦截算法对该4条短信进行识别,例如识别出来短信2和短信3是垃圾短信,则对短信2和短信3进行拦截,然后将短信1和短信4返回给短信平台,短信平台再将短信1和短信4发送给终端设备102,相应地,该终端设备102可以提示用户有2条新短信。
图2为本申请一个实施例提供的另一短信拦截系统示意图。如图2所示,拦截装置也可以是具有拦截能力的短信平台。短信平台在接收到行业用户发送给终端设备102的短信时,该具有拦截能力的短信平台直接判断是否拦截,如果是垃圾短信则进行拦截,如果不是垃圾短信,则将其正常发送给接收方。
目前,图1或图2所示的拦截系统对于垃圾短信的拦截方式如下:基于神经网络模型的方法进行拦截,即根据大量的垃圾短信样本和非垃圾短信样本训练一个神经网络模型,然后利用训练出来的神经网络模型对垃圾短信进行分类识别,将识别出的垃圾短信进行拦截。
在实际应用中,训练好的神经网络模型是固定不变的,而垃圾短信的发送者为了避免被短信拦截软件和各种安全软件的拦截,会根据垃圾短信发送的成功与否情况,对垃圾短信经过“变种”,例如更改部分文字、文字顺序、采用拼接字、合体字、同音字、同型字等等手段迷惑欺骗垃圾短信拦截系统,以保证发送的成功率,因此,基于神经网络模型的拦截系统对变种后的垃圾短信识别率低。
鉴于此,本申请提供一种垃圾短信的拦截方法。本申请提出的方法中,将新的垃圾短信变种加入到已有的垃圾短信样本库中,重新训练神经网络模型,进而能够更新原有的模型,使得垃圾短信拦截系统能够根据垃圾短信内容变化而变化,从而在遇到新的变种短信时,可以准确识别,提升对垃圾短信变种的识别率。
新的短信变种可以是用户投诉或垃圾短信拦截装置的管理员添加至垃圾短信样本库的,并且,在添加之前,用户或管理员会标注该短信变种的类别。此外,垃圾短信库中的样本短信还可以是基于神经网络模型的分类模型识别得到的垃圾短信。
不论是分类模型识别的,还是用户投诉或者管理员添加的垃圾短信,都有可能存在错误判定的情况,因此,为了进一步提高基于神经网络模型的分类模型的垃圾短信识别率,即使得更新后的分类模型能够对嫌疑垃圾短信提供一定的容错性,本申请还提出了如下方法:通过聚类趋同和异化拆解的自学习方法,计算嫌疑垃圾短信与样本库中垃圾短信的相似度,将嫌疑垃圾短信加入到对应的垃圾类别包括的簇中,然后对样本库中的短信进行周期计算,动态形成不同的簇,然后将该簇作为训练负样本,融入正常的非垃圾短信正样本去进行分类模型训练,从而使得原有的分类模型进行更新。其中,不同的簇代表了具有某些相似特征的垃圾短信在垃圾短信样本库出现的频率,即该簇中的垃圾短信越多,证明出现的频率越高,即在垃圾短信样本库中的权重越高,因此,在重新进行分类模型训练时,簇值高的垃圾短信能够对分类模型的影响更大,簇值小的垃圾短信对分类模型的影响更小,从而使得更新后的分类模型可以提高对高频垃圾短信的灵敏程度。
图3为本申请一个实施例的垃圾短信的拦截方法的流程示意图。如图3所示,当一个新的短信从短信接口入口输入到分类模型后,分类模型会对其进行识别输出,如果不是垃圾短信则通过短信接口出口正常显示给用户,如果是垃圾短信,则对其进行拦截,并添加至垃圾短信样本库中。可选地,用户投诉的垃圾短信也可以添加至垃圾短信样本库,管理员也可以向垃圾短信样本库中添加垃圾短信。
垃圾短信样本库用于训练分类模型,并更新垃圾短信拦截装置中的分类模型。这样,垃圾短信拦截装置就可以识别出更多的垃圾短信变种了,从而提高了拦截装置的垃圾短信识别成功率。
图4为本申请一个实施例提供的垃圾短信拦截方法的示意性流程图。如图4所示,本实施例的方法可以包括S401、S402、S403、S404、S405、S406、S407、S408、S409、S410和S411。该拦截方法可以由图1或图2所示的拦截装置来执行。
S401、获取第一垃圾短信样本库,所述第一垃圾短信样本库中的垃圾短信划分为T个类别,所述T个类别中第Ti个类别的垃圾短信划分为Mi个簇,Ti为小于或等于T的正整数,Mi为正整数。
其中,第一垃圾短信样本库是指已经确定为垃圾短信的样本库。
在此说明的是,目前每个运营商都具有大量的已经确定为垃圾短信的数据,因此很容易获得第一垃圾短信样本库。
本实施例中,第一垃圾短信样本库的数目可以根据实际情况的不同而不同,例如,第一垃圾短信样本库包括57130条垃圾短信。
本实施例中,T表示第一垃圾短信样本库中包括的不同类别的数目,Ti为T个类别中的第i个类别。例如,T可以是17,表示将已经确定的垃圾短信库分成17个分类,当i取3时,表示该17个类别中的第三个类别。
在一种可实施方式中,可以按照垃圾短信目的的不同将已经确定的垃圾短信样本库大致分成第一数值个类别,例如当第一设定数值是17时,可以包括:办证发票、暴力催贷、代考枪手、代孕诈骗、商品推销、违禁商品、伪装通知、幸运中奖、脏话谩骂、威胁诈骗、卖茶赏花、伪装熟人、工作兼职、反动言论、高利贷款、赌博彩票、其他等17个类别。
应理解,每一个类别的垃圾短信可能包含一些不同的子类,这些子类也称为簇,以上述17个类别中的幸运中奖类别为例,虽然该类别里面都是中奖垃圾短信,但是特征类型其实很有很多的,有的是赢取***,有的是领取购物劵,这个里面虽然都属于幸运中奖分类,但每个小类型都是一个簇。因此本实施例将每个类别初始化成Mi个簇,表示每个类别中不同的子类。
还应理解,对于每一个簇,簇内包含的样本的个数就代表了该簇在整个类中的权值,即:簇内包括的样本个数越多,也就证明该簇在垃圾短信样本库所占的权值越大,簇内包括的样本个数越少,也就说明该簇在垃圾短信样本库所占的权值越小。
在此说明的是,本实施例中所述的第一垃圾短信样本库的数目、T和Mi均可以根据实际情况的不同而不同,本申请实施例对此不做限定。
可选的,在将已经确定的垃圾短信进行初始化分类之前,可以对已确定的垃圾短信进行预处理,比如将电话号码替换为“**********”,网址替换为“aaa.aaa.aaa”等。在此说明的是,对已确定的垃圾短信进行预处理还可以使用其他方式,本申请实施例对此不做限定。
S402、获取嫌疑垃圾短信样本库,所述嫌疑垃圾短信样本库中的嫌疑垃圾短信样本的类别属于所述T个类别;
在一种实现方式中,嫌疑垃圾短信样本库中包括以下至少一种:垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本。
应理解,垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本实际上都不是绝对可靠的,都存在错误判定的情况,即这三类短。信并不一定是真的垃圾短信,称为嫌疑垃圾短信。举个例子,对于用户投诉来说,垃圾短信的判定是用户主观意向,并无明确标准,直接行为就是投诉,但有时可能投诉的短信并不是垃圾短信,因此需要对该嫌疑短信进行重新判断。
本实施例中,嫌疑垃圾短信都有对应的分类,并且属于第一垃圾短信样本库中包括的T个类别。以嫌疑垃圾短信是分类模型输出作为示例,假设第一垃圾短信样本库总共有17个分类,当一个短信进入分类模型后,分类模型会对该短信进行分类识别,并给出属于17个分类中的哪一个类别。作为又一种示例,当嫌疑垃圾短信是管理员添加时,管理员也会标记该嫌疑短信是属于第一垃圾短信样本库中的哪一个类别。
在此说明的是,本实施例中的嫌疑垃圾短信可以是在一段时间内新获得的,例如是一个小时,或者也可以是5个小时,本实施例对此不做限定。
S403、计算嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与第一垃圾短信样本库中与所述每个嫌疑垃圾短信样本属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定所述每个嫌疑垃圾短信样本的簇为所述每个嫌疑垃圾短信样本所属的类别中的第一簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库。
应理解,垃圾短信的发送者为了避免被短信拦截系统或各种安全软件的拦截,会根据垃圾短信发送的成功与否情况,对垃圾短信经过“变种”,例如更改部分文字,文字顺序,采用拼接字,合体字、同音字、同型字等等手段迷惑欺骗垃圾短信拦截系统,保证起发送的成功率,例如把“短”拆成“矢”和“豆”,这样就可以穿过拦截系统。因此,本实施例将嫌疑垃圾短信与已经确定的垃圾短信做相似度计算,将这个变种后的短信识别出来,如果相似度很高,则认为这个嫌疑垃圾短信是已确定的某个垃圾短信的“变种”,然后将其加入到相应的垃圾短信分类中,以便之后再训练模型。
本实施例中,将每个嫌疑垃圾短信与第一垃圾短信样本库中属于同一个类别的所有垃圾短信样本逐一进行相似度计算。
作为一种示例,假设有一个新的短信样本,该新的短信样本输入到使用神经网络模型的拦截系统后,该拦截系统输出其对应的类别属于上述17个分类中的商品推销类,即嫌疑垃圾短信的类别属于商品推销这一大类,则可以将该嫌疑垃圾短信与第一垃圾短信样本库中的商品推销类别中的所有样本个体进行相似度计算。
在一种可实施方式中,可以使用编辑距离计算嫌疑垃圾短信与其对应的所属分类中所有样本个体的相似度。在此说明的是,编辑距离的具体实现过程可以参考相关描述,此处不再赘述。
在计算出嫌疑垃圾短信与所属类别中所有样本个体的相似度之后,可以根据计算得到的相似度确定每个嫌疑垃圾短信样本的簇为每个嫌疑垃圾短信样本所属的类别中的第一簇,将嫌疑垃圾短信样本加入第一垃圾短信样本库中的第一簇中,从而获得新的垃圾短信样本库,即第二垃圾短信样本库。
其中,第一簇表示每个嫌疑垃圾短信应当包括在所属类别包括的哪一个簇中。
应理解,一个嫌疑短信进来后,它会跟这个类别里面的某一个簇特别相似,因为言语,字都差不多,而编辑距离无非就是增加、删减或者替换,因此,该嫌疑短信最后会聚集在一个分类里面的一个簇里面。
在一种可实现方式中,如果嫌疑垃圾短信与所对应的同一类别中的任意一个垃圾短信样本的相似度不大于K,则该嫌疑垃圾短信单独成为一个簇。应理解,如果该嫌疑垃圾短信与所对应的同一个类别中的任意一个垃圾短信样本的相似度不大于K,说明该嫌疑垃圾短信与这个类别中的所有垃圾短信都不相似,则可以让该嫌疑垃圾短信单独成为一个簇,相应地,新增的簇的个数对应该簇在垃圾样本库中的权值。
作为一种示例,假设有一个嫌疑垃圾短信是经过非常严重的变种,那么可能与第一垃圾短信样本库里面的任何一个垃圾短信样本都不相似,则可以使其单独成为一个簇。
在另一种实现方式中,如果嫌疑垃圾短信与所对应的同一类别中的一个簇中的一个样本的相似度大于K,则被认为相似,将该嫌疑垃圾短信加入到该簇中。应理解,如果该新嫌疑垃圾短信与所对应的同一个类别中的一个垃圾短信样本的相似度大于K,说明该嫌疑垃圾短信与这个类别中的该垃圾短信样本所在的簇非常相似,也就证明该种短信出现的频率比较高,则可以将该嫌疑垃圾短信加入到该簇中,相应地,该簇由于该嫌疑样本的加入,簇包括的垃圾短信样本的个数变多,相应的簇对应的权值也随之提高。
作为一种示例,假设有一个嫌疑垃圾短信,其与样本库里面属于某个簇的一个垃圾短信相似度很高,说明该嫌疑短信可能虽然经过了变种,但还是属于该簇,也说明该簇中的短信出现的频率比较高。
作为又一种示例,如果嫌疑垃圾短信与所对应的同一类别中的一个簇中的一个样本的相似度为100%,说明该嫌疑垃圾短信与该样本一模一样,表示这个样本出现的频率比较高,将该嫌疑短信加入到对应的簇之后,簇的权值也因此增加,在这个簇里面,该样本的数量也就增多,即该样本对应的权值也就变大。
S404、判断第二垃圾短信样本库中的每个类别中的簇的数量是否小于或等于簇数量阈值且每个簇中的垃圾短信之间的最小相似度是否高于或等于相似度阈值,是则执行S408,否则执行S405。
在此说明的是,本实施例中的簇数量阈值和相似度阈值均可以根据实际情况的不同而不同,例如簇数量阈值可以取12,相似度阈值可以取80%,本申请实施例对此不做限定。
应理解,嫌疑垃圾短信进入第一垃圾短信样本库后,每个类别可能会形成不同的簇,如果最后形成的簇的数量小于簇数量阈值,则表示所有的垃圾短信样本出现的频率比较高,因此神经网络模型应当对该特征的垃圾短信具有更好的灵敏度。
应理解,如过某个簇中的最小相似度都高于相似度阈值,那么对于该簇中其他样本之间的相似度一定大于相似度阈值,则表明该簇中样本之间的相似度很高,那么该簇里面的某个样本可能是通过之前某个样本变种来的。
S405、判断S403的执行次数是否小于或等于次数阈值,是则执行S406,否则执行S408。
本实施例中,执行次数表示更新嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本所属的类别中的第一簇的循环迭代次数。
其中,次数阈值可以根据实际情况的不同而不同,例如可以选取次数阈值为3,表示更新3次。
S406、从第二垃圾短信样本库中获取第一子库和第二子库,第一子库包括所述第二垃圾短信样本库中指定类别中权值小的P个簇中的垃圾短信样本和指定簇中的垃圾短信样本,所述指定类别为T个类别中簇的数量大于簇数量阈值的类别,所述P个簇包括指定类别中除前数量阈值个簇以外的簇,所述指定簇是指垃圾短信之间的最小相似度小于相似度阈值的簇,所述第一子库中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,第二子库包括第二垃圾短信样本库中除第一子库以外的垃圾短信样本。
S407、将所述嫌疑垃圾短信样本库更新为所述第一子库,将所述第一垃圾短信样本库更新为所述第二子库,重新执行S403。
其中,指定类别表示簇数量大于簇数量阈值的类别。例如,在17个类别中,设定簇数量阈值是12,假设第三个类别的包括的簇数量为13,其余16个类别的包括的簇数量都小于12,则第三个类别就是指定类别。
本实施例中,权值小的P个簇可以被认为是其在第二垃圾短信样本库里面所占的权重比较小。
应理解,如果某个簇所占的权值特别小,也就是该簇包括的样本个数特别少,说明该簇内的短信第一可能不是非常流行,导致该种垃圾短信出现的频度很小,第二就是可能由于嫌疑短信对应的分类是错误的,导致其在当前分类中几乎没有相似度高的样本,从而导致簇相应的权值小。还应理解,当一个簇中任意两个样本之间的相似度都大于相似度阈值时,表示该簇中样本整体的相似度都很高。因此,为了保证簇内整体的垃圾短信样本的相似性,只要一个簇中含有最小相似度小于相似度阈值,则表示该簇里面包括样本相似度不高的垃圾短信样本。
因此可以将权值小的簇,或者最小相似度小于相似度阈值的簇中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,然后获得第一子库,在该第一字库内的所有样本可以认为是学习一次后的嫌疑垃圾短信。然后,将第二垃圾短信样本库中除第一子库外的所有垃圾短信样本认为是第二子库,也就是对应于确定的第一垃圾短信样本库,将第一子库作为新的嫌疑垃圾短信样本库,将第二子库作为第一垃圾短信样本库,重新执行S403。
在一种可实施方式中,将相应权值小的簇或者,最小相似度小于相似度阈值的簇拆分成单个个体,重新输入神经网络模型,获得对应的类,然后去重新进行相似度计算,并获得相应的簇,这样对于分错的嫌疑短信,有可能在下一次确定为正确的簇,即对错误判定的垃圾短信具有纠错效果。
作为一种示例,假设簇数量阈值为12,嫌疑垃圾短信有1000个,并且类别是上述17个类别中的第一个类别,当按照相似度确定了该1000条嫌疑垃圾短信在样本库中对应的簇后,现在第一个类别中包括的簇有13个,则可以将第一个类别中的所有簇相应的权值首先进行排序,然后将权值最小的簇拆分成单个个体,如果是14个,则将权值最小的两个簇对应的样本拆分成个体,输入到神经网络模型获得对应的类别值,然后重新进行步骤S403,重新确定对应的簇。
S408、若第二垃圾短信样本库中的任意一个类别中的簇的数量小于或等于簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于相似度阈值,或者,若迭代次数大于次数阈值,则从第二垃圾短信样本库中提取目标簇中的垃圾短信样本,得到垃圾短信负样本。所述目标簇是指包含至少两个垃圾短信样本的簇。
本实施例中,任意一个类别中的簇的数量小于或等于簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于相似度阈值,也就是每个类别中包括的簇个数小于簇数量阈值且每个簇中的最小相似度高于相似度阈值时,说明嫌疑垃圾短信加入到第一垃圾短信样本库后,每个类别都已经形成了稳定的不同的分类簇,并且各个簇在样本库中所占的权值不一样的,有的权所占权值大,有的所占权值小,因此将其再次输入到神经网络模型后,不同的簇对神经网络模型的影响是不同的。
或者,如果循环到设定的次数阈值时,样本库内的垃圾短信还没有形成簇个数小于簇数量阈值且每个簇中的最小相似度高于相似度阈值时,则强制停止学习,以当前形成的簇作为垃圾短信负样本训练。
S409、在垃圾短信负样本中加入正常短信正样本,得到训练样本。
S410、使用训练样本对神经网络模型进行训练,得到更新后的分类模型。
S411、基于所述更新后的分类模型进行垃圾短信拦截。
本实施例中,每个类别中,每个簇与每个簇所占的权重是不一样的,因此,当将不同权重的簇输入到经网络模型后,其对模型的影响是不同的。例如有两个簇,一个簇的权重是99,另一个簇的权重是1,则将这两个不同权重的簇输入至神经网络模型后,神经网络模型倾向于学习权重值比较大的簇,也即最后学习出的模型对该特征的短信的敏感性更高。
应理解,由于融入了新的嫌疑垃圾短信样本,因此训练集的样本数是越来越多的,并且由于融入新的嫌疑垃圾短信样本后,每个类别所占的权值和每个类别内不同簇所占的权值也发生了变化,因此重新训练,会使得原有的模型进行更新。
在机器学习中,训练样本集合的数据构成至关重要,正、负样本的分布应该尽量逼近于真实环境的数据分布,才能使识别模型在真实环境中有更好的鲁棒性与更高的准确率。因此,所述训练样本集合中,垃圾信息训练样本的数量与正常短信正样本数据的数量的比值通常可处于设定的比例范围之内。
作为一种示例,垃圾短信负样本的数量与正常短信正样本的数量的比值可处于1:5。在此说明的是,本示例中,比值可处于1:5仅仅是一种示例,也可根据实际情况调整为其它比例。
本实施例中,可以根据训练集的一些基础特征数据来进行神经网络模型的训练,例如基础特征数据可以包括评价元特征、文本元特征、语法语义特征、用户特征、对象特征,以及交叉特征中的任意一种或多种,也可以是融合了上述基础特征数据中的至少任意两个的融合特征,本申请实施例对此不做限定。其中,上述评价元特征、文本元特征、语法语义特征、用户特征、对象特征,以及交叉特征可以参见相关技术中的描述,此处不在赘述。
在一种可实施方式中,在融入正常短信正样本数据后,可以按照3:1的比例取训练集和验证集,将初始学习率rate设置为0.003,dropout率为0.5,其中,dropout是一种正则化手段,具体的实现过程可以参考相关技术。然后当模型在验证集上的损失值小于0.2时,将学习率设置为:rate=rate*0.5;当模型在验证集上的损失值小于0.15时,将学习率设置为:rate=rate*0.1;当模型在验证集上的损失值小于0.15时,将学习率设置为:rate=rate*0.05。对其训练20次,当连续20次验证精确率没有提高,且验证损失值没有减少,则取20次迭代过程中验证精确率最高,验证损失值最小的模型,该模型也就是更新后的模型。
可选的,在确定训练样本集合的各训练样本所述的信息类别以及各训练样本的基础特征数据之前,还可对各个训练样本进行相应的数据预处理,如:根据训练样本的来源对各训练样本进行过滤,以确保过滤后的各训练样本均为正常样本。
可选的,还可以使用其他机器学习模型对训练集进行训练,例如可以是全连接神经网络模型、朴素贝叶斯模型等等。
可选的,训练的模型也可以是上述多个机器学习模型进行融合后得到的机器学习模型,本实施例对此不做限定。
在此说明的是,上述机器学习的具体实现过程可以参考相关描述,本实施例对此不做限定。
本申请实施例提供的垃圾短信的拦截方法,将新的垃圾短信变种加入到已有的垃圾短信样本库中,重新训练模型,进而对原有模型进行更新,使得更新后的模型能够根据垃圾短信内容变化而变化,从而在遇到新的变种短信时可以准确识别,提升了对垃圾短信变种的识别率。此外,通过动态形成不同权重的簇来影响对分类模型的训练,使得更新后的分类模型可以提高对高频垃圾短信的灵敏程度,而降低对低频垃圾短信的灵敏程度。
作为一种示例,比如某种短信刚开始非常流行,出现的频率非常高,那么初始的分类模型可能会对该类短信的灵敏度非常高,但是在经过3个月后,垃圾短信的发送者重新使用其他垃圾短信变种,不再使用之前的垃圾短信,即该种短信过时,此时,当将3个月内的嫌疑垃圾短信加入以前的样本库后,通过动态的形成分类簇,可能会影响之前短信在样本库所占的权值,甚至使得该种短信所占的权值变得非常低,那么在重新训练模型时,这类短信几乎不会影响分类模型,从而使得更新后的模型就会降低对这种过时短信的灵敏度,而提高对新变种短信的灵敏度。因此,长期运行后,分类模型对于流行的垃圾短信及垃圾短信变种会保持敏感,会跟随垃圾短信变种的变化调整簇分类内的垃圾短信内容和所占的权值,从而使得新训练的模型在识别垃圾短信变种时更准确高效。
作为一个可选的实施例,在步骤S408之后,步骤S409之前,还可以包括:将所占权值很小的簇进行剔除,将权值比较大的簇代表垃圾短信负样本分类。
应理解,将相应权值很小的簇进行剔除是有意义的,因为权值很小的簇说明这种短信类型出现的较少,并不是最流行的垃圾短信,要么权值低,要么与权值高的垃圾短信相似度不高,输入到分类模型后,其对分类模型的影响是很小的,因此可以提前将簇值小的短信进行剔除。
本申请实施例提供的垃圾短信的拦截方法,将相应权值很小的簇进行剔除,使得在重新训练分类模型时,该特征短信不会影响模型的训练。
作为一个可选的实施例,如果在Z次循环后,样本库包括的类别数中含有的簇数量大于簇数量阈值,则可以在下一次动态形成分类簇时,减小K的值。
作为一个可选的实施例,可以在分类识别模型输出结果后,可以对该结果进行违规判断:如果该短信属于白名单中的短信,不对其进行拦截,如果不是白名单中的短信且该短信是垃圾短信,则对其进行拦截。
图5为本申请一个实施例提供的垃圾短信的拦截装置的结构示意图。图5所示的垃圾短信拦截装置可以用于执行前述任意一个实施例所述的垃圾短信的拦截方法。如图5所示,本实施例的垃圾短信的拦截装置500包括:第一获取模块501、确定模块502、第一判断模块503、第二判断模块504、第二获取模块505、更新模块506、提取模块507、融合模块508、训练模块509和拦截模块510。可选地,装置500还可以包括数值模块511。
其中,第一获取模块501用于:获取第一垃圾短信样本库和获取嫌疑垃圾短信样本库,所述第一垃圾短信样本库中的垃圾短信划分为T个类别,所述T类别中第Ti个类别的垃圾短信划分为Mi个簇,Ti为小于或等于T的正整数,Mi为正整数;所述嫌疑垃圾短信样本库中包括以下至少一种:垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本,所述嫌疑垃圾短信样本库中的嫌疑垃圾短信样本的类别属于所述T个类别。
确定模块502用于:计算所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中与所述每个嫌疑垃圾短信样本中属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定所述每个嫌疑垃圾短信样本的簇为所述每个嫌疑垃圾短信样本所属的类别中的第一簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库。
第一判断模块503用于:判断所述第二垃圾短信样本库中的每个类别中的簇的数量是否小于或等于簇数量阈值且每个簇中的垃圾短信之间的最小相似度高于或等于相似度阈值。
第二判断模块504用于:若所述第二垃圾短信样本库中的任意一个类别中的簇的数量大于簇数量阈值或任意一个簇中的垃圾短信之间的最小相似度小于相似度阈值,则判断计算所述每个嫌疑垃圾短信样本所属的所述第一簇的迭代次数是否小于或等于次数阈值。
第二获取模块505用于:若所述迭代次数小于或等于所述次数阈值,则从所述第二垃圾短信样本库中获取第一子库和第二子库,所述第一子库包括所述第二垃圾短信样本库中指定类别中权值小的P个簇中的垃圾短信样本和指定簇中的垃圾短信样本,所述指定类别为T个类别中簇的数量大于簇数量阈值的类别,所述P个簇包括指定类别中除前数量阈值个簇以外的簇,所述指定簇是指垃圾短信之间的最小相似度小于所述相似度阈值的簇,所述第一子库中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,所述第二子库包括第二垃圾短信样本库中除第一子库以外的垃圾短信样本。
更新模块506用于:将所述嫌疑垃圾短信样本库更新为所述第一子库,将所述第一垃圾短信样本库更新为所述第二子库,重新从步骤三开始执行。
提取模块507用于:若所述第二垃圾短信样本库中的任意一个类别中的簇的数量小于或等于所述簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于所述相似度阈值,或者,若所述迭代次数大于所述次数阈值,则从所述第二垃圾短信样本库中提取目标簇中的垃圾短信样本,得到垃圾短信负样本,所述目标簇是指包含至少两个垃圾短信样本的簇。
融合模块508用于:在所述垃圾短信负样本中加入正常短信正样本,得到训练样本。
训练模块509用于:使用所述训练样本对神经网络模型进行训练,得到更新后的分类模型。
拦截模块510用于:基于更新后的分类模型进行垃圾短信拦截。
作为一种示例,第一获取模块501可以用于执行图4所述的垃圾短信的拦截方法中的获取第一垃圾短信样本库或者获取嫌疑垃圾短信样本库的步骤。例如,第一获取模块用于执行S401和/或S402。
作为一种示例,确定模块502可以用于执行可以用于执行图4所述的垃圾短信的拦截方法中的将嫌疑垃圾短信样本确定到第一垃圾短信样本库的簇中的步骤。例如确定模块502用于执行S403。
作为一种示例,融合模块508可以用于执行图4所述的垃圾短信的拦截方法中的加入正常短信正样本的步骤。例如融合模块508用于执行S409。
在一种可能的实现方式中,所述拦截装置还可以包括数值模块511,用于在当前用于训练的所述目标簇的个数大于所述簇数量阈值时,将K值减小。
图6为本申请另一个实施例提供的垃圾短信的拦截装置的结构示意图。图6所示的装置可以用于执行前述任意一个实施例所述的方法。
如图6所示,本实施例的装置600包括:存储器601、处理器602、通信接口603以及总线604。其中,存储器601、处理器602、通信接口603通过总线604实现彼此之间的通信连接。
存储器601可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器601可以存储程序,当存储器601中存储的程序被处理器602执行时,处理器602用于执行图4所示的方法的各个步骤。
处理器602可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请各个实施例中的方法。
处理器602还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请各个实施例的方法的各个步骤可以通过处理器602中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器602还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器601,处理器602读取存储器601中的信息,结合其硬件完成本申请的装置包括的单元所需执行的功能,例如,可以执行图3至图4任意图所示实施例的各个步骤/功能。
通信接口603可以使用但不限于收发器一类的收发装置,来实现装置600与其他设备或通信网络之间的通信。
总线604可以包括在装置600各个部件(例如,存储器601、处理器602、通信接口603)之间传送信息的通路。
应理解,本申请实施例所示的装置600可以是电子设备,或者,也可以是配置于电子设备中的芯片。
应理解,本申请实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种垃圾短信的拦截方法,其特征在于,包括:
步骤一:获取第一垃圾短信样本库,所述第一垃圾短信样本库中的垃圾短信划分为T个类别,所述T类别中第Ti个类别的垃圾短信划分为Mi个簇,Ti为小于或等于T的正整数,Mi为正整数;
步骤二:获取嫌疑垃圾短信样本库,所述嫌疑垃圾短信样本库中的嫌疑垃圾短信样本的类别属于所述T个类别;
步骤三:计算所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中与所述每个嫌疑垃圾短信样本中属于同一类别的垃圾短信的相似度,根据计算得到的所述相似度确定所述每个嫌疑垃圾短信样本的簇为所述每个嫌疑垃圾短信样本所属的类别中的第一簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;
步骤四:判断所述第二垃圾短信样本库中的每个类别中的簇的数量是否小于或等于簇数量阈值且每个簇中的垃圾短信之间的最小相似度高于或等于相似度阈值;
步骤五:若所述第二垃圾短信样本库中的任意一个类别中的簇的数量大于簇数量阈值或任意一个簇中的垃圾短信之间的最小相似度小于相似度阈值,则判断计算所述每个嫌疑垃圾短信样本所属的所述第一簇的迭代次数是否小于或等于次数阈值;
步骤六:若所述迭代次数小于或等于所述次数阈值,则从所述第二垃圾短信样本库中获取第一子库和第二子库,所述第一子库包括所述第二垃圾短信样本库中指定类别中根据各个簇相应的权值从大到小的排序中后P个簇中的垃圾短信样本和指定簇中的垃圾短信样本,所述指定类别为T个类别中簇的数量大于簇数量阈值的类别,P为所述指定类别中簇的数量与所述簇数量阈值的差,所述指定簇是指垃圾短信之间的最小相似度小于所述相似度阈值的簇,所述第一子库中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,所述第二子库包括第二垃圾短信样本库中除第一子库以外的垃圾短信样本;
步骤七:将所述嫌疑垃圾短信样本库更新为所述第一子库,将所述第一垃圾短信样本库更新为所述第二子库,重新从步骤三开始执行;
步骤八:若所述第二垃圾短信样本库中的任意一个类别中的簇的数量小于或等于所述簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于所述相似度阈值,或者,若所述迭代次数大于所述次数阈值,则从所述第二垃圾短信样本库中提取目标簇中的垃圾短信样本,得到垃圾短信负样本,所述目标簇是指包含至少两个垃圾短信样本的簇;
步骤九:在所述垃圾短信负样本中加入正常短信正样本,得到训练样本;
步骤十:使用所述训练样本对神经网络模型进行训练,得到更新后的分类模型;
步骤十一:基于所述更新后的分类模型进行垃圾短信拦截。
2.根据权利要求1所述的方法,其特征在于,所述嫌疑垃圾短信样本库中包括以下至少一种:垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本。
3.根据权利要求1所述的方法,其特征在于,所述计算所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中与所述每个嫌疑垃圾短信样本属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定所述每个嫌疑垃圾短信样本的簇为所述每个嫌疑垃圾短信样本所属的类别中的第一簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库,包括:
如果所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中的同一所述类别属性的任意一个垃圾短信样本的相似度不大于K,所述每个嫌疑垃圾短信样本所属的所述第一簇为新增加的单独的一个簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;
如果所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中的同一所述类别属性的一个垃圾短信样本的相似度大于K,所述每个嫌疑垃圾短信样本所属的所述第一簇为的所述一个垃圾短信样本所属的簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;
所述K为大于0的自然数。
4.根据权利要求1至3中任一项所述的方法,其特征在于,使用所述训练样本对神经网络模型进行训练,得到更新后的分类模型之后,还可以包括:
若当前用于训练的所述目标簇的个数大于所述簇数量阈值,将K值减小。
5.一种垃圾短信的拦截装置,其特征在于,包括:
第一获取模块,用于获取第一垃圾短信样本库和获取嫌疑垃圾短信样本库,所述第一垃圾短信样本库中的垃圾短信划分为T个类别,所述T类别中第Ti个类别的垃圾短信划分为Mi个簇,Ti为小于或等于T的正整数,Mi为正整数;所述嫌疑垃圾短信样本库中的嫌疑垃圾短信样本的类别属于所述T个类别;
确定模块,用于计算所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中与所述每个嫌疑垃圾短信样本中属于同一类别的垃圾短信的相似度,根据计算得到的相似度确定所述每个嫌疑垃圾短信样本的簇为所述每个嫌疑垃圾短信样本所属的类别中的第一簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;
第一判断模块,用于判断所述第二垃圾短信样本库中的每个类别中的簇的数量是否小于或等于簇数量阈值且每个簇中的垃圾短信之间的最小相似度高于或等于相似度阈值;
第二判断模块,用于若所述第二垃圾短信样本库中的任意一个类别中的簇的数量大于簇数量阈值或任意一个簇中的垃圾短信之间的最小相似度小于相似度阈值,则判断计算所述每个嫌疑垃圾短信样本所属的所述第一簇的迭代次数是否小于或等于次数阈值;
第二获取模块,用于若所述迭代次数小于或等于所述次数阈值,则从所述第二垃圾短信样本库中获取第一子库和第二子库,所述第一子库包括所述第二垃圾短信样本库中指定类别中根据各个簇相应的权值从大到小的排序中后P个簇中的垃圾短信样本和指定簇中的垃圾短信样本,所述指定类别为T个类别中簇的数量大于簇数量阈值的类别,P为所述指定类别中簇的数量与所述簇数量阈值的差,所述指定簇是指垃圾短信之间的最小相似度小于所述相似度阈值的簇,所述第一子库中的每个垃圾短信样本的类别更新为垃圾短信分类模型分类得到的类别,所述第二子库包括第二垃圾短信样本库中除第一子库以外的垃圾短信样本;
更新模块,用于将所述嫌疑垃圾短信样本库更新为所述第一子库,将所述第一垃圾短信样本库更新为所述第二子库,重新从步骤三开始执行;
提取模块,用于若所述第二垃圾短信样本库中的任意一个类别中的簇的数量小于或等于所述簇数量阈值且任意一个簇中的垃圾短信之间的最小相似度大于或等于所述相似度阈值,或者,若所述迭代次数大于所述次数阈值,则从所述第二垃圾短信样本库中提取目标簇中的垃圾短信样本,得到垃圾短信负样本,所述目标簇是指包含至少两个垃圾短信样本的簇;
融合模块,用于在所述垃圾短信负样本中加入正常短信正样本,得到训练样本;
训练模块,用于使用所述训练样本对神经网络模型进行训练,得到更新后的分类模型;
拦截模块,用于基于所述更新后的分类模型进行垃圾短信拦截。
6.根据权利要求5所述的装置,其特征在于,所述嫌疑垃圾短信样本库中包括以下至少一种:垃圾短信分类模型输出的垃圾短信样本,用户投诉的垃圾短信样本或者管理员添加的垃圾短信样本。
7.根据权利要求5所述的装置,其特征在于,所述确定模块具体用于:
如果所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中的同一所述类别属性的任意一个垃圾短信样本的相似度不大于K,所述每个嫌疑垃圾短信样本所属的所述第一簇为新增加的单独的一个簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;
如果所述嫌疑垃圾短信样本库中的每个嫌疑垃圾短信样本与所述第一垃圾短信样本库中的同一所述类别属性的一个垃圾短信样本的相似度大于K,所述每个嫌疑垃圾短信样本所属的所述第一簇为的所述一个垃圾短信样本所属的簇,将所述嫌疑垃圾短信样本加入所述第一垃圾短信样本库中的所述第一簇中,得到第二垃圾短信样本库;所述K为大于0的自然数。
8.根据权利要求5至7中任一项所述的装置,其特征在于,所述装置还可以包括:
数值模块,用于若当前用于训练的所述目标簇的个数大于所述簇数量阈值,将K值减小。
9.一种芯片,其特征在于,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行如权利要求1至4中任一项所述的方法。
10.一种计算机可读介质,其特征在于,所述计算机可读介质存储用于计算机执行的程序代码,该程序代码包括用于执行如权利要求1至4中任一项所述的方法的指令。
CN202011498137.6A 2020-12-17 2020-12-17 一种垃圾短信的拦截方法和拦截装置 Active CN112632219B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011498137.6A CN112632219B (zh) 2020-12-17 2020-12-17 一种垃圾短信的拦截方法和拦截装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011498137.6A CN112632219B (zh) 2020-12-17 2020-12-17 一种垃圾短信的拦截方法和拦截装置

Publications (2)

Publication Number Publication Date
CN112632219A CN112632219A (zh) 2021-04-09
CN112632219B true CN112632219B (zh) 2022-10-04

Family

ID=75316481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011498137.6A Active CN112632219B (zh) 2020-12-17 2020-12-17 一种垃圾短信的拦截方法和拦截装置

Country Status (1)

Country Link
CN (1) CN112632219B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117041978B (zh) * 2023-10-08 2023-12-29 北京国都互联科技有限公司 一种短信发送内容实时监测的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107515873A (zh) * 2016-06-16 2017-12-26 阿里巴巴集团控股有限公司 一种垃圾信息识别方法及设备
CN108268554A (zh) * 2017-01-03 2018-07-10 中国移动通信有限公司研究院 一种生成垃圾短信过滤策略的方法和装置
CN110309297A (zh) * 2018-03-16 2019-10-08 腾讯科技(深圳)有限公司 垃圾文本检测方法、可读存储介质和计算机设备
WO2020199591A1 (zh) * 2019-03-29 2020-10-08 平安科技(深圳)有限公司 文本分类模型训练方法、装置、计算机设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3270549B1 (en) * 2016-07-15 2020-06-24 Bics Sa/Nv A method and device for spam sms detection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107515873A (zh) * 2016-06-16 2017-12-26 阿里巴巴集团控股有限公司 一种垃圾信息识别方法及设备
CN108268554A (zh) * 2017-01-03 2018-07-10 中国移动通信有限公司研究院 一种生成垃圾短信过滤策略的方法和装置
CN110309297A (zh) * 2018-03-16 2019-10-08 腾讯科技(深圳)有限公司 垃圾文本检测方法、可读存储介质和计算机设备
WO2020199591A1 (zh) * 2019-03-29 2020-10-08 平安科技(深圳)有限公司 文本分类模型训练方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN112632219A (zh) 2021-04-09

Similar Documents

Publication Publication Date Title
CN110009174B (zh) 风险识别模型训练方法、装置及服务器
CN108960833B (zh) 一种基于异构金融特征的异常交易识别方法,设备及存储介质
CN111371767B (zh) 恶意账号识别方法、恶意账号识别装置、介质及电子设备
CN110310114B (zh) 对象分类方法、装置、服务器及存储介质
CN111915437A (zh) 基于rnn的反洗钱模型的训练方法、装置、设备及介质
CN112347367A (zh) 信息服务提供方法、装置、电子设备和存储介质
CN110084609B (zh) 一种基于表征学习的交易欺诈行为深度检测方法
CN111177367A (zh) 案件分类方法、分类模型训练方法及相关产品
CN115204886A (zh) 账户识别的方法、装置、电子设备和存储介质
CN115688024A (zh) 基于用户内容特征和行为特征的网络异常用户预测方法
CN112632219B (zh) 一种垃圾短信的拦截方法和拦截装置
CN112990989B (zh) 价值预测模型输入数据生成方法、装置、设备和介质
CN110389963A (zh) 基于大数据的渠道效果识别方法、装置、设备和存储介质
CN112132589A (zh) 一种基于多次融合构建欺诈识别模型的方法
CN114119191A (zh) 风控方法、逾期预测方法、模型训练方法及相关设备
CN116467141A (zh) 日志识别模型训练、日志聚类方法和相关系统、设备
CN115659232A (zh) 一种挖掘异常规则的方法及装置
CN110570301B (zh) 风险识别方法、装置、设备及介质
CN113706258A (zh) 基于组合模型的产品推荐方法、装置、设备及存储介质
CN114140246A (zh) 模型训练方法、欺诈交易识别方法、装置和计算机设备
CN113361652A (zh) 一种面向个体收入预测的去偏方法及装置
CN112115258A (zh) 一种用户的信用评价方法、装置、服务器及存储介质
KR102343579B1 (ko) 부모예측모형을 이용한 서비스 제공 방법
CN114548300B (zh) 解释业务处理模型的业务处理结果的方法和装置
CN114418061A (zh) 一种基于cnn-lstm的财务造假识别方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant