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

未來的AI 深挖谷歌 DeepMind 和它背后的技術(shù)
PLC的應(yīng)用大致可歸納為哪幾類?
基于位串編碼的遺傳歸納邏輯程序設(shè)計
基于單片機(jī)的復(fù)雜可編程邏輯器件快速配置方法

邏輯層網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)方法研究

在Multisim環(huán)境中Xilinx邏輯器件進(jìn)行編程及步驟
利用嵌入式處理器對可編程邏輯器件進(jìn)行重編程

超全使用串口對DSP進(jìn)行應(yīng)用可編程的方法
可創(chuàng)建小型組合與時序邏輯電路的PLU可編程邏輯單元
張鈸院士: 邁向第三代人工智能

評論