正文
作为国内领先的云解决方案企业,腾讯云在革新云端技术的同时,也肩负着保证互联网安全秩序、抵御黑产黑客的责任和使命。2018 QCon 北京“人工智能与深度学习实践”专场,腾讯云专家级研究员王国印分享了腾讯云在互联网安全防御上的系列解决方案和措施。本文整理了主要王国印老师的主要演讲内容,感兴趣的读者可移步观看王国印老师现场演讲视频。
一、引言
随着互联网、智能设备及各种新生业务的飞速发展,互联网上的数据呈现爆炸式增长,图片、视频、发文、聊天等互动内容已经成为人们表达感情、记录事件和日常工作不可或缺的部分。
这些日益增长的内容中也充斥着各种不可控的风险因素,比如不雅不良评论、垃圾广告、违法违规交易/宣传、低俗不文明等垃圾内容,需要各网站及平台亟待认真对待和管理的工作。
二、内容安全现状
不良不雅评论,违规违法交易严重影响主营业务的健康发展 。面对此类问题,企业主该如何解决呢?
一种方法是投入人力加大审核力度,此种方式的特点如下:
-
垃圾评论占比较小,人力逐条审核容易漏审
-
UGC评论数据规模巨大,每日多达数十亿、百亿等,人力成本太高
-
审核人员的招聘成本,管理成本较高
另外一种方式是招聘专业的AI工程师自建识别模型,此种方式特点如下:
-
AI工程师非常昂贵
-
内容安全一般不属于主营业务,投入较少
-
识别模型的效果受限于样本规模和样本质量,在数据标注上需要持续投入
最后一种途径是购买保险:将内容安全问题交给专业的公司来解决,从而实现“四两拨千斤”。
三、现有解决方案
当前识别此类垃圾内容的主流方法有:关键词过滤模式、关键词文法过滤模式、在打标数据上训练垃圾识别模型的机器学习模式,或融合关键词与机器学习的混合模式,其特点分析如下:
-
基于关键词过滤模式:该模式的优点是立竿见影生效快,但是由于分词歧义问题导致误杀,对未登录的case泛化能力弱,词库的维护成本高
-
基于关键词文法的过滤模式:由于考虑了关键词的上下文,此种方式相比关键词过滤拥有了一定的消歧义能力,但是关键词文法需要人工总结归纳,再加上上下文不易枚举,使得人力成本成倍上升,于此同时随着变种不断涌现,从变种中挖掘拦截文法,人力成本不可控
-
静态机器学习模型或融合了关键词文法过滤的混合模式:由于模型是静态的,上线之后,应对不了变种问题,使得模型很快失灵
新变种不断涌现,会快速绕过当前垃圾识别方法,使得当前的方法“失灵”,各公司不得不投入大量人力研究变种,归纳拦截策略或标注新样本,于此同时每个业务平台上的垃圾内容存在较大差异,同一垃圾类型,客户的尺度也存在较大差别。在节约人力成本的条件下,如何解决此类对抗性的问题,并做到客户级的个性化定制,成为困扰业界一大难题。腾讯云天御分别从:
-
Active learning方式挖掘高质量语料,降低人工审核量
-
打造数据闭环降低研发运维投入
-
KV分布式存储实现GB级模型秒级更新
-
T+1滚动式升级模型对抗变种
等四大维度搭建内容安全完整解决方案。
四、腾讯云天御的方案
4.1 UGC分类
天御把UGC评论文本类型分为6大类:
-
不良
-
不雅
-
违法违规:UGC中含有违法违规词汇,或法律禁止网上交易的内容
-
广告:为第三方导流的合法广告,其尺度因平台业务类型而异
-
低俗不文明:骂人,爆粗口等
-
正常
4.2 UGC特点及天御应对策略
图1. 天御应对策略
图1可以看出互联网UGC主要特点如下:
-
规模巨大,天御通过研发可弹性部署的高并发算法引擎来应对每日上百亿的垃圾评论拦截请求
-
对抗性:新变种很容易绕过当前防控策略,腾讯云天御通过异常识别(基于Active Learning)为垃圾识别挖掘变种语料,大大节约人工审核量;垃圾识别会每隔一段时间拉取异常识别历史记录(已被人工审核),训练出最新的垃圾识别模型,为异常识别和垃圾识别构建一个数据环路,使得模型随着垃圾内容的变异而升级,有效解决了对抗性问题,大大降低研发投入;再将每一个客户的模型表格化,每一行追加上客户信息,实现不同客户之间的模型隔离,模型按行分布式存储使得在秒级实现多模型自动批量上线,大大降低系统维护成本。
-
防控尺度因业务类型而异,天御会针对每一种业务类型针对性的训练模型,从而实现模型的个性化定制
4.3 天御UGC过滤系统架构
图2. 天御系统架构
从图2看出腾讯云天御UGC过滤垃圾评论的系统架构主要分为四层:
-
底层数据层
-
核心能力层
-
拒绝类型&拒绝策略层
-
客户层
其中核心能力层包括4大模块:
1. 异常识别,目的是从各种异常类型中发掘最新变种,异常识别所做的工作见图3:
图3. 异常识别
图3中异常类型主要分为内容异常和行为异常,常见的内容异常主要包括变种和行话/暗语,而行为异常表现为同一个人在不同地方发布相同内容,或同一内容被不同人转发等。异常识别的手段主要是通过统计分析发现变种词汇,变种表达等;有些变种是在内容里相间插入特殊符号,其语言构成和正常文本有区别,可通过机器学习的方式来发掘此类变种;对于可疑的内容一般通过人工辅助+策略注入来确定是否为变种。
2. 打标平台,提供数据打标、算法效果每日抽检等等。主要功能分为:
-
a) 多人协同:目的是为了提升打标效率,会把一份数据分割成多分由多人完成打标
-
b) 抽样策略,由于UGC评论规模巨大,不论是抽取样本还是每日抽检算法效果,需要不同的抽样策略,最终实现少量样本覆盖全部case
-
c) 审核策略,分为单人初审、多人投票式的盲审,客户拦截效果评估等等,此块保证数据的打标质量
3. 模型平台,含模型训练和模型上线,具体包括:
-
a) partition策略,不同的客户、不同的业务场景,其防控尺度均不相同,需要针对性训练,模型平台会一次性训练多达上千个模型。partition策略起着分割数据,标识模型的作用
-
b) 特征工程:含有特征提取、特征选择,特征变换等,特征变换如各类账号,数字,表情符号归一化操作等等
-
c) 模型训练
-
d) KV分布式化,其作用是提升上线效率,支撑弹性部署,降低人工干预度
-
e) 评估策略,其作用是评估模型效果,判断模型是否可以上线,主要的手段是封闭测试
-
f) 更新策略,模型支持T+N滚动式更新,具体流程详见下图
图4. 模型平台及流程
图4中“更新策略N”代表一个定时任务,N的值代表相隔多少天更新一次,T表示模型训练语料集是T天的沉淀数据。在模型训练时,一个Trainer表示一个Reducer任务,其结果是产出一个模型,Merger是将所有模型分布式KV存储的操作,并在K中注入模型ID信息【partition+feature】,V是分类标签和标签权重信息的列表。
4. 垃圾识别,其工作如下图所示:
图5. 垃圾识别
从图5可见,依据影响业务健康度的程度和客户不同类型的拒绝策略,总体上将同一类垃圾类型划分为2类或3类:
-
白:正常内容
-
灰:疑似[可选]
-
黑:恶意内容
在垃圾内容识别上腾讯云天御采用关键词文法过滤+模型动态更新的文本分类方法实现的垃圾识别系统,支持单条关键词文法上的个性化配置。