神經網絡與邏輯推理相結合的NLR框架

2021-02-19 淺夢的學習筆記

今天跟大家分享一篇比較有意思的文章,將邏輯推理的思路應用在推薦系統中,一起來看下吧。

1、背景

協同過濾是推薦系統中一種非常重要的方法。目前協同過濾的方法大都基於相似度匹配的思想,即學習用戶和商品的表示,然後利用相似度函數來進行推薦,如基於矩陣分解的思路(下圖中的(a)),使用內積函數作為匹配函數計算相似度得分。在此基礎上,基於上下文的CF,進一步考慮了上下文信息如時間、地點、文本圖片等信息,如下圖中的(b)方法。

基於相似度匹配思路的協同過濾方法在現實世界許多推薦系統中取得了不錯的效果。但論文認為推薦是認知任務而不是感知任務,不僅僅需要具備模式識別和匹配的能力,還需要認知推理的能力,因為用戶的未來行為可能不會簡單地由其與先前行為的相似性來決定,而是由用戶關於下一步行為的認知推理決定。例如,當用戶買過一個筆記本電腦之後,下一步不會繼續買相似的筆記本電腦,而是有更大的可能去買電腦配件。

用戶認知推理的過程可以表示成邏輯表達式的形式,如(a∨b)∧¬c-->v(其中∨表示或,∧表示與,¬表示非)表達的含義是如果用戶喜歡a或者b,同時不喜歡c,那麼他有可能喜歡v。從把推薦當作一個認知推理任務的角度來說,我們希望推薦模型能夠發現和歸納數據中存在的邏輯關係。

那麼如何讓模型具備更好的推理能力呢?接下來,我們首先介紹下邏輯符號定義,然後再介紹論文提出的NEURAL LOGIC RECOMMENDATION(NLR)框架。

2、邏輯符號&表達式介紹

三個基本的邏輯符號分別是邏輯與∧、邏輯或∨和邏輯非¬。進一步,(x∧y)稱為邏輯子式,(x∧y)V(a∧b∧c)稱為邏輯表達式。

邏輯表達式需要滿足一些定律,如兩次取非等於原式:¬(¬x)=x,再比如常用的德摩根定律:¬(x∧y)等價於¬x∨¬y,¬(x∨y)等價於¬x∧¬y。一些常用的邏輯等式關係如下表所示:

另一個常用的邏輯操作稱為material implication(實質蘊含),它等價於下面的邏輯運算:

x-->y的含義是,x為真,則y也為真,而¬x∨y要想為真,在x為真的情況下,y必為真(因為¬x是假),所以二者是等價的。

好了,介紹了邏輯符號和表達式的含義之後,接下來介紹NLR框架。

3、NLR框架

本節,我們先介紹基於隱式反饋的推理模型,再介紹基於顯式反饋的推理,二者的過程較為相似,因此基於顯式反饋的推理只會進行粗略的介紹。

3.1 基於隱式反饋的推理

隱式反饋的數據中,我們僅能知道用戶與哪些item進行過交互,但並不知道用戶是否真的喜歡這些item,假設用戶交互過a,b,c三個item,接下來我們想要判斷用戶是否對v感興趣,即判斷下面的邏輯表達式是否正確:

基於第二節中的介紹,上式可以進一步轉換成:

image.png

再基於德摩根定律,進行進一步轉換:

ok,那麼我們就可以基於上面兩個公式中任意一個來構造網絡。c出於簡單的考慮,選擇了後一個公式(後一個公式只用到了兩種邏輯運算,而前一個公式包含三種邏輯運算)。由此構造的網絡結構如下圖所示:

假設用戶u1與v1,v2,v3有過交互,並預測用戶是否會與v4進行交互。首先,用戶和item都會轉換為對應的embedding,並進行拼接,得到<u1,v1>,<u1,v2>,<u1,v3>,<u1,v4>。接下來,通過如下的非線性變換進行轉換:

eji表示用戶i和item j的embedding經過轉換後得到的向量。接下來,我們的目標就是計算如下的邏輯表達式是否為真:

