反垃圾系统搭建浅谈
在信息爆炸的时代,垃圾消息不断充斥着我们的信息接受场景。这时候,搭建反垃圾系统就成了迫在眉睫的事情,而笔者也结合自己的思考给出了几点实施建议。
一、前言
1.1 反垃圾概念
反垃圾,通常是对由用户生产的内容,进行敏感、垃圾信息的过滤系统。主要有: 垃圾邮件拦截、微博广告过滤、弹幕、直播等场景 。反垃圾,又分为人工反垃圾和机器反垃圾。我们这里说的反垃圾,特指 机器反垃圾 。
机器反垃圾的意义,有以下几点:
(1)净化社区环境
过滤社区中的垃圾信息(违法、广告、色情、恶意灌水等)。这是文本反垃圾最基础、最重要的工作。如果这块做不好,对整个产品影响非常大。比如:之前有过新闻报道,微博、贴吧中存在太多的淫秽色情信息,被网信办给予了行政处罚和整顿处理;再有,小密圈(现改名为知识星球)因为涉黄,被停止运营了一个星期,影响非常大,尤其是对于一个在高速发展中的新产品。
(2)减少人工审核工作量
在很多大型公司,都有着非常庞大的人工审核团队。像头条、微博等,都至少是上千规模的人工审核团队,其他直播类的网站,也都基本接近1000人的规模。这么大的团队规模,对于每个公司,其实都是一个比较大的开支。而且,人工审核不仅效率低下,也会产生一定的误伤、漏删情况。机器自动反垃圾,在很大程度是减少人工审核工作量,提高审核效率,节省公司开支。
(3)配合社区运营
机器反垃圾,有着各式各样、松紧不同的策略,也是社区运营的一个重要手段。比如,当前社区用户活跃较少时,可能需要通过配置策略,整体管控放松;如果社区用户活跃较多,就需要适当收紧反垃圾策略,确保社区质量,避免水化。有时候,可能也会屏蔽竞品讨论等,也可以算作反垃圾的内容。当然,这里除了反垃圾,通常还需要一定的精彩文本提取的策略。在这里不进行讨论,有空的时候,我会单独拿出来说。
1.2 目前市面上反垃圾产品的现状
由前文所述,可见反垃圾对于社区的重要性。那么,目前市面上的反垃圾产品,是个什么现状呢?
反垃圾技术,在90年代的垃圾邮件过滤系统产生的时候,就已经开始发展。到现在,按理说是十分成熟。但是,通过我对各大互联网公司,像腾讯的qq、微信,阿里的淘宝、微博,百度的贴吧,头条的头条、抖音等,发现效果其实并不尽如人意;其他第三方服务,像数美、网易易盾、百度审核、达观等,也都只能做到基本达标,甚至在某些场景下,会频频失效。
这主要是因为:
(1)反垃圾是一个与黑产的攻防系统
黑产在巨额利益的诱惑下,会不断提升攻击的技术水平。反垃圾的系统,需要不断的更新迭代,一刻也不能停歇。而且,在与黑产的斗争中,很多时候处于劣势,很多策略都有滞后性。
(2)反垃圾系统的建立与迭代,需要很大的投入
反垃圾系统的建立和维护,需要很多的人力投入,NLP算法工程师、前后端开发、产品经理、语料标注团队等,对于很多 中小型公司根本养不起这样的团队 。对于提供反垃圾服务的第三方公司,又面临着同行竞争、资金投入等压力。而且,业内也缺乏对反垃圾效果的行业评测,第三方公司在效果方面不太好评估,基本都是靠销售驱动。
二、反垃圾系统的设计思路
2.1 反垃圾流程设计
反垃圾系统的设计,需要涉及到机审、人审、审核系统、风控安全、标注系统、人工标注等团队。理想状态下,在一个公司中,这些团队都在一个部门下,由同一个leader进行负责,会减少很多不必要的沟通上的工作量。
用户在app中发布一条消息内容,通常会是这样的流程:
2.2 反垃圾策略
2.2.0 反垃圾策略总况
反垃圾系统,对垃圾信息的拦截,是通过多种类型的策略组合,才能达到最佳的效果。主要有关键词策略、规则策略、模型策略、风控策略几种。下面,逐一介绍。
2.2.1 关键词策略
关键词策略,顾名思义,是通过添加关键词,达到拦截垃圾内容的目的。
最基础的关键词,就是关键词的硬匹配。比如,我添加“会员,联系”这样的组合关键词,就可以拦截“需要xx会员的,请联系我,微信号:abcd123”。
除此之外,关键词策略通常还包括,拼音关键词策略(huiyuan -> 买会员的找我)、跳字匹配(会员 -> 买?会?员的找我)等。
关键词策略,是反垃圾策略中,最基础、最暴力、最有效的策略 。词库维护的权限,我们通常会开放给业务方的运营人员。在遇到垃圾信息的时候,这也是最快速应对的方式。
关键词策略,虽然可以基本解决问题,但是他的缺点也非常明显。主要有:
- 容易有误伤 。毕竟是通过关键词硬匹配来拦截。
- 关键词难以穷举 ,造成很多运营人员的工作量。
2.2.2 规则策略
关键词策略,有明显的缺点,它只能是一个基础的手段。再往上一层,我们就产生了规则策略、
规则策略,是可以来解决一类问题的。
举个简单的case,比如广告文本中,留手机号的联系方式。我们就可以产出一个识别手机号的正则策略。
但是,用户留手机号,就都是广告么?并非全是如此。这个时候,可能需要在这个手机号的规则上面,再叠加一层广告特征的规则,比如提到具体商品这种特征。
这样的规则,相比关键词来说,确实有一定的泛化能力,不再需要业务运营来维护,他们只需要反馈badcase就可以,而且在解决这类问题的时候,通常都是针对性的规则,有比较好的解决问题能力。
万事都有个但是,事实上,针对同一种类型的垃圾信息拦截,可能有很多种规则。规则策略,就暴露了几个问题:
- 规则,只能来解决一类问题,作用其实很有限。
- 规则,很容易被黑产绕过,会经常失效。开发同学需要花时间和精力,来观察badcase更新迭代规则。
- 规则过多,管理起来就会非常麻烦。很多规则的拦截界限,变得非常不明显。
2.2.3 模型策略
反垃圾策略的不断进化,就到了模型这个层面。
模型,相比规则,它的泛化能力就变得非常强大了。以前的规则策略,都是针对某个类别下的子类,进行针对性拦截。比如,广告类型下面,可能有十几个规则。但是,对于模型来说,通常只需要1-2个就可以了。
模型策略的好处,毋庸置疑。强大的识别能力,无需运营接入(甚至运营不需要过多的反馈badcase)。你喂什么语料进来,它就能识别什么样的内容。
依然有但是,模型虽好,也有缺点:
(1)高度依赖于语料标注质量的好坏
模型算法本身不重要,重要的是语料标注质量。而语料标注,又是一个繁琐的过程。可能需要组建标注团队,搭建标注系统,制定可执行的标注标准,培训标注人员,评估标注质量。是一个很花时间和精力的事情。
(2)通用性存疑
在识别微博广告中优秀的模型,可能在识别直播广告时,效果非常差,差到没法用。这个时候,可能需要针对直播,再训练一个模型。
2.2.4 风控策略
上面的三种策略,都是针对内容本身进行识别,正常情况下,可能识别80%的垃圾内容。达到一定程度的时候,就很难再往上提升。
这个时候,就需要从用户行为来进行识别,需要风控策略的接入。针对风控策略,主要有以下几种:
- 高危账号的识别。没什么好说的,这是纯风控的操作。是非常有必要的操作。
- 发帖频率控制。需要从时间周期、内容相似度、业务类型几个方面来考虑。
- 黑名单控制。反垃圾系统,通常都有一个针对账号、手机号、设备ID、ip地址等维度的名单list。这个是需要花时间去积累的,可以是人工搜集、风控判断、数据交换得到的。
- 用户属性信息辅助。比如,用户是否是vip会员(我们认为会员是黑产的概率较小,需要进行数据分析后得出),用户角色、账号注册时间等,来结合上述三种策略来进行判断。
3. 反垃圾系统的评估
如何评判一个反垃圾系统的好坏。我认为有以下几个指标:
- 准确率:这是最基础的指标。业内反垃圾系统的准确率,普遍在96 - 99%之间。
- 召回率:用来评判可以找到多少垃圾信息,也是非常关键的一个指标,根据经验,这个指标通常在30 - 80%之间。不同的业务,召回数量差别会比较大。
- unknown占比:这个指标是用来评估,反垃圾系统的不确定性。如果存在过多的unknown文本,可能会对人工审核造成比较大的压力。这个指标,通常在10%以下为佳,理论上是越低越好。有些业务,对实时性要求比较高的业务,通常没有unknown,也就不需要评估这个指标,比如直播场景下。
- 报警次数:这里的报警,主要是业务运营反馈的被黑产攻击的次数,需要人工来记录。越是优秀的业务,被黑产利用的价值就越高,因此被攻击的次数,可能也就越多。
这是整体上,需要观察的指标。实际工作中,我们需要分策略来进行具体观察。比如,需要了解广告模型的准确率怎么样,召回率如何。
三、反垃圾的难点
反垃圾难点,在前文【目前市面上反垃圾产品现状】部分中,聊过一些。下面再继续谈谈:
3.1 来自于黑产
黑产,是一波隐藏在暗处,通过非法手段进行攻击各公司的产品或服务,来谋取利益的团体。在反垃圾中,他们通常是在各大社区,发布广告(这里以色情广告居多)。他们通常有:
- 丰富的资源池。可以是账号、手机号、ip代理等。
- 多样的攻击手段。有些黑产,可能是通过电脑脚本,来模拟用户,发布垃圾信息;还有些黑产,是通过群控真机。此外,还会有各种辅助工具,像云控、汉字变体等。
- 与时俱进的意识。现在很多黑产,也在进行深度学习等技术,来进行黑产攻击。
与黑产的斗争,本身就是不平等的一场攻防战。我在明,敌在暗,我们上什么策略,进行任何操作,黑产很容易猜出来,试出来。而且,互联网本身是一个交流频繁的行业,会有很多的技术沙龙、研讨会。每个公司、第三方公司,都会时不时的举办风控、安全、反垃圾的行业交流会,这无疑也是给黑产提供了一个了解防守方策略的好机会。但是,我们从来没有听说过黑产会举办这些沙龙,甚至在网上都很难搜到相关黑产的内容。
这就使得反黑工作,非常艰难。
笔者在工作中,曾经观察过一些黑产的行为。比较有趣的是,有一些黑产,每天早上9点开始攻击,晚上6点停止攻击,非常像职业的工作人员,按时打卡上班。
3.2 来自于公司
如前文所述,反垃圾系统的搭建,需要很多的人力投入,成本非常高。我们按照团队的最低配置,2个算法工程师,5个标注人员,其他岗位假设跟其他团队共享,可以算下人力成本。2个算法工程,如果1个是应届生,1个是3年工作经验的员工,那么按照市场价工资(不算企业社保等支出),每年至少需要80万;5个标注人员25万,加起来 至少需要100万,还没有算审核系统搭建、人工审核、反垃圾系统的前后端开发。小公司,是难以承受的。
更为重要的是, 反垃圾本身,并不产生业务价值,并不能直接给公司带来收入。 如果部门领导、公司领导,了解相关领域的话,那可能对于反垃圾从业者或者反垃圾业务来说,会稍微好一些;但是这个领域,毕竟是一个比较窄的领域,上级领导可能大部分都不清楚这块业务情况, 相关从业者可能就会比较惨,做的好可能没法升职加薪。一旦出事了,还需要背锅。相关团队资源,也就会向其他业务倾斜。
四、扩展
《反垃圾江湖风云纪事》:这篇文章,是笔者在公司与相关算法同学协作产出的一篇对外文章,在技术方面会有比较多的讲述,可以参考https://mp.weixin.qq.com/s/VWxZ217_QL2vRpjdnVFocQ
#专栏作家
木叶飞飞,blog:muyefeifei.com。人人都是产品经理专栏作家。
本文原创发布于人人都是产品经理。未经许可,禁止转载
题图来自 Unsplash,基于 CC0 协议
作者暂无likerid, 赞赏暂由本网站代持,当作者有likerid后会全部转账给作者(我们会尽力而为)。Tips: Until now, everytime you want to store your article, we will help you store it in Filecoin network. In the future, you can store it in Filecoin network using your own filecoin.
Support author:
Author's Filecoin address:
Or you can use Likecoin to support author: