目前以理解人類語言為入口的認知智能成為了人工智能發(fā)展的突破點,而知識圖譜則是邁向認知智能的關(guān)鍵要素。達觀數(shù)據(jù)在2018AIIA人工智能開發(fā)者大會承辦的語言認知智能與知識圖譜公開課上,三位來自企業(yè)和學術(shù)領(lǐng)域的專家分別從不同角度講述的知識圖譜的應(yīng)用和發(fā)展。文本根據(jù)達觀數(shù)據(jù)副總裁王文廣演講內(nèi)容《知識圖譜與文本智能處理》整理所得,內(nèi)容略有刪減。

人們一些模糊詞義的表達,比如:以前沒有錢買華為,現(xiàn)在沒有錢買華為?!边@兩句“沒有錢”的意思很不一樣,我們?nèi)死斫膺@樣的句子很容易,但對于計算機來說理解便很困難。
同一句話在不同場景下含義也很不一樣,比如說從青島開高速出來在車上談“G20”是指高速有沒有堵車,如果是北京或者是杭州談G20有可能是高鐵的票,在一些環(huán)境下G20也可能是20國集團峰會,這些表達的意思非常需要語境和背景知識的理解。計算機做文字閱讀理解面臨的挑戰(zhàn)主要包括三個方面:
(1)缺乏常識體系
因為沒有豐富的知識體系難以對文字背后的含義進行深入理解和推導(dǎo)
(2)缺乏領(lǐng)域的專家經(jīng)驗
人類的業(yè)務(wù)、法務(wù)、財務(wù)專家因為有行業(yè)知識,所以閱讀文字后與知識對比后可以形成專業(yè)的見解
(3)模糊、歧義、抽象會增加困難
語言中模糊不清的現(xiàn)象比比皆是,需結(jié)合語境去理解
知識圖譜是其中一個為解決問題提出來的方法——我們可以把人類的各種知識以知識圖譜的形式沉淀下來,讓計算機利用這個知識圖譜理解更加復(fù)雜的含義。
知識圖譜基本概念
知識圖譜本身是從語義網(wǎng)發(fā)展出來的,也是谷歌提出來的概念,知識圖譜的構(gòu)建也是現(xiàn)在AI領(lǐng)域里面的非常大的難點,這是因為不僅涉及到AI領(lǐng)域各方面的技術(shù),還包括人類各種領(lǐng)域的知識所形成的專家系統(tǒng)。
構(gòu)建高質(zhì)量的不斷演化知識圖譜也是AI領(lǐng)域的難點之一,因為知識圖譜本身研究的意義就是可以為語言提供更多的背景知識,讓計算機更好的讀寫文字?;粳F(xiàn)狀像谷歌、百度、搜狗都有大量的通用知識圖譜,還有垂直領(lǐng)域的醫(yī)療或者是金融領(lǐng)域的知識圖譜的廣泛應(yīng)用也很多,如何結(jié)合業(yè)務(wù)場景使用好知識圖譜是落地的根本要素。

知識圖譜本質(zhì)上是一種語義網(wǎng)絡(luò),將客觀的經(jīng)驗沉淀在巨大的網(wǎng)絡(luò)中,結(jié)點代表實體(entity)或者概念(concept),邊(edge)代表實體/概念之間的語義關(guān)系,成熟的圖數(shù)據(jù)庫如neo4j,Dgraph,JanusGraph等可以用來存儲知識圖譜。
知識圖譜更加廣泛的被認知的是一個三元組的表示形式。就是有三個值,第一個表示第一個實體,第二個值表示第二個實體,中間值是兩者之間的關(guān)系。三元組本身基于三元組的語義網(wǎng)發(fā)展起來,有RDF的檢索語言,還有基于RDF的存儲的開源的方式,都是很方便使用方式。
深度學習的發(fā)展促使知識的表示從三元組邁向稠密向量表示,從Word2Vec到對三元組的表示學習,稠密向量,實體等本身可以用Word2Vec等進行表示學習,例如 Vector(山東省) - Vector(威海市) = Vector(廣東省) - Vector(佛山市) ,對于三元組的表示學習,有各類深度學習算法,如TransE、TransH、TransR、TransG、KBGAN、等。
知識圖譜上的應(yīng)用非常多,比如推薦系統(tǒng)可以用上知識圖譜來實現(xiàn)更加智能的推薦,除此之外,知識問答、文檔審核等也是知識圖譜常見的應(yīng)用場景。
通用型知識圖譜和行業(yè)型知識圖譜
一般來講會把知識圖譜分成通用和行業(yè)的知識圖譜,通用型的就是剛剛提過像谷歌,構(gòu)建知識圖譜就是一個面向全領(lǐng)域,沒有一些特別的偏好,國內(nèi)有百度或者是搜狗的知識圖譜,還有一些是開放式的像wikidata 以及中文openKG等。
行業(yè)垂直型知識圖譜是面向某一特定領(lǐng)域,如金融、法律、財會、教育等,以專家知識為主,通過結(jié)合業(yè)務(wù)場景,基于行業(yè)數(shù)據(jù)構(gòu)建,打造“語義層面的行業(yè)知識庫”,通常也更加專業(yè)。
比如向百度或者是搜狗搜一些人名地名會以卡片的形式展現(xiàn)出來,這個是知識圖譜的現(xiàn)實的應(yīng)用。金融領(lǐng)域會用知識圖譜分析借貸關(guān)系或者是企業(yè)的信貸狀況等,這是非常強的應(yīng)用場景。

目前達觀達觀構(gòu)建一些企業(yè)信息法律類的知識圖譜用來幫助我們的文檔智能審閱系統(tǒng)更好的審核合同或者是專業(yè)文本,像財報或者是上交所的公告等。
如何構(gòu)建知識圖譜?
知識圖譜有這么多好處,我們怎么去構(gòu)建一個知識圖譜?簡單來說,構(gòu)建知識圖譜其實是一個系統(tǒng)性的工程,不是單一的算法能夠完成。

如果要構(gòu)造一個完整的知識圖譜則是非常復(fù)雜的系統(tǒng)工程,會涉及到schema(本體)的構(gòu)造,然后會有一些知識抽取或者是關(guān)系抽取的概念語言。其次,需要對知識推理(關(guān)系推理)的結(jié)果進行質(zhì)量評估。此外,需要對知識抽取的監(jiān)督算法進行樣本標注,或者對自動標注的樣本進行效果確認。
另外對于知識圖譜來說非常重要的一點是反饋機制,我們怎么樣利用反饋系統(tǒng)不斷地讓知識圖譜進行進化?這個在構(gòu)建知識圖譜的過程當中非常需要考慮的問題。此外,工程上詳細的logging和報表系統(tǒng)以在需要的時候進行分析和糾正。
分層次的領(lǐng)域模式(Schema)非常重要

schema的構(gòu)造是層級的方式,專業(yè)領(lǐng)域是先按照專家經(jīng)驗構(gòu)造出一個知識圖譜的schema,然后在實踐過程當中不斷完善,像通用的谷歌或者是百度他們自上而下利用類算法抽取知識圖譜,然后歸類到已經(jīng)有的schema,如果歸類不到就想方設(shè)法生成新的schema的模式匹配它。
在這里面知識圖譜構(gòu)建過程當中,除了schema之外就是往圖譜里填內(nèi)容,這個過程就是知識抽取,本身是包括了實體抽取和關(guān)系抽取,還有屬性抽取這幾個概念,在實踐過程當中,其實不完全是像在論文里面看到的各種抽取,有可能是從結(jié)構(gòu)化數(shù)據(jù)庫里面按照某一種專業(yè)的規(guī)則直接轉(zhuǎn)化,因為很多的知識其實已經(jīng)存儲在各個企業(yè)里面關(guān)系數(shù)據(jù)庫里面。這種情況下可能是用了簡單的規(guī)則就轉(zhuǎn)化成知識圖譜的一部分的內(nèi)容。
另外一部分是半結(jié)構(gòu)數(shù)據(jù),維基百科很多的標簽是已經(jīng)存在在里面的,還有國家企業(yè)信息公示網(wǎng)的各種實體公司名或者是企業(yè)法人都是以半結(jié)構(gòu)化存在,這個用模板匹配就可以完成了。
這里面簡單的就總結(jié)了剛剛提到的點,在不同的背景下可能選擇不同的知識抽取的算法可以更好的去幫助我們構(gòu)建一個完整的知識圖譜。

這是一個像BiLSTM-CRF用于命名實體識別常用的辦法,幫助我們識別非結(jié)構(gòu)化文本,比如說書籍或者是合同或者是新聞里面的實體。

Bi-LSTM雙向網(wǎng)絡(luò)分別從前往后和從后往前進行序列信號的記憶和傳遞是常見做法,CRF等經(jīng)典方法結(jié)果可控性好,在序列標注時,在頂層用CRF對Bi-LSTM的結(jié)果進行二次操作可得到更好的結(jié)果。
除了剛剛提到的知識抽取之外,其實抽取完之后在不同的地方表現(xiàn)方法和表達方式不一樣,在不同來源的知識里面如何融合成一個相同的?這個是我們需要考慮的點,這里有幾個例子:比如說蘇東坡在不同的地方會被提到,而且有不同的名字,可能是歷書里面有東坡學士這樣的說法,還有蘇軾的叫法。
另外這些不僅僅存在中國,因為多元跨國之間的交流也導(dǎo)致很大的問題,比如說后面的例子是美國總統(tǒng)特朗普,中文的官方名稱是特朗普,大家還有稱他為川普,還有其他的語言西班牙或者是土耳其語。在多元的環(huán)境下如何進行知識圖譜?其實對知識圖譜構(gòu)建是非常大的挑戰(zhàn)。

這是一個網(wǎng)絡(luò)上的例子,來自于幾個不同的影視劇或者是小說,里面的部分人是同一個人,但是不同的小說可能有不同的名字或是不同影視劇里面的主角,這樣如果做成一個知識圖譜如何歸結(jié)好?利用各種影視劇小說里面的內(nèi)容進行推理,其實是多元知識融合里面非常通俗易懂的例子。這個是人工整理,人有專業(yè)的知識非常好做,但是耗費了大量的人力,不能把各種知識都做很好的融合,所以我們需要發(fā)掘更多算法去實現(xiàn)這個目標。
除了剛剛提到的抽取和融合之外,對于知識圖譜的存儲其實也是非常大的挑戰(zhàn)。大一點的通用的知識圖譜都是幾十億甚至上百億的節(jié)點,可能百億千億級別的關(guān)系,如何做好存儲系統(tǒng)是極其需要考慮的點,下圖總結(jié)目前常見的幾種存儲類型,像RDF和ApacheJena以三元組的形式表現(xiàn)的,NoSQL也可以存儲,但是如果量大會很吃力,開源的Neo4j是單機的,DGraph正在發(fā)展,按照官方的說法支持千億級別的,但是現(xiàn)在還沒有達到,但億級別是完全沒有問題的。

下圖一個JanusGraph,有如下幾個特點:

十億以上的節(jié)點和邊
C* 或 Hbase等
與Spark無縫集成
支持使用ElasticSearch進行高效檢索
最終一致性
支持Gremlin語言進行在線分析
開源
除了以上這些點,如果構(gòu)建好了知識圖譜,要對知識進行推理和評估,知識推理本身可以補充知識圖譜的內(nèi)容,或者是進行完善或者是較驗。對于知識圖譜大部分還是需要人工的參與。
Path Ranking Algorithm(PRA)算法和DeepPath: A Reinforcement Learning Method for Knowledge Graph Reasoning,這兩個是知識推理的前沿進展,有興趣可以去看一下。
總之,從合適的業(yè)務(wù)場景出發(fā)是成功構(gòu)建和使用行業(yè)知識圖譜的關(guān)鍵。

知識圖譜行業(yè)應(yīng)用
知識圖譜的作用是銜接企業(yè)的數(shù)據(jù)和業(yè)務(wù)需求。

對于企業(yè)來說,是把原有的分散的數(shù)據(jù)變成集中化的管理。可能是遇到比較大的集團企業(yè)他的傳統(tǒng)的數(shù)據(jù)是分散的,不同的部門和公司之間,這部分的知識是沒有被更好的利用起來。如何利用好這些數(shù)據(jù)?更好的支持業(yè)務(wù),讓整個業(yè)務(wù)更高效的運行?其實是整個企業(yè)在做知識圖譜需要考慮的一個點。
對于我們來說他的難點就是在于因為本身的數(shù)據(jù)非常的分散,不同的數(shù)據(jù)結(jié)構(gòu)表示不一樣,存在不同的地方有不同的表達方式,如何做好這部分融合的工作其實是很大的難點。
知識圖譜的應(yīng)用場景可以是簡單的利用,即直接用知識圖譜的分析,下圖比是早的阿里巴巴的分析圖,當時發(fā)生了一個事件馬云把支付寶私有化,當時他們畫了一個阿里巴巴的股權(quán)結(jié)構(gòu)圖,像這種股權(quán)分析在金融領(lǐng)域里面是非常直接的知識圖譜的應(yīng)用。

除此之外,信貸分析也是經(jīng)典的應(yīng)用場景,直接用知識圖譜或者是知識推理進行分析,生成相應(yīng)的報告或者得出一些結(jié)論,這個是最直接的應(yīng)用場景。
第二是利用知識圖譜做一些輿情分析熱點分析,把知識圖譜和其他的結(jié)合起來使用。

