【知识图谱】知识推理,知识图谱里最“人工智能”的一段
互聯網時代,人類在與自然和社會的交互中生產了異常龐大的數據,這些數據中包含了大量描述自然界和人類社會客觀規律有用信息。如何將這些信息有效組織起來,進行結構化的存儲,就是知識圖譜的內容。
知識圖譜的難點在于知識圖譜的搭建,如何高效、高質量、快速的搭建知識圖譜是知識圖譜工程的核心。搭建了一份知識圖譜之后,如何更好的利用和優化它呢?今天我們介紹知識圖譜中的知識推理來回答這個問題。
作者&編輯 | 小Dream哥
1? 知識推理
剛剛開始接觸深度學習的時候,心里一直藏著一個疑惑,即現在的神經網絡和反向傳播算法為什么會被稱為“人工智能”,怎么看,也不過是一種模仿神經學的更為復雜數學模型而已。現實中一些對人類來說十分簡單的問題,深度學習模型常常需要利用海量的數據進行學習才能有好的表現。這與人類的學習模式差異非常之大,人類常常自己總結、歸納、推理和舉一反三,從少量的樣本和訓練中,真正習得一些技能。例如,沒有人要先開個幾萬公里的車才能拿到駕照。
直到接觸到了知識圖譜以及今天要介紹的知識推理,才感覺到一些所謂真正“人工智能”的味道。閑話敘畢,現在看看所謂的知識推理,究竟是怎么一回事,有哪些實現方法,進展到了什么樣的程度。
通俗的理解,所謂推理,就是從現有的知識出發,運用邏輯思維能力,得出一些隱性的結論。具體到知識圖譜中,所謂的知識推理,就是利用圖譜中現有的知識(三元組),得到一些新的實體間的關系或者實體的屬性(三元組)。如下圖所示:假如原來的知識圖譜中有這樣兩個三元組,<周杰倫,老婆,昆凌>和<周杰倫,媽媽,葉惠美>,通過知識推理,可以得到<昆凌,婆婆,葉惠美>。
設想一下,假如機器推理做的完備,一方面,它能夠幫我們填充知識圖譜中大量的空缺,使得知識更為完備;另一方面,對于知識問答、推薦系統等任務也有非常大的加成,能夠在一定程度上讓我們的機器變成一個“小機靈鬼”。
推理是一個復雜的問題,他是邏輯學、哲學、心理學等學科的重要概念,這里不深入推理的這個概念,僅關注在知識圖譜中的知識推理在工程上的研究和實現。
2 基于規則的邏輯推理
那么,如何從現有的知識中,推理出來新的知識和結論呢?反應快的同學很快就能想到,可以預先定義好準確的推理規則,然后基于這些規則,基于推普中的知識推導出新的結論和知識。例如,預先定義好這樣的規則:
<實體1:老婆:實體2;實體1:媽媽:實體3 ?推出??實體2:婆婆:實體3 >
進一步細想,有同學可能會覺得這樣的方式效率太低。因此,基于邏輯推理致力于如何自動推理獲取上述的規則,比較有名的包括基于可滿足性的GSAT和WALKSAT,用于求解邏輯推理的規則,感興趣的同學可以自行了解。
通常來說,在工程領域會將知識推理系統從知識體系中單獨分離出來,這樣就可以讓知識專家專注于知識建設,推理規則由推理系統的設計者專門建立。目前比較有名的推理系統有ELK,DLV,Pellet等,感興趣的同學可以自行了解。
基于規則的邏輯推理的優點在于準確性高,推理速度快;缺點在于能夠處理知識有限,特別是在大規模的網絡知識圖譜,有一定概率的不準確的知識和事實,這些知識基于確定的邏輯推理無法處理,需要加入統計或者概率的方式將規則軟化。
3 基于概率模型的推理
前面提到,一方面,現有的NLP技術還很難準確的將自然語言表達成確定性的推理需求;另一方面,現實世界本身的不確定性,決定了很多問題無法使用確定性的推理技術進行回答。
基于概率模型的推理并不是嚴格的按照規則進行推理,而是根據以往的經驗和分析,結合專家先驗知識構建概率模型,并利用統計計數、最大化后驗概率等統計學的手段對推理假設進行驗證或者推測。
總的來說,基于概率的模型推理,就是專家基于現有的先驗知識,建立相關的規則概率模型對確定的規則進行所謂軟化。對于解決推理問題的邏輯與前面介紹的基于確定邏輯推理的方法并沒有本質的區別。
4 基于數值計算的推理
所謂基于數值計算的知識推理,就是將離散的元素(實體,屬性和關系)用低維的向量來表示,通過各種有監督或者無監督的方式,建模和學習不同元素的表示,從而可以捕捉到元素之間的隱性關聯。這個過程可以和詞向量的學習過程類比。
基于數值計算的推理是一個比較新的課題,是目前學術界研究的熱點,每年都會有大量新的模型和方法被提出,感興趣的讀者可以搜索“Knowledge Embedding”等詞進一步了解。
總結
知識圖譜是人工智能技術最重要的基礎設施,是計算機能夠實現推理、預測等類似人類思考能力的關鍵。
知識推理是知識圖譜中另一個難點,目前的研究熱點在于基于數值計算的知識推理,過程應用比較多的還是基于確定邏輯的推理構建的推理系統。
我會在知識星球中討論NEO4J的具體操作以及KBQA的具體實現,感興趣的同學可以掃描下面的二維碼加入。
讀者們可以留言,或者加入我們的NLP群進行討論。感興趣的同學可以微信搜索jen104,備注"加入有三AI NLP群"。
下期預告:2019年年終總結
知識星球推薦
掃描上面的二維碼,就可以加入我們的星球,助你成長為一名合格的自然語言處理算法工程師。
知識星球主要有以下內容:
(1) 聊天機器人。考慮到聊天機器人是一個非常復雜的NLP應用場景,幾乎涵蓋了所有的NLP任務及應用。所以小Dream哥計劃以聊天機器人作為切入點,通過介紹聊天機器人的原理和實踐,逐步系統的更新到大部分NLP的知識,會包括語義匹配,文本分類,意圖識別,語義匹配命名實體識別、對話管理以及分詞等。
(2) 知識圖譜。知識圖譜對于NLP各項任務效果好壞的重要性,就好比基礎知識對于一個學生成績好壞的重要性。他是NLP最重要的基礎設施,目前各大公司都在著力打造知識圖譜,作為一個NLP工程師,必須要熟悉和了解他。
(3) NLP預訓練模型。基于海量數據,進行超大規模網絡的無監督預訓練。具體的任務再通過少量的樣本進行Fine-Tune。這樣模式是目前NLP領域最火熱的模式,很有可能引領NLP進入一個全新發展高度。你怎么不深入的了解?
轉載文章請后臺聯系
侵權必究
往期精選
【完結】 12篇文章帶你完全進入NLP領域,掌握核心技術
【NLP-詞向量】詞向量的由來及本質
【NLP-詞向量】從模型結構到損失函數詳解word2vec
【NLP-NER】什么是命名實體識別?
【NLP-NER】命名實體識別中最常用的兩種深度學習模型
【NLP-NER】如何使用BERT來做命名實體識別
【NLP-ChatBot】我們熟悉的聊天機器人都有哪幾類?
【NLP-ChatBot】搜索引擎的最終形態之問答系統(FAQ)詳述
【NLP-ChatBot】能干活的聊天機器人-對話系統概述
【知識圖譜】人工智能技術最重要基礎設施之一,知識圖譜你該學習的東西
【知識圖譜】知識表示:知識圖譜如何表示結構化的知識?
【知識圖譜】如何構建知識體系:知識圖譜搭建的第一步
【知識圖譜】獲取到知識后,如何進行存儲和便捷的檢索?
【NLP實戰】tensorflow詞向量訓練實戰
【NLP實戰系列】樸素貝葉斯文本分類實戰
【NLP實戰系列】Tensorflow命名實體識別實戰
【NLP實戰】如何基于Tensorflow搭建一個聊天機器人
【NLP實戰】基于ALBERT的文本相似度計算
【每周NLP論文推薦】從預訓練模型掌握NLP的基本發展脈絡
【每周NLP論文推薦】 NLP中命名實體識別從機器學習到深度學習的代表性研究
【每周NLP論文推薦】 介紹語義匹配中的經典文章
【每周NLP論文推薦】 對話管理中的標志性論文介紹
【每周NLP論文推薦】 開發聊天機器人必讀的重要論文
【每周NLP論文推薦】 掌握實體關系抽取必讀的文章
【每周NLP論文推薦】 生成式聊天機器人論文介紹
【每周NLP論文推薦】 知識圖譜重要論文介紹
總結
以上是生活随笔為你收集整理的【知识图谱】知识推理,知识图谱里最“人工智能”的一段的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【杂谈】当前模型量化有哪些可用的开源工具
- 下一篇: 【年终总结】2019年有三AI NLP做