華文網

DeepMind:人工智慧究竟怎麼長“記性”?

通過給一個神經網路加上“記憶”,DeepMind成功地讓它連續對19個ATARI 2600遊戲進行學習。

最終19個遊戲中有11個都展現出了優秀的結果。

作者|李賡

編輯|甲小姐

網址|www.xtecher.com

昨天,一段時間不冒頭,DeepMind又搞了個大新聞——給機器學習加上“記憶能力”。

今天早些時候,DeepMind在《美國國家科學院院刊(PNAS)》上發了一篇最新論文,內容是《神經網路中的“災難性忘卻(catastrophic forgetting)”已經開始著手解決》。

為了能夠加通俗易懂地將這項學術進展表達出來,Xtecher專門採訪了彩雲AI創始人&CEO袁行遠,並讓他從一名人工智慧從業者的角度談了下他的看法。

讓機器人有記憶,DeepMind究竟幹了啥?

首先,我們來解釋一下什麼是“災難性忘卻”(catastrophic forgetting)。

現有人工智慧技術的底層是機器學習技術,也就是利用很多層神經網路來對問題進行量化分析。最終得到一個相對靠譜的神經網路,

知道如何分解問題最合理,卻不知道網路參數數值與最終結果除了正確率之外的其他邏輯意義。

那麼我們假設現在有兩個需要學習的新生事物A和B,而我們先後用一套神經網路去學習,就會出現一個非常尷尬的局面:

讓人工智慧學習完A之後學習B,

之前為完成A任務所建立的神經網路就變得無用,需要再次從0開始積累。當神經網路學會如何解決B問題之後,A問題的解決方法卻又已經被覆蓋,等於“忘記”了。

那種想說一件事,但是因為被打斷突然忘掉了,有多鬱悶你肯定懂。

通俗點來說,雖然這套神經網路能夠同時學習A、B兩種事物,但他們從本質上來說卻不是一個神經網路,因為它並不能同時完成兩項事務。

這個特性就好比一堵“高牆”,

攔住了人工智慧往通用化的方向前進。也正因為不能通用化,所以我們目前看到的人工智慧還久久停留在“弱人工智慧(只能完成一個或者一類實際問題)”階段。

為了解決這個問題,DeepMind此次引入了一套全新的演算法體系EWC(彈性權重鞏固),原理並不複雜。

A、B兩個任務,以及分別對應的兩個神經網路

依舊是A、B兩個需要學習的事物,但在學習完A之後EWC演算法中多出來了一步:根據神經網路中每一個神經元與結果的關係強弱,

分別給他們加上一個對應的時間保護設置。當再次學習全新事物B時,A事物最關鍵的神經網路結構會被保留,即便少部分被覆蓋,也能快速通過再次學習獲得。

袁行遠特別指出:“這次DeepMind進展的關鍵,在於19個遊戲用的是同一個神經網路。”單從這個成績來看,DeepMind這次的實驗已經算成功了。

不得不說,這的確很像人腦的工作方式。因為人類大腦也會左右分工、大腦皮層的不同位置也會負責不同任務。處理具體問題的時候,大腦對應區域自然會運轉起來。而EWC的出現,就是去衡量這些無法同時工作的神經網路應該如何分別留存。

實際上,DeepMind這套演算法的參考物件就是人類和哺乳動物大腦,因為他們都有鞏固先前獲得技能和記憶的能力。根據神經科學目前的研究成果,大腦中主要有兩種鞏固知識的方式系統鞏固(systems consolidation )與突觸鞏固(synaptic consolidation)。

系統鞏固的過程中,人類大腦將快速學習部分獲得的記憶轉印進了緩慢學習的部分。這一轉印過程有有意識的回憶參與,也有無意識回憶的參與,人類做夢時就能完成這一轉印過程。而在突觸鞏固中,如果一種技能在此前的學習中非常重要,神經元之間連接就不會被覆蓋。

