很可惜 T 。T 您现在还不是作者身份,不能自主发稿哦~
如有投稿需求,请把文章发送到邮箱tougao@appcpx.com,一经录用会有专人和您联系
咨询如何成为春羽作者请联系:鸟哥笔记小羽毛(ngbjxym)
作者 | harryzhong
在过去的几年里,质量控制作为微信看一看推荐的基石,我们在不断的迭代升级中积累了一定的技术和经验。本文主要跟大家分享一下总体框架的设计思路,以及如何通过平台通用化来解决组合爆炸的问题。文章为了尽可能的给读者描述一个完整质量控制体系的框架,这里既有技术上,架构上考虑,也会有产品上,业务上的考虑。
微信作为国内最大用户群体的应用,在人们的生活,工作,学习中提供社交功能的同时,还提供了工具,游戏,购物,支付,内容,搜索,小程序等服务。看一看作为微信的重要组成部分,在原有公众平台资讯阅读的基础上,为用户提供中心化的内容消费平台,旨在提升内容发现效率,优化内容质量,丰富内容种类。
01、(内在属性)一个产品的出身和环境决定了其的调性,微信内在也决定了看一看的调性。在这里,调性这个词更多的是形容内容质量可以被用户接受的底线。用户对微信的期待也提高了这个底线。
02、(外部压力)微信的每一次改动都会受到广泛的关注,在功能上线初期面临着比其他应用更大的舆论压力和监管压力。
03、(黑产对抗)因为用户多,流量大,强大的经济效益引来黑产的参与,使得内容生产的大环境很差,低质量数据充斥各个角落;问题也在不断地的变化,识别控制难度也在持续加大。
既然质量控制作为推荐系统必不可少的一部分,那么在推荐系统中处质量控制处于什么位置,包含哪些子模块,又是从哪几方面方面进行控制?
首先,我们先看一下内容数据在推荐系统的一生。
01、数据从内容生产方发表产生,由平台收集数据。这里生产方来自四面八方,生产的内容五花八门,质量也是参差不齐。所以,平台将数据接入之后第一件事情就是将这些内容进行格式化和特征提取,方便后面的流程能通用化地处理这些内容数据。
02、内容经过前面的初步处理后,质量控制模块根据已有的特征对内容进行过滤,主要是过滤不符合平台规则的低质量数据和提供后面排序需要考虑的质量因子。这里面涉及到过滤效率的问题,一般会分为粗过滤还有细过滤。排序推荐模块将根据内容特征还有用户行为对数据进行排序。
03、最后,平台将内容推荐给用户进行消费,消费的过程中会与内容产生很多交互行为。这些行为数据,可以用于平台的质量控制和推荐排序;也可以反馈给生产者,让生产者能够了解到内容被消费的情况,生产更多符合用户需求的内容。
也可以对生产者和用户进行引导,评估。
01、根据生产者生产内容的质量,还有用户对内容的反馈,平台可以对生产者进行分级分类。对不同等级的生产者,使用不同质量控制策略,如,高质量的账号颁发个免检标签,在质量控制的时候避免误伤。而对于一些已经被检测到有低质量内容的账号进行一定时间的封禁,减少相似问题的爆发,增加长尾问题的召回,提升系统的响应速度。不同类目也是同样的道理,比如高危的内容类(社会民生,养生健康,娱乐)需要加强控制。
02、而对于用户,我们同样可以根据一下用户的基础数据(地域,年龄,性别)和用户在微信内的一下阅读信息,对用户进行分类。不同用户可以使用不同的控制策略。这样在保证了用户对体验有不同要求的前提下,尽可能地保证推荐系统的效率。
除了上面说的三个部分之外,还有几个同样非常重要的质量控制辅助模块,这些模块对保证整个质量控制的正常运行至关重要。
01、监控系统:监控系统需要对平台,生产,用户的各个方面进行监控,有些数值监控指标可以通过机器持续监控,而有些数据本身的问题则需要人工的轮询与审核,还有就是新问题的发现与归纳汇总。其中最重要的是能够进行全方位覆盖,不同范围,不同领域,有时候问题可能隐藏的茫茫大盘数据中。
02、干预系统:干预系统是对问题出现后,进行快速处理的手段。这样能够在模型策略迭代较慢的时候暂时压制问题,减少影响范围。干预系统除了生效快之外,还有一个重要的能力是相似内容的查找(去重指纹),如相似标题的封禁和相似图片的封禁。
03、标注系统:标注系统作为一个提升样本收集效率的平台,不仅能有效提升标注人员的标注效率,进而有效提升模型的迭代效率;而且标注系统方便对问题的收集,总结,归纳,形成各个领域的知识库。
前面介绍了质量控制的必要性,也介绍了质量控制的大体框架。那么到底数据是指哪些数据?所谓的质量又指的是哪些质量指标?这些数据跟这些质量指标带给我们什么问题与挑战呢?
丰富的数据源,多维度的质量指标,个性化的业务场景带来的其实是组合爆炸问题。如果对每一种组合都单独处理,不仅导致大量人力的浪费;同时,也无法对速度要求高的质量控制问题进行快速响应。毫无疑问从体系上进行通用化,模板化,可复用,可迁移是我们解决问题的方向。下一节,我们会从一个普通任务的迭代周期出发,分析上面对话对应的迭代过程的那一部分,并对相应的部分进行相应的通用化。
01、规则制定:规则制定可以说是质量问题解决中最重要的工作,问题分析清楚了,解法也就出来了。这里简单列几个小原则,不进行展开。
主要组成:需要对问题进行全面的分析,包括场景数据是什么,问题有多少子类型,问题比例有多大,影响范围有多广,业界是否也有同样的问题,做法是什么。
基于需求:这个阶段更应该从需求出发进行问题的分解,尽量减少技术性的考虑。很多时候人会往往会混淆“需要做”和“怎么做”。因为觉得这个东西难做,或者不能做而将这个东西认为不需要做。
基于数据:规则的制订需要结合数据进行讨论,不能几个人凭主观想法就定下规则。数据往往会提供很多我们意想不到的冲突情况。
衡量标准:规则必须能在人与人之间传递。
02、特征提取:这里涉及如何将业务需求转化为技术需求。根据问题分析的结论,对直接特征进行提取,如标题,正文,封面图,隐藏内容,页面结构,跳转链接,锚文本,账号,统计特征等。
03、样本收集:根据需要从原始数据中收集一定量的正负样本,这些样本可以通过相似样本挖掘,也可以通过人工标注。
04、模型训练:使用模型对提取的特征进行组合,并对收集的样本分布进行拟合。
特征组合:模型将问题需要考虑的特征进行组合。有些问题只需要考虑标题(标题党),有些问题需要考虑文章标题的匹配程度(文不对题),有些问题需要同时考虑文本与图片的结合(低俗色情);有些问题只需要考虑主题词(广告),有些问题需要考虑上下文语境(假新闻)。
数据分布:模型会尽可能贴合样本数据的分布,降低 Loss。有些数据源问题比例高,有些数据源问题比例低。切换数据源的时候,如果样本分布与目标数据源的分布不一致,效果往往有较大的差异。
01、细粒度化:在进行规则制定阶段,要避免指定一个很大的质量问题进行优化,尽量把问题定义成“独立”,“明确”,“与业务无关”的细粒度问题。这样可以减少后面因为业务变化导致的不确定监督问题,提升模型适用性。举个例子:我们之前有个质量问题是黑四类(广告,活动,通知,招聘),标注的时候没有区分,训练的时候也是用一个模型。这样在有新的业务出现的时候突然发现我们不需要黑四类,而是黑三类。还有其他一些不建议的问题类型:"标题不规范","正文质量差","内容不优质"。
02、共享特征:虽然不同数据源的样式不一样,这样需要对不同的数据源通过页面解析进行特征抽取,统计。但是对于同一个数据源,不同的质量问题,往往会用到很多相同的特征。一个数据源抽取后的结果可以保存在结构化的数据结构中方便各个质量模型,还有其他的业务模型使用。如文本的位置,是否有链接,是否隐藏,是否模板内容等。
03、样本增强:通过相似样本挖掘和人工标注容易导致过拟合,标注效率低的问题。这里可以结合数据增强提升模型的鲁棒性,结合主动学习提升标注效率。
01、通用模型
02、 广告模型
这里介绍一下广告识别模型在构建过程中,涉及的几个通用问题模型。广告模型主要是负责识别文章里面的广告内容。从内容上,分为文字广告,图片广告,图文广告。从位置上分顶部广告,中间广告,底部广告。从篇幅上分主体广告,插播广告。那么这里可以抽象成 3 个通用的问题:
问题内容的定位(插播广告)
多类型特征的融合(图文广告)
文章结构的序列化(顶部,中部,尾部,篇幅)
问题内容的定位:这类问题与图像中的物体检测相似,都是需要识别相应目标及其对应的位置。据此,我们提供一个全新的用于文本问题检测的框架 TADL。通过滑动窗口的检测方法将大段文本切分成多个小片段,并对每个小片段进行广告概率打分和反推定位,从而在一个模型框架内同时实现了广告文字的识别和定位,并且只需要文章级别的标注就能完成训练。
多类型特征的融合:图片广告定义广泛,广告的程度需要同时考虑多种类型的特征(文本大小,文本位置,文本语义,图片场景,图片内容)。相对于端到端的需要大规模标注的深度模型,对问题进行分而治之的 wide&deep 模型框架具有更好的解释性,更高的召回。
文章结构的序列化:一篇文章是否有广告问题,需要对整篇文章中多模态广告的占比,位置进行综合考虑。将不同广告文章中的文本广告概率和图片广告概率进行序列化的可视化展示,发现通过对有限的序列模式进行识别检测可以用来解决多模态文章分类问题。模型通过 Multi-CNN 检测异常“突起”,通过 BiLSTM 检测概率变化趋势。
数据源之间的数据分布一定是会存在差异的。模型迁移主要是想要解决数据分布不一致的问题。这里我们以色情低俗识别为例子,分“词向量”和“特征分布”两个方面来考虑迁移问题。
01、 词向量统一
词向量在不同的场景中会表现不一样的语义,如“下面”在图文和视频标题里面就有不同的语义。多数据源数据训练的词向量因为获得了更多的信息量要好于多个数据源单独训练的向量。到后来基于更大量训练集的 bert 的出现更是极大的丰富了词向量的信息量。
02、 特征空间统一
这里面的方法主要有 finetune,多任务学习,还有对抗学习。
Finetune 的目的是使用已有模型的特征提取能力,然后目标数据源进行组合调整达到较好的效果。这个模型在源领域数据标注量要比较大,模型框架能够表示足够多的共同特征时比较有效,如 bert。
多任务学习通过不同任务间建立共享层,学习不同 domain 之间的共享知识,进而实现双赢。缺点是需要大量的目标领域的有标数据。
对抗学习充分利用了大量的无标数据消除一些邻域间分布不同的差异。
前面所提到的多样化的问题,更多的是平台内部因为业务需求主动引入更多的数据和质量指标导致。这些问题相对来说是静态的。在业务上线之前,平台会进行摸底优化,不会有太多的意外。
接下来我们讨论数据动态变化的问题。在日常的内容生产过程中,内容生产者根据平台的环境和用户的反馈不断修改内容的样式,类目。这些变化会改变数据的分布,从而导致平台对新数据出现漏召或者误判。其中,黑产的持续不断的有意对抗最为频繁,花样最多,也是我们最为关注的。这些对抗具有形式类目多,迭代周期多的特征。
形式类目多:问题数据类型不断变化演进,从文本,图片,视频一直到链接。类目上也是在多个高危类目上来回切换,不断创新。
迭代周期短:某个特殊的色情标题党样式,在某一时间短获得不错的曝光后,黑产立即进行了大规模的投产,而在受到打压后又迅速的转向其他类型的 case。
由于敌暗我明,完全杜绝几乎是不可能的。原则上是提高黑产的作弊成本,降低平台的维护成本。我们还是从前面提到质量控制体系的三部分入手。
平台:每天都有少量的标注人工对线上数据进行轮询,对有问题的数据进行屏蔽收集。
用户:对大量用户反馈有问题的数据进行限制。
生产:
黑名单:对历史上劣迹斑斑的账号进行封禁,同时,对跟这些账号关联紧密的账号进行挖掘封禁。
沙盒机制:对新注册的,发文较少,未被平台验证的账号,限制其推广范围。
样本扩散,模型迭代:
用户反馈和平台监控,虽然能发现新的问题,但是泛化性不够。
账号打压虽然具有泛化性,但是无法将新问题,新账号发现。
为了解决原有体系的不足,我们尝试结合两部分,通过人工监控跟负反馈收集样本进行扩散,然后提供给模型进行迭代提升召回。最后再从账号维度进行泛化打击。这里跟前文提到的样本增强的区别在于样本扩散更多的是对新问题样本的收集。
01、正常流程
那么怎么进行样本扩散,加快模型的迭代周期呢?下面是一个样本收集周期里面大概需要做些什么事情。
首先根据发现的问题数据通过相似度计算,我们在源数据(source data)找到一批跟问题数据(sample data)相似度较高的未标注数据(unlabeled data)。
a.账号:一个账号的内容大部分比较相似,同一个黑产内容跟也往往相同。
b.类目:对问题比较集中的类目进行数据挖掘。
c.关键词:用一些匹配式框定一个范围。
d.聚类模型:简单的计算样本内容的文本相似性。
e.分类模型:构建简单的分类模型进行初筛。
然后对这批未标注的数据进行人工标注,这样可以筛选出一批能有效提升模型对新问题识别效率的标注样本(selected data)。
最后将筛选的样本跟原有的标注数据(labeld data)进行合并作为训练样本进行模型训练。训练好模型之后在测试数据(test data)上面进行测试效果。
02、 加速流程
工作周期主要的工作量是在两个部分,一是相似样本的挖掘,二是人工标注样本;相似样本挖掘的精度越高,覆盖的样式越全,人工标注的样本量就越少。而这两方面我们可以使用半监督学习跟强化学习的方法来进行优化。
03、自动化流程
更进一步我们尝试使用强化学习代替整个问题样本的挖掘过程,强化学习选择器从源数据里面选择样本,跟已有标注样本送入判别器训练,然后将判别器在测试数据和问题数据的表现当成 Reward 反馈给强化学习选择器。
前面讨论了框架内部的通用性,那么这个框架整体是否具有通用性,能否在其他平台适用呢?其实因为各类内容平台在问题类型跟数据类型本身就存在大量的共性;所以看一看的控制框架和技术,在面对如搜一搜,公众平台,朋友圈等其他场景时,依然可以提供相应的经验和能力。近半年来,搜一搜作为用户获取内容重要场景,我们在复用看一看能力的基础上也构建了类似的控制框架。
虽然我们已经掌握了各式各样的能力,能够解决很多问题,但是相比起知道的知识,我们不了解的内容更多,经常会出现让我们意想不到的状况。质量控制,乃至于机器学习的主要矛盾在于用有限的知识处理无限的未知。持续的知识获取意味着自主学习,也意味着持续的与现实交互。
一个平台的质量控制系统就像是人体的免疫组织,当病毒来临,免疫细胞产生抗体,消灭病毒。人类在漫长的进化过程中,构建了复杂的免疫系统,同时,病毒也在不断的进步。越是复杂的系统,出现问题的可能性越高,出现问题后解决问题的成本难度也越大。在构建强健的内部免疫系统的同时,我们同样需要营造良好的外部环境,让更多优质的内容生产者进来,才是解决质量问题之根本。
-END-
本文为作者独立观点,不代表鸟哥笔记立场,未经允许不得转载。
《鸟哥笔记版权及免责申明》 如对文章、图片、字体等版权有疑问,请点击 反馈举报
Powered by QINGMOB PTE. LTD. © 2010-2022 上海青墨信息科技有限公司 沪ICP备2021034055号-6
我们致力于提供一个高质量内容的交流平台。为落实国家互联网信息办公室“依法管网、依法办网、依法上网”的要求,为完善跟帖评论自律管理,为了保护用户创造的内容、维护开放、真实、专业的平台氛围,我们团队将依据本公约中的条款对注册用户和发布在本平台的内容进行管理。平台鼓励用户创作、发布优质内容,同时也将采取必要措施管理违法、侵权或有其他不良影响的网络信息。
一、根据《网络信息内容生态治理规定》《中华人民共和国未成年人保护法》等法律法规,对以下违法、不良信息或存在危害的行为进行处理。
1. 违反法律法规的信息,主要表现为:
1)反对宪法所确定的基本原则;
2)危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一,损害国家荣誉和利益;
3)侮辱、滥用英烈形象,歪曲、丑化、亵渎、否定英雄烈士事迹和精神,以侮辱、诽谤或者其他方式侵害英雄烈士的姓名、肖像、名誉、荣誉;
4)宣扬恐怖主义、极端主义或者煽动实施恐怖活动、极端主义活动;
5)煽动民族仇恨、民族歧视,破坏民族团结;
6)破坏国家宗教政策,宣扬邪教和封建迷信;
7)散布谣言,扰乱社会秩序,破坏社会稳定;
8)宣扬淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪;
9)煽动非法集会、结社、游行、示威、聚众扰乱社会秩序;
10)侮辱或者诽谤他人,侵害他人名誉、隐私和其他合法权益;
11)通过网络以文字、图片、音视频等形式,对未成年人实施侮辱、诽谤、威胁或者恶意损害未成年人形象进行网络欺凌的;
12)危害未成年人身心健康的;
13)含有法律、行政法规禁止的其他内容;
2. 不友善:不尊重用户及其所贡献内容的信息或行为。主要表现为:
1)轻蔑:贬低、轻视他人及其劳动成果;
2)诽谤:捏造、散布虚假事实,损害他人名誉;
3)嘲讽:以比喻、夸张、侮辱性的手法对他人或其行为进行揭露或描述,以此来激怒他人;
4)挑衅:以不友好的方式激怒他人,意图使对方对自己的言论作出回应,蓄意制造事端;
5)羞辱:贬低他人的能力、行为、生理或身份特征,让对方难堪;
6)谩骂:以不文明的语言对他人进行负面评价;
7)歧视:煽动人群歧视、地域歧视等,针对他人的民族、种族、宗教、性取向、性别、年龄、地域、生理特征等身份或者归类的攻击;
8)威胁:许诺以不良的后果来迫使他人服从自己的意志;
3. 发布垃圾广告信息:以推广曝光为目的,发布影响用户体验、扰乱本网站秩序的内容,或进行相关行为。主要表现为:
1)多次发布包含售卖产品、提供服务、宣传推广内容的垃圾广告。包括但不限于以下几种形式:
2)单个帐号多次发布包含垃圾广告的内容;
3)多个广告帐号互相配合发布、传播包含垃圾广告的内容;
4)多次发布包含欺骗性外链的内容,如未注明的淘宝客链接、跳转网站等,诱骗用户点击链接
5)发布大量包含推广链接、产品、品牌等内容获取搜索引擎中的不正当曝光;
6)购买或出售帐号之间虚假地互动,发布干扰网站秩序的推广内容及相关交易。
7)发布包含欺骗性的恶意营销内容,如通过伪造经历、冒充他人等方式进行恶意营销;
8)使用特殊符号、图片等方式规避垃圾广告内容审核的广告内容。
4. 色情低俗信息,主要表现为:
1)包含自己或他人性经验的细节描述或露骨的感受描述;
2)涉及色情段子、两性笑话的低俗内容;
3)配图、头图中包含庸俗或挑逗性图片的内容;
4)带有性暗示、性挑逗等易使人产生性联想;
5)展现血腥、惊悚、残忍等致人身心不适;
6)炒作绯闻、丑闻、劣迹等;
7)宣扬低俗、庸俗、媚俗内容。
5. 不实信息,主要表现为:
1)可能存在事实性错误或者造谣等内容;
2)存在事实夸大、伪造虚假经历等误导他人的内容;
3)伪造身份、冒充他人,通过头像、用户名等个人信息暗示自己具有特定身份,或与特定机构或个人存在关联。
6. 传播封建迷信,主要表现为:
1)找人算命、测字、占卜、解梦、化解厄运、使用迷信方式治病;
2)求推荐算命看相大师;
3)针对具体风水等问题进行求助或咨询;
4)问自己或他人的八字、六爻、星盘、手相、面相、五行缺失,包括通过占卜方法问婚姻、前程、运势,东西宠物丢了能不能找回、取名改名等;
7. 文章标题党,主要表现为:
1)以各种夸张、猎奇、不合常理的表现手法等行为来诱导用户;
2)内容与标题之间存在严重不实或者原意扭曲;
3)使用夸张标题,内容与标题严重不符的。
8.「饭圈」乱象行为,主要表现为:
1)诱导未成年人应援集资、高额消费、投票打榜
2)粉丝互撕谩骂、拉踩引战、造谣攻击、人肉搜索、侵犯隐私
3)鼓动「饭圈」粉丝攀比炫富、奢靡享乐等行为
4)以号召粉丝、雇用网络水军、「养号」形式刷量控评等行为
5)通过「蹭热点」、制造话题等形式干扰舆论,影响传播秩序
9. 其他危害行为或内容,主要表现为:
1)可能引发未成年人模仿不安全行为和违反社会公德行为、诱导未成年人不良嗜好影响未成年人身心健康的;
2)不当评述自然灾害、重大事故等灾难的;
3)美化、粉饰侵略战争行为的;
4)法律、行政法规禁止,或可能对网络生态造成不良影响的其他内容。
二、违规处罚
本网站通过主动发现和接受用户举报两种方式收集违规行为信息。所有有意的降低内容质量、伤害平台氛围及欺凌未成年人或危害未成年人身心健康的行为都是不能容忍的。
当一个用户发布违规内容时,本网站将依据相关用户违规情节严重程度,对帐号进行禁言 1 天、7 天、15 天直至永久禁言或封停账号的处罚。当涉及欺凌未成年人、危害未成年人身心健康、通过作弊手段注册、使用帐号,或者滥用多个帐号发布违规内容时,本网站将加重处罚。
三、申诉
随着平台管理经验的不断丰富,本网站出于维护本网站氛围和秩序的目的,将不断完善本公约。
如果本网站用户对本网站基于本公约规定做出的处理有异议,可以通过「建议反馈」功能向本网站进行反馈。
(规则的最终解释权归属本网站所有)