神經網路到底是如何思考的?MIT精英們做了這麼一個實驗室來搞清楚

AI科技大本營發表於2017-09-29

作者 | Larry Hardesty等

編譯 | ziqi Zhang


沒錯!人工智慧是很火,神經網路也很火,但你真的懂它嗎?神經網路到底是怎麼工作的?沒有人知道。


它像一隻黑匣子,我們可以用他,卻理解不了它。可是最近,麻省理工學院(MIT)的精英們似乎找了答案。


這些精英們採用了什麼方法?他們找出的答案又在多大程度上具有可信度呢?人們對這個方法有怎樣的質疑?他們的方法能帶領人們真正解開這個黑匣子的祕密嗎?


AI科技大本營編譯了這篇發表在麻省理工大學網站上的《神經網路如何思考》一文,以下,enjoy!


“神經網路”這一強大的工具,正在幫助人類實現越來越多的任務和夢想。比如,識別數字影像中特定的物件,文字翻譯等......

可它的實質是什麼?

你會說,“當然是通過對海量樣本的訓練,通過不斷改變成千上萬個內部引數,使其可以穩定可靠地執行我們佈置的任務。”

你覺得理所應當,你覺得沒毛病啊。神經網路不就是來幹這個的嗎?

但是,我們從來沒有關心過這些引數到底是怎樣驅動神經網路工作的。

如果我們能夠深入到神經網路內部的工作原理,真正去搞懂裡面的規則和執行方式,必將是一次偉大的理論探索,這將帶領人類的研究再次跨越圍欄,去到一個更廣闊的世界。

因為,一旦人類掌握了神經網路的真正執行方式,就可以將這樣的方式遷移到生活的各方各面,遷移到各種應用。

可是,要真正走進神經網路的核心,實在太難了,我們能做到嗎?

在最近舉行的2017年自然語言處理方法實踐大會上(Empirical Methods on Natural Language Processing),MIT人工智慧實驗室的研究人員就提出了一個新的思路——通過研究神經網路進行NLP任務的過程,他們做到了讓電腦用我們日常的語言來解釋隨意輸入的文字,這跟過去從資料庫中查詢結構化語言的方法有完全相反。

該技術適用於任何以文字作為輸入,並以字串結果作為輸出的系統,例如常用的自動翻譯系統。由於其分析的結果僅僅源自於不同的輸入和對這些輸出的效果反饋,因此它可以直接投入到線上的自然語言處理伺服器上使用,而無需訪問底層的軟體。

事實上,該項技術還可以應用於任何以“黑箱技術”作為內部原理的文字處理系統當中,因為他們都不考慮內部的執行過程。研究人員表明,在他們的實驗中,“神經網路”在人類翻譯的工作中展現出與人類思維相同的特質!

別吵了,做實驗吧!

雖然該項技術主要針對的是自然語言處理,但是它的核心思想與計算機視覺任務的神經網路是有點類似的。

舉個例子,大家應該比較熟悉目標檢測系統,通俗一點說,它的原理是將影像劃分成不同的部分,然後將劃分以後的影像重新返還給目標識別器,最後根據影像的特徵進行分類。

對於目標檢測來說,這個方法很好實現,但是運用到自然語言處理上就存在很大的難度。

對此,MIT電子工程和電腦科學系的教授Tommi Jaakkola就提出質疑:這樣的拆分難道不會破壞一個句子的語義性嗎?

這位教授正是該論文的兩個作者之一,她這樣分析:我們不能僅僅做一個簡單的隨機過程就提出一種方法,你要能預測相對複雜的物件,比如在一句話中,這種方法的意義又是什麼?

有趣的是,論文的第一作者,同是MIT電氣工程與電腦科學系的研究生David Alvarez-Melis,則使用這一黑箱-神經網路來生成測試語句,然後再用這一測試集對黑箱-神經網路的效能進行測試。

他們具體是怎麼測試的呢?

首先,他們訓練了一個可以壓縮和解壓縮我們日常語句的網路,把這一網路作為黑箱神經網路的中間一層。壓縮就是將語句以數字的表現形式打包,從而方便資訊傳遞;

