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