AI 内容审核是怎样运作的——又会在哪里出错
用浅白的话说明自动审核怎样筛查文字、图片和影片,为什么它会漏掉人一眼就看得出的东西,以及把待审投稿交给一款工具之前该问什么。
其他语言: English · Bahasa Melayu · 繁體中文
简短回答。 自动审核并不是在过滤内容,而是在给内容打分。分类器给出一个数字,表示一段文字或一张图片与某个类别的范例有多接近;语言模型则按书面指示给出意见。两者都不知道一句话是不是真的,也不知道某个人在你的读者眼中是否认得出来。所以,有用的系统是替待审投稿分类,把拿不准的中间部分留给人来判断。
人们常把自动审核形容成一个过滤器:内容进去,坏的被拦下,好的通过。任何处理过待审投稿的人都知道,事情完全不是这样。这些工具产出的是分数和意见,它们出错的方式有迹可循,而它们到底有多大用处,几乎完全取决于你怎样运用它们的输出。
我们自己开发并营运一套审核流程,所以本文是从内部的角度写的。它说明这些工具在做什么、为什么会失灵,以及怎样使用它们而不自欺。
两种机器
今天几乎所有的审核系统,都由两类模型构成,而且常常搭配使用。
分类器为一项狭窄的工作而训练:给它一段文字或一张图片,它就为一份固定清单上的每个类别——色情内容、骚扰、仇恨、暴力、自我伤害等等——输出一个 0 到 1 之间的数字。它们又快又便宜,同样的输入每次都给出同样的答案。它们做不到的,是解释自己的判断,或处理没有人训练过它们的类别。
大型语言模型——和聊天助手相同的技术——可以接受书面指示:“这段文字有没有指控一个可识别的人行为不当?回答是或否,并说明原因。”它们能处理细微之处、语境,以及没有任何分类器是为之而设的指示。它们比较慢、比较贵,每次运行的结果可能不一致,有时还会十分笃定地说出错误的结论。
分类器告诉你,一段文字和它训练时见过的恶意范例有多像。语言模型告诉你,它对这段文字怎么看。两者都不知道这段文字是不是真的。
分数不是裁决
分类器为“骚扰”给出 0.83,并不表示它找到了骚扰。它只是报告:从统计上看,这段文字很像训练资料里被标为骚扰的东西。得有人决定多高的数字才算太高。这个数字就是阈值,而选定它是一种没有正确答案的取舍。
阈值设得低,你会抓到更多真正有害的内容,但也会标记更多无辜的内容——误报。设得高,被标记的无辜帖子变少,但漏网的有害内容变多——漏报。
哪一种错误更糟,取决于接下来会发生什么。如果标记只是把帖子送给人再仔细看一眼,误报的代价是某个人的三十秒,把阈值设低是合理的。如果标记会自动删除帖子,误报就是让一个没做错事的人闭嘴,你就应该谨慎得多。
所以,最有用的系统并不拦截,而是分类。两端明确的个案很快处理掉,拿不准的中间部分连同分数一起送给人来判断。
为什么文字比看起来难
语言混用。 大多数审核模型主要用英文训练。遇到其他语言,表现会下降;一句话里混用几种语言时,下降得更多——而许多马来西亚人实际上就是这样写字的。一句在英语、马来语、华语和福建话语气词之间来回切换、又用罗马字母拼写的话,模型可能读得懂,也可能当成杂讯。
俚语变得比训练资料快。 骂人的话、圈内的玩笑和暗语,每隔几个月就换一批。去年训练的模型,从没见过今年的词汇。
语境决定意思。 看完足球赛之后说的“我要杀了他”,和描述完自己被跟踪之后说的同一句话,是两回事。用来攻击的侮辱字眼,和被攻击的人引述的同一个字眼,也是两回事。分类器看得到字词,却几乎看不到情境。
刻意规避。 想绕过过滤的人,会替换字符、加空格、用形似的字母,或把文字放进图片里。简单的系统,用简单的手法就能破解。
反讽和转述。 “是啊,她当然是全校最诚实的人了”,里面一个可以标记的字都没有。
AI 不可能知道的事
审核工作中一些最重要的问题,根本与语言无关,任何模型都无法单凭文字回答。
- 这是真的吗? 一则冷静、具体、文笔流畅的指控,得到的分数是完全安全。它也可能构成诽谤。真假是关于这个世界的事实,而不是句子本身的属性。
- 你的读者认得出这个人吗? “东门附近那间影印店的老板”里面没有名字。但你校园里的每个人都清楚知道说的是谁。模型从没去过你的校园。
- 这个人是公众人物吗? 软件有时能侦测到文字里有名字。但它无法可靠地分辨一位部长和一个同名的同学。
- 这个人同意了吗? 一张两个人在派对上的合照,可能是在当事人乐见的情况下分享的,也可能是你这个月待审投稿里最残忍的东西。
这些问题要由了解这个社群的人来回答。工具顶多能察觉到“这个问题需要有人问”——例如标记出某篇投稿看来含有人名——再把它转给能作决定的人。见《投稿提到某个人时》。
图片
图片审核通常结合几项检查:
- 露骨内容分类器,为一张图片属于色情内容的可能性打分。它们处理照片相当不错,遇到绘图、不寻常的光线,以及带有暗示却不露骨的图片,就明显较弱。泳装、医疗图片和单纯没穿上衣的人,经常造成误报。
- 具备视觉能力的语言模型,可以要求它描述图片,并按书面规则作出判断——对暴力、武器或吸毒的内容很有用。
- 文字提取,读出截图和迷因里的文字,让它们像其他文字一样接受检查。少了这一步,一段违规的文字只要贴进图片里,就能原封不动地通过。
图片模型一般不会做的,是保护隐私。一张清楚拍到陌生人的脸、学生证或车牌的照片,在这些模型认识的任何类别里都不算“不安全”。这项检查仍然要靠你——见《审核图片和影片》。
影片
影片是一长串图片加上一条音轨,要完整检查,成本很高。大多数系统会抽取画面——每秒或每隔几秒取一张——再逐一分类。这带来两个后果。
第一,出现的时间比两次抽样的间隔还短的东西,可能完全被漏掉。第二,只检查缩图或第一个画面的系统,几乎等于没有检查影片,你应该查清楚你用的系统是否做得更多。
声音又是另一回事。除非工具会把语音转成文字并审核文字稿,否则影片里说了什么,根本没有人检查。许多工具都不做这一步。
为什么多用几个模型有帮助
不同的模型会犯不同的错。分类器漏掉了一句新出现的骂人话,语言模型却看得懂;语言模型放行了一张图片,专门的分类器却给它打了露骨的分数。同时运行几项彼此独立的检查,只要其中一项亮灯就标记,抓到的会比最好的单一模型多——代价是要复核的标记也更多。对一个凡标记必经人手复核的流程来说,这通常是对的取舍。
关键在独立二字。两款建立在同一个底层模型上的产品,会有同样的盲点。
对任何审核工具都该问的问题
- 它到底检查什么? 只检查文字吗?图片呢?图片里的文字呢?影片的每一个画面,还是只看缩图?声音呢?
- 它在哪些语言上测试过? 如果答案含糊,就当作只有英文。
- 它标记了某项内容之后会怎样? 是拦截、扣下待审,还是只贴个标签?
- 你看得到原因吗? 会显示是哪一项检查触发、打了多少分的工具,能让你摸清它的习性。光是一句“已拒绝”,什么都教不了你。
- 它不能用的时候会怎样? 如果服务中断,投稿是未经检查就通过,还是等着?
- 内容去了哪里? 送到第三方服务检查的投稿,已经离开了你的手。要查明该服务会不会储存收到的内容,或拿去训练模型。
- 你能调整阈值吗? 一个为儿童游戏而设的固定设定,不适合大学专页,反过来也一样。
怎样用得好
把自动审核当作一位不知疲倦的第一读者:它擅长看出明显的问题,对其他一切却毫无判断力。让它放行明显没问题的,拦下明显不行的,并为介于两者之间的每一篇附上理由。然后,中间的部分由你自己来读。
每个月看一次:它标记了、而你批准的有哪些;它放行了、而你拒绝的又有哪些。这两份清单显示了它的盲点,而每个社群的盲点都不一样。会去读这两份清单的团队,能抓到机器漏掉的东西。只相信绿色勾勾的团队,迟早会发布不该发布的内容——而“是 AI 批准的”,从来都不是任何事情的抗辩理由。
常见问题
AI 内容审核是怎样运作的?
靠两类常常搭配使用的模型。分类器为一份固定清单上的每个类别(例如骚扰或色情内容)输出一个 0 到 1 之间的分数。大型语言模型则接受书面指示,并按指示判断内容。然后由人选定一个阈值,分数超过它就算标记。
为什么 AI 审核会标记无辜的帖子,又漏掉有害的帖子?
因为分数不是裁决。阈值低,抓到的有害内容更多,被标记的无辜内容也更多;阈值高则相反。分类器看得到字词,却几乎看不到情境,所以俚语、反讽、转述的话和刻意规避的写法都能骗过它。
AI 审核侦测不到什么?
一句话是不是真的、某个人在你的读者眼中是否认得出来、对方是公众人物还是同名的同学,以及照片里的人是否同意。这些问题要由了解这个社群的人来回答;工具顶多能标记出“这个问题需要有人问”。
AI 审核对马来文和多语言混用的帖子有效吗?
效果较差。大多数审核模型主要用英文训练,遇到其他语言表现会下降,一句话里混用几种语言时下降得更多——而许多马来西亚人就是这样写字的。要问清楚一款工具在哪些语言上测试过;如果答案含糊,就当作只有英文。
影片是怎样自动审核的?
大多数系统会抽取画面——每秒或每隔几秒取一张——再逐一分类。出现的时间比抽样间隔还短的东西可能被漏掉,而只检查缩图的系统几乎等于没有检查影片。除非工具会把语音转成文字,否则影片里说了什么,根本没有人检查。
用多于一个审核模型会比较好吗?
如果凡标记必经人手复核,通常是的。不同的模型会犯不同的错,所以几项彼此独立的检查——只要其中一项亮灯就标记——抓到的会比最好的单一模型多,代价是要复核的标记也更多。它们必须彼此独立:两款建立在同一个底层模型上的产品,会有同样的盲点。