ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

《从NLP反作弊技术看马蜂窝注水事件》笔记

2019-03-25 11:52:44  阅读:302  来源: 互联网

标签:NLP 模型 关键词 马蜂窝 相似 反作弊 文本 句子 向量


0.原文

NLP系列(6)_从NLP反作弊技术看马蜂窝注水事件 - 寒小阳 - CSDN博客
https://blog.csdn.net/han_xiaoyang/article/details/84205701

1.马蜂窝是否有大量抄袭点评

1.1 先用词袋模型快速筛选一批相似点评

词袋子模型是一种非常经典的文本表示。顾名思义,它就是将字符串视为一个 “装满字符(词)的袋子” ,袋子里的词语是随便摆放的。而两个词袋子的相似程度就以它们重合的词及其相关分布进行判断。

词袋模型的缺点

  • 召回率高但准确率低
    解决:只用于初步筛选
  • 只统计词语是否出现或者词频,会被无意义的词汇所影响
    解决:文本预处理(a.去除停用词;b.文字、字母、标点符号统一;c.利用TF-IDF去除不重要的词)
  • 无法识别语义层面的信息
    解决:基于深度学习的文本表示(词向量、句向量等)
  • 无法关注词语之间的顺序关系
    解决:深度学习

1.2 再用字符串匹配确定一批实锤

最长公共子串,动态规划求解

优点

  • 准确率高:子串的判断是完全匹配的,绝对属于实锤

缺点

  • 召回率低
  • 速度慢:时间复杂度O(n2)O(n^2)O(n2)

1.3 用深度学习捞漏网之鱼

1.3.1 基于深度学习的文本表示:词向量/句向量

词向量:wod2vec
句向量:

  • 最简单:将句子中所有词的词向量加起来
  • 通过神经网络将输入的词向量经过CNN\RNN\self-attention机制得到整个句子的表示,最后用一层max pooling转换到固定长度的向量。计算两个句子的余弦值作为它们的相似度。

1.3.2 直接用神经网络建模句子之间的相似度

在搜索引擎的场景下,把用户的搜索语句(query)和搜索引擎展示的网页文本(document)都输入给神经网络。之后分别输出query与各个document的相似度,以用户是否点击作为标注进行建模。得到模型后,就可以直接给任意两句话计算相似度了。
这种方法比较依赖海量的标注数据。而搜索引擎天然具有这海量的标注数据。

1.4 人工校验

人工校验,分析badcase,进一步优化模型……

2.马蜂窝是否有大量抄袭账号

2.1 传统学习进行文本分类

关键词匹配是指关键词与页面中的内容进行匹配。如果文本中出现了某些典型关键词,就可以直接判断该文本所属的分类。
举例:我们可以抽出女性关键词:“老公”、“男友”等。男性关键词:“老婆”、“女友”等。我们将已知关键词拿到文中去进行匹配,就可以识别账号评论的性别。

缺点

准确率高、召回率低

改进

进行大量的特征工程。比如增加词语的词性、命名实体相关特征,或者采用更好的分词器。另一个思路是增加2gram、3gram特征。

2.2 机器学习进行文本分类

文本表示(词袋模型)+分类器模型(朴素贝叶斯/逻辑回归/支持向量机)
词袋模型是一种基于统计的将文本中的词进行统一表示的方法。而得到这些文档的向量表示后,可以采用朴素贝叶斯、逻辑回归或支持向量机等机器学习的算法模型对文本加以分类,从而识别出各文本中的人物年龄、性别等信息,进而找出矛盾点及识别出账号的真伪。

2.3 深度学习进行文本分类

采用基于深度学习方法的文本分类技术主要包括卷积神经网络(CNN),循环神经网络(RNN),注意力机制(Attention)等。

3.马蜂窝是否有大量水军评论

用更多的可视化技术帮助人工去寻找作弊关键点。一个典型的方法是绘制词云。其实本质上也是统计词频,但是通过可视化技术可以讲词频较高的词语、短语放大标出。这样可以有个更加直观的认识,形成更加专业的分析报告。

3.1 模板评论

统计词频发现模板评论

3.2 机翻关键词

结合词组统计和用肉眼看。

3.3 “投毒”

类似机翻关键词的寻找。

4.马蜂窝是否有大量洗稿攻略

鉴别洗稿NLP技术其实目前还是开放问题,因为这属于长文本的相似度判断

长文本相似与短文本相似最大的区别是:长文本的信息量更加丰富,处理起来更加困难。如句子之间的顺序、段落间的谋篇布局、篇章整体的主题等等,都远比句子级别的信息更复杂。

4.1 词语级别抽取信息

用基于统计的词袋子模型快速筛选一批相似攻略。这个方法的好处是速度快、召回率高,但准确率低。这在面对海量文章进行判断时比较有用,把绝大部分明显不是抄袭的攻略都过滤掉。

4.2 句子级别抽取信息

采用字符串匹配判断是否存在数个以上的句子完全相同。这是洗稿文章典型特征。而这种方法准确率高,但召回率低。而且特别容易被洗稿团队绕过。

4.3 深度学习捞漏网之鱼

之后可以把中间地带的文本拆成句子用深度学习筛选一遍,捞一批漏网之鱼

4.4 篇章级别抽取信息

涉及到的NLP技术包括情感倾向分析与主题模型LDA。

4.5 人工校验

最后再用人工校验,分析badcase,进一步优化策略……

标签:NLP,模型,关键词,马蜂窝,相似,反作弊,文本,句子,向量
来源: https://blog.csdn.net/weixin_38493025/article/details/88788499

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有