而這次DeepMind公佈的EWC演算法,實際就類比了突觸鞏固。但毫無疑問,即便裝備了EWC演算法,人工智慧目前的記憶複雜程度還遠遠比不上人類。

是騾子是馬?拉出來玩幾把遊戲再說

既然演算法有了,自然要測試一下。DeepMind選擇了一個自己熟悉的項目:19款ATARI 2600(一款1977年發佈的經典圖元遊戲主機,之上有數款最經典的遊戲)遊戲。

早在2015年,DeepMind就通過自行研發的神經網路Deep Q,在這些遊戲上得分超過了人類。

還是熟悉的項目,但DeepMind這回在Deep Q基礎上加上了EWC演算法。

同時為了驗證EWC演算法的有效性,他們添加了一個考核條件:每種遊戲只能學習2000萬次,然後就切換到下一個遊戲。當19個遊戲全部被學習一次之後,再從第一個遊戲重新開始學習。

最終他們得到了下面的結果:

注:SGD(藍色)為沒有加上EWC的學習結果,紅色是加上EWC演算法之後,single game(黑色)為持續對單個遊戲進行學習的結果。

需要額外解釋一下的是,這些圖表中橫向座標是學習次數,同時EWC並不是連續學習的結果。EWC每兩個峰穀之間實際上已經學習了另外18個遊戲。

對結果做一個簡單統計:在19個遊戲中,總共有11個EWC成績達到或者接近(以80%計算)single game的成績。

另外一方面,EWC與SGD成績對比也能顯現出很有趣的趨勢:在絕大多數遊戲中,兩者都會在“重新學習”之後發生較明顯的成績下滑,但是EWC的成績通常比SGD高,而且整體波動幅度會越來越小。而這恰恰證明,EWC的確記住了這個遊戲怎麼玩。

但與此同時,我們還能發現另外一些有趣的結果:

1、breakout、star gunner、Asterix這幾款遊戲中,資料的積累非常重要,single game也是在學習量積累到一定程度之後才找到其中的規律,而每個遊戲只能學習2000次的限制讓EWC、SGD都無法取得進展(即便我們繼續增加回合數,希望也很渺茫)。

2、在kangaroo這款遊戲中,不同的學習嘗試似乎反而促進了分數,EWC在數個回個之後曾取得多個超過single game的成績(這跟人類玩遊戲需要狀態、靈感有點類似)。

3、在demon attack、defender、space invaders這幾款遊戲中,EWC在幾個回合之後出現成績下滑。即便後面多個回合繼續研究也沒有起色。這可能是由於學習次數不夠,同時也有可能是因為EWC網路沒有正確選擇應該保留的神經網路元件的結果。

這次實驗證明了EWC的確能夠工作。但不同遊戲下表現差異比較大。如何選擇需要“記憶”的神經網路,每次學習的次數如何決定?這些硬性條件同樣需要演算法來平衡,我們甚至可以說現在的EWC演算法是殘缺的。

袁行遠對這部分實驗也指出了自己的幾個看法:

1、DeepMind選擇ATARI 2600遊戲作為測試樣本有其原因所在,雖然遊戲種類、玩法、成績不同,但輸入都是一致的,這在一定程度上保證了神經網路的通用性質。

2、這次記憶體系的構建並不會直接打通強人工智慧之路,這還是一個非常漫長的道路。

3、神經科學目前的積累基本已經被人工智慧所“掏空”,接下來人工智慧的進展還需要不斷靠嘗試推進。

記憶鋪路,讓強人工智慧早日來臨

正如上文所提到的那樣,引入“記憶”最終是為了前往人工智慧的終極目標——強人工智慧,這也是最理想的道路之一。

袁行遠就此分享了一下目前他所理解的兩條前往強人工智慧的道路——語言與記憶:“就比如AlphaGo,它現在的確很厲害,未來肯定能超過人類。但它目前還不能做到我最希望的一件事,把它下棋的經驗寫出來。這樣雖然它能下過人類,但是人類並不能理解它的思考,那就等於對人類沒有意義。”

