CN113190672A - 一种广告判定模型、广告过滤的方法及系统 - Google Patents
一种广告判定模型、广告过滤的方法及系统 Download PDFInfo
- Publication number
- CN113190672A CN113190672A CN202110515768.2A CN202110515768A CN113190672A CN 113190672 A CN113190672 A CN 113190672A CN 202110515768 A CN202110515768 A CN 202110515768A CN 113190672 A CN113190672 A CN 113190672A
- Authority
- CN
- China
- Prior art keywords
- word
- advertisement
- chatting
- data
- sentence
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
本发明公开了一种广告判定模型、广告过滤的方法及系统,该方法包括:对聊天数据进行文本预处理,得到聊天数据每个句子的词数组;tf‑idf算法和word2vec算法分别对词数组进行特征提取,分别得到每个句子的tf‑idf矩阵和词向量矩阵;将tf‑idf矩阵分别输入到第一支持向量机分类器、逻辑回归分类器和朴素贝叶斯分类器得到第一判定结果、第二判定结果和第三判定结果;将词向量矩阵输入第二支持向量机分类器得到第四判定结果;根据四种判定结果得到最终判定结果;根据最终判定结果过滤要显示在社交区的聊天数据,只对最终判定结果为正常聊天的句子进行显示。本发明能够有效提高广告判定模型的准确度,过滤效果好,有效提高用户体验。
Description
技术领域
本发明涉及网络广告管理技术,主要涉及一种广告判定模型、广告过滤的方法及系统。
背景技术
在游戏中,游戏玩家通常通过聊天区(包括滚动的条形弹幕)进行交流,但在聊天区存在很多广告商和黑灰产人员刷屏发送的非法广告及诈骗信息等垃圾内容,为了构建良好的社交氛围和环境,对聊天区的发言内容限制和过滤变得尤为重要。
目前广告过滤技术主要包括垃圾邮件过滤技术和关键字过滤技术两种。垃圾邮件过滤技术主要针对长文本进行模型训练,主流的两种算法为基于词袋模型特征的贝叶斯分类器和基于tf-idf(词频-逆文本频率)的支持向量机模型;关键字过滤技术主要针对短文本,通过关键词库构建字典树对敏感词甄别和过滤。与网络常见的广告不同,游戏聊天区出现的广告大多是带有性吸引标题及低价充值等由头引诱加好友盗号或引流,通过垃圾邮件过滤技术和关键字过滤技术对游戏聊天区出现的广告过滤存在以下问题:
(1)邮件的发展史比较久,累计了相当多的范本,其特点相对比较明显,而游戏中的广告大多为短文本(20字之内的较多),因此采用垃圾邮件过滤技术对游戏聊天区的广告进行过滤,适用程度较低;
(2)关键字过滤技术不仅对新兴的广告类型反应较慢,而且容易被破解,黑灰产业或广告商针对关键字过滤技术不断更改广告编排策略(比如在词中间加标点符号,不影响理解,但是能躲避基于关键字的过滤),躲避过滤。
发明内容
本发明要解决的技术问题是现有广告过滤技术对短文本广告适用程度低,对新兴广告类型反应慢,且在与非法广告对抗中容易被破解、被躲避,降低过滤效果。
为了解决上述技术问题,本发明提供的技术方案为提供了一种广告过滤的方法,包括:
对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组;
通过词频-逆文本频率算法tf-idf和文本向量话算法word2vec分别对所述词数组进行特征提取,分别得到每个句子的词频和逆文本频率矩阵和词向量矩阵;
将所述词频和逆文本频率矩阵分别输入到第一支持向量机分类器、逻辑回归分类器和朴素贝叶斯分类器,分别得到第一判定结果、第二判定结果和第三判定结果;
将所述词向量矩阵输入第二支持向量机分类器得到第四判定结果;
根据四种判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,所述最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,所述最终判定结果为正常聊天;
根据所述最终判定结果过滤要显示在所述社交区的聊天数据,只对所述最终判定结果为正常聊天的句子进行显示。
在上述方法中,所述对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组包括:
对要显示在社交区的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;
使用开源工具对所述聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词;
根据预设的扩词词典对每个类的结构体中的所述第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,所述扩词词典包括同义词扩增、常用网络拆并字;
将每个句子的类的结构体转化为词数组。
在上述方法中,所述第一文本预处理包括:
通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;
根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字和不影响整个句子含义表达的词;
将所述聊天数据中繁体字转换成简体字、全角转换为半角;
通过正则分离出所述聊天数据中网址,并将所述网址替换为汉字“网址”;
根据拼音词库和英语词库,查找到所述聊天数据中的拼音和英语,并将拼音和英语替换为汉字“拼音”和“英语”;
根据现有平台账号格式查找到所述聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将所述平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;
查找所述聊天数据中的数字,并将数字替换为统一的预设数字。
在上述方法中,当所述根据现有平台账号格式查找到所述聊天数据中的平台账号符合手机号规则时,则所述平台账号分别替换为汉字“账号”和“手机号”,将所述平台账号所在句子扩展为包括汉字“账号”和汉字“手机号”的两个句子。
在上述方法中,所述方法还包括根据不同应用场景制定定制化词表;其中,所述定制化词表包括对应应用场景特有的专属词语;
根据所述定制化词表对所述聊天数据中的每个句子进行分词,使句子中包括的所述专属词语分为一个词语。
本发明提供的技术方案为还提供了一种广告判定模型,包括:
文本预处理模块,用于对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组;
tf-idf算法模块,用于通过词频-逆文本频率算法tf-idf对所述词数组进行特征提取,得到每个句子的词频和逆文本频率矩阵;
word2vec算法模块,用于通过文本向量话算法word2vec对所述词数组进行特征提取,得到每个句子的词向量矩阵;
第一支持向量机分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第一判定结果;
逻辑回归分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第二判定结果;
朴素贝叶斯分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第三判定结果;
第二支持向量机分类器,用于对所述词向量矩阵进行广告和正常聊天的判定,得到第四判定结果;
判定结果输出模块,用于根据所述第一判定结果、所述第二判定结果、所述第三判定结果和所述第四判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,所述最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,所述最终判定结果为正常聊天。
在上述模型中,还包括利用训练集对所述广告判定模型进行训练,包括:
收集社交区的聊天数据和用户的投诉数据;
对收集的聊天数据和用户的投诉数据按照正常聊天和广告进行分类,并分别进行标注得到训练集;
将训练集中的聊天数据依次输入所述广告判定模型,对训练集中数据进行广告判定;
根据所述第一判定结果、所述第二判定结果、所述第三判定结果和所述第四判定结果分别计算第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一准确率、第一召回率,并根据第一准确率、第一召回率计算对应分类器的第一综合指标;
分别判断所述第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一综合指标是否大于等于预设阈值,过滤掉综合指标小于预设阈值的分类器;
判定结果输出模块利用剩余的分类器的判定结果重新进行广告判定,得到最终判定结果;
根据所述最终判定结果计算所述广告判定模型的第二准确率、第二召回率,并根据第二准确率、第二召回率计算所述广告判定模型的第二综合指标;并在第二综合指标大于目前使用的广告判定模型的第二综合指标时迭代更新广告判定模型。
在上述模型中,所述文本预处理模块包括:
第一预处理单元,对输入的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;
分词单元,用于对所述聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词;
拆并单元,用于根据预设的扩词词典对每个类的结构体中的所述第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,所述扩词词典包括同义词扩增、常用网络拆并字;
格式转化单元,用于将每个句子的类的结构体转化为词数组。
在上述模型中,所述第一文本预处理包括:
通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;
根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字和不影响整个句子含义表达的词;
将所述聊天数据中繁体字转换成简体字、全角转换为半角;
通过正则分离出所述聊天数据中网址,并将所述网址替换为汉字“网址”;
根据拼音词库和英语词库,查找到所述聊天数据中的拼音和英语,并将拼音和英语替换为汉字“拼音”和“英语”;
根据现有平台账号格式查找到所述聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将所述平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;
查找所述聊天数据中的数字,并将数字替换为统一的预设数字。
本发明提供的技术方案为还提供了一种广告过滤的系统,包括本发明提供所述的广告判定模型和过滤处理模块;
所述过滤处理模块根据所述最终判定结果过滤要显示在所述社交区的聊天数据,只对所述最终判定结果为正常聊天的句子进行显示。
本发明通过并列的四个分别基于tf-idf算法和word2vec算法的分类器对聊天数据进行分类,并根据四个分类器的判定结果得到最终判定结果,避免单一分类器对某些数据不适合,出现判定错误,能够有效提高广告判定模型的准确度,过滤效果好,有效提高用户体验。
附图说明
图1为本发明实施例提供的一种广告判定模型的结构示意图;
图2为本发明实施例中对广告判定模型的训练的示意图;
图3为本发明实施例提供的一种广告过滤的方法的流程图;
图4为本发明实施例中支持向量机分类器的分离超平面示意图。
具体实施方式
本发明公开了一种广告判定模型、广告过滤的方法及系统,本领域技术人员可以借鉴本文内容,适当改进工艺参数实现。需要特别指出的是,所有类似的替换和改动对本领域技术人员来说是显而易见的,它们都被视为包括在本发明,并且相关人员明显能在不脱离本发明内容、精神和范围的基础上对本文所述内容进行改动或适当变更与组合,来实现和应用本发明技术。
在本发明中,除非另有说明,否则本文中使用的科学和技术名词具有本领域技术人员所通常理解的含义。
为了使本领域的技术人员更好地理解本发明的技术方案,下面结合具体实施例对本发明作进一步的详细说明。
本发明提供的一种广告判定模型、广告过滤的方法及系统,针对短文本,基于数据挖掘算法和神经网络训练构建广告判定方法,不仅减少人为干预,让电脑自动可以识别出不同组合的广告和垃圾弹幕,提高广告过滤效率;而且广告和正常聊天判定准确度十分高,另外,通过对不同应用场景的收集数据作为训练集,通过训练集对广告判定模型进行训练就能得到该应用场景的定制广告判定模型,灵活性更好。
如图1所示,本发明实施例提供了一种广告判定模型,用于对游戏等聊天区域短文本进行正常聊天和广告的分类判定,该广告判定模型包括:
文本预处理模块10,用于对要显示在社交区的聊天数据进行文本预处理,得到聊天数据每个句子的词数组;
tf-idf算法模块20,用于通过词频-逆文本频率算法tf-idf对词数组进行特征提取,得到每个句子的词频和逆文本频率矩阵;
word2vec算法模块30,用于通过文本向量话算法word2vec对词数组进行特征提取,得到每个句子的词向量矩阵;
第一支持向量机分类器40,用于对词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第一判定结果;
逻辑回归分类器50,用于对词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第二判定结果;
朴素贝叶斯分类器60,用于对词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第三判定结果;
第二支持向量机分类器70,用于对词向量矩阵进行广告和正常聊天的判定,得到第四判定结果;
判定结果输出模块80,用于根据第一判定结果、第二判定结果、第三判定结果和第四判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,最终判定结果为正常聊天。
本实施例提供的广告判定模型通过并列的四个分别基于tf-idf算法和 word2vec算法的分类器对聊天数据进行分类,并根据四个分类器的判定结果得到最终判定结果,避免单一分类器对某些数据不适合,出现判定错误,能够有效提高广告判定模型的准确度。
在本实施例中,如图2所示,对广告判定模型的训练包括:
步骤1、收集社交区的聊天数据和用户的投诉数据;在本实施例中,针对一个应用场景收集一段时间的聊天数据和用户的投诉数据,以该数据为基础建立训练集。
步骤2、对收集的聊天数据和用户的投诉数据按照正常聊天和广告进行分类,并分别进行标注得到训练集;在本实施例中,聊天数据和用户的投诉数据分类为正常聊天和广告两类,对于用户或玩家的投诉数据在分类时都默认为广告,标注为广告;在对聊天数据进行分类时,可以先进行关键字和高频词汇提取,然后再进行人工分类标注,提高分类标注的效率。
步骤3、将训练集中的聊天数据依次输入广告判定模型,对训练集中数据进行广告判定;训练集中具有大量的聊天数据,每次对广告判定模型进行训练,都要将这些数据全部输入广告判定模型,广告判定模型会对输入的每个句子进行广告判定,完成一次训练,为了使广告判定模型更适合当前应用场景或能够不断适用广告方发送广告的策略,需要不断的收集聊天数据和玩家投诉数据,建立新的训练集,不断的对广告判定模型进行训练。
步骤4、根据第一判定结果、第二判定结果、第三判定结果和第四判定结果分别计算第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一准确率、第一召回率,并根据第一准确率、第一召回率计算对应分类器的第一综合指标;
在本实施例中,准确率P为在所有被判定为正常聊天的文档中判定正确的比例有多少;召回率R为在所有正常聊天的文档中被判定正确的比例有多少;综合指标F是衡量精确度和召回率的综合数据,用来衡量分类器和广告判定模型的性能;其中,F=2PR/(P+R)。
步骤5、分别判断第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一综合指标是否大于等于预设阈值,过滤掉综合指标小于预设阈值的分类器,以进一步保证多分类器投票结果的准确性,避免不适合模型对最终判定结果造成影响。
步骤6、判定结果输出模块利用剩余的分类器的判定结果重新进行广告判定,得到最终判定结果。
步骤7、根据最终判定结果计算广告判定模型的第二准确率、第二召回率,并根据第二准确率、第二召回率计算广告判定模型的第二综合指标。
步骤8、判断当前训练模型第二综合指标是否大于目前使用的广告判定模型的第二综合指标(对相同训练集,同时输入新模型和目前使用广告判定模型,同时输出性能矩阵及所有错误分类日志),如果大于,说明新训练的模型对该应用场景聊天数据分类的性能更好,迭代更新广告判定模型;如果小于,保存分类日志及训练的新模型但不更新,继续收集一段时间聊天数据和玩家投诉数据,构建训练集,继续对广告判定模型进行训练。
本实施例提供的广告判定模型训练方法训练成本较低(普通家用电脑即可训练),可以针对每个游戏或其他应用场景的聊天记录等进行训练,定制化程度高、可推广度高。通过多分类器投票,从不同维度判定聊天数据是否为广告,判定准确度高,另外可根据玩家自选接受度(过滤所有广告,智能过滤等)进行过滤,可达到良好的过滤效果和用户体验。
在本实施例中,文本预处理模块包括:
第一预处理单元,对输入的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;其中,第一文本预处理包括但不限于:
(1)通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;非法广告发送方为了避免被过滤通常在敏感词语中添加表情或特殊字符,防止被分类器过滤掉。
(2)根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字等不影响整个句子含义表达的词;
如:自己找女的去别吵吵了,经过该处理后为:找女别吵吵。
(3)将聊天数据中繁体字转换成简体字、全角转换为半角,以方便后续中文分词。
(4)通过正则分离出聊天数据中网址,并将网址替换为汉字“网址”;
(5)根据拼音词库和“英语”词库,查找到聊天数据中的拼音和“英语”,并将拼音和“英语”替换为汉字“拼音”和“英语”;
(6)根据现有平台账号格式查找到聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;这样能够防止正常的账号交互被误判。在进行训练时,当根据现有平台账号格式查找到聊天数据中的平台账号符合手机号规则时,则平台账号分别替换为汉字“账号”和“手机号”,将平台账号所在句子扩展为包括汉字“账号”和汉字“手机号”的两个句子从而达到和扩展训练集的目的。
如:速加微信13587****13,进过处理后为:速加微信手机号;速加微信账号。
(7)查找聊天数据中的数字,并将数字替换为统一的预设数字。下面以预设数字为11为例:
200元宝只要68元,速加微信xxxw321321,经过处理为11元宝只要11 元速加微信重复账号。
分词单元,用于对所述聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词。在本实施例中分词单元采用jieba开源工具进行分词,在进行分词时,还会根据定制化词表对聊天数据中的每个句子进行分词,使句子中包括的专属词语分为一个词语,保证专属词语的完整,定制化词表是根据不同应用场景制定的,包括对应应用场景特有的专属词语;比如针对一款游戏定制的定制化词表,就包括该游戏的专属词语,比如勾玉、元宝、离魂玉等游戏中的货币和其他专属词语添加该游戏的定制化词表中,在进行分词时,不会将“勾玉”分开为“勾”、“玉”;在进行广告判定模型训练时,还会对定制化词表中的词进行同类词扩增,比如,元宝是一种游戏货币,勾玉也是一种游戏货币,可将句子中的元宝用勾玉替换形成新的句子,从而扩展训练集。
如:加入公会送勾玉哦,可以扩展为:加入公会送勾玉哦;加入公会送元宝哦;加入公会送离魂玉哦等等。
拆并单元,用于根据预设的扩词词典对每个类的结构体中的第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,扩词词典包括同义词扩增、常用网络拆并字,防止非法广告通过拆分词来逃避过滤;在广告判定模型训练时,也会根据扩词词典对训练集进行扩展。
如:肥<==>月巴,喜欢<==>爱。
格式转化单元,用于将每个句子的类的结构体转化为词数组,统一格式,直接输入tf-idf算法模块和word2vec算法模块。
如:有没有加微信玩petxxxxxs预处理后得到的词数组为['有没有','加微信','玩','重复','账号']。
本发明实施例还提供了一种广告过滤的系统,包括本发明提供实施例的广告判定模型和过滤处理模块;
过滤处理模块根据最终判定结果过滤要显示在所述社交区的聊天数据,只对所述最终判定结果为正常聊天的句子进行显示。
利用本实施例提供的广告过滤的系统进行过滤,过滤效果明显,能够保证社交区良好的社交氛围和环境,提高用户使用体验。
本发明实施例还提供了一种广告过滤的方法,如图3所示,包括以下步骤:
步骤S10、对要显示在社交区的聊天数据进行文本预处理,得到聊天数据每个句子的词数组。
步骤S20、通过词频-逆文本频率算法tf-idf和文本向量话算法word2vec分别对词数组进行特征提取,分别得到每个句子的词频和逆文本频率矩阵和词向量矩阵。
(1)tf-idf算法是一种基于统计学的计算方法,基本思想是一个词在一个文档中的重要性与其在该文档中出现的次数成正比,但与其在整个语料库中出现的次数成反比,这个性质使得tf-idf算法倾向于过滤掉常见的词语,保留表达能力强,特征明显的短语。tf-idf算法由TF(词频)算法及IDF(逆文本频率) 算法两部分组成。
TF计算公式为:
其中,nij表示词i在句子j中的出现频次,分母表示的是在句子j中所有字词的出现次数之和。
IDF计算公式为:
其中,|D|表示聊天数据句子总数量,|Di|表示聊天数据中出现指定词i的句子数目,分母加1是采用了拉普拉斯平滑避免新词没有在语料库中出现,IDF算法主要用以抑制噪音。
tf-idf算法公式为:
经过此加权算法(tf-idf算法)后,得到的结构输出为N行M列的tf-idf值矩阵a(矩阵以压缩的稀疏格式存储);其中,N为句子数量,M为所有词的数量,a[i][j]代表j词在i句子下的tf-idf值,j取不大于M的正整数,i取不大于N 的正整数。
(2)word2vec算法是google的开源词向量工具,结果为该工具得到的训练结果为词向量(word embedding,word2vec_size设置为100),可以很好地度量词与词之间的相似性。Word2vec算法为双层的神经网络,常用以重建语言学词本,在word2vec算法中,次序并不重要,但其可进行词矢量计算。
针对每句话的所有词(每个词为一个100维的词向量),算术平均后(语句中的每个词的向量加起来再除以单词数)计算得到语句词向量作为分类算法的输入。
步骤S30、将词频和逆文本频率矩阵分别输入到第一支持向量机分类器、逻辑回归分类器和朴素贝叶斯分类器,分别得到第一判定结果、第二判定结果和第三判定结果;同时,将词向量矩阵输入第二支持向量机分类器得到第四判定结果。
在本实施例中分类器的作用主要是将训练集样本或待判定聊天数据通过 tf-idf算法和word2vec算法计算出的词频和逆文本频率矩阵和词向量矩阵,在空间中找到一个平面(曲面)划分两类,用以预测剩下的句子是广告还是正常聊天的可能性。
(1)朴素贝叶斯分类器是目前使用最广泛的两种分类器之一;朴素贝叶斯分类(NBC)是以贝叶斯定理为基础并且假设特征条件之间相互独立的方法,先通过已给定的训练集,以特征词之间独立作为前提假设,学习从输入到输出的联合概率分布,再基于学习到的模型,输入X求出使得后验概率最大的输出 Y。
朴素贝叶斯公式为:
输入为特征向量,输出为类的标记,训练集合为:T={(x1,y1),(x2,y2),...(xN,yN)};
假设P(X,Y)独立分布,朴素贝叶斯通过训练集合学习联合概率分布P(X,Y)
贝叶斯公式为:
根据上面的等式得到贝叶斯理论的一般形式:
由此可得,朴素贝叶斯计算的公式为:
朴素贝叶斯算法假设了数据集属性之间是相互独立的,因此算法的逻辑性十分简单,并且算法较为稳定。当数据集属性之间的关系相对比较独立时,朴素贝叶斯分类算法会有较好的效果。朴素贝叶斯模型假设属性之间相互独立,这个假设在长文本中往往是不成立的,相邻的两个词之间存在必然联系,但是在本产品的适用场景下:没有上下文的短语中适用度很高,尤其是很多广告商会调整前后词序以躲避部分分类器的过滤。
(2)支持向量机分类器SVM:
支持向量机分类器SVM是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面,如图4所示。
SVM学习的基本想法是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。如图4所示分离超平面,对于线性可分的数据集来说,这样的超平面有无穷多个(即感知机),但是几何间隔最大的分离超平面却是唯一的;支持向量机分类器进行文本分类时,泛化错误率低。
(3)逻辑回归分类器LR:
Logistic分布是一种连续型的概率分布,其分布函数和密度函数分别为:
其中,μ表示位置参数,γ>0为形状参数。
Logistic分布是由其位置和尺度参数定义的连续分布。Logistic分布的形状与正态分布的形状相似,但是Logistic分布的尾部更长,所以我们可以使用 Logistic分布来建模比正态分布具有更长尾部和更高波峰的数据分布。
Logistic回归实际上是使用线性回归模型的预测值逼近分类任务真实标记的对数几率,其优点有:
1.直接对分类的概率建模,无需实现假设数据分布,从而避免了假设分布不准确带来的问题;
2.不仅可预测出类别,还能得到该预测的概率,这对一些利用概率辅助决策的任务很有用;
3.对数几率函数是任意阶可导的凸函数,有许多数值优化算法都可以求出最优解。
所以SVM的处理方法是只考虑支持向量(Support Vectors),也就是和分类最相关的少数点去学习分类器,而逻辑回归分类器通过非线性映射减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重逻辑回归分类器可以产生概率而SVM不会,因此本产品两个分类算法均有采用。
步骤S40、根据四种判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,最终判定结果为正常聊天。
步骤S50、根据最终判定结果过滤要显示在社交区的聊天数据,只对最终判定结果为正常聊天的句子进行显示。
本实施例通过并列的四个分别基于tf-idf算法和word2vec算法的分类器对聊天数据进行分类,并根据四个分类器的判定结果得到最终判定结果,避免单一分类器对某些数据不适合,出现判定错误,能够有效提高广告判定模型的准确度,过滤效果好,有效提高用户体验。
在本实施例中,步骤S10包括:
对要显示在社交区的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;其中,第一文本预处理包括:
通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;
根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字和不影响整个句子含义表达的词;
将所述聊天数据中繁体字转换成简体字、全角转换为半角;
通过正则分离出所述聊天数据中网址,并将所述网址替换为汉字“网址”;
根据拼音词库和英语词库,查找到所述聊天数据中的拼音和英语,并将拼音和英语替换为汉字“拼音”和“英语”;
根据现有平台账号格式查找到所述聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将所述平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;当所述根据现有平台账号格式查找到所述聊天数据中的平台账号符合手机号规则时,则所述平台账号分别替换为汉字“账号”和“手机号”,将所述平台账号所在句子扩展为包括汉字“账号”和汉字“手机号”的两个句子;
查找所述聊天数据中的数字,并将数字替换为统一的预设数字。
使用开源工具对聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词。
根据预设的扩词词典对每个类的结构体中的第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,扩词词典包括同义词扩增、常用网络拆并字。
将每个句子的类的结构体转化为词数组。
在本实施例中,该方法还包括根据不同应用场景制定定制化词表;其中,所述定制化词表包括对应应用场景特有的专属词语;
根据所述定制化词表对所述聊天数据中的每个句子进行分词,使句子中包括的所述专属词语分为一个词语。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种广告过滤的方法,其特征在于,包括:
对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组;
通过词频-逆文本频率算法tf-idf和文本向量话算法word2vec分别对所述词数组进行特征提取,分别得到每个句子的词频和逆文本频率矩阵和词向量矩阵;
将所述词频和逆文本频率矩阵分别输入到第一支持向量机分类器、逻辑回归分类器和朴素贝叶斯分类器,分别得到第一判定结果、第二判定结果和第三判定结果;
将所述词向量矩阵输入第二支持向量机分类器得到第四判定结果;
根据四种判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,所述最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,所述最终判定结果为正常聊天;
根据所述最终判定结果过滤要显示在所述社交区的聊天数据,只对所述最终判定结果为正常聊天的句子进行显示。
2.根据权利要求1所述的方法,其特征在于,所述对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组包括:
对要显示在社交区的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;
使用开源工具对所述聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词;
根据预设的扩词词典对每个类的结构体中的所述第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,所述扩词词典包括同义词扩增、常用网络拆并字;
将每个句子的类的结构体转化为词数组。
3.根据权利要求2所述的方法,其特征在于,所述第一文本预处理包括:
通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;
根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字和不影响整个句子含义表达的词;
将所述聊天数据中繁体字转换成简体字、全角转换为半角;
通过正则分离出所述聊天数据中网址,并将所述网址替换为汉字“网址”;
根据拼音词库和英语词库,查找到所述聊天数据中的拼音和英语,并将拼音和英语替换为汉字“拼音”和“英语”;
根据现有平台账号格式查找到所述聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将所述平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;
查找所述聊天数据中的数字,并将数字替换为统一的预设数字。
4.根据权利要求3所述的方法,其特征在于,当所述根据现有平台账号格式查找到所述聊天数据中的平台账号符合手机号规则时,则所述平台账号分别替换为汉字“账号”和“手机号”,将所述平台账号所在句子扩展为包括汉字“账号”和汉字“手机号”的两个句子。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括根据不同应用场景制定定制化词表;其中,所述定制化词表包括对应应用场景特有的专属词语;
根据所述定制化词表对所述聊天数据中的每个句子进行分词,使句子中包括的所述专属词语分为一个词语。
6.一种广告判定模型,其特征在于,包括:
文本预处理模块,用于对要显示在社交区的聊天数据进行文本预处理,得到所述聊天数据每个句子的词数组;
tf-idf算法模块,用于通过词频-逆文本频率算法tf-idf对所述词数组进行特征提取,得到每个句子的词频和逆文本频率矩阵;
word2vec算法模块,用于通过文本向量话算法word2vec对所述词数组进行特征提取,得到每个句子的词向量矩阵;
第一支持向量机分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第一判定结果;
逻辑回归分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第二判定结果;
朴素贝叶斯分类器,用于对所述词频和逆文本频率矩阵进行广告和正常聊天的判定,得到第三判定结果;
第二支持向量机分类器,用于对所述词向量矩阵进行广告和正常聊天的判定,得到第四判定结果;
判定结果输出模块,用于根据所述第一判定结果、所述第二判定结果、所述第三判定结果和所述第四判定结果得到最终判定结果;其中,如果四种判定结果中判定结果为广告的数量大于正常聊天数量,所述最终判定结果为广告;如果判定结果为广告的数量小于等于正常聊天数量,所述最终判定结果为正常聊天。
7.根据权利要求6所述的一种广告判定模型,其特征在于,还包括利用训练集对所述广告判定模型进行训练,包括:
收集社交区的聊天数据和用户的投诉数据;
对收集的聊天数据和用户的投诉数据按照正常聊天和广告进行分类,并分别进行标注得到训练集;
将训练集中的聊天数据依次输入所述广告判定模型,对训练集中数据进行广告判定;
根据所述第一判定结果、所述第二判定结果、所述第三判定结果和所述第四判定结果分别计算第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一准确率、第一召回率,并根据第一准确率、第一召回率计算对应分类器的第一综合指标;
分别判断所述第一支持向量机分类器、逻辑回归分类器、朴素贝叶斯分类器和第二支持向量机分类器的第一综合指标是否大于等于预设阈值,过滤掉综合指标小于预设阈值的分类器;
判定结果输出模块利用剩余的分类器的判定结果重新进行广告判定,得到最终判定结果;
根据所述最终判定结果计算所述广告判定模型的第二准确率、第二召回率,并根据第二准确率、第二召回率计算所述广告判定模型的第二综合指标;并在第二综合指标大于目前使用的广告判定模型的第二综合指标时迭代更新广告判定模型。
8.根据权利要求7所述的一种广告判定模型,其特征在于,所述文本预处理模块包括:
第一预处理单元,对输入的聊天数据进行第一文本预处理,得到全中文文本的聊天数据;
分词单元,用于对所述聊天数据的每个句子进行分词,得到每个句子的类的结构体;其中,每个类的结构体包括多个第一词;
拆并单元,用于根据预设的扩词词典对每个类的结构体中的所述第一词进行拆字、并字和同义词扩充,得到每个句子多个类的结构体;其中,所述扩词词典包括同义词扩增、常用网络拆并字;
格式转化单元,用于将每个句子的类的结构体转化为词数组。
9.根据权利要求7所述的一种广告判定模型,其特征在于,所述第一文本预处理包括:
通过正则匹配过滤所述聊天数据中emoji表情和特殊字符;
根据配置的停用词库,去除停用词和空格;所述停用词库中所述停用词包括语气助词、称谓、生僻字和不影响整个句子含义表达的词;
将所述聊天数据中繁体字转换成简体字、全角转换为半角;
通过正则分离出所述聊天数据中网址,并将所述网址替换为汉字“网址”;
根据拼音词库和英语词库,查找到所述聊天数据中的拼音和英语,并将拼音和英语替换为汉字“拼音”和“英语”;
根据现有平台账号格式查找到所述聊天数据中的平台账号,统计每个平台账号出现的历史频次,当历史频次达到预设次数,将所述平台账号替换为汉字“重复账号”;否则,将所述平台账号替换为汉字“账号”;
查找所述聊天数据中的数字,并将数字替换为统一的预设数字。
10.一种广告过滤的系统,其特征在于,包括权利要求6至9任意一项所述的广告判定模型和过滤处理模块;
所述过滤处理模块根据所述最终判定结果过滤要显示在所述社交区的聊天数据,只对所述最终判定结果为正常聊天的句子进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515768.2A CN113190672A (zh) | 2021-05-12 | 2021-05-12 | 一种广告判定模型、广告过滤的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110515768.2A CN113190672A (zh) | 2021-05-12 | 2021-05-12 | 一种广告判定模型、广告过滤的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113190672A true CN113190672A (zh) | 2021-07-30 |
Family
ID=76981334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110515768.2A Pending CN113190672A (zh) | 2021-05-12 | 2021-05-12 | 一种广告判定模型、广告过滤的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113190672A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034626A (zh) * | 2012-12-26 | 2013-04-10 | 上海交通大学 | 情感分析系统及方法 |
CN104156447A (zh) * | 2014-08-14 | 2014-11-19 | 天格科技(杭州)有限公司 | 一种智能社交平台广告预警及处理方法 |
CN110162620A (zh) * | 2019-01-10 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 黑产广告的检测方法、装置、服务器及存储介质 |
CN110543564A (zh) * | 2019-08-23 | 2019-12-06 | 北京信息科技大学 | 基于主题模型的领域标签获取方法 |
CN110597949A (zh) * | 2019-08-01 | 2019-12-20 | 湖北工业大学 | 一种基于词向量和词频的法院相似案件推荐模型 |
CN110674289A (zh) * | 2019-07-04 | 2020-01-10 | 南瑞集团有限公司 | 基于分词权重判断文章所属分类的方法、装置和存储介质 |
CN110705247A (zh) * | 2019-08-30 | 2020-01-17 | 山东科技大学 | 基于χ2-C的文本相似度计算方法 |
CN111538836A (zh) * | 2020-04-22 | 2020-08-14 | 哈尔滨工业大学(威海) | 一种识别文本类广告中金融广告的方法 |
-
2021
- 2021-05-12 CN CN202110515768.2A patent/CN113190672A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103034626A (zh) * | 2012-12-26 | 2013-04-10 | 上海交通大学 | 情感分析系统及方法 |
CN104156447A (zh) * | 2014-08-14 | 2014-11-19 | 天格科技(杭州)有限公司 | 一种智能社交平台广告预警及处理方法 |
CN110162620A (zh) * | 2019-01-10 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 黑产广告的检测方法、装置、服务器及存储介质 |
CN110674289A (zh) * | 2019-07-04 | 2020-01-10 | 南瑞集团有限公司 | 基于分词权重判断文章所属分类的方法、装置和存储介质 |
CN110597949A (zh) * | 2019-08-01 | 2019-12-20 | 湖北工业大学 | 一种基于词向量和词频的法院相似案件推荐模型 |
CN110543564A (zh) * | 2019-08-23 | 2019-12-06 | 北京信息科技大学 | 基于主题模型的领域标签获取方法 |
CN110705247A (zh) * | 2019-08-30 | 2020-01-17 | 山东科技大学 | 基于χ2-C的文本相似度计算方法 |
CN111538836A (zh) * | 2020-04-22 | 2020-08-14 | 哈尔滨工业大学(威海) | 一种识别文本类广告中金融广告的方法 |
Non-Patent Citations (1)
Title |
---|
伍沛: "电子档案管理系统的研究与设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108763326B (zh) | 一种基于特征多样化的卷积神经网络的情感分析模型构建方法 | |
CN108984530B (zh) | 一种网络敏感内容的检测方法及检测系统 | |
CN111966917B (zh) | 一种基于预训练语言模型的事件检测与摘要方法 | |
Haque et al. | Multi-class sentiment classification on Bengali social media comments using machine learning | |
CN109165294B (zh) | 一种基于贝叶斯分类的短文本分类方法 | |
CN105183833B (zh) | 一种基于用户模型的微博文本推荐方法及其推荐装置 | |
CN107908715A (zh) | 基于Adaboost和分类器加权融合的微博情感极性判别方法 | |
CN110175221B (zh) | 利用词向量结合机器学习的垃圾短信识别方法 | |
Shanmugavadivel et al. | An analysis of machine learning models for sentiment analysis of Tamil code-mixed data | |
Faruque et al. | Ascertaining polarity of public opinions on Bangladesh cricket using machine learning techniques | |
Yang et al. | Enhanced twitter sentiment analysis by using feature selection and combination | |
Junaid et al. | Bangla food review sentimental analysis using machine learning | |
Baboo et al. | Sentiment analysis and automatic emotion detection analysis of twitter using machine learning classifiers | |
Jayakody et al. | Sentiment analysis on product reviews on twitter using Machine Learning Approaches | |
CN113220964B (zh) | 一种基于网信领域短文本的观点挖掘方法 | |
Rehman et al. | User-aware multilingual abusive content detection in social media | |
CN111859955A (zh) | 一种基于深度学习的舆情数据分析模型 | |
Mishra et al. | Evaluating Performance of Machine Leaming Techniques used in Opinion Mining | |
Salam Ayad Hussein | A Proposed Arabic Text and Text Image Classification Technique Using a URL Address | |
CN113190672A (zh) | 一种广告判定模型、广告过滤的方法及系统 | |
Chen et al. | Understanding emojis for financial sentiment analysis | |
Bagui et al. | Analysis of political sentiment from Twitter data | |
İlgün et al. | Sentiment Analysis using Transformers and Machine Learning Models | |
Jayamalini et al. | A comparative analysis of various machine learning based social media sentiment analysis and opinion mining approaches | |
Kang et al. | Sentiment analysis on Malaysian Airlines with BERT |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210730 |