大數(shù)據(jù):大規(guī)模知識(shí)圖譜的構(gòu)建、推理及應(yīng)用
隨著大數(shù)據(jù)的應(yīng)用越來越廣泛,人工智能也終于在幾番沉浮后再次煥發(fā)出了活力。除了理論基礎(chǔ)層面的發(fā)展以外,本輪發(fā)展最為矚目的是大數(shù)據(jù)基礎(chǔ)設(shè)施、存儲(chǔ)和計(jì)算能力增長(zhǎng)所帶來的前所未有的數(shù)據(jù)紅利。
人工智能的進(jìn)展突出體現(xiàn)在以知識(shí)圖譜為代表的知識(shí)工程以及以深度學(xué)習(xí)為代表的機(jī)器學(xué)習(xí)等相關(guān)領(lǐng)域。
未來伴隨著深度學(xué)習(xí)對(duì)于大數(shù)據(jù)的紅利消耗殆盡,如果基礎(chǔ)理論方面沒有新的突破,深度學(xué)習(xí)模型效果的天花板將日益迫近。而另一方面,大量知識(shí)圖譜不斷涌現(xiàn),這些蘊(yùn)含人類大量先驗(yàn)知識(shí)的寶庫卻尚未被深度學(xué)習(xí)有效利用。
融合知識(shí)圖譜與深度學(xué)習(xí),已然成為進(jìn)一步提升深度學(xué)習(xí)效果的重要思路之一。以知識(shí)圖譜為代表的符號(hào)主義,和以深度學(xué)習(xí)為代表的聯(lián)結(jié)主義,日益脫離原先各自獨(dú)立發(fā)展的軌道,走上協(xié)同并進(jìn)的新道路。
大規(guī)模知識(shí)圖譜的構(gòu)建
知識(shí)圖譜自上世紀(jì)60年代從語義網(wǎng)絡(luò)發(fā)展起來以后,分別經(jīng)歷了1980年代的專家系統(tǒng)、1990年代的貝葉斯網(wǎng)絡(luò)、2000年代的OWL和語義WEB,以及2010年以后的谷歌的知識(shí)圖譜。谷歌目前的知識(shí)圖譜已經(jīng)包含了數(shù)億個(gè)條目,并廣泛應(yīng)用于搜索、推薦等領(lǐng)域。
知識(shí)圖譜的存儲(chǔ)和查詢語言也經(jīng)歷了歷史的洗滌,從RDF到OWL以及SPARQL查詢,都逐漸因?yàn)槭褂蒙系牟槐慵案甙旱某杀荆还I(yè)界主流所遺棄。圖數(shù)據(jù)庫逐步成為目前主要的知識(shí)圖譜存儲(chǔ)方式。
目前應(yīng)用比較廣泛的圖數(shù)據(jù)庫包括Neo4J、graphsql、sparkgraphx(包含圖計(jì)算引擎)、基于hbase的Titan、BlazeGraph等,各家的存儲(chǔ)語言和查詢語言也不盡相同。實(shí)際應(yīng)用場(chǎng)景下,OrientDB和postgresql也有很多的應(yīng)用,主要原因是其相對(duì)低廉的實(shí)現(xiàn)成本和性能優(yōu)勢(shì)。
由于大規(guī)模知識(shí)圖譜的構(gòu)建往往會(huì)有眾多的實(shí)體和關(guān)系需要從原始數(shù)據(jù)(可以是結(jié)構(gòu)化也可以是非結(jié)構(gòu)化)中被抽取出來,并以圖的方式進(jìn)行結(jié)構(gòu)化存儲(chǔ),而我們依賴的原始數(shù)據(jù)往往存在于多源異構(gòu)的環(huán)境中,所以進(jìn)行海量知識(shí)抽取和融合,就成了首要的無法回避的嚴(yán)峻問題。
對(duì)于結(jié)構(gòu)化的數(shù)據(jù)轉(zhuǎn)換為圖結(jié)構(gòu)是比較容易和相對(duì)輕松的工程,所以建議這一步應(yīng)該首先被完成。
對(duì)于復(fù)雜的非結(jié)構(gòu)化數(shù)據(jù),現(xiàn)階段進(jìn)行知識(shí)圖譜構(gòu)建的主要方法有傳統(tǒng)NLP和基于深度學(xué)習(xí)模型兩類方法,而目前越來越多傾向于使用深度學(xué)習(xí)來抽取AVP(屬性-值對(duì))。
有很多深度學(xué)習(xí)模型可以用來完成端到端的包括命名實(shí)體識(shí)別NER、關(guān)系抽取和關(guān)系補(bǔ)全等任務(wù),從而構(gòu)建和豐富知識(shí)圖譜。
命名實(shí)體識(shí)別(Named Entity Recognition, NER)是從一段非結(jié)構(gòu)化文本中找出相關(guān)實(shí)體(triplet中的主詞和賓詞),并標(biāo)注出其位置以及類型,它是NLP領(lǐng)域中一些復(fù)雜任務(wù)(如關(guān)系抽取、信息檢索等)的基礎(chǔ)。
NER一直是NLP領(lǐng)域的熱點(diǎn),從早期基于字典和規(guī)則的方法,到傳統(tǒng)機(jī)器學(xué)習(xí)的方法,再到近年來基于深度學(xué)習(xí)的方法,NER方法的大致演化如下所示。
在機(jī)器學(xué)習(xí)中,NER被定義為序列標(biāo)注問題。不同于分類問題,序列標(biāo)注問題中的預(yù)測(cè)標(biāo)簽不僅與輸入特征有關(guān),還與之前的預(yù)測(cè)標(biāo)簽有關(guān),也就是預(yù)測(cè)標(biāo)簽之間存在相互依賴和影響。
條件隨機(jī)場(chǎng)(Conditional Random Field,CRF)是序列標(biāo)注的主流模型。它的目標(biāo)函數(shù)不僅考慮輸入的狀態(tài)特征函數(shù),還包含了標(biāo)簽轉(zhuǎn)移特征函數(shù)。在訓(xùn)練的時(shí)候可以使用SGD學(xué)習(xí)參數(shù)。在預(yù)測(cè)時(shí),可以使用Vertibi算法求解使目標(biāo)函數(shù)最大化的最優(yōu)序列。
目前常見的基于深度學(xué)習(xí)的序列標(biāo)注模型有BiLSTM-CNN-CRF。它主要由Embedding層(詞向量、字向量等)、BiLSTM、tanh隱藏層以及CRF層組成(對(duì)于中文可以不需要CNN)。我們的實(shí)驗(yàn)表明BiLSTM-CRF可以獲得較好的效果。在特征方面,由于秉承了深度學(xué)習(xí)的優(yōu)點(diǎn),所以無需特征工作的鋪墊,使用詞向量及字向量就可以得到不錯(cuò)的效果。
近幾個(gè)月來,我們也在嘗試使用Attention機(jī)制,以及僅需少量標(biāo)注樣本的半監(jiān)督來進(jìn)行相應(yīng)的工作。
在BiLSTM-CRF的基礎(chǔ)上,使用Attention機(jī)制將原來的字向量和詞向量的拼接改進(jìn)為按權(quán)重求和,使用兩個(gè)隱藏層來學(xué)習(xí)Attention的權(quán)值,這樣使得模型 可以動(dòng)態(tài)地利用詞向量和字向量的信息。同時(shí)加入NE種類的特征,并在字向量上使用Attention來學(xué)習(xí)關(guān)注更有效的字符。實(shí)驗(yàn)效果優(yōu)于BiLSTM-CRF的方法。
這里之所以用了大量篇幅來說NER的深度學(xué)習(xí)模型,是因?yàn)殛P(guān)系抽取模型也是采用同樣的模型實(shí)現(xiàn)的,其本質(zhì)也是一個(gè)序列標(biāo)注問題。所以這里不再贅述。
知識(shí)圖譜構(gòu)建中的另外一個(gè)難點(diǎn)就是知識(shí)融合,即多源數(shù)據(jù)融合。融合包括了實(shí)體對(duì)齊、屬性對(duì)齊、沖突消解、規(guī)范化等。對(duì)于Open-domain這幾乎是一個(gè)舉步維艱的過程,但是對(duì)于我們特定旅游領(lǐng)域,可以通過別名舉證、領(lǐng)域知識(shí)等方法進(jìn)行對(duì)齊和消解,從技術(shù)角度來看,這里會(huì)涉及較多的邏輯,所以偏傳統(tǒng)機(jī)器學(xué)習(xí)方法,甚至利用業(yè)務(wù)邏輯即可覆蓋大部分場(chǎng)景。
知識(shí)圖譜schema是知識(shí)的分類體系的表現(xiàn),還可以用于邏輯推理,也是用于沖突檢測(cè)的方法之一,從而提高知識(shí)圖譜的質(zhì)量。
總而言之,構(gòu)建知識(shí)圖譜沒有統(tǒng)一的方法,因?yàn)槠錁?gòu)建需要一整套知識(shí)工程的方法,需要用到NLP、ML、DL技術(shù),用到圖數(shù)據(jù)庫技術(shù),用到知識(shí)表示推理技術(shù)等。知識(shí)圖譜的構(gòu)建就是一個(gè)系統(tǒng)工程,而且知識(shí)的更新也是不可避免的,所以一定要重視快速迭代和快速產(chǎn)出檢驗(yàn)。
知識(shí)圖譜的推理
在知識(shí)圖譜構(gòu)建過程中,還存在很多關(guān)系補(bǔ)全問題。雖然一個(gè)普通的知識(shí)圖譜可能存在數(shù)百萬的實(shí)體和數(shù)億的關(guān)系事實(shí),但相距補(bǔ)全還差很遠(yuǎn)。知識(shí)圖譜的補(bǔ)全是通過現(xiàn)有知識(shí)圖譜來預(yù)測(cè)實(shí)體之間的關(guān)系,是對(duì)關(guān)系抽取的重要補(bǔ)充。傳統(tǒng)方法TransE和TransH通過把關(guān)系作為從實(shí)體A到實(shí)體B的翻譯來建立實(shí)體和關(guān)系嵌入,但是這些模型僅僅簡(jiǎn)單地假設(shè)實(shí)體和關(guān)系處于相同的語義空間。而事實(shí)上,一個(gè)實(shí)體是由多種屬性組成的綜合體,不同關(guān)系關(guān)注實(shí)體的不同屬性,所以僅僅在一個(gè)空間內(nèi)對(duì)他們進(jìn)行建模是不夠的。
因此我們嘗試用TransR來分別將實(shí)體和關(guān)系投影到不同的空間中,在實(shí)體空間和關(guān)系空間構(gòu)建實(shí)體和關(guān)系嵌入。對(duì)于每個(gè)元組(h,r,t),首先將實(shí)體空間中的實(shí)體通過Mr向關(guān)系r投影得到hr和tr,然后是hr+r ≈tr。特定的關(guān)系投影能夠使得兩個(gè)實(shí)體在這個(gè)關(guān)系下真實(shí)地靠近彼此,使得不具有此關(guān)系的實(shí)體彼此遠(yuǎn)離。
知識(shí)圖譜推理中還經(jīng)常將知識(shí)圖譜表示為張量tensor形式,通過張量分解(tensor factorization)來實(shí)現(xiàn)對(duì)未知事實(shí)的判定。常用于鏈接預(yù)測(cè)(判斷兩個(gè)實(shí)體之間是否存在某種特定關(guān)系)、實(shí)體分類(判斷實(shí)體所屬語義類別)、實(shí)體解析(識(shí)別并合并指代同一實(shí)體的不同名稱)。
常見的模型有RESCAL模型和TRESCAL模型。
RESCAL模型的核心思想,是將整個(gè)知識(shí)圖譜編碼為一個(gè)三維張量,由這個(gè)張量分解出一個(gè)核心張量和一個(gè)因子矩陣,核心張量中每個(gè)二維矩陣切片代表一種關(guān)系,因子矩陣中每一行代表一個(gè)實(shí)體。由核心張量和因子矩陣還原的結(jié)果被看作對(duì)應(yīng)三元組成立的概率,如果概率大于某個(gè)閾值,則對(duì)應(yīng)三元組正確;否則不正確。
而TRESCAL則是解決在輸入張量高度稀疏時(shí)所帶來的過擬合問題。
路徑排序算法也常用來判斷兩個(gè)實(shí)體之間可能存在的關(guān)系,比如PRA算法。本文不展開描述。
大規(guī)模知識(shí)圖譜的應(yīng)用
知識(shí)圖譜的應(yīng)用場(chǎng)景非常廣泛,比如搜索、問答、推薦系統(tǒng)、反欺詐、不一致性驗(yàn)證、異常分析、客戶管理等。由于以上場(chǎng)景在應(yīng)用中出現(xiàn)越來越多的深度學(xué)習(xí)模型,因此本文主要討論知識(shí)圖譜在深度學(xué)習(xí)模型中的應(yīng)用。
目前將知識(shí)圖譜用于深度學(xué)習(xí)主要有兩種方式,一種是將知識(shí)圖譜的語義信息輸入到深度學(xué)習(xí)模型中,將離散化的知識(shí)表示為連續(xù)化的向量,從而使得知識(shí)圖譜的先驗(yàn)知識(shí)能夠稱為深度學(xué)習(xí)的輸入;另外一種是利用知識(shí)作為優(yōu)化目標(biāo)的約束,指導(dǎo)深度學(xué)習(xí)模型的學(xué)習(xí)過程,通常是將知識(shí)圖譜中的知識(shí)表示為優(yōu)化目標(biāo)的后驗(yàn)正則項(xiàng)。
知識(shí)圖譜的表示學(xué)習(xí)用于學(xué)習(xí)實(shí)體和關(guān)系的向量化表示,其關(guān)鍵是合理定義知識(shí)圖譜中關(guān)于事實(shí)(三元組h,r,t)的損失函數(shù)fr(h,t),其總和是三元組的兩個(gè)實(shí)體h和t的向量化表示。通常情況下,當(dāng)事實(shí)h,r,t成立時(shí),期望最小化fr(h,t)。
常見的有基于距離和翻譯的模型。
基于距離的模型,比如SE模型,其基本思想是當(dāng)兩個(gè)實(shí)體屬于同一個(gè)三元組時(shí),它們的向量表示在投影后的空間中也應(yīng)該彼此靠近。所以損失函數(shù)定義為向量投影后的距離。
其中矩陣Wr1和Wr2用于三元組中頭實(shí)體h和尾實(shí)體t的投影操作。
基于翻譯的模型可以參考前述的TransE, TransH和TransR模型。其通過向量空間的向量翻譯來描述實(shí)體與關(guān)系之間的相關(guān)性。
當(dāng)前的知識(shí)圖譜表示學(xué)習(xí)方法都還存在各種問題,這個(gè)領(lǐng)域的發(fā)展也非常迅速,值得期待。
知識(shí)圖譜的表示轉(zhuǎn)換后,根據(jù)不同領(lǐng)域的應(yīng)用,就可以和各種深度學(xué)習(xí)模型相結(jié)合,比如在自動(dòng)問答領(lǐng)域,可以和encoder-decoder相結(jié)合,將問題和三元組進(jìn)行匹配,即計(jì)算其向量相似度,從而為某個(gè)特定問題找到來自知識(shí)圖譜的最佳三元組匹配。也有案例在推薦系統(tǒng)中,通過網(wǎng)絡(luò)嵌入(network embedding)獲取結(jié)構(gòu)化知識(shí)的向量化表示,然后分別用SDAE(Stacked Denoising Auto-Encoder)和層疊卷積自編碼器(StackedConvolutional Auto-Encoder)來抽取文本知識(shí)特征和圖片知識(shí)特征,并將三類特征融合進(jìn)協(xié)同集成學(xué)習(xí)框架,利用三類知識(shí)特征的整合來實(shí)現(xiàn)個(gè)性化推薦。
隨著深度學(xué)習(xí)的廣泛應(yīng)用,如何有效利用大量先驗(yàn)知識(shí),來大大降低模型對(duì)大規(guī)模標(biāo)注語料的依賴,也逐漸成為主要的研究方向之一。在深度學(xué)習(xí)模型中融合常識(shí)知識(shí)和領(lǐng)域知識(shí),將是又一大機(jī)遇和挑戰(zhàn)。
來源:攜程技術(shù)中心
責(zé)任編輯:售電衡衡
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國自主研制的“人造太陽”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng)
-
新基建助推 數(shù)據(jù)中心建設(shè)將迎爆發(fā)期
2020-06-16數(shù)據(jù)中心,能源互聯(lián)網(wǎng),電力新基建 -
泛在電力物聯(lián)網(wǎng)建設(shè)下看電網(wǎng)企業(yè)數(shù)據(jù)變現(xiàn)之路
2019-11-12泛在電力物聯(lián)網(wǎng) -
泛在電力物聯(lián)網(wǎng)建設(shè)典型實(shí)踐案例
2019-10-15泛在電力物聯(lián)網(wǎng)案例
-
新基建之充電樁“火”了 想進(jìn)這個(gè)行業(yè)要“心里有底”
2020-06-16充電樁,充電基礎(chǔ)設(shè)施,電力新基建 -
燃料電池汽車駛?cè)雽こ0傩占疫€要多久?
-
備戰(zhàn)全面電動(dòng)化 多部委及央企“定調(diào)”充電樁配套節(jié)奏
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國自主研制的“人造太陽”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長(zhǎng)期助力儲(chǔ)能行業(yè)發(fā)展
-
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng) -
5G新基建助力智能電網(wǎng)發(fā)展
2020-06-125G,智能電網(wǎng),配電網(wǎng) -
從智能電網(wǎng)到智能城市
-
山西省首座電力與通信共享電力鐵塔試點(diǎn)成功
-
中國電建公司公共資源交易服務(wù)平臺(tái)摘得電力創(chuàng)新大獎(jiǎng)
-
電力系統(tǒng)對(duì)UPS的技術(shù)要求