年终岁尾,一边跑着模型,一边整理下今年的工作,除了开始做了些聚类,rank工作,后来主要集中在信息过滤方面:视频聊天审核,新闻评论审核,新闻文本内容黄反检测,垃圾图片检测以及新闻推广内容过滤。
首先谈谈聊天过滤。直播间聊天,其实很难用机器学习模型训练,因为数据常常人为可以增加噪声,希望通过噪声的作弊,来发表一些被屏蔽的言论。而这些噪声大多集中在间隔符,拼音,形近字,音近字的形式,并且具有快速扩展的特点。什么是快速扩展呢?就是一旦有一个人成功绕过检测机制发表了恶意言论,那么其他人很容易跟着学习。所以只用离线方式很难hold住线上突发情况,而发现后往往已经出现了大量关联内容。
Yara是一个开源的病毒代码过滤引擎,可以支持很多复杂的类似正则的规则,可以针对文本,也可以针对byte字节,最后编译时会根据规则自动生成一个类似有限自动机(和正则很类似)。同时,可以根据聊天特点,自行开发一些规则自动生成脚本,这样对间隔符,拼音,形近字,音近字等形式就有了一定的鲁棒性。考虑到线上的突发状况应对,可以对同一检测目标的聊天进行检测,有针对性开发监测算法,发现疑似突发状况提醒运维,利用kafka,结合前端,让运维可以简单快速的增加规则。
再说说评论过滤。评论是一个需要具备可读性的内容,因为作者希望通过它和其它读者沟通,当然,恶意广告,辱骂反动除外。这里可以用一些数据结构,比如datree,对一些高度敏感内容进行快速检测,也可以使用Yara或者一些正则之类规则,加强下检测器的鲁棒性。同时,因为大部门内容都是可读的,那么可以使用一些机器学习,或者rnn,进行训练。但是训练需要大量已标注的高质量数据,如果没有,使用人工规则捕获+训练+识别+筛选+训练的迭代,也能得到一个中等精度的初始版本。当然,肯定是数据质量越高,效果越好。而且,评论的审核其实有很多非文本内容的维度特征,比如当天的一些政策导向,最近时间段的形势变化,一些内容从普通提升为敏感,一些又由敏感降低为普通,甚至热门。不同内容,对其评论的容忍程度不同,这些都是要做一个好的评论过滤模型,需要考虑的属性。
新闻内容的黄反检测,这个其实要说的不多。需要对敏感内容,根据不同的类型,划分等级或者权重,然后决定一篇稿子是否通过检测。也会随着一些政策变化等,做一些积极的响应,但这些都是业务上的,与算法关联不大。细致地方
浅谈信息过滤
最新推荐文章于 2020-06-14 10:24:14 发布