斯坦福大学CS520知识图谱系列课程学习笔记:第三讲高级的知识图谱是什么样的
這一講的主題是:一些高級的知識圖譜是什么樣的。三位講者分別從他們各自帶領(lǐng)的團(tuán)隊構(gòu)建出來的高質(zhì)量的知識圖譜實例出發(fā),從中我們可以認(rèn)識到一些大佬們構(gòu)建的優(yōu)秀的知識圖譜產(chǎn)品有哪些特點(diǎn)和優(yōu)勢,從中對我們自己構(gòu)建知識圖譜也可以得到一定的啟發(fā)。
1 Diffbot 知識圖譜
第一位講者是來自Diffbot公司的CEO,他們公司的目標(biāo)就是建立世界上第一個全面的人類知識圖譜,并且他們認(rèn)為實現(xiàn)這一目標(biāo)唯一有效的方法就是全自動化構(gòu)建知識圖譜。
?
講者團(tuán)隊構(gòu)建的知識圖譜名為Diffbot,所有數(shù)據(jù)都來源于公網(wǎng)并采用爬蟲技術(shù)得到這些數(shù)據(jù),這個知識圖譜的規(guī)模大到包括超過100億實體和高達(dá)驚人的1萬億事實。并且,這個知識圖譜由于是自動化構(gòu)建的,支持動態(tài)更新,每月可以自動增加1.5億的實體。知識圖譜中實體類型最多的是:人、組織、地點(diǎn)、產(chǎn)品、時間、文章等等,從這些經(jīng)過排序后的實體可以發(fā)現(xiàn)在生活中人們最關(guān)心的事情是什么。構(gòu)建Diffbot需要大約2000個CPU核,可見一般人也搞不起來這么大規(guī)模的知識圖譜。
?
接下來,講者為我們介紹了如何利用機(jī)器學(xué)習(xí)技術(shù)來構(gòu)建Diffbot知識圖譜,在整個構(gòu)建pipeline中用到了50/60種機(jī)器學(xué)習(xí)算法,這里,主要講解流程中的幾個關(guān)鍵組件,包括:
Page type classification:用機(jī)器學(xué)習(xí)種的分類算法,對網(wǎng)絡(luò)爬取種的每個頁面進(jìn)行分類,比如對圖中的頁面將其分類為人、產(chǎn)品、事件等類型,精度達(dá)到97%,高于人工分類的精度。
?
Visual extraction:講者介紹他們是第一個在知識圖譜構(gòu)件中考慮了視覺信息抽取,比如在圖片中找到和商品相關(guān)的哪些視覺信息,比如從商標(biāo)中能知道品牌是什么甚至包括價格,并且也可以輔助進(jìn)行頁面分類,精度在92%-97%之間。
?
Natural language understanding:對于頁面中的文本等文字信息采用NLP技術(shù)來抽取信息,并能夠理解文本中編碼的事實是什么,因為事實才是知識圖譜的核心。講者展示了一個demo,可以自動從一個頁面中抽取出其中包含的所有屬性和對應(yīng)的事實知識,其中肯定需要命名實體識別和關(guān)系抽取等機(jī)器學(xué)習(xí)技術(shù),讓我不禁聯(lián)想到前段時間非常火熱的Magi,這兩個系統(tǒng)感覺都能自動化從文本數(shù)據(jù)中進(jìn)行知識抽取,只是講者介紹的這個Diffbot系統(tǒng)還能夠抽取視覺信息。
?
Diffbot和Wikidata和Freebase相比,不僅能夠找到實體,還能夠用不同顏色來表示實體類型,此外,還能給出抽取出的事實和主題類型之間的關(guān)聯(lián),比如一名主題類型為教授的實體,其關(guān)聯(lián)的事實包含在哪些學(xué)校任教,擔(dān)任了哪些學(xué)術(shù)會議的主席等,這些能夠?qū)Ψ诸愄峁└嘤行У淖C據(jù)。
?
Record linking:由于多個頁面可能指向的同一個實體,因此需要用自動化的方法將大規(guī)模的對象進(jìn)行鏈接,以此來實現(xiàn)數(shù)據(jù)融合。
?
在知識圖譜應(yīng)用方面,例如對網(wǎng)頁中抽取出的知識表示如果售賣的nike鞋的價格低于市場零售價,那這個很可能就是仿制品。此外,還可以實現(xiàn)語義搜索的功能,與google不同的是,這個搜索引擎更能關(guān)注和問題相關(guān)的人類知識。
?
2 模塊化本體工程
?
第二位講者來自堪薩斯州立大學(xué)數(shù)據(jù)語義實驗室的博士生(同樣是博士生,人這真是大佬啊),他為大家介紹如何開發(fā)高度可重用的知識圖譜,其中核心內(nèi)容就是如何建立模塊化的本體工程。
?
通過給出圖中這個簡單的知識圖譜的例子,從這個知識圖譜中我們可以提取出很多信息,包括“有學(xué)生”,“接受教育”,“生日”等,這是一個實例知識圖譜,這個知識圖譜很難重用到即使是相同領(lǐng)域的其它應(yīng)用中。
?
從實例知識圖譜可以擴(kuò)展為表示schema的本體圖譜,這里,每一個實體都用其類型來表示,但是在實例知識圖譜中的18,171這個數(shù)字到底表示什么是無法確定的,因此如何去糾正這種情況就是研究的重點(diǎn)。
?
我們來看看一個好的知識圖譜本體應(yīng)該具有哪些特點(diǎn):
首先,好的知識圖譜本體模型應(yīng)該是可以通過增加一個結(jié)點(diǎn),將更多的結(jié)點(diǎn)連接到這一結(jié)點(diǎn),并結(jié)合上下文信息來得到更多語義信息。
總結(jié)起來,一個好的知識圖譜本體模型應(yīng)該具有的特點(diǎn)是:
-
便于更新:當(dāng)實例發(fā)生變化或有新的實例添加進(jìn)來,本體模型都是可用的,這樣可以減少維護(hù)成本。
-
人類可讀文檔:包括可讀的術(shù)語,關(guān)系,標(biāo)簽等用來表示本體。
-
嚴(yán)格的定義:經(jīng)過嚴(yán)格定義后的本體模型能夠減少歧義性。
?
形式邏輯可以很好的表達(dá)人類概念的嚴(yán)格定義,并能精確地應(yīng)用知識圖譜。根據(jù)W3C標(biāo)準(zhǔn)的OWL格式,使用一種稱為描述邏輯的高級語言對模式進(jìn)行編碼,在描述中,邏輯被稱為公理,公理集被稱為本體。
使用模塊化的本體建模最大的優(yōu)勢是可以對動態(tài)更新的知識圖譜快速自適應(yīng)地建立本體模型,具有高度適應(yīng)性和可重用性。
一個可高度重用的知識圖譜本體模型應(yīng)該是:實際應(yīng)用驅(qū)動的、從模式中創(chuàng)造模塊,整個本體模型的基本組成部分就是模塊。
模塊化本體工程用到幾個概念:
?
模式圖:一種圖形化的表示來說明本體中類型之間的關(guān)系。其中包括幾個組件:黃色框表示主要的實體類型,藍(lán)色框表示還包括其它隱含的復(fù)雜關(guān)系的實體類型,箭頭表示屬性/關(guān)系,Agent是用來表示在不同的時間范圍內(nèi)指向不同的本體。Open arrow(圖中沒說明,講者也沒多解釋)表示子類型關(guān)系。
?
系統(tǒng)公理化:通過檢查結(jié)點(diǎn)-邊-結(jié)點(diǎn)這種三元組結(jié)構(gòu)的模式圖,我們可以給出一個可推理的公理。這里給出的17種常見的公理是在知識圖譜內(nèi)部經(jīng)常使用的,用這種模式圖可以表示這17種公理。
?
來源于軟件工程的設(shè)計模式,本體設(shè)計模式中,Agent和TemporalExtent都表示隱含的復(fù)雜性,因為它們在不同時間范圍指向不同的本體。
?
構(gòu)建本體模塊的方法分為8個步驟:
1.????定義用例或者用例的范圍,因為無法建模所有類型的對象,因此需要盡可能了解更多的細(xì)節(jié)。
2.????建立能力問題讓用戶和我們正在開發(fā)的知識圖譜有更好的交互。
3.????從數(shù)據(jù)和用例中抽取關(guān)鍵的概念。
4.????從模式模板中初始化這些關(guān)鍵的概念,然后根據(jù)需求來構(gòu)造模塊。
5.????用17個公理來增加結(jié)點(diǎn)-邊-結(jié)點(diǎn)的公理。
6.????集成模塊并增加涉及多個模塊的公理。
7.????檢查是否能夠反映所有的實體并對本體模塊進(jìn)行改進(jìn)。檢查公理是否在集成所有的模塊之后仍然是正確的。
8.????構(gòu)造OWL。
?
3 利用規(guī)則的知識圖譜推理
第三位講者是來自蒙特利爾大學(xué)的一名女教授,主要講授利用邏輯規(guī)則的推理。
?
?
對于圖中的知識圖譜,我們可以得到一組事實,其中,有的是一元謂詞有的是二元謂詞。邏輯規(guī)則可以表達(dá)復(fù)雜的本體結(jié)構(gòu),并且可以用本體描述的邏輯規(guī)則來推理出可能發(fā)生的事實或者發(fā)現(xiàn)知識圖譜存在的沖突。
?
當(dāng)有一個知識圖譜,并且事先定義了4個邏輯規(guī)則,用這幾個邏輯規(guī)則就可以推理出一些新的事實。
當(dāng)給定一個query時,不僅需要考慮已有的事實,還應(yīng)該考慮利用規(guī)則推理出的新的事實。
?
接下來,主要討論知識圖譜的問答系統(tǒng),給定一個知識圖譜和一組用于問答的邏輯規(guī)則,我們想要的答案很可能不僅出現(xiàn)在已有的知識圖譜中,也有可能是在推理出的事實中找到答案。通過規(guī)則,我們可以更精確的使用合取查詢,這種使用方法讓我們看到目前很多KBQA系統(tǒng)都只使用了知識圖譜中已有的事實,但是這對很多實際的KBQA任務(wù)是低效的,因為確實存在很多問題的答案無法直接從知識圖譜中取得,因此,針對query通過推理得到新的事實并得到答案對應(yīng)實際的KBQA系統(tǒng)是更為有效的方式。
?
講者介紹了一些最新的用于問答系統(tǒng)的規(guī)則引擎。
?
如果希望進(jìn)一步學(xué)習(xí)課程具體內(nèi)容,在此奉上本講B站視頻鏈接:
https://www.bilibili.com/video/BV12k4y1R76Q?p=3
?
往期精選:
斯坦福大學(xué)CS520知識圖譜系列課程學(xué)習(xí)筆記:第二講如何構(gòu)建知識圖譜
斯坦福大學(xué)CS520知識圖譜系列課程學(xué)習(xí)筆記:第一講什么是知識圖譜
對知識圖譜的告白:斯坦福大學(xué)CS520課程介紹
知識圖譜最新權(quán)威綜述論文解讀:知識圖譜補(bǔ)全部分
知識圖譜最新權(quán)威綜述論文解讀:知識表示學(xué)習(xí)部分
手把手教你搭建一個中式菜譜知識圖譜可視化系統(tǒng)
?
后續(xù)我們還會更新CS520接下來的課程的學(xué)習(xí)筆記。
如果對文章感興趣歡迎關(guān)注知乎專欄“人工智能遇上知識圖譜“,也歡迎關(guān)注同名微信公眾號“人工智能遇上知識圖譜”,讓我們一起學(xué)習(xí)并交流討論人工智能與知識圖譜技術(shù)。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?
總結(jié)
以上是生活随笔為你收集整理的斯坦福大学CS520知识图谱系列课程学习笔记:第三讲高级的知识图谱是什么样的的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国科大prml13-概率图(CRF,HM
- 下一篇: 内排序算法一览