曉查 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
說到程序員著裝,大家會想到什麼?
自然是格子襯衫了。
但一個外國程序員,終於對此厭倦,他不想再穿格子襯衫或條紋襯衫,於是他打開了亞馬遜網站,輸入了關鍵詞“無條紋襯衫”(shirt without stripes),結果卻是這樣的:
為什麼幾乎全部都是帶條紋的襯衫啊?
“一定是我打開的姿勢不對!”
或者只是亞馬遜的自然語音處理(NLP)技術不夠好吧。
他又接著嘗試了谷歌和微軟的搜索引擎,結果卻還是這樣:
反正結果就算不是襯衫,也一定帶條紋,甚至還搜出了球衣。
如果把關鍵詞換成“沒有格子的襯衫”(shirt without plaid),結果還是讓人失望。
是不是感到這個世界滿滿的惡意?程序員想買個沒有格子的襯衫怎麼就這麼難!
接著,這位程序員把搜索結果上傳到GitHub,短短十個小時就獲得了300星。
更讓人沒想到是,這件小小的事情影響範圍還在擴大,幾個小時就在Hacker News上帶了400多條評論。
看來有相同槽點想吐的人,並不少。
並且事情也“鬧大”了。
大家發現,何止搜索引擎,現在你只需一個“不”就能讓AI助手變“人工智障”。
打開你的Siri,和它說“不要告訴我天氣”,但Siri還是義無反顧地告訴了你天氣狀況。
那麼問題來了:為什麼AI會犯如此低級的錯誤呢?
人工智能的盲區
無論是搜索商品圖片還是詢問天氣,加上了一個“不”或“無”字,就變得複雜起來。
這個“不”到底是哪個部分做出否定,可能人類也說不清楚。
這類問題屬於“歸因”問題,可能是統計學方法不能解決的,這就觸及到機器學習的盲區了。
在上面的問題中,處理一個“不”還算比較清晰,但是在一些對準確性有要求的領域,會有很大的問題。
比如“無癌症證據”,到底是得到了沒得癌症的證據,還是根本沒有證據呢?
這還算是比較簡單的,人類語言中還有很多雙重否定,有時候連人自己表達的時候都會犯錯。
處理這類問題,不能使用過去的統計方法,而需要更多關注語法內在的邏輯性,語言學中的喬姆斯基學派的研究者就是這麼認為。
但是涉及此類算法的研究很少,甚至很多從事算法的人對此並不感興趣。
一些從事機器學習研究的大型公司,他們研究的算法具有很大的適用性,但是在歸因等情況下,他們的語言模型可能會失敗。
而且神經網絡尚未顯示出對此問題的改進。在說“不”這個問題上,各家的AI都不能通過圖靈測試,甚至顯得愚蠢。
所以是不是“另有隱情”?
技術不行還是SEO搗亂
是不是因為谷歌沒有在搜索引擎裡用上NLP技術,所以才導致錯誤的結果?
實際上,谷歌去年10月就已經在英文版的搜索引擎裡用上了BERT。
過去,谷歌的搜索更多的是基於單個單詞的理解。
比如“2019 brazil traveler to usa need a visa”,以前的谷歌搜索會基於visa、usa、brazil這幾個關鍵詞,而英文結果裡更多的是美國人諮詢去巴西,所以搜索結果往往是相反的。
更新後的谷歌能夠理解“to usa”的含義,才能識別正確的結果
於是這讓一些網友覺得,谷歌亞馬遜研究多年的NLP技術不過如此,要理解人類語言還有很長的路要走。
不過,經過努力,計算機已經能夠搞清楚英文裡的“無癌症證據”(No evidence of cancer、Evidence of no cancer)兩者之間的差別。
當然,還有一些技術之外的因素。
任何搜索引擎都繞不開SEO和廣告問題。
那些賣條紋襯衫的商家會通過各種優化手段,霸佔“條紋”和“襯衫”這兩個關鍵詞的頭部位置,結果導致“no”和“without”之類的關鍵詞被忽略。
一些網友認為,是SEO的垃圾信息毀了搜索引擎,同時廣告還是是谷歌搜索的重要收入來源,谷歌自己可能也無心解決——這一點自然無法妄加揣測。
不過,我們也用最大的中文搜索引擎試了試,發現也是一樣的結果:
但往好的一面看,這也意味著時代之問有解了。
之前,總有人“抬槓”,在智能時代裡,你無法判斷跟你交流的是人類還是AI……
但現在,鑰匙來了:機器是不能說“不”的。
參考鏈接:
https://news.ycombinator.com/item?id=22925087
https://github.com/elsamuko/Shirt-without-Stripes
— 完 —
量子位 QbitAI · 頭條號簽約
關注我們,第一時間獲知前沿科技動態