网易易盾内容风控实践
技术琐话 2023-01-05 08:33 发表于北京
以下文章来源于DataFunSummit,作者胡宜峰
导读:随着 AI 技术的发展,AI 识别技术显著提升了不良信息拦截的效率,从而帮助互联网构建起更加健康的内容生态环境。然而 AI 技术面临最严峻的挑战来自于数据。如何从场景的角度更加深入地理解和分析数据场景的特点,如何从技术方案的角度更加完善地完成数据的定义、描述、收集、选择、迭代和管理等环节,如何从算法的角度更大程度地利用数据的价值,已经成为深度网络和 AI 技术发挥更大作用的关键和前提。
本文将从 Data-Centric AI 的角度出发,分享网易易盾在内容风控方面的实践和思考。主要包括以下 4 个方面:
- Data-Centric AI 背景、意义和概念
- 内容风控场景的业务和数据特点
- 数据方案、数据管理和数据流程
- 算法创新和数据价值之间的关系和作用
分享嘉宾|胡宜峰 网易易盾 计算机视觉资深算法工程师
编辑整理|李聪玥 平安科技
出品社区|DataFun
01Data-Centric AI 背景、意义和概念一个完整的 AI 系统包括数据、算法/模型、解决方案和部署等多个方面。绝大多数精力都集中在数据以外的环节。这个现象的原因,归结有二:
- 学术界有很多固定的公开数据集存在,数据相对来说是一个比较静态的状态。
- 在工业界,大家往往有一个误区,认为数据就等同于标注。
这两方面的原因导致我们对数据关注的程度不够。对于常规的算法优化或者模型训练过程,我们往往是在数据固定的前提下,追求在测试集上的高指标,但是如果把这种方式应用在业务落地,尤其是内容风控场景,我们会发现在测试集上表现较好的模型在线上或真实场景上可能存在较大的反差。造成这个差距的一个重要原因就是没有在数据流程上投入足够的精力。这也是我们今天谈到 Data-Centric AI 的一个核心点。
Data-Centric AI 这个概念最早是由 Andrew Ng 提出的,他在提出这个概念的同时,在非常大的范围内做了一个投票的调研,调研人群主要是一些科研人员和业界的从业人员,其中 80% 的人认为相较于模型或者算法、解决方案等,数据起到的作用是最大的。这也在一定程度上表明了 Data-Centric AI 的意义。他做了一个很形象的比喻,就好比是做饭,数据相当于挑选食材和准备食材的过程,但是这部分仅仅占据了 1% 的研发资源;模型训练或者解决方案等同于烹饪阶段,这部分则占据了 99% 的精力和研发资源。这也反映了我们对数据的关注是不够的。尤其在内容风控等 AI 落地的场景中,一个表现优秀的模型需要的是数据和模型的互动,两者是互相促进的关系。优质的训练数据能提升模型在真实场景上的效果和泛化能力,好的模型反过来也能促进我们更加快速地生成、自动获取或者人工标注出更高质量的训练数据。两者是相辅相成,螺旋上升的过程。这就是 Data-Centric AI 的核心观点。
02
内容风控场景的业务和数据特点
接下来介绍一下内容安全/内容风控场景。1. 内容风控场景的业务由于我们正处于一个海量互联网数据的时代,随着互联网的发展,内容载体从最开始的图文发展到现在的文本、图像、音频、视频和直播等等,在量和速度上都有着飞速的提升。内容生成、内容制作的流程也更加敏捷和快速。一方面产生的数据量正在大幅增加,另一方面内容制作发布的审核流程在不断简化,这样一正一反带来了很大的内容安全隐患和压力。针对可能出现的各种内容安全隐患,网易易盾做了比较全面深入的研发。
这里只展示了一部分,主要包括色情广告、违禁、涉政、暴恐、涉价值观、增值服务、辅助能力等大类。这些大类当中细分的方面非常多,包含的垂直领域和垂直类型也非常多。对于这些内容,网易易盾从广度、深度和粒度这三个方面都做了比较全面的覆盖。2. 内容安全场景数据特点相比于其他 AI 场景,内容安全场景的数据有着如下一些明显的特点。
首先是极端的长尾分布,内容安全领域是面向海量互联网数据服务的,线上随机流量中违规数据占比是极低的。因此用大海捞针来形容内容安全的算法和服务一点都不为过。我们要从海量的互联网数据当中去捞出这些占比极低的违规类型,还要保证捞出的数据的精确度。第二个特点是数据中存在很多特征非常相似、可解释性非常高,但不属于违规的数据。在处理海量数据时,无论从视觉还是其它层面,都存在易误判、极端的细粒度和难例挖掘的问题。第三个特点是极端的小目标识别,在识别违禁区域时,比如抽烟识别,抽烟动作是有明确特征的,但在一些很远的场景中,比如拿着一个烟头而并没有去抽它,这也属于抽烟识别的范畴。这个烟头可能占的像素区域只有 3*3,也就是要识别一个 3 *3 的像素区域的标签是否违禁,决定性的违禁区域非常小,是一个极端的小目标识别问题。最后一个特点是极端的开放域识别,很多时候违禁类型并不是固定的,识别类别是多样的、不确定的以及频繁增加的。除了这些问题之外,在内容安全领域,还有其它一些问题,比如极端的域泛化,由于我们面向的是海量互联网数据,数据域的变化广泛而频繁。还有极端的模型防守对抗问题,内容安全存在频繁地跟黑灰产对抗的问题。黑灰产通过一些模型的攻击,或是通过一些编辑,甚至PS等方式去做对抗,这也是我们频繁遇到的一个问题。当然我们也会存在一些比如类别边界比较模糊、数据质量差别大这种与其它 AI 场景类似的问题。03
数据方案、数据管理和数据流程
1. 数据管理
数据管理和流程贯穿在初始模型训练、模型的迭代训练和模型测试整个环节,主要包括数据的刻画、收集、生成与拓展、标注、增强、选择、清洗、分析和迭代等等。这些环节不是孤立的,而是互相衔接补充以及包含的。额外讲一下模型测试这个环节,我们从 Data-Centric AI 的角度来看,模型的测试其实就是测试数据选择的一个过程。选择数据要对齐线上最终的落地场景的数据分布,要对齐一些特定的历史反馈。这也是从数据的角度去看模型测试。2. 数据刻画
我们启动一个业务时,数据刻画起到了非常重要的作用。如果数据的定义和刻画考虑不全面,一方面会增加识别和迭代的难度,另一方面也会增加数据标注的成本,影响可用性。所以需要有比较全面的评估,构建多级标签的体系,分析标签的包含、互斥、歧义的关系,对识别范围进行有效的扩展,对相似的易误判的标签进行分析,考虑标签的通用性,同时细化边界和细节描述,关注标注复杂度。标注数据刻画这个环节可能偏经验一些,我们很难详细地把经验说清楚,但是我们的目标是希望降低模型识别的难度、模型迭代的难度以及降低标注的难度,并提升标注的可用性。3. 数据收集在有了详细的数据刻画和描述的积累之后,我们就需要对数据进行收集。一方面模型的冷启动需要数据收集,另一方面数据的收集和补充也贯穿在整个模型迭代过程中,数据收集需要考虑扩充数据分布范围、对齐应用场景数据分布、提高标注的命中率和针对性、提高标注质量等几方面问题。以上几种方式共同使用,可以提高标注的命中率和针对性,从而提高标注样本的质量。数据精细化的管理包括三方面的内容,一个是数据生成,一个是数据的自动获取,即标签的自动获取,也可以简单地理解成模型打标,还有一个是人工的标注。在正式做数据标注之前,我们可以问自己一个问题,这个数据是不是真的需要标注。4. 数据生成与拓展
数据生成也是一个比较重要的环节,因为有部分业务场景的数据,不一定非要有数据的标注,再进行模型的初始训练的冷启动方式。数据生成是能让模型快速地自动获取初始能力的方式。当然这里的数据生成并不是狭义上的理解,比如我们通过各种分割加贴图的方式去做贴图或者用图像生成的方法去生成数据,我们生成的初衷是希望模型有快速的初始能力。所以通过一些无监督和小样本学习的方式,让模型有快速地初始识别的能力,在我们看来其实也属于生成和冷启动的范畴。此时生成的数据有一个很大的特点,数据分布是非常有局限性的,可能具有初步的能力,但是能力比较有限。从生成的数据到正式数据分布的扩展是很重要的环节。以 Logo 识别为例,我们结合技术方案,设计跨任务的数据增广扩展的模块可以很好地实现生成数据到真实数据分布的扩展。所以在数据标注之前,数据生成是非常重要的一个环节。但也并不是所有的业务场景都可以采用数据生成冷启动。