神經網絡的強大功能有目共睹,但它往往需要大量與目標測試領域數據分布相似的訓練數據;而用于符號領域的歸納邏輯編程只需少量數據,卻無法對抗噪聲,適用領域也很狹窄。
DeepMind在最近發表的一篇論文中,提出了可微分歸納邏輯編程方法?ILP,既能解決傳統歸納邏輯編程擅長的符號類任務,也對噪聲數據、訓練集中的誤差有一定容忍度,還可以通過梯度下降來訓練。
怎么樣?我們來看看DeepMind在官方博客上對這種方法的解讀:
想象一下踢足球的場景,球到了你腳下,你決定把它傳給沒人盯防的前鋒。這個看似簡單的行為,需要兩種不同的思維。
首先,你認識到自己腳下有一個球,這需要的是直觀的感性思維——你沒辦法簡單地描述出你是怎么知道腳下有個球的。
其次,你決定把球傳給特定的一個前鋒。這個決策需要概念性思維,你的決定依賴于理由——你把球傳給這個前鋒的原因,是沒有人盯防她。
這種區別對我們來說很有意思,因為這兩類思維對應著兩種不同的機器學習方法:深度學習和符號程序合成(symbolic program synthesis)。
深度學習專注于直觀的感性思維,而符號程序合成專注于概念性的、基于規則的思考。這兩個系統各有各的優點,深度學習系統能適用于噪聲數據,但難以解釋,而且需要大量訓練數據;符號系統更易于解釋,需要的訓練數據也更少,但一遇到噪聲數據就不行了。
人類認知將這兩種截然不同的思維方式無縫結合在了一起,但想要把這種結合復制到一個AI系統里,我們還不太清楚是否可能、如何做到。
我們最近在《JAIR》期刊(Journal of AI Research)上發表的論文表明,系統可以將直觀的感性思維和概念性的可解釋推理結合起來。我們所描述的?ILP(可微分歸納邏輯編程,Differentiable Inductive Logic Programming)系統具有下列特性:抗噪聲、數據上很經濟、能產生可解釋的規則。
我們用一個歸納任務來演示?ILP的工作原理:
已知一對表示數字的圖片,系統需要根據左側圖像數字是否小于右側圖像的數字,輸出0或1的標簽,如下圖所示:
解決這個問題涉及兩種思維方式。從圖像中認出數字,需要直觀的感性思維;要整體理解“小于”關系,則需要概念性的思考。
其實,如果給標準的深度學習模型(例如帶有MLP的卷積神經網絡)提供足夠的訓練數據,它能學會有效地解決這個問題,訓練完成后給它一對從未見過的新圖像,它也可以正確分類。
但實際上,只有每對數字你都給它多個樣例,它才能正確地泛化。這個模型擅長視覺上的泛化,比如說測試集中的每一對數字它都見過了,要泛化到新的圖像,就很容易(見下圖綠色方塊)。但它不適用于符號的泛化,比如說它就不能泛化到從未見過的數字(見下圖藍色方塊)。
馬庫斯(Gary Marcus)、Joel Grus等研究者最近都撰文指出了這一點。
不同于標準的神經網絡,?ILP能夠進行符號的泛化;它和標準的符號程序也不一樣,可以進行視覺上的泛化。?ILP從樣例中學習可讀、可解釋、可驗證的,明確的程序。已知部分樣例(也就是預期的結果,下圖中的desired results),?ILP能生成一個滿足需求的程序。它用梯度下降從程序空間中搜索,如果程序的輸出與參考數據需要的輸出相沖突,系統就會修改程序以更好地匹配數據。
?ILP的訓練過程如下圖所示:
?ILP能進行符號性的泛化,給它足夠多x
上圖總結了我們的“小于”實驗:藍色曲線表示標準的深度神經網絡,無法正確泛化到從未見過的數字對,相比之下,在只用40%數字對訓練過的情況下,綠色曲線表示的?ILP依然能保持較低的測試誤差。這表明,?ILP能夠進行符號性的泛化。
我們相信,對于深度神經網絡中是否能夠實現符號泛化這個問題,我們的系統能夠在某種程度上給予答案。今后,我們計劃將類似?ILP的系統集成到強化學習智能體以及更大的深度學習模塊中,賦予系統推理、反應的能力。
-
神經網絡
+關注
關注
42文章
4777瀏覽量
100970 -
機器學習
+關注
關注
66文章
8429瀏覽量
132852 -
深度學習
+關注
關注
73文章
5510瀏覽量
121349
原文標題:DeepMind提出可微分邏輯編程,結合深度學習與符號程序優點
文章出處:【微信號:CAAI-1981,微信公眾號:中國人工智能學會】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論