解壓縮就是讓打包後的語句重新擴充套件成之前的原始形式。在神經網路訓練的過程中,系統會根據解碼器的輸出與編碼器的輸入的匹配程度,同時對編碼器和解碼器進行調整。

這裡,不得不提一句。

神經網路的本質是一個概率問題,為什麼這麼說呢?

對於一個目標檢測的系統,假如我們對“喂小狗”這一影像進行檢測,神經網路判別的結果可能是:影像的主體70%的概率是狗,25%的概率是貓,因此係統識別出我們喂的小狗而不是小貓。

同樣,在Jaakkola和Alvarez-Melis的句子壓縮網路中,他們為解碼語句中的每個單詞都提供了替代詞彙,以及每種替代詞彙的概率。

我們可以這樣理解,因為網路會自然地選擇具有共現關係的詞彙(co-occurrence)來增加其解碼正確率,具有相同概率的詞彙一般都是通過聚類的方法找到具有相同語義關聯的詞彙。

例如,編碼的語句是“She gasped in surprise”(她驚訝得喘不上氣),系統會自動將“She squealed in surprise”(她驚訝得尖叫)以及“She gasped in horror”(她驚恐得喘不上氣)這類替代語句分配為相當高的解碼概率。

但是同時,也會降低“She swam in surprise”(她驚訝得游泳)和“She gasped in coffee”(她在咖啡中喘氣…)這型別的語句的解碼概率。

之後,對於任何語句來說,系統都能產生一個與其相關的語句列表,Jaakkola和Alvarez-Melis把這個由黑箱-神經網路生成的語句列表,再次放入黑箱-神經網路當中。其結果就是得到一個新的輸入-輸出對的列表,通過這個判別式列表,研究人員可以進一步分析出:哪些輸入導致哪些內部變化,從而導致哪些輸出。

來,測試一下

研究人員將這個技術應用到三種不同的自然語言處理系統當中,一個是用來推斷詞語發音的系統,另一個是常用的翻譯系統,最後一個是能對任何問題提供合理答案的簡單人機對話系統。

通過對翻譯系統的翻譯結果進行分析表明:在輸入和輸出序列中,單詞的依賴性很強。這與人們的預期相似,有趣的是,機器翻譯系統在對文字進行翻譯的時候,對性別的辨別有時候與我們人類的預期總是存在較大的偏差。

例如,在英語中“dancer”(舞蹈演員)是一個不考慮性別的詞彙,也就是一箇中性詞彙。但是在法語中,舞蹈演員卻區分為“danseur”(男舞蹈演員)和“danseuse”(女舞蹈演員)。當

這個翻譯系統將“The dancer is charming”(這個舞蹈演員很迷人)這句話翻譯成法語時,通常會翻譯成“la danseuse est charmante.”(這個女舞蹈演員很迷人)。這是因為翻譯系統理解“女舞蹈演員”可能跟“迷人”這個單詞更加搭配,也就忽視了其實翻譯的初衷並沒有考慮舞蹈演員的性別這一事實。

這也可以看出來,在一句話中,不同的形容詞(charming)會對其它詞語(dancer)的翻譯造成影響。

對於人機對話系統,它從好萊塢電影的橋段中選取雙線進行了訓練和測試,但是這個系統的測試結果卻差強人意,儘管研究人員選取了一個很大的訓練集去訓練,但是由於網路自身過於渺小,使得網路不能完全利用這些訓練資料。

Alvarez-Melis解釋說:“我們做的這個系統確實是有缺陷的,如果你設計了一個黑箱模型但是沒有獲得預期的效果,你能一上來就直接用這種模型來解決實際問題嗎。當下還是先去修復系統、提升系統的效能,理解到底是什麼原因造成這樣的錯誤再說吧”。

在這種情況下,研究人員的分析結果說明了:人機對話系統通常會在輸入對話方塊中鍵入一些關鍵字,這些關鍵字被用來生成一些固定的對話模板。例如:對於一些提問的開頭是“誰”和“什麼”的時候,對話系統的回答通常是“我不清楚你在說什麼”。


原文地址

http://news.mit.edu/2017/how-neural-networks-think-0908



相關文章