多倫多大學的網站上有一個有趣的圖像識別演示應用程序。簡單來說,這個Demo可以將輸入的圖像轉換成文字描述的輸出:比如你上傳一張貓在玩球的圖片,系統(tǒng)會以自然語言的形式輸出他對圖片的“理解”:貓在玩球。如果你想訪問這個網站,你可以點擊這里。
斯坦福大學也有類似的研究。他們已經建立了一個模型,可以生成圖像內容的自然語言描述。雖然還沒有做Demo,但是他們已經在Github上傳了模型的源代碼。
上個月17日,谷歌發(fā)布了一條官方博文,其中也引入了類似的技術:讓電腦“知道”圖片的內容,并用文字描述。
你可能會想到梵高的文章,或者普通的機器學習:程提前準備了一個巨大的訓練集,提取圖像的多維特征向量,然后訓練分類器,再讓程序對圖像進行處理。
不,不,不,我們說的是比這高一點的東西。
你可能知道我想說什么。
其實單個物體的識別是不夠的。我們經常把注意力集中在識別特定的對象上,而忽略了對象的動作和對象之間的關系。這種節(jié)目是“愚蠢”的。我們只是試圖讓程序記住一個對象的名字,而不是正確理解圖像中的內容。也就是說,他們無法“認出”這個形象。
但是深度學習已經突破了這一點,深度學習讓計算機可以自我修養(yǎng).以上三個例子,多倫多大學、斯坦福大學和谷歌的研究,都是基于深度學習的技術。用自然語言描述圖像內容的意義在于,程序必須準確識別圖像中的所有重要信息,包括對象之間的關系。在這種情況下,程序具有“認知”的能力。
深度學習模仿人腦的學習過程:人們總是先學習簡單的概念,然后用這些概念來描述更抽象的內容。
例如,當我們看到一只貓在草坪上行走時,我們的大腦會把一個大浪光子變成一系列有意義的概念:視覺皮層會不斷地對這個圖像進行分層處理,利用每一層的神經元將信息傳遞到下一個更高的層,然后更高的層會慢慢地將信息聚合成可以更好理解的特征。具體來說,當視網膜神經元檢測到視野中的一些對比度(物體的邊緣或端點)時,它們會將這些信息傳遞給更高級別的神經元,然后更高級別的神經元會嘗試將接收到的所有邊緣信息進行組合和匹配,然后進行傳導,有了聲音信息,頂級神經元最終會形成一個特定的概念:cat。
深度學習就是利用人類視覺皮層——人工神經網絡(ANN)類似的分層架構。深度學習首先構建多層感知器,通過結合低層特征發(fā)現(xiàn)數據的分布式特征表示,形成屬性類別(或高層特征)更抽象的高層表示。簡單來說,深度學習可以通過挖掘相關特征來訓練自己,具備自主學習的能力,自己也可以培養(yǎng)自己。
我們實際上對大腦的這種神秘結構知之甚少。這種情況也發(fā)生在深度學習中:工程師并不真正理解程序是如何專門處理培訓功能的。在很多情況下,即使是程序員也不知道程序應該如何學習理解某個概念,所以程序可以自己去做。
但是最近,根據quantamagazine的說法,兩位物理學家,Pankaj Mehta(波士頓大學)和David Schwab(西北大學),發(fā)現(xiàn)了一些新的東西。他們在一篇論文中指出,深度學習類似于基本粒子、液體和宇宙等物理系統(tǒng)中大規(guī)模物理行為的計算方法。在他們的論文中,這種統(tǒng)計方法被稱為重整化,用于幫助物理學家在不知道系統(tǒng)特定組件狀態(tài)的情況下準確描述系統(tǒng)。他們指出,這種方法還可以使人工神經網絡在不知道貓的具體顏色、大小和形狀的情況下,總結貓的特征,并“識別”和描述各種貓。
鑒于深度學習是模仿人腦認知的過程,物理學中深度學習與重正化的相似性表明,人腦也可能使用某種重正化方法來識別世界。