達觀擅長的VOC用戶評論分析,會涉及到用戶評論歸類到哪一個實體里面,比如說一個企業(yè)會抓他的所有的評論和微博數(shù)據(jù),會歸納到具體的品牌和產(chǎn)品上,甚至是歸到產(chǎn)品的某些類別中。比如說手機,有不同的品牌,每個品牌下面有不同的型號,每個型號下有不同的版本,手機本身有不同的零件——屏幕或者是相機之類。每個評論過來之后其實針對的是某一個具體手機的型號,在這個型號里面有可能是針對整機進行評價,有可能是針對整機里面的部件。那么我們需要做的更好的分析就是可以利用像手機這種類似的知識圖譜對它進行更深入的分析。
招聘也是達觀目前在做的,有企業(yè)在用,可以對候選人和職位構(gòu)建出圖譜進行分析,更好的理解這個職位需要招什么人?也可以更好的了解候選人適合哪一個職位。
此外,基于知識圖譜實現(xiàn)更加智能的搜索。基于知識圖譜的檢索最早用在搜索引擎上面,搜索利用這些之后可以更好的理解用戶的意圖,達到更好的效果。
推薦系統(tǒng)也可以用知識圖譜,這個是達觀在做的,達觀的推薦系統(tǒng)在業(yè)界比較領(lǐng)先,知識圖譜可以針對不同的場景或者是不同的類型還有不同的領(lǐng)域推薦。推薦中最重要的一點是冷啟動問題,如果完全沒有數(shù)據(jù)的系統(tǒng)或者是剛構(gòu)建的系統(tǒng),想達到好的推薦效果比較難,利用知識圖譜里面的內(nèi)容能更好的在冷啟動的環(huán)境下達到更好的效果。如何利用深度學習把知識圖譜用在推薦系統(tǒng)上,也是達觀數(shù)據(jù)在研究的內(nèi)容。
構(gòu)建知識圖譜之上的問答系統(tǒng)是最直接的,知識問答是你需要了解用戶問的問題是什么意思?然后給他一個最直接的答案。知識問答除了像各種搜索引擎,這個里面的例子有幾個,一個是問范冰冰的男友是誰,百度就直接給出一個卡片。

前面就是一些通用場景下的應(yīng)用場景,下面講講達觀數(shù)據(jù)對知識圖譜的的一些應(yīng)用。

這個場景是合同審閱,自動化的幫企業(yè)審閱各種合同文本和公告,合同需要符合合同法規(guī)定的,以及企業(yè)內(nèi)部的法務(wù)部門對合同有一些要求,以及本身合同是一個非常規(guī)范的文本,不允許有錯別字等。
達觀文檔智能審閱系統(tǒng)能利用知識圖譜里面包括對法律文本的語義化的圖譜應(yīng)用,自動完成審閱。以及對企業(yè)信息可以從工商信息網(wǎng)的信息里面可以做一些較驗。

推薦系統(tǒng)剛剛提到過,推薦系統(tǒng)里面應(yīng)用到知識圖譜,這個是簡單的例子,比如說達觀數(shù)據(jù)和人工智能公司,是屬于人工智能的一個領(lǐng)域,如果一個用戶對人工智能感興趣,對達觀相關(guān)的信息就感興趣,比如說達觀的融資信息,這個對人工智能來說是一個比較有用的新聞,可以判斷這個領(lǐng)域是不是繁榮?估值是不是上漲了還是下降了?

上圖是達觀用深度學習的方式把知識圖譜的三元組表示應(yīng)用到協(xié)同過濾和推薦相關(guān)的領(lǐng)域。
總結(jié)
前面簡單的介紹了整個知識圖譜的相關(guān)的內(nèi)容,最后做一些總結(jié)。
1.構(gòu)建知識圖譜本身是非常系統(tǒng)性的工程,包括計算機的方方面面還有實踐過程,以及企業(yè)真實應(yīng)用場景中包括對企業(yè)的不斷的溝通,不同部門之間整合的過程
2.整個知識圖譜的構(gòu)建沒有"銀彈",沒有一個統(tǒng)一或者是完美的方法搞定一個事情,在做事情的過程當中需要因時因地制宜的實現(xiàn)
3.知識圖譜的構(gòu)建能有效提升文本智能處理的效果
4.知識圖譜可能是走向認知智能的關(guān)鍵要素
5.知識圖譜需要結(jié)合應(yīng)用場景做分析落地,落地之后還要不斷的優(yōu)化總結(jié)來提升整個效果
關(guān)于嘉賓
王文廣,達觀數(shù)據(jù)副總裁,在人工智能領(lǐng)域和系統(tǒng)架構(gòu)設(shè)計上有十余年工作經(jīng)驗,浙江大學計算機碩士。曾擔任金融AI公司Kavout首席架構(gòu)師,將人工智能(AI)和自然語言處理(NLP)技術(shù)應(yīng)用于金融、證券、量化交易等領(lǐng)域,效果得到美國大型基金公司認可。
曾負責盛大創(chuàng)新院搜索、推薦、廣告等多個項目的架構(gòu)設(shè)計工作,所設(shè)計和開發(fā)的系統(tǒng)具備海量數(shù)據(jù)的快速處理和高度智能的挖掘能力,多次獲得嘉獎。早期在百度負責MP3搜索、語音識別與搜索和音頻指紋等系統(tǒng)的核心研發(fā)。