CN105955951B - 一种消息过滤的方法及装置 - Google Patents
一种消息过滤的方法及装置 Download PDFInfo
- Publication number
- CN105955951B CN105955951B CN201610283866.7A CN201610283866A CN105955951B CN 105955951 B CN105955951 B CN 105955951B CN 201610283866 A CN201610283866 A CN 201610283866A CN 105955951 B CN105955951 B CN 105955951B
- Authority
- CN
- China
- Prior art keywords
- message
- bad
- word
- property
- probability
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012216 screening Methods 0.000 title claims abstract description 31
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000013136 deep learning model Methods 0.000 claims abstract description 14
- 239000013598 vector Substances 0.000 claims description 92
- 238000001914 filtration Methods 0.000 claims description 25
- 238000013135 deep learning Methods 0.000 claims description 16
- 230000011218 segmentation Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 8
- 238000011156 evaluation Methods 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims 1
- 230000000717 retained effect Effects 0.000 claims 1
- 235000015170 shellfish Nutrition 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 10
- 238000007477 logistic regression Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000007812 deficiency Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 201000003723 learning disability Diseases 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 230000035800 maturation Effects 0.000 description 2
- 230000010181 polygamy Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000036632 reaction speed Effects 0.000 description 2
- 238000007418 data mining Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种消息过滤的方法,利用贝叶斯分类器模型计算消息为不良消息的概率,根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息,再利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。相对于现有技能,本发明能够自动学习,定时更新训练集并且识别近义词,节省大量人工标注的成本,具有更好的准确率、健壮性和稳定性。另外,本发明还提供了一种消息过滤的实现装置。
Description
技术领域
本发明属于消息处理和数据挖掘领域,尤其是涉及一种通过基于贝叶斯算法和深度学习的消息过滤方法及装置。
背景技术
消息过滤技术,是通过对信息进行过滤操作,进而过滤掉暴力、反动、色情等不良信息,常用于对网络环境中发布信息的过滤,或者弹幕评论中的消息过滤。现有的消息过滤技术一般是对每条消息进行关键字匹配,通过人为事先设置好一些需要过滤的敏感词语,再判断出现的消息文本中是否包含这些词语,如果包含则过滤消息,如果不包含,则认为消息是正常消息,但这种方法的作用十分局限、不灵活,需要人为事先设置需要过滤的词语,而且人为地设定若干关键词很容易被消息发送者用其他方式如同音字、形近字或在词中间***其他符号等办法逃避,而且不良消息的内容、句式等都在不停地变化,现有的文本过滤技术往往不能及时地对变化做出反应。
发明内容
本发明的目的在于克服现有技术中的缺点与不足,提供一种新的消息过滤的方法。
本发明是通过以下技术方案实现的:
一种消息过滤的方法,包括步骤:
S1:利用贝叶斯分类器模型计算消息为不良消息的概率;
S2:根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息;
S3:对所述性质为正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。
相对于现在技术,本发明的消息过滤方法,通过将基于贝叶斯模型的分类器和基于语义的深度学习模型相结合的技术方案,能够自动学习,定时更新训练集并且识别近义词,节省大量人工标注的成本,具有更好的准确率、健壮性和稳定性。
进一步的,所述步骤S1进一步包括步骤:
S11:对消息进行分词处理,获取消息中所包含的词语;
S12:根据所述消息中包含的词语计算消息为不良消息的概率。
进一步的,所述步骤S12根据所述消息中包含的词语在训练集中出现的概率,利用贝叶斯模型来判断消息为不良消息的概率,所述不良消息的概率的具体计算公式为:
其中,W1W2...Wn为消息中包含的词语,S表示消息为不良消息。
进一步的,所述训练集使用离线自动更新的模式,定期从线上模型的历史记录中自动提取类型比较确定的消息作为训练集,统计不良消息和正常消息的条数、所有的词语分别在不良消息和正常消息中出现的次数,作为贝叶斯分类器模型中概率计算的参数。
进一步的,在所述步骤S1之前,包括步骤S0:对消息进行预处理,具体包括:编码检查、关键字过滤、连续数字过滤和重复消息过滤。
进一步的,在所述步骤2中,首先计算不良消息与正常消息的概率比:
然后再将所述概率比与预设的两个阈值r0和r1(r0<r1)比较来判断所述消息的性质:
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
进一步的,步骤S3进一步包括:
S31:对训练集中的消息进行语义聚类,获得语料库中所有词的词向量;
S32:使用聚类方法,根据步骤S31所得的词向量将语料库中的所有词分成k类;
S33:根据步骤S32所得的词的类别,获得k维消息向量,并训练出消息分类模型。
S34:将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入步骤S33训练出的消息分类模型,得出正常消息或者不良消息的分类结果。
另外,本发明还提供一种消息过滤的装置,包括贝叶斯分类模块,消息性质判断模块和深度学习分类模块,其中,
贝叶斯分类模块,用于利用贝叶斯分类器模型计算消息为不良消息的概率;
消息性质判断模块,用于根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息;
深度学习分类模块,用于对所述性质为正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。
相对于现在技术,本发明的消息过滤装置,通过将基于贝叶斯模型的分类器和基于语义的深度学习模型相结合的技术方案,能够自动学习,定时更新训练集并且识别近义词,节省大量人工标注的成本,具有更好的准确率、健壮性和稳定性。
进一步的,所述贝叶斯分类模块进一步包括:
分词模块,用于对消息进行分词处理,获取消息中所包含的词语;
概率计算模块,用于根据所述消息中包含的词语计算消息为不良消息的概率。
进一步的,所述概率计算模块根据所述消息中包含的词语在训练集中出现的概率,利用贝叶斯模型来计算消息为不良消息的概率,所述不良消息的概率的具体计算公式为:
其中,W1W2...Wn为消息中包含的词语,S表示消息为不良消息。
进一步的,所述训练集使用离线自动更新的模式,定期从线上模型的历史记录中自动提取类型比较确定的消息作为训练集,统计不良消息和正常消息的条数、所有的词语分别在不良消息和正常消息中出现的次数,作为贝叶斯分类器模型中概率计算的参数。
进一步的,包括消息预处理模块,用于对消息进行预处理,具体包括:编码检查、关键字过滤、连续数字过滤和重复消息过滤。
进一步的,在所述消息性质判断模块中,首先计算不良消息与正常消息的概率比:
然后再将所述概率比与预设的两个阈值r0和r1(r0<r1)比较来判断所述消息的性质:
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
进一步的,深度学习分类模块进一步包括:
词向量获取模块,用于对训练集中的消息进行语义聚类,获得语料库中所有词的词向量;
聚类模块,用于使用聚类方法,根据语义聚类模块所得的词向量将语料库中的所有词分成k类;
分类模型训练模块,用于根据聚类模块所得的词的类别,获得消息向量,并训练出消息分类模型。
结果输出模块:用于将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入分类模型训练模块训练出的消息分类模型,得出正常消息或者不良消息的分类结果。
为了能更清晰的理解本发明,以下将结合附图说明阐述本发明的具体实施方式。
附图说明
图1是本发明的一种消息过滤方法的步骤流程图。
图2是本发明步骤S3的具体步骤流程图。
图3是CBOW模型的结构图。
图4是CBOW模型训练示意图。
图5是本发明的一种消息过滤装置的结构示意图。
图6是深度学习分类模块3的具体结构示意图。
具体实施方式
本消息过滤技术从机器学习的角度来设计技术方案,将判断一条用户发出的消息是否是不良消息的任务看作一个分类问题,定义问题如下:对于一个样本(一条消息)X,为其指定一个标签y:y=1(认为其为不良消息)或y=0(认为其为正常消息)。为了解决该分类问题,提出了基于贝叶斯模型的分类器和基于语义的深度学习模型相结合的技术方案。先用贝叶斯分类器初步解决问题,然后用深度学习解决贝叶斯分类器的遗留问题,以得到更好的结果。
基于以上发明思路,本案通过以下的具体实施例来进行说明。
请参阅图1,其为本发明的一种消息过滤方法的步骤流程图。本发明的消息过滤方法包括以下步骤S0~S3:
S0:对消息进行预处理。
出于效率考虑,在消息处理的第一步使用之前一些传统的基于简单规则的方法作为预处理,对于一些很容易判断为不良消息的情况,可以直接过滤以提高***的反应速度,主要包括:
(1)编码检查
如果一条消息编码不正确,客户端是无法解析并显示的,因此可以直接过滤。
(2)关键字过滤
为提高效率,设定一些特定的敏感词语,对出现的这些敏感词语的消息即视为不良消息直接过滤,或者在显示时使用一些特殊的符号如*号来替换。
(3)连续数字过滤
对于某些业务特征,包含有较长的连续的数字串很可能就是QQ号码,手机号码等联系方式,可以直接进行屏蔽。
(4)重复消息过滤
记录最近一段时间的消息,如果在这些消息中找到较多的与当前消息相同或相似的消息,则屏蔽掉该消息。
S1:利用贝叶斯分类器模型计算消息为不良消息的概率。
在信息预处理之后,再用贝叶斯模型来解决消息过滤问题,贝叶斯定理是关于两个随机事件之间发生的条件概率的一则定理,即一个事件发生对另一事件发生概率的影响,主要依据如下公式:
P(A│B)=(P(B│A)P(A))/(P(B))
P(A|B)即事件A在事件B发生的情况下发生的概率,P(A)、P(B)是事件A、B发生的概率,P(B│A)为事件B在事件A发生的情况下发生的概率。
对一个待分类的样本X(消息),需要将其分类到预先指定的若干个类中的一个或多个。而多分类问题可以转化为多个二分类问题(对每个类别判断样本属不属于该类别),因此以二分类问题为例。
对贝叶斯分类器模型,将待指定的类标签记为正类和负类,对于一个待分类的样本X,记其属于正(或负)类为事件A,假设一个样本有特征F=(F1,F2…,Fn),当记取某一特定值为事件B,则属于正(负)类的概率即为P(A|B),属于另外一个类的概率就是1-P(A|B)。可以为P(A|B)设定一个阈值(一般设为0.5),通过计算得到P(A|B),当高于这个阈值时,就认为X是正(负)类,否则相反。通过某种方法得到P(B|A)、P(A)和P(B)后,就可以使用上面的公式计算P(A|B)。
该步骤可以具体分为两个步骤:
S11:对消息进行分词处理,获取消息中所包含的词语。
本发明利用消息里的所有词作为特征,因此首先要对消息进行分词处理,得到该消息中的所有词,消息文本的分词处理目前已经有比较多的成熟的工具,例如可以使用jieba(“结巴”)分词工具包。假设该消息中包含的词为W1W2...Wn,我们要求的概率为P(S|W1W2...Wn):也即包含的词为W1W2...Wn的消息是不良消息的概率,S表示不良消息。
S12:根据所述消息中包含的词语计算消息为不良消息的概率。
在对消息进行分词之后,将每一个词的出现都当作消息的一个特征。为了减少复杂性,忽略词之间的顺序、相互之间的影响和词出现的次数。考虑一个词是否出现而忽略出现的次数,并认为不同单词是否在消息中出现相互不影响,这样贝叶斯分类器模型中P(S|W1W2…Wn)可以表示为如下形式:
其中对于每个词语Wi i∈[1,2...n],P(Wi|S)表示一条不良消息中出现词语Wi的概率,通过训练集中出现词语Wi的不良消息的条数占所有不良消息条数的比例来计算,同样,使用训练集中的统计数据来得到不良消息在全部消息中的比例P(S)、每个词Wi出现在一条消息中的概率P(Wi)。
由于用户的消息的习惯和用词会随时间变化,不良消息的形式和内容也会变化。因此模型需要使用最近的消息数据学习不良消息的最新的特点。本发明使用离线自动更新的模式:定期从线上模型的历史记录中自动提取类型比较确定的消息(贝叶斯分类器判断为正常消息和不良消息的)作为训练集,统计正样本(不良消息)和负样本(正常消息)的条数,对正样本和负样本中所有的消息正文进行分词,所有的词分别在正样本和负样本中出现的次数,记录作为模型的参数,更新原有的模型。这里所述类型比较确定的消息为历史记录中贝叶斯分类器判断为正常消息和不良消息。
S2:根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息。
一般来说一条消息属于正常消息的概率和属于不良消息的概率之和为1,为了增加区分,本发明使用两个概率之比作为消息性质的判断条件:
然后再将所述概率比与预设的两个阈值r0和r1(r0<r1)比较来判断所述消息的性质:
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
对于性质为不良消息,直接过滤,对于性质正常和可疑的消息,继续调用步骤S3的深度学习模块进行判断。
由于业务的实际情况,需要减少将正常消息误判为不良消息的几率以避免影响用户体验,因此需要设置合适的r1值。
这里使用两个阈值,将消息归类为类型可疑消息和类型比较确认的消息(正常消息、不良消息),后者可以作为模型自动更新的训练集。可以减少人工标注数据的需求量,如果数量足够,可以完全省掉人工标注的工作。
S3:对所述性质为正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。
贝叶斯模型具有反应快和直观的优点,但缺点是只使用了词的出现来计算消息是不良消息还是正常消息的概率,并没有利用消息的语义信息,对比较明显的不良消息(如包含一些关键的字眼的)可以做出准确判断,对语义上接近但用词上不同的消息则无能为力。为了弥补贝叶斯分类器在ratio≤r1的情况下无法精确甄别不良消息的不足,本发明进一步使用了更精确和功能强大的深度学习模型,对贝叶斯分类器模型结果出现ratio≤r1情况下的不确定的消息进一步处理,以提高过滤的准确率。
本发明在基于贝叶斯分类器模型的过滤机制的基础上,使用基于语义的深度学习模型,先将消息表示为多个保持语义信息的词向量,再使用词向量对消息进行分类判断,训练分类模型,进而更加精确地确定消息为正常消息还是不良消息,提高了过滤的效果。
下面对语义模型作介绍:
文章、段落、句子、词语都带有一定的语义,一句话是由词语组成的,可以认为一句话的语义是由词语的语义组合而来的,如果两句的组成词语的语义组合后相近,那么就可以认为这两个句子语义相似。具体到消息过滤上,如果一条消息和不良消息语义很相似,那么可以认为这条消息属于不良消息。
在自然语言中,有很多意思相近的近义词,这些词可以归为同一语义类,在文本挖掘中常用词向量表示一个词语,如果同一语义类的词的词向量很接近,而不同语义类中词的词向量差别较大,就可以认为词向量保持了词的语义。用一个数值向量来表示一个词,也更方便使用数学模型来对其进行计算,本发明使用深度学习模型来产生词的词向量。
如图2所示,步骤S3进一步包括:
S31:对训练集中的消息进行语义聚类,获得语料库中所有词的词向量。
目前已经有一些开源的工具来实现语义聚类,本发明使用word2vec实现词语的语义聚类。word2vec是Google于2013年开源的一个用于获取词的向量表示的工具包,具有简单、高效的特点。本发明引入word2vec的目的在于将消息的中所有的词语进行聚类,使语义相近的词归入相同的聚类。使用数目远少于单词数目的词的聚类作为一条消息的特征向量,使得后续机器学习分类器使用的特征维数大大降低,以提高效率。
word2vec用一个m维的向量来表示一个词,并使用一个词语的上下文信息来确定一个词的语义。word2vec将构造若干个相互连接的分类器,这些分类器以一个文本某个位置的上下文(该位置前后若干个词)为输入,输出为一个句子中每一个词和该词出现在该位置的概率。通过训练优化分类器参数和每个词语的词向量,使得在某个位置给定了特定的上下文后(前后若干个词),合法的词出现在该位置的概率远大于非法词。本发明使用基于Hierarchical Softmax(分层Softmax)的CBOW(Continuous Bag-of-Words Model,连续词袋模型),CBOW的结构图如图3所示,该结构包含三层:输入层、映射层和输出层。
输入层:Context(w),即一个词w在某一句话中其前后各c个词(c的值可以自由设定)的词向量Context(w)1、Context(w)2…、Context(w)2c
映射层:将输入的2c个词的词向量累加,得到Xw
输出层:输出层对应一棵霍夫曼树,以所有的词在语料库中出现的频率作为权重构建,每个叶子节点都对应语料库中的一个词;每一个非叶子节点都有两个子节点,将每个非叶子节点的子节点都分别标记0和1(可以将左边的子节点标记为1,右边的子节点标记为0,反之亦可)。每一个非叶子结点处构造一个概率二分类器(这里使用了逻辑回归),每个分支输出一个概率表示下一步选择该分支的可能性。
CBOW模型词向量的训练过程为:输出层树的每个叶子节点表示一个语料库中词语,这样对于每一个叶子节点都有一条从根节点到它的路径,这个路径要经过若干个分类器(中间节点),每个分类器到下一层分类器都会有一个概率。计算叶节点的概率就是将路径上每个分类器的概率相乘,如图4所示,节点10的概率(对特定上下文,该位置的词为w为的概率)的方法如下:
从根节点到10节点的路径为1,3,7,8,10,对应的编码为(,0,0,1,1)(根节点不需要编码)。从根节点到10前面的节点,可以分别以该节点上的参数构造一个逻辑回归模型,认为节点的子节点中1为正例,0为负例(反之亦可),如图4的节点8上的逻辑回归的参数就是输入为Xω,输出就是从图4中可以发现,它的输出为1。后面就可以使用逻辑回归常用的随机梯度下降等方法,每次朝着减小逻辑回归预测损失的方向更新参数(所有的)和Xw,而输入层的每个词的向量均分Xw的变化,即Context(w)i=Context(w)i+ΔXw/2c,最后得到词库中每一个词的词向量。
这里为了尽量获取消息中所有可能出现的词的词向量,使用了历史消息加额外的通用语料库作为word2vec的输入。
S32:使用聚类方法,根据步骤S31所得的词向量将语料库中的所有词分成k类。
使用word2vec训练得到所有词的词向量后,使用k-means聚类方法,将所有词聚成k类,k的值可以跟据实际情况调节。
S33:根据步骤S32所得的词的类别,获得k维消息向量,并训练出消息分类模型。
对训练集中所有的正负样本(不良消息和正常消息),对其分词,并根据分出的每一个词在所在的聚类,将每一个的样本(每一条消息)记为一个k维的消息向量,每一维代表该消息中有多少个词在某一个聚类中。
具体地先进行分词,得到消息中所有的词语,构造一个k维的向量,每一维对应上一步得到的聚类中的一个类型,k维的向量初始全部为0,对消息的每个词,找到该词属于的聚类,将其在向量中对应维的值加一,这样就得到了该消息的k维的消息向量。
为了保证用户体验,根据业务实际情况,k需要根据具体的业务场景来定。在本公司的业务场景下,k的取值为150时可以得到较好的聚类结果。
得到所有消息的特征向量后,将消息的特征向量和标签(正或负样本)输入迭代决策树GBDT(Gradient Boosting Decision Tree)进行训练。GBDT是基于残差的效果增进模型,属于非线性回归模型,这里把它当作分类模型使用,用回归的分数作为分类的依据。
另外,除了使用上述特征外,考虑到长串的数字很可能是一个电话或者QQ号码之类的广告消息,还增加了一个数字维度,这个维度用以记录句子中数字的个数。
S34:将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入步骤S33训练出的消息分类模型,得出正常消息或者不良消息的分类结果。
对一个代表输入样本的特征向量,GBDT会输出一个回归分数,预先设置一个阈值,经过业务场景的实验测试,将GBDT回归分数的阈值设置为0.37,分数大于等于0.37阈值则为正样本(即不良消息),否则为负样本(正常消息),阈值可以根据实际情况进行调节,较高的阈值会使较多的消息被判断为正常消息,表示了较宽松的过滤条件,反之较低的阈值则表示比较强的过滤条件。阈值可以根据实际情况进行调节,较高的阈值会使较多的消息被判断为正常消息,表示了较宽松的过滤条件,反之较低的阈值则表示比较强的过滤条件。
当贝叶斯模型出现ratio≤r1情况时,调用步骤S31和S32,对一条新消息,先分词,再获得包含词语的词向量,再映射产生对应的k维消息向量,将该k维消息向量作为步骤S33中回归模型的输入,得出回归分数,根据回归分数即可得到最终的分类结果,确定所述消息为正样本(不良消息)或者负样本(正常消息)。
相对于现在技术,本发明的消息过滤方法,通过将基于贝叶斯模型的分类器和基于语义的深度学习模型相结合的技术方案,能够自动学习,定时更新训练集并且识别近义词,节省大量人工标注的成本,具有更好的准确率、健壮性和稳定性。
请参阅图5,根据本发明的消息过滤的方法,本发明还提供了一种消息过滤的装置,包括消息预处理模块0,贝叶斯分类模块1,消息性质判断模块2和深度学习分类模块3。
消息性质判断模块,用于根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息;
深度学习分类模块,用于对所述性质正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。
消息预处理模块0,用于对消息进行预处理。
出于效率考虑,在消息处理的第一步使用之前一些传统的基于简单规则的方法作为预处理,对于一些很容易判断为不良消息的情况,可以直接过滤以提高***的反应速度,主要包括:
(1)编码检查
如果一条消息编码不正确,客户端是无法解析并显示的,因此可以直接过滤。
(2)关键字过滤
为提高效率,设定一些特定的敏感词语,对出现的这些敏感词语的消息即视为不良消息直接过滤,或者在显示时使用一些特殊的符号如*号来替换。
(3)连续数字过滤
对于某些业务特征,包含有较长的连续的数字串很可能就是QQ号码,手机号码等联系方式,可以直接进行屏蔽。
(4)重复消息过滤
记录最近一段时间的消息,如果在这些消息中找到较多的与当前消息相同或相似的消息,则屏蔽掉该消息。
贝叶斯分类模块1,用于利用贝叶斯分类器模型计算消息为不良消息的概率。
在信息预处理之后,再用贝叶斯模型来解决消息过滤问题,贝叶斯定理是关于两个随机事件之间发生的条件概率的一则定理,即一个事件发生对另一事件发生概率的影响,主要依据如下公式:
P(A│B)=(P(B│A)P(A))/(P(B))
P(A|B)即事件A在事件B发生的情况下发生的概率,P(A)、P(B)是事件A、B发生的概率,P(B│A)为事件B在事件A发生的情况下发生的概率。
对一个待分类的样本X(消息),需要将其分类到预先指定的若干个类中的一个或多个。而多分类问题可以转化为多个二分类问题(对每个类别判断样本属不属于该类别),因此以二分类问题为例。
对贝叶斯分类器模型,将待指定的类标签记为正类和负类,对于一个待分类的样本X,记其属于正(或负)类为事件A,假设一个样本有特征F=(F1,F2…,Fn),当记取某一特定值为事件B,则属于正(负)类的概率即为P(A|B),属于另外一个类的概率就是1-P(A|B)。可以为P(A|B)设定一个阈值(一般设为0.5),通过计算得到P(A|B),当高于这个阈值时,就认为X是正(负)类,否则相反。通过某种方法得到P(B|A)、P(A)和P(B)后,就可以使用上面的公式计算P(A|B)。
该贝叶斯分类模块1可以具体分为两个子模块,分词模块11和概率计算模块12:
分词模块11,用于对消息进行分词处理,获取消息中所包含的词语。
本发明利用消息里的所有词作为特征,因此首先要对消息进行分词处理,得到该消息中的所有词,消息文本的分词处理目前已经有比较多的成熟的工具,例如可以使用jieba(“结巴”)分词工具包。假设该消息中包含的词为W1W2...Wn,我们要求的概率为P(S|W1W2...Wn):也即包含的词为W1W2...Wn的消息是不良消息的概率,S表示不良消息。
概率计算模块12,用于根据所述消息中包含的词语计算消息为不良消息的概率。
在对消息进行分词之后,将每一个词的出现都当作消息的一个特征。为了减少复杂性,忽略词之间的顺序、相互之间的影响和词出现的次数。考虑一个词是否出现而忽略出现的次数,并认为不同单词是否在消息中出现相互不影响,这样贝叶斯分类器模型中P(S|W1W2...Wn)可以表示为如下形式:
其中对于每个词语Wi i∈[1,2...n],P(Wi|S)表示一条不良消息中出现词语Wi的概率,通过训练集中出现词语Wi的不良消息的条数占所有不良消息条数的比例来计算,同样,使用训练集中的统计数据来得到不良消息在全部消息中的比例P(S)、每个词Wi出现在一条消息中的概率P(Wi)。
由于用户的消息的习惯和用词会随时间变化,不良消息的形式和内容也会变化。因此模型需要使用最近的消息数据学习不良消息的最新的特点。本发明使用离线自动更新的模式:定期从线上模型的历史记录中自动提取类型比较确定的消息(贝叶斯分类器判断为正常消息和不良消息的)作为训练集,统计正样本(不良消息)和负样本(正常消息)的条数,对正样本和负样本中所有的消息正文进行分词,统计所有的词分别在正样本和负样本中出现的次数,记录作为模型的参数,更新原有的模型。这里所述类型比较确定的消息为历史记录中贝叶斯分类器判断为正常消息和不良消息。
消息性质判断模块2,用于根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息。
一般来说一条消息属于正常消息的概率和属于不良消息的概率之和为1,为了增加区分,本发明使用两个概率之比作为消息性质的判断条件:
然后再将所述概率比与预设的两个阈值r0和r1(r0<r1)比较来判断所述消息的性质::
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
对于性质为不良消息,直接过滤,对于性质为正常和可疑的消息,继续调用深度学习分类模块3的深度学习模块进行判断。
由于业务的实际情况,需要减少将正常消息误判为不良消息的几率以避免影响用户体验,因此需要设置合适的r1值。
这里使用两个阈值,将消息归类为类型可疑消息和类型比较确认的消息(正常消息、不良消息),后者可以作为模型自动更新的训练集。可以减少人工标注数据的需求量,如果数量足够,可以完全省掉人工标注的工作。深度学习分类模块3,用于对所述性质正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息。
贝叶斯模型具有反应快和直观的优点,但缺点是只使用了词的出现来计算消息是不良消息还是正常消息的概率,并没有利用消息的语义信息,对比较明显的不良消息(如包含一些关键的字眼的)可以做出准确判断,对语义上接近但用词上不同的消息则无能为力。为了弥补贝叶斯分类器在ratio≤r1的情况下无法精确甄别不良消息的不足,本发明进一步使用了更精确和功能强大的深度学习模型,对贝叶斯分类器模型结果出现ratio≤r1情况下的消息进一步处理,以提高过滤的准确率。
本发明在基于贝叶斯分类器模型的过滤机制的基础上,使用基于语义的深度学习模型,先将消息表示为多个保持语义信息的词向量,再使用词向量对消息进行分类判断,训练分类模型,进而更加精确地确定消息为正常消息还是不良消息,提高了过滤的效果。
下面对语义模型作介绍:
文章、段落、句子、词语都带有一定的语义,一句话是由词语组成的,可以认为一句话的语义是由词语的语义组合而来的,如果两句的组成词语的语义组合后相近,那么就可以认为这两个句子语义相似。具体到消息过滤上,如果一条消息和不良消息(或其他被认为应该过滤的消息类型)语义很相似,那么可以认为这条消息属于不良消息。
在自然语言中,有很多意思相近的近义词,这些词可以归为同一语义类,在文本挖掘中常用词向量表示一个词语,如果同一语义类的词的词向量很接近,而不同语义类中词的词向量差别较大,就可以认为词向量保持了词的语义。用一个数值向量来表示一个词,也更方便使用数学模型来对其进行计算,本发明使用深度学习模型来产生词的词向量中。
因此深度学习分类模块3进一步包括词向量获取模块31,聚类模块32,分类模型训练模块33和结果输出模块34,其中,
词向量获取模块31,用于对训练集中的消息进行语义聚类,获得语料库中所有词的词向量。
目前已经有一些开源的工具来实现语义聚类,本发明使用word2vec实现词语的语义聚类。word2vec是Google于2013年开源的一个用于获取词的向量表示的工具包,具有简单、高效的特点。本发明引入word2vec的目的在于将消息的中所有的词语进行聚类,使语义相近的词归入相同的聚类。使用数目远少于单词数目的词的聚类作为一条消息的特征向量,使得后续机器学习分类器使用的特征维数大大降低,以提高效率。
Word2vec用一个m维的向量来表示一个词,并使用一个词语的上下文信息来确定一个词的语义。word2vec将构造若干个相互连接的分类器,这些分类器以一个文本某个位置的上下文(该位置前后若干个词)为输入,输出为一个句子中每一个词和该词出现在该位置的概率。通过训练优化分类器参数和每个词语的词向量,使得在某个位置给定了特定的上下文后(前后若干个词),合法的词出现在该位置的概率远大于非法词。本发明使用基于Hierarchical Softmax(分层Softmax)的CBOW(Continuous Bag-of-Words Model,连续词袋模型),CBOW的结构图如图3所示,该结构包含三层:输入层、映射层和输出层。
输入层:Context(w),即一个词w在某一句话中其前后各c个词(c的值可以自由设定,本发明用20)的词向量Context(w)1、Context(w)2…、Context(w)2c
映射层:将输入的2c个词的词向量累加,得到Xw
输出层:输出层对应一棵霍夫曼树,以所有的词在语料库中出现的频率作为权重构建,每个叶子节点都对应语料库中的一个词;每一个非叶子节点都有两个子节点,将每个非叶子节点的子节点都分别标记0和1(可以将左边的子节点标记为1,右边的子节点标记为0,反之亦可)。每一个非叶子结点处构造一个概率二分类器(这里使用了逻辑回归),每个分支输出一个概率表示下一步选择该分支的可能性。
CBOW模型词向量的训练过程为:输出层树的每个叶子节点表示一个语料库中词语,这样对于每一个叶子节点都有一条从根节点到它的路径,这个路径要经过若干个分类器(中间节点),每个分类器到下一层分类器都会有一个概率。计算叶节点的概率就是将路径上每个分类器的概率相乘,如图4所示,节点10的概率(对特定上下文,该位置的词为w为的概率)的方法如下:
从根节点到10节点的路径为1,3,7,8,10,对应的编码为(,0,0,1,1)(根节点不需要编码)。从根节点到10前面的节点,可以分别以该节点上的参数构造一个逻辑回归模型,认为节点的子节点中1为正例,0为负例(反之亦可),如图4的节点8上的逻辑回归的参数就是输入为Xω,输出就是从图4中可以发现,它的输出为1。后面就可以使用逻辑回归常用的随机梯度下降等方法,每次朝着减小逻辑回归预测损失的方向更新参数(所有的)和Xw,而输入层的每个词的向量均分Xw的变化,即Context(w)i=Context(w)i+ΔXw/2c,最后得到词库中每一个词的词向量。
这里为了尽量获取消息中所有可能出现的词的词向量,使用了历史消息加额外的通用语料库作为word2vec的输入。
聚类模块32,用于使用聚类方法,根据向量获取模块31所得的词向量将语料库中的所有词分成k类。
使用word2vec训练得到所有词的词向量后,使用k-means(k-平均)聚类方法,将所有词聚成k类,k的值可以根据情况调节。
分类模型训练模块33,用于根据聚类模块32所得的词的类别,获得k维消息向量,并训练出消息分类模型。
对训练集中所有的正负样本(不良消息和正常消息),对其分词,并根据分出的每一个词在所在的聚类,将每一个的样本(每一条消息)记为一个k维的消息向量,每一维代表该消息中有多少个词在某一个聚类中。
为了保证用户体验,根据业务实际情况,k需要根据具体的业务场景来定。在本公司的业务场景下,k的取值为150时可以得到较好的聚类结果。
具体地先进行分词,得到消息中所有的词语,构造一个k维的向量,每一维对应上一步得到的聚类中的一个类型,k维的向量初始全部为0,对消息的每个词,找到该词属于的聚类,将其在向量中对应维的值加一,这样就得到了该消息的k维的消息向量。
得到所有消息的特征向量后,将消息的特征向量和标签(正或负样本)输入迭代决策树GBDT(Gradient Boosting Decision Tree)进行训练,GBDT是基于残差的效果增进模型,属于非线性回归模型,这里把它当作分类模型使用,用回归的分数作为分类的依据。
另外,除了使用上述特征外,考虑到长串的数字很可能是一个电话或者QQ号码之类的广告消息,还增加了一个数字维度,这个维度用以记录句子中数字的个数。
结果输出模块34,用于将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入分类模型训练模块33训练出的消息分类模型,得出正常消息或者不良消息的分类结果。
对一个代表输入样本的特征向量,GBDT会输出一个回归分数,预先设置一个阈值,经过业务场景的实验测试,将GBDT回归分数的阈值设置为0.37,分数大于等于0.37阈值则为正样本(即不良消息),否则为负样本(正常消息),阈值可以根据实际情况进行调节,较高的阈值会使较多的消息被判断为正常消息,表示了较宽松的过滤条件,反之较低的阈值则表示比较强的过滤条件。阈值可以根据实际情况进行调节,较高的阈值会使较多的消息被判断为正常消息,表示了较宽松的过滤条件,反之较低的阈值则表示比较强的过滤条件。
当贝叶斯模型出现ratio≤r1情况时,调用向量获取模块31和聚类模块32,对一条新消息,先分词再获得包含词语的词向量,再映射产生对应的k维消息向量,将该k维消息向量作为分类模型训练模块33中回归模型的输入,得出回归分数,根据回归分数即可得到最终的分类结果,确定所述消息为正样本(不良消息)或者负样本(正常消息)。
相对于现在技术,本发明的消息过滤装置,通过将基于贝叶斯模型的分类器和基于语义的深度学习模型相结合的技术方案,能够自动学习,定时更新训练集并且识别近义词,节省大量人工标注的成本,具有更好的准确率、健壮性和稳定性。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也意图包含这些改动和变形。
Claims (12)
1.一种消息过滤的方法,其特征在于:包括步骤:
S1:利用贝叶斯分类器模型计算消息为不良消息的概率;
S2:根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息;
S3:对所述性质为正常的和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息;
所述步骤S3进一步包括:
S31:对训练集中的消息进行语义聚类,获得语料库中所有词的词向量;
S32:使用聚类方法,根据步骤S31所得的词向量将语料库中的所有词分成k类;
S33:根据步骤S32所得的词的类别,获得k维消息向量,并训练出消息分类模型;
S34:将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入步骤S33训练出的消息回归模型,根据回归分数得出正常消息或者不良消息的分类结果。
2.根据权利要求1所述的消息过滤的方法,其特征在于:所述步骤S1进一步包括步骤:
S11:对消息进行分词处理,获取消息中所包含的词语;
S12:根据所述消息中包含的词语计算消息为不良消息的概率。
3.根据权利要求2所述的消息过滤的方法,其特征在于:
所述步骤S12根据所述消息中包含的词语在训练集中出现的概率,利用贝叶斯模型来计算消息为不良消息的概率,所述不良消息的概率的具体计算公式为:
其中,W1W2…Wn为消息中包含的词语,S表示消息为不良消息。
4.根据权利要求3所述的消息过滤的方法,其特征在于:所述训练集使用离线自动更新的模式,定期从线上模型的历史记录中自动提取类型比较确定的消息作为训练集,统计不良消息和正常消息的条数、所有的词语分别在不良消息和正常消息中出现的次数,作为贝叶斯分类器模型中概率计算的参数。
5.根据权利要求4所述的消息过滤的方法,其特征在于:在所述步骤S1之前,包括步骤S0:对消息进行预处理,具体包括:编码检查、关键字过滤、连续数字过滤和重复消息过滤。
6.根据权利要求5所述的消息过滤的方法,其特征在于:
在所述步骤2中,首先计算不良消息与正常消息的概率比:
然后再将所述概率比与预设的两个阈值r0和r1,比较来判断所述消息的性质,
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
7.一种消息过滤的装置,其特征在于:包括贝叶斯分类模块,消息性质判断模块和深度学习分类模块,其中,
贝叶斯分类模块,用于利用贝叶斯分类器模型计算消息为不良消息的概率;
消息性质判断模块,用于根据所述不良消息的概率判断消息的性质,该消息的性质包括正常消息、不良消息和可疑消息,直接过滤掉不良消息,保留正常消息和可疑消息;
深度学习分类模块,用于对所述性质为正常和可疑的消息,利用基于语义的深度学习模型进一步分类,确定消息为正常消息或者不良消息;
所述深度学习分类模块进一步包括:
词向量获取模块,用于对训练集中的消息进行语义聚类,获得语料库中所有词的词向量;聚类模块,用于使用聚类方法,根据语义聚类模块所得的词向量将语料库中的所有词分成k类;
分类模型训练模块,用于根据聚类模块所得的词的类别,获得消息向量,并训练出消息分类模型;
结果输出模块:用于将所述正常消息和可疑消息映射产生对应的k维消息向量,并将该消息向量输入分类模型训练模块训练出的消息分类模型,得出正常消息或者不良消息的分类结果。
8.根据权利要求7所述的消息过滤的装置,其特征在于:所述贝叶斯分类模块进一步包括:分词模块,用于对消息进行分词处理,获取消息中所包含的词语;
概率计算模块,用于根据所述消息中包含的词语计算消息为不良消息的概率。
9.根据权利要求8所述的消息过滤的装置,其特征在于:
所述概率计算模块根据所述消息中包含的词语在训练集中出现的概率,利用贝叶斯模型来计算消息为不良消息的概率,所述不良消息的概率的具体计算公式为:
其中,W1W2…Wn为消息中包含的词语,S表示消息为不良消息。
10.根据权利要求9所述的消息过滤的装置,其特征在于:所述训练集使用离线自动更新的模式,定期从线上模型的历史记录中自动提取类型比较确定的消息作为训练集,统计不良消息和正常消息的条数、所有的词语分别在不良消息和正常消息中出现的次数,作为贝叶斯分类器模型中概率计算的参数。
11.根据权利要求10所述的消息过滤的装置,其特征在于:包括消息预处理模块,用于对消息进行预处理,具体包括:编码检查、关键字过滤、连续数字过滤和重复消息过滤。
12.根据权利要求11所述的消息过滤的装置,其特征在于:在所述消息性质判断模块中,首先计算不良消息与正常消息的概率比:
然后再将所述概率比与预设的两个阈值r0和r1,比较来判断所述消息的性质:
若ratio≤r0,判断该消息的性质为正常消息;
若ratio>r1,判断该消息的性质为不良消息;
若r0<ratio≤r1,将该消息的性质为可疑消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610283866.7A CN105955951B (zh) | 2016-04-29 | 2016-04-29 | 一种消息过滤的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610283866.7A CN105955951B (zh) | 2016-04-29 | 2016-04-29 | 一种消息过滤的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105955951A CN105955951A (zh) | 2016-09-21 |
CN105955951B true CN105955951B (zh) | 2018-12-11 |
Family
ID=56913075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610283866.7A Active CN105955951B (zh) | 2016-04-29 | 2016-04-29 | 一种消息过滤的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105955951B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107679144A (zh) * | 2017-09-25 | 2018-02-09 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460049B (zh) * | 2017-02-21 | 2021-10-19 | 阿里巴巴集团控股有限公司 | 一种确定信息类别的方法和*** |
CN107291693B (zh) * | 2017-06-15 | 2021-01-12 | 广州赫炎大数据科技有限公司 | 一种改进词向量模型的语义计算方法 |
CN107358494A (zh) * | 2017-06-23 | 2017-11-17 | 武汉理工大学 | 一种基于大数据的客户需求信息挖掘方法 |
US10454869B2 (en) * | 2017-11-07 | 2019-10-22 | Oath Inc. | Computerized system and method for controlling electronic messages and their responses after delivery |
CN108346107B (zh) | 2017-12-28 | 2020-11-10 | 创新先进技术有限公司 | 一种社交内容风险识别方法、装置以及设备 |
CN108897732B (zh) * | 2018-06-08 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 语句类型识别方法和装置、存储介质及电子装置 |
CN109511000B (zh) * | 2018-11-06 | 2021-10-15 | 武汉斗鱼网络科技有限公司 | 弹幕类别确定方法、装置、设备及存储介质 |
CN109582791B (zh) * | 2018-11-13 | 2023-01-24 | 创新先进技术有限公司 | 文本的风险识别方法及装置 |
CN109959109A (zh) * | 2019-03-18 | 2019-07-02 | 四川长虹电器股份有限公司 | 基于异常语音识别的空气调节控制***及其控制方法 |
EP3715987A1 (de) * | 2019-03-29 | 2020-09-30 | Siemens Aktiengesellschaft | Verfahren und system zum management von meldungen eines automatisierungssystems |
CN110110143B (zh) * | 2019-04-15 | 2021-08-03 | 厦门网宿有限公司 | 一种视频分类方法及装置 |
CN110413862A (zh) * | 2019-07-25 | 2019-11-05 | 磐基(湖北)网络安全技术有限公司 | 一种基于人工智能的信息监测方法及*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101911067A (zh) * | 2008-01-08 | 2010-12-08 | 三菱电机株式会社 | 信息过滤***、信息过滤方法以及信息过滤程序 |
CN105447505A (zh) * | 2015-11-09 | 2016-03-30 | 成都数之联科技有限公司 | 一种多层次重要邮件检测方法 |
-
2016
- 2016-04-29 CN CN201610283866.7A patent/CN105955951B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101911067A (zh) * | 2008-01-08 | 2010-12-08 | 三菱电机株式会社 | 信息过滤***、信息过滤方法以及信息过滤程序 |
CN105447505A (zh) * | 2015-11-09 | 2016-03-30 | 成都数之联科技有限公司 | 一种多层次重要邮件检测方法 |
Non-Patent Citations (2)
Title |
---|
《基于word2vec的短信向量化算法》;王贵新等;《电子科技》;20160415;第29卷(第4期);第49-52页 * |
《多阶段三支决策垃圾短信过滤模型》;李建林等;《计算机科学与探究》;20130927;第226-233页 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107679144A (zh) * | 2017-09-25 | 2018-02-09 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
CN107679144B (zh) * | 2017-09-25 | 2021-07-16 | 平安科技(深圳)有限公司 | 基于语义相似度的新闻语句聚类方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105955951A (zh) | 2016-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105955951B (zh) | 一种消息过滤的方法及装置 | |
CN111666502A (zh) | 一种基于深度学习的异常用户识别方法、装置及存储介质 | |
CN112507699B (zh) | 一种基于图卷积网络的远程监督关系抽取方法 | |
CN108388651A (zh) | 一种基于图核和卷积神经网络的文本分类方法 | |
CN107798033B (zh) | 一种公安领域案件文本的分类方法 | |
CN108776671A (zh) | 一种网络舆情监控***及方法 | |
CN107515873A (zh) | 一种垃圾信息识别方法及设备 | |
CN105335352A (zh) | 基于微博情感的实体识别方法 | |
CN111694958A (zh) | 基于词向量与single-pass融合的微博话题聚类方法 | |
CN108199951A (zh) | 一种基于多算法融合模型的垃圾邮件过滤方法 | |
US20220300735A1 (en) | Document distinguishing based on page sequence learning | |
CN107688576B (zh) | 一种cnn-svm模型的构建及倾向性分类方法 | |
CN108549647A (zh) | 基于SinglePass算法实现无标注语料主动预测移动客服领域中突发事件的方法 | |
CN110990566B (zh) | 一种基于社区检测的增量聚类算法 | |
CN112015901A (zh) | 文本分类方法及装置、警情分析*** | |
CN110188195A (zh) | 一种基于深度学习的文本意图识别方法、装置及设备 | |
CN107679228A (zh) | 一种基于短文本扩展和概念漂移检测的短文本数据流分类方法 | |
CN109858974A (zh) | 已购车用户识别模型构建方法及识别方法 | |
CN110851176A (zh) | 一种自动构造并利用伪克隆语料的克隆代码检测方法 | |
CN108984532A (zh) | 基于层次嵌入的方面抽取方法 | |
Gu et al. | Enhancing text classification by graph neural networks with multi-granular topic-aware graph | |
CN108536781A (zh) | 一种社交网络情绪焦点的挖掘方法及*** | |
Wang et al. | A method for extracting unstructured threat intelligence based on dictionary template and reinforcement learning | |
CN115858906A (zh) | 企业搜索方法、装置、设备、计算机存储介质及程序 | |
WO2024087754A1 (zh) | 一种多维度文本综合辨识方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 510275 Xingang West Road, Guangdong, Guangzhou, No. 135, No. Applicant after: Sun Yat-sen University Applicant after: Flamingo network (Guangzhou) Limited by Share Ltd Address before: 510275 Xingang West Road, Guangdong, Guangzhou, No. 135, No. Applicant before: Sun Yat-sen University Applicant before: Guangzhou Flamingo Network Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |