DeepMind提出可微分邏輯編程,結合深度學習與符號程序優點

2020-12-17 量子位

夏乙 編譯自 DeepMind Blog量子位 出品 |

神經網絡的強大功能有目共睹,但它往往需要大量與目標測試領域數據分布相似的訓練數據;而用於符號領域的歸納邏輯編程只需少量數據,卻無法對抗噪聲,適用領域也很狹窄。

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<y、y<z、x<z的樣例,它就能考慮到「小於」關係可能具有傳遞性。一旦它掌握了這條一般規則,就可以將它應用到從未見過的新數字對上去。

上圖總結了我們的「小於」實驗:藍色曲線表示標準的深度神經網絡,無法正確泛化到從未見過的數字對,相比之下,在只用40%數字對訓練過的情況下,綠色曲線表示的ILP依然能保持較低的測試誤差。這表明,ILP能夠進行符號性的泛化。

我們相信,對於深度神經網絡中是否能夠實現符號泛化這個問題,我們的系統能夠在某種程度上給予答案。今後,我們計劃將類似ILP的系統集成到強化學習智能體以及更大的深度學習模塊中,賦予系統推理、反應的能力。

相關論文:

Learning Explanatory Rules from Noisy DataRichard Evans, Edward Grefenstettehttp://www.jair.org/media/5714/live-5714-10391-jair.pdf

原文地址:

https://deepmind.com/blog/learning-explanatory-rules-noisy-data/

活動報名

加入社群

量子位AI社群13群開始招募啦,歡迎對AI感興趣的同學,加小助手入群;

此外,量子位專業細分群(自動駕駛、CV、NLP、機器學習等)正在招募,面向正在從事相關領域的工程師及研究人員。

進群請加小助手,並務必備註相應群的關鍵詞~通過審核後我們將邀請進群。(專業群審核較嚴,敬請諒解)

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位對話界面,回復「招聘」兩個字。

量子位 QbitAI · 頭條號籤約作者

'' 追蹤AI技術和產品新動態

相關焦點

  • 普林、DeepMind新研究:結合深度學習和符號回歸,從深度模型中看見...
    符號模型緊湊,具備可解釋性和良好的泛化能力,但很難處理高維機器學習問題;深度模型擅長在高維空間中學習,但泛化性和可解釋性卻很差。那麼有沒有什麼辦法可以取二者之所長呢?這項研究做到了。如何將深度模型轉換為符號方程?來自普林斯頓、DeepMind 等機構的研究人員提出了一種解決方案:結合深度學習和符號回歸實現這一目標。
  • Deepmind "預測地圖"論文背後:神經科學或將助力深度學習迎來新突破
    2017年10月2日,《NATURE NEUROSCIENCE》發表了Deepmind的一篇《The hippocampus as a predictive map》的論文。這篇論文中,Deepmind通過對主管人類長期記憶行為的「海馬體」(hippocampus)神經元活動的研究,進一步提出了可以轉化為神經網絡架構的「預測圖」理論。
  • DeepMind悄咪咪開源三大新框架,深度強化學習落地希望再現
    OpenSpielGitHub:https://github.com/deepmind/open_spiel遊戲在 DRL agent的 訓練中發揮著重要作用。與其他數據集一樣,遊戲本質上基於試驗和獎勵機制,可用於訓練 DRL agent。
  • 谷歌,DeepMind,微軟和Uber大規模訓練深度學習模型框架簡介
    大規模訓練是在現實世界中構建深度學習解決方案最具挑戰性的方面之一。從訓練到優化,深度學習程序的生命周期需要健壯的基礎設施構建塊,以便能夠並行化和擴展計算工作負載。儘管深度學習框架正在快速發展,但相應的基礎架構模型仍處於初期階段。
  • MXNet設計筆記之:深度學習的編程模式比較
    筆記的思想不局限於MXNet,也不局限於深度學習,無論對深度學習初學入門還是對高階提升,都具有很好的參考價值。本文是第一篇設計筆記的譯文,深入討論了不同深度學習庫的接口對深度學習編程的性能和靈活性產生的影響。市面上流行著各式各樣的深度學習庫,它們風格各異。那麼這些函數庫的風格在系統優化和用戶體驗方面又有哪些優勢和缺陷呢?
  • 從AlphaGo起,DeepMind官方回顧2016年大事記
    《DeepMind發布最新原始音頻波形深度生成模型WaveNet,將為TTS帶來無數可能》可微分計算機 DNC2016 年,DeepMind 在存儲(memory)領域也取得了不小的進步,尤其是在解決如何將神經網絡的智能決策和複雜結構化數據的存儲、推理能力結合起來的難題。
  • 密碼島學編程 讓孩子學習編程,選什麼語言適合呢?
    無需英文和代碼基礎,孩子通過拖曳代碼塊的方式建立程序,培養編程思維。 有了基礎的思維邏輯,所以,他們滿足了學習成人編程(用在現實生產上的程式語言)的前提條件。
  • IEEE預發:DeepMind主攻的深度強化學習3大核心算法及7大挑戰
    深度學習同樣加速了RL的發展,使用RL內的深度學習算法提出了「深度強化學習」(DRL)方向。這項調查的目的是介紹DRL的最新重要發展,介紹使用神經網絡更接近開發自主智能體的創新方式。  深度學習使RL可以擴展到解決以前難以處理的決策問題,即具有高維狀態和動作空間的情景。在最近的DRL領域的工作中,有兩個傑出的成功案例。
  • 從星際2深度學習環境到神經機器翻譯,上手機器學習這些開源項目必...
    更多的深度學習框架,可查看文章:迎來 PyTorch,告別 Theano,2017 深度學習框架發展大盤點輸出:最終的結果機器學習的輸出結果可以是一種識別顏色的模式,也可以是簡單的網頁色調分析,或者是某個置信區間裡的預估值。總之,輸出的結果可以是任何事情。
  • DeepMind開源強化學習遊戲框架,25款線上遊戲等你來挑戰
    選自GitHub機器之心編譯參與:一鳴、思強化學習算法沒有遊戲訓練?DeepMind 開源 OpenSpiel 平臺了。研究者可在線部署遊戲環境,快速開始實驗。強化學習算法廣為人知的一個應用場景便是遊戲了,通過智能體在多玩家遊戲中的表現,研究者可以更好地調整算法和參數細節,實現更好的算法性能。近日,DeepMind 開源了一款多玩家遊戲平臺「Open-Spiel」,支持多種策略和遊戲環境,以及相關的分析工具。支持的遊戲數量達到了 25 款,絕大多數都和棋牌、博弈相關。
  • ​大牛的《深度學習》筆記,Deep Learning速成教程
    ,並解釋了深度學習的基本思想,深度與淺度學習的區別和深度學習與神經網絡之間的關係。機器能否像人類一樣能具有學習能力呢?1959年美國的塞繆爾(Samuel)設計了一個下棋程序,這個程序具有學習能力,它可以在不斷的對弈中改善自己的棋藝。4年後,這個程序戰勝了設計者本人。又過了3年,這個程序戰勝了美國一個保持8年之久的常勝不敗的冠軍。這個程序向人們展示了機器學習的能力,提出了許多令人深思的社會問題與哲學問題(呵呵,人工智慧正常的軌道沒有很大的發展,這些什麼哲學倫理啊倒發展的挺快。
  • TensorFlow和Caffe、MXNet、Keras等其他深度學習框架的對比
    Theano官方網址:http://www.deeplearning.net/software/theano/GitHub:http://github.com/Theano/TheanoTheano 誕生於2008年,由蒙特婁大學 Lisa Lab 團隊開發並維護,是一個高性能的符號計算及深度學習庫
  • OpenAI聯合DeepMind發布全新研究:根據人類反饋進行強化學習
    近日,一篇題為《Deep reinforcement learning from human preferences》的論文讓我們看到這樣的努力及其成果——提出了一種基於人類反饋的強化學習方法。該論文在 arXiv 發布後,DeepMind 和 OpenAI 各自通過博客對這項重要成果進行了解讀,機器之心在本文中對 DeepMind 的博客及原論文的摘要進行了編譯介紹。
  • 機器學習和深度學習的最佳框架大比拼
    機器學習框架和深度學習框架之間有區別。本質上,機器學習框架涵蓋用於分類,回歸,聚類,異常檢測和數據準備的各種學習方法,並且其可以或可以不包括神經網絡方法。深度學習或深度神經網絡(DNN)框架涵蓋具有許多隱藏層的各種神經網絡拓撲。這些層包括模式識別的多步驟過程。網絡中的層越多,可以提取用於聚類和分類的特徵越複雜。
  • CSIS報告:深度偽造 (Deepfake) 技術政策簡報
    Deepfakes Policy Brief - 深度偽造技術政策簡報》報告。「深度偽造」(Deepfake)是「deep learning」(深度學習)和「fake」(偽造)的混合詞,即利用深度學習算法,實現音頻和視頻的模擬和偽造。
  • Google的DeepMind和Boston Dynamics的結合可以證明是某些非常智能...
    DeepMind由Demis Hassabis,Mustafa Suleyman和Shane Legg於2011年創立,使用強大的通用學習算法開發用於機器學習和神經科學的軟體。這家擁有75名員工的私有公司是在模擬,電子商務和遊戲領域的第一個商業應用程式。
  • 什麼是深度學習(科普)
    現今,大量企業對於深度學習領域的人臉識別應用於智能家居安防,春運期間人臉識別檢驗旅客的信息,人臉識別購物反欺詐等等的應用,逐漸獲得社會的關注和大量的應用。深度學習的有著悠久的歷史,隨著可用準確的訓練數據量的不斷增加,深度學習的方法變得高可靠。
  • 機器編程駕到 未來全球78億人都能寫代碼?
    機器編程所使用的自動編程技術既有精確方法(比如形式程序合成),也有概率方法(比如可微分編程)。「人類的編程過程側重於邏輯業務,很少關心編程的語法、格式等。而機器編程實質是搬運代碼模型,因為目前還沒有成熟的編程機器可以達到自主開發軟體的程度,包括英特爾最新提出的ControlFlag。」吳家驥指出。
  • 帶你走進微積分的堂學習:一階線性微分方程式的基礎原理
    一階線性微分方程式是微分方程中最簡單的也是基本的,雖然看上去比較枯燥,但其背後的數學原理值得我們去學習和借鑑,本篇就來學習和探討下。希望對大家有所幫助。設一階微分方程式的右端函數f(x,y)關於y是一次線性的,設其中函數a(x)與b(y)在區間α<x<β上是連續的,此時,相應的微分方程可以寫成像這類的微分方程稱之為一階線性微分方程,不是線性的微分方程稱之為非線性微分方程
  • 少兒編程黃金賽道擁擠 底層邏輯到底是什麼?
    數字時代教育模型讓每個人能夠適當的掌握計算機語言,了解計算機運行的底層邏輯,很好的和計算機交互的思維,是在這個時代面向未來提出的新的教育的需求。「學習計算機語言事實上是有不同的層次。語言、邏輯和思維,如果僅僅為了學習一門語言,一個軟體技術,讓孩子來到這樣的課堂,意義真的不大。」孫瑩認為。