那麼怎麼才能讓AlphaGo學會寫書呢?首先就是能夠將AlphaGo的下棋經驗記錄下來,也就是記憶;其次還需要將這些記憶變成人類所能理解的代碼、語言。

當然,此次DeepMind所嘗試的演算法還非常有限,並不能算作一個完整的記憶體系。究竟怎麼樣的記憶才是人工智慧最需要的?袁行遠表示:“記住東西是必須的,關鍵是要能夠變成一本一本的書,也就是能夠輸出一個外部可以接受的成果。這樣不同的人工智慧能夠交換知識,人類也可以進行學習。”

從時間長度來看,這些書本實際可以定義為一個個長期記憶,能夠永久保存、更新就最好了。

至於語言方面,彩雲AI最新產品“彩雲小譯”就是一款人工智慧驅動的翻譯產品。在之前接受Xtecher採訪的時候他也曾強調過:“我們目前在做的是人與人之間語言的翻譯,未來實際上同樣也可以作為機器與人溝通的橋樑。”

最後,我們邀請袁行遠給DeepMind的這次嘗試做了一個評價:“的確有一定啟迪,但是距離強人工智慧還有很遠很遠距離。我倒不擔心強人工智慧會給人類帶來威脅,畢竟他們同樣也可能給人類帶來巨大改變。”

人工智慧,是時候長點“記性”了。

因為人類大腦也會左右分工、大腦皮層的不同位置也會負責不同任務。處理具體問題的時候,大腦對應區域自然會運轉起來。而EWC的出現,就是去衡量這些無法同時工作的神經網路應該如何分別留存。

實際上,DeepMind這套演算法的參考物件就是人類和哺乳動物大腦,因為他們都有鞏固先前獲得技能和記憶的能力。根據神經科學目前的研究成果,大腦中主要有兩種鞏固知識的方式系統鞏固(systems consolidation )與突觸鞏固(synaptic consolidation)。

系統鞏固的過程中,人類大腦將快速學習部分獲得的記憶轉印進了緩慢學習的部分。這一轉印過程有有意識的回憶參與,也有無意識回憶的參與,人類做夢時就能完成這一轉印過程。而在突觸鞏固中,如果一種技能在此前的學習中非常重要,神經元之間連接就不會被覆蓋。

而這次DeepMind公佈的EWC演算法,實際就類比了突觸鞏固。但毫無疑問,即便裝備了EWC演算法,人工智慧目前的記憶複雜程度還遠遠比不上人類。

是騾子是馬?拉出來玩幾把遊戲再說

既然演算法有了,自然要測試一下。DeepMind選擇了一個自己熟悉的項目:19款ATARI 2600(一款1977年發佈的經典圖元遊戲主機,之上有數款最經典的遊戲)遊戲。

早在2015年,DeepMind就通過自行研發的神經網路Deep Q,在這些遊戲上得分超過了人類。

還是熟悉的項目,但DeepMind這回在Deep Q基礎上加上了EWC演算法。

同時為了驗證EWC演算法的有效性,他們添加了一個考核條件:每種遊戲只能學習2000萬次,然後就切換到下一個遊戲。當19個遊戲全部被學習一次之後,再從第一個遊戲重新開始學習。

最終他們得到了下面的結果:

注:SGD(藍色)為沒有加上EWC的學習結果,紅色是加上EWC演算法之後,single game(黑色)為持續對單個遊戲進行學習的結果。

需要額外解釋一下的是,這些圖表中橫向座標是學習次數,同時EWC並不是連續學習的結果。EWC每兩個峰穀之間實際上已經學習了另外18個遊戲。

對結果做一個簡單統計:在19個遊戲中,總共有11個EWC成績達到或者接近(以80%計算)single game的成績。

