——好学的机器都能教坏
纯粹speculation
过去两天,华人圈子里广泛流传一个Google Translate的 错误,纷纷说Google 暗地报复Trump: 明明是说Biden输掉选举,某些英文输入就会被翻译成他赢了。人名换成川普,则怎么都会正确翻译为输掉。(注:下图是美东时间10/23 11:40AM 测试结果。当日下午这个bug已经被改好了)

我不相信Google会无聊到特意去这样操作。那么这个现象是怎么出现的呢?(其实以前也出现过。似乎关于清华和北大哪个是中国最好的大学,也被这样玩过)。
Google translate最初用的training data 据说是联合国的文件,这些文件有数国语言,互相的对应度算是获得了国际认可的。算法上,多半是类似recurrent neural network的,对于短句子一般还是比较准确的。 那么对于句子结构完全相同,只换了人名,而且又都辨认出了人名的情况下,为什么会decode 成相反的意思呢?
我的猜测是:还是被人为干涉了。每个翻译的结果下方都有一个选择是“suggested edit",还特意标明 “your contribution will be used to improve translation quality". 本来是个crowd sourcing的好主意,可以利用广大网民来教机器。如果大家都是无私正直的老师,机器可以学得很好。然而大家也知道,很多人热衷于教外国人用脏话问好,看他们的笑话。对于机器人,故意教给它错误的东西,也不奇怪。一个人这么教,机器不见得听。但如果是一个naive的机器(比如说,没有考虑到去屏蔽来自同一IP的反复教导),多教教学坏也可以很快。

最容易教坏的是机器本来不太会的(training data里很少)东西。它会的,就会自负地认为 "你懂什么,子曰,学而时bleeping之,不亦说乎" ,想带坏不容易; 但它本来不会的,也许就会很虚心地 “啊原来是这样的,学到了!”
这就像Google Bomb 一般只好设计在本来就不太热门而且链接不多的搜索词语上。否则主流链接那么多,你想引流太难。而且事实上,成功引爆的Google Bomb因为媒体纷纷报道,而大型媒体本身的网页权重很高,往往很快就失效了。
利用网民反馈来精修机器算法的结果,本来是一个好主意,但是Google自己也曾经利用别人的轻信坑过对手。快十年前了,Google给Bing下了个套,号称证明了BIng抄袭自己的搜索结果:
Google 设计了100个伪字,基本上不会有人去查询的,然后人工给这些伪字强行嫁接了风马牛不相及的google搜索结果。刚开始,bing搜索不会出这些结果,但几个星期以后,bing也返还这些人为嫁接的网站 —— 如果故事仅仅是这样,bing照搬google结果是很说服我的。
当然,故事并没有这么简单。 为了成功钓鱼,google还派了20个工程师装上IE和bing工具栏,搜索这些伪字,并且点击这些伪字的搜索结果。而Bing恰恰是用点击来调整搜索结果的。这本来是个好想法: 如果网民并不点击机器排在最前的搜索结果,那么应该利用网民的点击反馈来调整排序。既然要学习,那么当然是所有搜索引擎的数据都学,包括Google用户的。于是,这些Google工程师成功教坏了小Bing,学会了伪字的“含义”。
这次有没有谁给Google translate下套,我不知道。但我相信,只要是好学的机器,都能教坏。所以华山派的令狐冲,坚决不肯学少林派的易筋经。古人是有道理的!