這裡,各種邏輯操作均是通過一個多層全連接網絡實現,例如邏輯非¬對應的網絡輸入原始向量,輸出一個表示非關係的向量;邏輯或輸入兩個原始向量,輸出一個表示二者或關係的向量。那麼,上式的網絡結構表示如下:

由於我們需要計算的是多個向量的邏輯或,而邏輯或網絡輸入的是兩個向量,所以需要採用一種循環的方式得到最後的向量。

計算得到邏輯表達式的結果之後,如何計算v4的推薦得分呢?這裡,引入兩個隨機初始化且不會進行梯度更新的向量T和F,分別代表True和False。如果表達式最終計算得到的向量與T接近,則認為v4應該被推薦,反之,則不進行推薦。距離計算使用cosine距離。

到這裡看似已經結束了,但我們仍忽略了一個比較重要的問題,上述將三個基本的邏輯運算定義為了神經網絡的形式,那麼各網絡的輸出是否符合邏輯運算的基本形式呢?邏輯非對應的網絡輸出的結果是否是輸入向量的非呢?這裡我們通過一系列的正則項損失進行約束。

以邏輯非為例,兩次邏輯非的結果和原結果應該相同,那麼很容易以此為條件設計正則項損失,即計算連續經過兩次邏輯非網絡得到的向量,與輸入向量的距離,距離越大,則損失越大:

其餘不同邏輯運算的正則項損失計算如下表所示,本文不再詳述:

模型訓練採用pairwise的形式,即對同一個用戶,同時計算一個正樣本和一個負樣本的推薦得分,並且希望正樣本的得分比負樣本得分儘可能高。而最終的損失包含兩部分,一部分是pairwise的損失(又包括bpr loss和l2 loss),另一部分是邏輯正則項loss。具體計算公式如下:

3.2 基於顯式反饋的推理

使用顯式反饋數據進行推理的過程與使用隱式反饋數據過程類似,假設用戶對v1和v2有正向的反饋,對v3有負向反饋,那麼是否給用戶推薦v4可以表示成如下的邏輯表達式:

進一步轉換得到:

這裡使用兩次邏輯非運算而非直接使用原始向量,其目的是為了使邏輯非網絡學習得更好。其餘過程與使用隱式反饋數據計算過程相似,不再贅述。

4、實驗結果及分析

最後來簡單看一下實驗結果。首先是本文提出的NLR框架與baseline模型的對比,其中NLR-I代表基於隱式反饋數據訓練的模型,NLR-E代表基於顯式反饋模型訓練的模型,從下表數據看,NLR效果遠好於各baseline模型,而NLR-E效果好於NLR-I。

再來看一下邏輯正則損失對於模型的提升效果,NLR-Emod代表沒有加入邏輯正則損失訓練得到的模型,可以看到,其效果是差於NLR-E的,因此邏輯正則損失對於模型效果的提升,具有正向的作用。

好了,論文還是比較有意思的,感興趣的同學可以翻閱原文喲~

想了解更多關於深度學習的內容,歡迎掃碼關注公眾號淺夢的學習筆記。回復加群可以加入我們的交流群一起學習!

碼字很辛苦,有收穫的話就請分享點讚在看三連吧👇