另外一方面,EWC與SGD成績對比也能顯現出很有趣的趨勢:在絕大多數遊戲中,兩者都會在“重新學習”之後發生較明顯的成績下滑,但是EWC的成績通常比SGD高,而且整體波動幅度會越來越小。而這恰恰證明,EWC的確記住了這個遊戲怎麼玩。

但與此同時,我們還能發現另外一些有趣的結果:

1、breakout、star gunner、Asterix這幾款遊戲中,資料的積累非常重要,single game也是在學習量積累到一定程度之後才找到其中的規律,而每個遊戲只能學習2000次的限制讓EWC、SGD都無法取得進展(即便我們繼續增加回合數,希望也很渺茫)。

2、在kangaroo這款遊戲中,不同的學習嘗試似乎反而促進了分數,EWC在數個回個之後曾取得多個超過single game的成績(這跟人類玩遊戲需要狀態、靈感有點類似)。

3、在demon attack、defender、space invaders這幾款遊戲中,EWC在幾個回合之後出現成績下滑。即便後面多個回合繼續研究也沒有起色。這可能是由於學習次數不夠,同時也有可能是因為EWC網路沒有正確選擇應該保留的神經網路元件的結果。

這次實驗證明了EWC的確能夠工作。但不同遊戲下表現差異比較大。如何選擇需要“記憶”的神經網路,每次學習的次數如何決定?這些硬性條件同樣需要演算法來平衡,我們甚至可以說現在的EWC演算法是殘缺的。

袁行遠對這部分實驗也指出了自己的幾個看法:

1、DeepMind選擇ATARI 2600遊戲作為測試樣本有其原因所在,雖然遊戲種類、玩法、成績不同,但輸入都是一致的,這在一定程度上保證了神經網路的通用性質。

2、這次記憶體系的構建並不會直接打通強人工智慧之路,這還是一個非常漫長的道路。

3、神經科學目前的積累基本已經被人工智慧所“掏空”,接下來人工智慧的進展還需要不斷靠嘗試推進。

記憶鋪路,讓強人工智慧早日來臨

正如上文所提到的那樣,引入“記憶”最終是為了前往人工智慧的終極目標——強人工智慧,這也是最理想的道路之一。

袁行遠就此分享了一下目前他所理解的兩條前往強人工智慧的道路——語言與記憶:“就比如AlphaGo,它現在的確很厲害,未來肯定能超過人類。但它目前還不能做到我最希望的一件事,把它下棋的經驗寫出來。這樣雖然它能下過人類,但是人類並不能理解它的思考,那就等於對人類沒有意義。”

那麼怎麼才能讓AlphaGo學會寫書呢?首先就是能夠將AlphaGo的下棋經驗記錄下來,也就是記憶;其次還需要將這些記憶變成人類所能理解的代碼、語言。

當然,此次DeepMind所嘗試的演算法還非常有限,並不能算作一個完整的記憶體系。究竟怎麼樣的記憶才是人工智慧最需要的?袁行遠表示:“記住東西是必須的,關鍵是要能夠變成一本一本的書,也就是能夠輸出一個外部可以接受的成果。這樣不同的人工智慧能夠交換知識,人類也可以進行學習。”

從時間長度來看,這些書本實際可以定義為一個個長期記憶,能夠永久保存、更新就最好了。

至於語言方面,彩雲AI最新產品“彩雲小譯”就是一款人工智慧驅動的翻譯產品。在之前接受Xtecher採訪的時候他也曾強調過:“我們目前在做的是人與人之間語言的翻譯,未來實際上同樣也可以作為機器與人溝通的橋樑。”

最後,我們邀請袁行遠給DeepMind的這次嘗試做了一個評價:“的確有一定啟迪,但是距離強人工智慧還有很遠很遠距離。我倒不擔心強人工智慧會給人類帶來威脅,畢竟他們同樣也可能給人類帶來巨大改變。”

人工智慧,是時候長點“記性”了。