作者 | 张冀 朱丹翔
背景
对抗是反作弊永恒的主旋律,面对对抗我们需要做到快速响应、见招拆招、在变化中发现不变的本质。
在反作弊场景中,黑产必须通过文本进行信息传递或触达受害者,而文本由于其生产成本低廉、传递信息能力强的特点成为了黑产与我们进行对抗的主要战场。文本理解算法为应对各类强对抗提供了文本检索、文本风险标签、风险信息提取的能力,以及一个文本模型训练平台。这些能力的组合使用可有效打击文本内容维度的作弊行为,现已在反作弊的各业务场景中得到应用。
文本检索
如上所述反作弊风控就是一个和黑产持续强对抗的过程,而强对抗的一个显著特点就是快速的变化,所以常规的先收集标注数据再训练模型的方式很难跟得上黑产变化的脚步。此外,黑产为了更多的获利,通常会采用广撒网的策略大批量将相似文本内容投放到平台。因此,由文本黑库和回扫构成的、只需单条标注数据的相似文本检索能力便成了我们应对这种快速变化的有力武器,可有效识别存量和增量的问题文本,进行合理的处置。
字面相似 vs 语义相似
一般来讲文本的相似大体可以分为字面相似和语义相似两种:
字面相似:两条文本只有极少字符不一样则被认为是字面相似的
想要看片加我微
想要看片加我微信
语义相似:通常刻画同一件事情的两条文本被认为是语义相似的
勿信海外高薪,避免上当受骗,天上不会掉馅饼。
不要被高薪所诱惑,天上不会掉馅饼,请朋友们远离诈骗
字面相似较语义相似条件更为严格,因此更加准确更适用于黑库,而语义相似则有更强的召回能力,更适用于回扫。
文本回扫 vs 黑库
适用场景
检索目标 | 索引特点 | 适用场景 | |
回扫 | 大盘全量数据 | 1. 大而全; | 离线;主要用于作弊内容历史存量治理 |
黑库 | 有限样本,一般为黑灰产作弊内容。(也可以把黑库当白库用,存储白样本) | 1. 小而精; | 在线;主要用于新增作弊内容管控 |
技术方案
回扫:从大盘在线获取数据建立索引,用户离线检索结果
黑库:从用户离线获取数据建立索引,在线检索结果
能力提供
- 回扫
- 提供语义相似检索、关键词检索
- 分钟级延迟
- 黑库
- 提供语义相似检索、字面相似检索、实体级相似检索、布尔规则检索、多模相似检索
- 秒级延迟
- 为防止入库样本发生误伤,提供前置防误伤及线上灰度标签能力
自动任务
为了对黑产的变化进行更快速的响应及更有效地利用人工审核数据,搭建了一套结合黑库和回扫的自动任务流,该流程让审出数据在短时间内便可起到上线拦截和存量处罚的作用
风险标签
虽然黑产使用的文本在快速的变化,但只要黑产的目标是明确的,那么其使用的文本在类别语义层面便具有不变性。RiskText 风控文本标签体系便是针对抖音风控场景中一些主要语义类别设计的一套文本标签集
标签体系
为什么要标签体系
如果我们每次都是针对某个非常具体的业务场景使用少量特定场景数据训练模型,例如评论色导、评论赌博导流等模型,那么会有以下问题:
- 标签未进行合理抽象,时效性明显,只适用于解决临时的、特定的业务问题,黑产变了模型就失效了
- 由于数据量少,且无法长期积累,模型效果得不到保障
- 数据来源杂乱且质量没有保证,导致标签质量没有保障
- 模型与具体业务 case 耦合度过高,很难进行业务或场景复用
- 模型和标签过于杂乱,不利于维护和能力输出
因此一套既具备可维护、可复用、鲁棒性强等特点,又能很好解决业务风控问题的文本分类标签体系就是我们需要的。
技术方案
模型架构:多 channel 输入对同音、形近变体更加鲁棒
训练方法:样本增广 + 一致性训练
样本降噪:解决数据中的错误标签
自动迭代
- 主动学习提高审出
- 监控看板保证质量
风险信息提取
黑产作弊文本经常会包含一些关键信息,作弊手法会变但关键信息不易变(或者变化成本较高),如果能够正确识别出文本中的关键信息,就能有效提升防御体系鲁棒性。目前已有建设 3 种风险信息提取能力:风险联系方式、风险变体、风险文本片段。其他场景下,比如电商业务中风险地址提取,也能够参考构建类似能力。
风险联系方式
抖音是流量聚集地,黑产为了谋利往往会将流量引到端外,进而实施违法行为,因此识别黑产留下的联系方式是一项重要能力。
能力全景图
从使用阶段划分,包含 判别->提取->风险分->风险标签。
- 判别(有没有联系方式):包含高准、高召两部分模型集,根据使用场景、治理阶段不同选取相应模型集。
- 提取(联系方式在哪):支持将提取出的变体联系方式归一化,并且有例行挖掘任务,不断补充新型变体数字字母。
- 风险分(有没有风险):基于联系方式风险特征 ,训练得到风险分模型。
- 风险标签(风险是啥):也区分高准和高召。高准通过人工标注,高召通过用户-联系方式二部图标签扩散方式得到。
风险变体
黑产为了对抗文本识别能力,会对文本关键部分变体。由于大部分文本模型不会经常更新,导致模型效果会随着时间逐渐衰减。为了解决这个问题,将文本变体能力与下游文本能力解耦开,当变体识别能力提升时,所有下游任务均可受益。
PS:如果黑产文本变体太快,会不会跟不上,这样能力建设有啥意义?
前期的简单变体,我们的能力都会覆盖,越到后期,黑产创造新变体的成本会越高,更考验的是能力是否在不断迭代更新。
技术方案
变体挖掘->变体判别->变体映射表流程可自动化运行,不断挖掘得到新变体。
风险文本片段
黑产除了对关键信息变体,还会对非关键文本做话术变换。黑产为了表达意图,关键信息不会很发散,来来回回可能就那几个关键词,但是会变换话术以此对抗识别模型,我们只需要从黑产发的大量文本中,找出表达意图的关键信息,即可提升系统对话术变换的鲁棒性。
技术方案
整体技术方案总结来说就两步:
- 获取文本重要黑特征(对应图中黑词精筛表)。
- 挖掘特征之间的关系,挖掘结果导出为规则,挖掘算法使用的 FP-Growth。