相關焦點

  • 論文淺嘗 | 神經協同推理
    因此本論文提出了新的思路,將每個用戶的行為記錄視為一個邏輯蘊涵規則,然後將邏輯表達式等價地轉換為基於邏輯神經模塊的神經體系結構,最後將可微神經網絡和符號推理這兩者在一個共享的體系結構中進行優化和推理。參考圖2(c),引入了邏輯推理運算。
  • 從Bengio演講發散開來:探討邏輯推理與機器學習
    本文所討論的 Logical Reasoning(邏輯推理)擬實現的就是 System2 中重點關注的有邏輯的(Logical)和可推理的(Reasoning)特點。近年來,深度神經網絡的應用獲得了巨大的成功,也推動了人工智慧的飛速發展。然而,深度神經網絡仍存在一些局限性。
  • ICLR oral:清華提出離散化架構WAGE,神經網絡訓練推理合二為一
    離散化架構 WAGE,訓練推理合二為一 該報告主要探討如何實現對全離散化深度神經網絡進行訓練和推理,便於部署到嵌入式設備中。 在深度學習領域,高精度意味著大面積、高功耗,從而導致高成本,這背離了嵌入式設備的需求,因此硬體加速器和神經形態晶片往往採用低精度的硬體實現方式。在低精度的算法研究方面,之前的工作主要集中在對前向推理網絡的權重值和激活值的縮減,使之可以部署在硬體加速器和神經形態晶片上;而網絡的訓練還是藉助於高精度浮點實現(GPU)。
  • 7 Papers|微信團隊等NumNet論文;神經算術邏輯單元評價方法
    還有關於量子計算、神經算術邏輯單元評價方法等方面的最新研究。(NALU)是一種神經網絡層,可以學習精確的算術運算。推薦:儘管神經算術邏輯單元的出現說明了使用神經網絡進行複雜運算推導是可行的,但是至今沒有一種合適的評價神經網絡是否能夠成功收斂的標準。
  • 【學生論壇】詳解記憶增強神經網絡
    記憶增強神經網絡(Memory Augmented Neural Network,MANN)是在傳統的神經網絡模型基礎上增加存儲模塊以及相應的讀寫機制的一類模型。如下圖所示,神經圖靈機模型(Neural Turing Machine,NTM)模型也可以歸為第二類框架,與別的模型的不同也僅在於存儲模塊是一個可隨機訪問的數組結構、特別設計的讀寫方式。
  • 史丹福大學教授提出全可微神經網絡架構MAC:可用於機器推理
    為解決這一問題,本文提出了一種新的全可微神經網絡架構 MAC,可使網絡具有結構化推理和迭代思考的能力, 提升其推理的明確性和表現力;在通過 CLEVR 數據集解決視覺推理的任務中,MAC 實現了 98.9% 的當前最優準確率,同時所需數據量減少 5 倍。
  • 關係推理水平超越人類:DeepMind展示全新神經網絡推理預測技術
    我們了解世界運行的方式,因為我們能對不同事物之間的聯繫做出邏輯推理——物理對象、語句,甚至抽象的想法。這種能力被稱為關係推理,它是人類智能的核心。我們以每天所有感官接收到的非結構化信息為基礎構建這種關係。我們的眼睛會接收到大量光線,而我們的大腦會將這些「巨量嘈雜的混亂」組織到我們需要關聯的特定實體之中。這兩篇論文都展示了有望理解關係推理這一挑戰的新方法。
  • 從prolog到LTN,AI的邏輯推理能力1
    然後,順藤摸瓜,果然,神經網絡+邏輯編程,學術界的研究也有了初步的成果,例如Logic Tensor Networks 、Neural Logic Machines 等等。本文整理了邏輯編程、prolog語言快速入門、LTN的核心思想,分享給大家。
  • 深度神經網絡推理時間的正確測量方法
    網絡延遲是將深度網絡部署到生產環境中要考慮的重要因素之一。大多數實際應用程式都需要非常快的推理時間,從幾毫秒到一秒不等。但是,正確而有意義地測量神經網絡的推理時間或延遲的任務需要對網絡有深刻的理解。即使是經驗豐富的程式設計師也經常會犯一些常見的錯誤,從而導致延遲測量不準確。這些錯誤有可能會引發錯誤的決策和不必要的支出。
  • 神經網絡篇——用TensorFlow2.0框架實現BP網絡
    那這個感知器模型和BP網絡有什麼關係呢?在我們所看到的BP網絡的結構圖中,其實是被簡化了的,下面小編畫了一個邏輯更清晰一點的圖:這樣我們就可以看出來,其實BP網絡是由一個一個的感知器組成,也就構成了一個真正的神經網絡,自然就能理解為什麼要使用激活函數了。接下來我們來看一下TensorFlow實現BP神經網絡到底有多簡單!
  • 初學AI神經網絡應該選擇Keras或是Pytorch框架?
    對於許多開發者來說,TensorFlow是他們接觸的第一個機器學習框架。TensorFlow框架儘管意義非凡,引起極大關注和神經網絡學習風潮,但對一般開發者用戶太不友好。軟體開發者畢竟不是科學家,很多時候簡單易學易用是程式設計師選擇的第一要素。
  • 「神經+符號」:從知識圖譜角度看認知推理的發展
    註:這裡所說的System 1和System 2是指認知科學中的雙通道理論,其中System 1表示直覺的、快速的、無意識的、非語言的、習慣的認知系統,這也是目前深度學習技術擅長的事情;System 2則表示慢的、有邏輯的、有序的、有意識的、可用語言表達以及可推理的系統,這是未來深度學習需要著重考慮的研究方向。
  • 四大深度學習框架+四類GPU+七種神經網絡:交叉性能評測
    第一個評測對比不同 GPU 在不同神經網絡和深度學習框架下的表現。這是一個標準測試,可以在給定 GPU 和架構的情況下幫助我們選擇合適的框架。第二個測試則對比每個 GPU 在不同深度學習框架訓練時的 mini-batch 效率。根據以往經驗,更大的 mini-batch 意味著更高的模型訓練效率,儘管有時會出現例外。
  • NYU、AWS聯合推出:全新圖神經網絡框架DGL正式發布
    早在 2014 年,Kai Sheng Tai 等人就研究了能在文本語法樹上訓練的樹神經網絡模型 TreeLSTM。這個工作在一定程度上衝擊了大家用 RNN 處理文本的範式,並且用樹型結構看待文本數據開創了很多新的研究可能。從鍊表到樹,從樹到圖:近年來,對於圖神經網絡(Graph Neural Network)的研究熱潮使得神經網絡的應用領域大大增加。
  • 從神經轉化到符號:從知識圖譜的角度看認知推理的發展
    這裡所說的System1和System2是指認知科學中的雙通道理論,其中System1表示直覺的、快速的、無意識的、非語言的、習慣的認知系統,這也是目前深度學習技術擅長的事情;System2則表示慢的、有邏輯的、有序的、有意識的、可用語言表達以及可推理的系統,這是未來深度學習需要著重考慮的研究方向。
  • 認知推理:從圖表示學習和圖神經網絡的最新理論看AI的未來|附報告...
    清華大學計算機系教授、系副主任,中國中文信息學會社會媒體處理專委會常務副主任,智源研究院學術副院長唐傑老師進行了主題為「圖表示學習和圖神經網絡的最新理論進展」的分享,主要介紹了圖神經網絡及其在認知推理方向的一些進展。
  • 第五章 英語同族單詞輔音字母邏輯推理記憶實例(19-20)
    知識點1:通過單詞漢語釋義邏輯推理記憶法、輔音框架對應比較記憶法、輔音字母轉換記憶法、添加或脫落輔音字母記憶法和輔音字母核心釋義記憶法,融會貫通單詞的輔音字母、輔音框架和漢語釋義,實現同根詞、同源詞、同義詞和反義詞等邏輯推理詞(籠統稱為同族詞)之間的記憶,用熟單詞記憶生單詞。
  • 神經符號系統: 讓機器善解人意
    Garcez等人在2001年提出了一種在訓練好的神經網絡中抽取邏輯知識的方法[4],可以增強神經網絡的可解釋性。Richardson等人在2006年對一階符號邏輯和概率圖模型結合的方式進行了探索,提出了馬爾科夫邏輯網絡[5],該網絡是一個一階符號邏輯的知識庫,其中每一個公式都有對應的權重。
  • 周志華組最新論文提出「溯因學習」,受瑪雅文字啟發的神經邏輯機
    實驗中,基於溯因學習框架的神經邏輯機NLM,在沒有圖像標籤的情況下,學會了分類模型,能力遠超當前最先進的神經網絡模型。作者表示,就他們所知,溯因學習是首個專門為了同時進行推理和感知而設計的框架,為探索接近人類水平學習能力的AI打開了新的方向。假設你在踢足球,球來了,你把球傳給隊友,「傳球」這一個動作,實際上涉及兩種不同的思維過程。
  • 人工神經網絡初學:是什麼以及為什麼?
    [來自IT168]  【IT168 技術】談及人工智慧,就會涉及到人工神經網絡。人工神經網絡是現代人工智慧的重要分支,它是一個為人工智慧提供動力,可以模仿動物神經網絡行為特徵,進行分布式並行信息處理的系統。