說(shuō)起人工智能,孕育了卷積神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)算法的 ImageNet 挑戰(zhàn)賽恐怕是世界上最著名的 AI 數(shù)據(jù)集。8 年來(lái),在 ImageNet 數(shù)據(jù)集的訓(xùn)練下,人工智能對(duì)于圖像識(shí)別的準(zhǔn)確度整整提高了 10 倍,甚至超越了人類視覺(jué)本身。
然而,AI 領(lǐng)域的科學(xué)家們并沒(méi)有停下前進(jìn)的腳步。上個(gè)周末,人工智能領(lǐng)域最卓越的科學(xué)家之一:斯坦福大學(xué)終身教授、谷歌云首席科學(xué)家李飛飛在未來(lái)論壇年會(huì)上,為我們做了一場(chǎng)名為“超越 ImageNet 的視覺(jué)智能”的精彩演講。她告訴我們,AI 不僅僅能夠精準(zhǔn)辨認(rèn)物體,還能夠理解圖片內(nèi)容、甚至能根據(jù)一張圖片寫(xiě)一小段文章,還能“看懂”視頻……
我們都知道,地球上有很多種動(dòng)物,這其中的絕大多數(shù)都有眼睛,這告訴我們視覺(jué)是最為重要的一種感覺(jué)和認(rèn)知方式。它對(duì)動(dòng)物的生存和發(fā)展至關(guān)重要。
所以無(wú)論我們?cè)谟懻搫?dòng)物智能還是機(jī)器智能,視覺(jué)是非常重要的基石。世界上所存在的這些系統(tǒng)當(dāng)中,我們目前了解最深入的是人類的視覺(jué)系統(tǒng)。從 5 億多年前寒武紀(jì)大爆發(fā)開(kāi)始,我們的視覺(jué)系統(tǒng)就不斷地進(jìn)化發(fā)展,這一重要的過(guò)程得以讓我們理解這個(gè)世界。而且視覺(jué)系統(tǒng)是我們大腦當(dāng)中最為復(fù)雜的系統(tǒng),大腦中負(fù)責(zé)視覺(jué)加工的皮層占所有皮層的 50%,這告訴我們,人類的視覺(jué)系統(tǒng)非常了不起。
寒武紀(jì)物種大爆發(fā)
一位認(rèn)知心理學(xué)家做過(guò)一個(gè)非常著名的實(shí)驗(yàn),這個(gè)實(shí)驗(yàn)?zāi)芨嬖V大家,人類的視覺(jué)體系有多么了不起。大家看一下這個(gè)視頻,你的任務(wù)是如果看到一個(gè)人的話就舉手。每張圖呈現(xiàn)的時(shí)間是非常短的,也就是 1/10 秒。不僅這樣,如果讓大家去尋找一個(gè)人,你并不知道對(duì)方是什么樣的人,或者 TA 站在哪里,用什么樣的姿勢(shì),穿什么樣的衣服,然而你仍然能快速準(zhǔn)確地識(shí)別出這個(gè)人。
1996 年的時(shí)候,法國(guó)著名的心理學(xué)家、神經(jīng)科學(xué)家 Simon J. Thorpe 的論文證明出視覺(jué)認(rèn)知能力是人類大腦當(dāng)中最為了不起的能力,因?yàn)樗乃俣确浅??,大概?150 毫秒。在 150 毫秒之內(nèi),我們的大腦能夠把非常復(fù)雜的含動(dòng)物和不含動(dòng)物的圖像區(qū)別出來(lái)。那個(gè)時(shí)候計(jì)算機(jī)與人類存在天壤之別,這激勵(lì)著計(jì)算機(jī)科學(xué)家,他們希望解決的最為基本的問(wèn)題就是圖像識(shí)別問(wèn)題。
在 ImageNet 之外,在單純的物體識(shí)別之外,我們還能做些什么?
過(guò)了 20 年到現(xiàn)在,計(jì)算機(jī)領(lǐng)域內(nèi)的專家們也針對(duì)物體識(shí)別發(fā)明了幾代技術(shù),這個(gè)就是眾所周知的 ImageNet。我們?cè)趫D像識(shí)別領(lǐng)域內(nèi)取得了非常大的進(jìn)步:8 年的時(shí)間里,在 ImageNet 挑戰(zhàn)賽中,計(jì)算機(jī)對(duì)圖像分類的錯(cuò)誤率降低了 10 倍。同時(shí),這 8 年當(dāng)中一項(xiàng)巨大的革命也出現(xiàn)了: 2012 年,卷積神經(jīng)網(wǎng)絡(luò)(convolutionary neural network)和 GPU(圖形處理器,Graphic Processing Unit)技術(shù)的出現(xiàn),對(duì)于計(jì)算機(jī)視覺(jué)和人工智能研究來(lái)說(shuō)是個(gè)非常令人激動(dòng)的進(jìn)步。作為科學(xué)家,我也在思考,在 ImageNet 之外,在單純的物體識(shí)別之外,我們還能做些什么?
8年的時(shí)間里,在ImageNet挑戰(zhàn)賽中,計(jì)算機(jī)對(duì)圖像分類的錯(cuò)誤率降低了10倍。
通過(guò)一個(gè)例子告訴大家:兩張圖片,都包含一個(gè)動(dòng)物和一個(gè)人,如果只是單純的觀察這兩張圖中出現(xiàn)的事物,這兩張圖是非常相似的,但是他們呈現(xiàn)出來(lái)的故事卻是完全不同的。當(dāng)然你肯定不想出現(xiàn)在右邊這張圖的場(chǎng)景當(dāng)中。
這里體現(xiàn)出了一個(gè)非常重要的問(wèn)題,也就是人類能夠做到的、最為重要、最為基礎(chǔ)的圖像識(shí)別功能——理解圖像中物體之間的關(guān)系。為了模擬人類,在計(jì)算機(jī)的圖像識(shí)別任務(wù)中,輸入的是圖像,計(jì)算機(jī)所輸出的信息包括圖像中的物體、它們所處的位置以及物體之間的關(guān)系。目前我們有一些前期工作,但是絕大多數(shù)由計(jì)算機(jī)所判斷的物體之間的關(guān)系都是十分有限的。
最近我們開(kāi)始了一項(xiàng)新的研究,我們使用深度學(xué)習(xí)算法和視覺(jué)語(yǔ)言模型,讓計(jì)算機(jī)去了解圖像中不同物體之間的關(guān)系。
計(jì)算機(jī)能夠告訴我們不同物體之間的空間關(guān)系,能在物體之間進(jìn)行比較,觀察它們是否對(duì)稱,然后了解他們之間的動(dòng)作,以及他們之間的介詞方位關(guān)系。所以這是一個(gè)更為豐富的方法,去了解我們的視覺(jué)世界,而不僅僅是簡(jiǎn)單識(shí)別一堆物體的名稱。
Visual Relationship Detection with Language Priors
更有趣的是,我們甚至可以讓計(jì)算機(jī)實(shí)現(xiàn) Zero short(0 樣本學(xué)習(xí))對(duì)象關(guān)系識(shí)別。舉個(gè)例子,用一張某人坐在椅子上、消防栓在旁邊的圖片訓(xùn)練算法。然后再拿出另一張圖片,一個(gè)人坐在消防栓上。雖然算法沒(méi)見(jiàn)過(guò)這張圖片,但能夠表達(dá)出這是“一個(gè)人坐在消防栓上”。類似的,算法能識(shí)別出“一匹馬戴著帽子”,雖然訓(xùn)練集里只有“人騎馬”以及“人戴著帽子”的圖片。
讓 AI 讀懂圖像
在物體識(shí)別問(wèn)題已經(jīng)很大程度上解決以后,我們的下一個(gè)目標(biāo)是走出物體本身,關(guān)注更為廣泛的對(duì)象之間的關(guān)系、語(yǔ)言等等。
ImageNet 為我們帶來(lái)了很多,但是它從圖像中識(shí)別出的信息是非常有限的。COCO 軟件則能夠識(shí)別一個(gè)場(chǎng)景中的多個(gè)物體,并且能夠生成一個(gè)描述場(chǎng)景的短句子。但是視覺(jué)信息數(shù)據(jù)遠(yuǎn)不止這些。
經(jīng)過(guò)三年的研究,我們發(fā)現(xiàn)了一個(gè)可以有更為豐富的方法來(lái)描述這些內(nèi)容,通過(guò)不同的標(biāo)簽,描述這些物體,包括他們的性質(zhì)、屬性以及關(guān)系,然后通過(guò)這樣的一個(gè)圖譜建立起他們之間的聯(lián)系,我們稱之為 Visual Genome dataset(視覺(jué)基因組數(shù)據(jù)集)。這個(gè)數(shù)據(jù)集中包含 10 多萬(wàn)張圖片,100 多萬(wàn)種屬性和關(guān)系標(biāo)簽,還有幾百萬(wàn)個(gè)描述和問(wèn)答信息。在我們這樣一個(gè)數(shù)據(jù)集中,能夠非常精確地讓我們超越物體識(shí)別,來(lái)進(jìn)行更加精確的對(duì)于物體間關(guān)系識(shí)別的研究。
那么我們到底要怎么使用這個(gè)工具呢?場(chǎng)景識(shí)別就是一個(gè)例子:它單獨(dú)來(lái)看是一項(xiàng)簡(jiǎn)單的任務(wù),比如在谷歌里搜索“穿西裝的男人”或者“可愛(ài)的小狗”,都能直接得到理想的結(jié)果。但是當(dāng)你搜索“穿西裝的男人抱著可愛(ài)的小狗”的時(shí)候,它的表現(xiàn)就變得糟糕了,這種物體間的關(guān)系是一件很難處理的事情。
絕大多數(shù)搜索引擎的這種算法,在搜索圖像的時(shí)候,可能很多還是僅僅使用物體本身的信息,算法只是簡(jiǎn)單地了解這個(gè)圖有什么物體,但是這是不夠的。比如搜索一個(gè)坐在椅子上的男性的圖片,如果我們能把物體之外、場(chǎng)景之內(nèi)的關(guān)系全都包含進(jìn)來(lái),然后再想辦法提取精確的關(guān)系,這個(gè)結(jié)果就會(huì)更好一些。
2015 年的時(shí)候,我們開(kāi)始去探索這種新的呈現(xiàn)方法,我們可以去輸入非常長(zhǎng)的描述性的段落,放進(jìn) ImageNet 數(shù)據(jù)集中,然后反過(guò)來(lái)把它和我們的場(chǎng)景圖進(jìn)行對(duì)比,我們通過(guò)這種算法能夠幫助我們進(jìn)行很好的搜索,這就遠(yuǎn)遠(yuǎn)地超過(guò)了我們?cè)谥暗倪@個(gè)圖像搜索技術(shù)當(dāng)中所看到的結(jié)果。
Google圖片的準(zhǔn)確率已經(jīng)得到了顯著提升
這看起來(lái)非常棒,但是大家會(huì)有一個(gè)問(wèn)題,在哪里能夠找到這些場(chǎng)景圖像呢?構(gòu)建起一個(gè)場(chǎng)景圖是一件非常復(fù)雜并且很困難的事情。目前 Visual Genome 數(shù)據(jù)集中的場(chǎng)景圖都是人工定義的,里面的實(shí)體、結(jié)構(gòu)、實(shí)體間的關(guān)系和到圖像的匹配都是我們?nèi)斯ね瓿傻?,過(guò)程挺痛苦的,我們也不希望以后還要對(duì)每一個(gè)場(chǎng)景都做這樣的工作。
所以我們下一步的工作,就是希望能夠出現(xiàn)自動(dòng)地產(chǎn)生場(chǎng)景圖的一個(gè)技術(shù)。所以我們?cè)诮衲晗奶彀l(fā)表的一篇 CVPR 文章中做了這樣一個(gè)自動(dòng)生成場(chǎng)景圖的方案:對(duì)于一張輸入圖像,我們首先得到物體識(shí)別的備選結(jié)果,然后用圖推理算法得到實(shí)體和實(shí)體之間的關(guān)系等等;這個(gè)過(guò)程都是自動(dòng)完成的。
Scene Graph Generation by Iterative Message Passing
人工智能可以像人類一樣看懂視頻?
Visual Genome 數(shù)據(jù)集能讓計(jì)算機(jī)更好地了解場(chǎng)景信息,但是還是不夠的。而且實(shí)際上到現(xiàn)在為止,我們僅僅探索了認(rèn)知心理學(xué)家所討論的一個(gè)概念——現(xiàn)場(chǎng)感知(scene gist perception):只需要輕輕一瞥,就能把握主整個(gè)場(chǎng)景中的物體和它們之間的關(guān)系。那么在此之外呢?
小編想回過(guò)頭去看看十年前我在加州理工學(xué)院讀博士的時(shí)候做的一個(gè)心理學(xué)實(shí)驗(yàn),小編用 10 美元/小時(shí)的費(fèi)用招募人類被試,通過(guò)顯示器給他們快速呈現(xiàn)出一系列照片,每張照片閃現(xiàn)之后用一個(gè)類似墻紙一樣的圖像蓋住它,目的是把他們視網(wǎng)膜暫留的信息清除掉。然后讓他們盡可能多地寫(xiě)下自己看到的東西。有些照片只顯示了 1/40 秒(27毫秒),有些照片則顯示了 0.5 秒的時(shí)間,我們的被試能夠在這么短的時(shí)間里理解場(chǎng)景信息。如果小編給的實(shí)驗(yàn)費(fèi)用更高的話,大家甚至能做的更好。進(jìn)化給了我們這樣的能力,只看到一張圖片就可以講出一個(gè)很長(zhǎng)的故事。
2015 年開(kāi)始,我們使用卷積神經(jīng)網(wǎng)絡(luò)和遞歸神經(jīng)網(wǎng)絡(luò)算法比如 LSTM 來(lái)建立圖像和語(yǔ)言之間的關(guān)系。從此之后我們就可以讓計(jì)算機(jī)給幾乎任何東西配上一個(gè)句子。比如這兩個(gè)例子,“一位穿著橙色馬甲的工人正在鋪路”和“穿著黑色T恤的男人正在彈吉他”。
不過(guò)圖像所包含的信息很豐富,一個(gè)簡(jiǎn)短的句子不足以涵蓋所有,所以我們下一步的工作就是稠密捕獲(dense capture)。讓計(jì)算機(jī)將一張圖片分為幾個(gè)部分,然后分別對(duì)各個(gè)部分進(jìn)行描述,而不是僅僅用一個(gè)句子描述整個(gè)場(chǎng)景。
除了此之外,我們今年所做的工作邁上了一個(gè)新的臺(tái)階,計(jì)算機(jī)面對(duì)圖像不只是簡(jiǎn)單的說(shuō)明句子,還要生成文字段落,把它們以具有空間意義的方式連接起來(lái)。這與認(rèn)知心理學(xué)家所做的實(shí)驗(yàn)當(dāng)中人類的描述結(jié)果是非常接近的。
COCO 能夠根據(jù)圖片寫(xiě)出幾個(gè)句子(粉色部分)
新算法能夠生成一個(gè)段落(藍(lán)色部分)
A Hierarchical Approach for Generating Descriptive Image Paragraphs
但是我們并沒(méi)有停止在這里,我們開(kāi)始讓計(jì)算機(jī)識(shí)別視頻。這是一個(gè)嶄新且豐富的計(jì)算機(jī)視覺(jué)研究領(lǐng)域?;ヂ?lián)網(wǎng)上有很多視頻,有各種各樣的數(shù)據(jù)形式,了解這些視頻是非常重要的。我們可以用跟上面相似的稠密捕獲模型去描述更長(zhǎng)的故事片段。把時(shí)間的元素加入進(jìn)去,計(jì)算機(jī)就能夠識(shí)別一段視頻并對(duì)它進(jìn)行描述。
視覺(jué)認(rèn)知和邏輯推理的結(jié)合
最后,小編想談?wù)勗诤?jiǎn)單認(rèn)知以外,我們?nèi)绾巫屓斯ぶ悄苓_(dá)到任務(wù)驅(qū)動(dòng)的水平。從一開(kāi)始人類就希望用語(yǔ)言給機(jī)器人下達(dá)指定,然后機(jī)器人用視覺(jué)方法觀察世界、理解并完成任務(wù)。
在 20 世紀(jì)七八十年代的時(shí)候,人工智能的先驅(qū)們就已經(jīng)在研究如何讓計(jì)算機(jī)根據(jù)他們的指令完成任務(wù)了。比如下面這個(gè)例子,人類說(shuō):“藍(lán)色的角錐體很好。我喜歡不是紅色的立方體,但是我也不喜歡任何一個(gè)墊著角錐體的東西。那我喜歡那個(gè)灰色的盒子嗎?” 那么機(jī)器或者人工智能就會(huì)回答:“不,因?yàn)樗鼔|著一個(gè)角錐體”。它能夠?qū)@個(gè)復(fù)雜的世界做理解和推理。
最近,我們和 Facebook 合作重新研究這類問(wèn)題,創(chuàng)造了帶有各種幾何體的場(chǎng)景,我們命名為 Clever dataset。這個(gè)數(shù)據(jù)集包含成對(duì)的問(wèn)題和答案,這其中會(huì)涉及到屬性的辨別、計(jì)數(shù)、對(duì)比、空間關(guān)系等等。我們會(huì)給人工智能提問(wèn),看它會(huì)如何理解、推理、解決這些問(wèn)題。
我們將人工智能和人類對(duì)這類推理問(wèn)題的回答做了個(gè)比較:人類能達(dá)到超過(guò) 90% 的正確率,機(jī)器雖然能做到接近 70% 了,但是仍然有巨大的差距。有這個(gè)差距就是因?yàn)槿祟惸軌蚪M合推理,機(jī)器則做不到。
因此我們開(kāi)始尋找一種能夠讓人工智能表現(xiàn)得更好的方法:我們把一個(gè)問(wèn)題分解成帶有功能的程序段,然后在程序段基礎(chǔ)上訓(xùn)練一個(gè)能回答問(wèn)題的執(zhí)行引擎。這個(gè)方案在嘗試推理真實(shí)世界問(wèn)題的時(shí)候就具有高得多的組合能力。這項(xiàng)工作我們剛剛發(fā)表于 ICCV。
比如我們提問(wèn)“紫色的東西是什么形狀的?”,它就會(huì)回答“是一個(gè)立方體”,并且能夠準(zhǔn)確定位這個(gè)紫色立方體的位置。這表明了它的推理是正確的。它還可以數(shù)出東西的數(shù)目。這都體現(xiàn)出了算法可以對(duì)場(chǎng)景做推理。
人類視覺(jué)已經(jīng)發(fā)展了很久,計(jì)算機(jī)的視覺(jué)識(shí)別雖然在出現(xiàn)后的 60 年里有了長(zhǎng)足的進(jìn)步,但也仍然只是一門新興學(xué)科。