知識(shí)圖譜是一個(gè)無(wú)向圖結(jié)構(gòu)的知識(shí)庫(kù),知識(shí)圖譜包括
推薦文章
為什么知識(shí)圖譜可以應(yīng)用于問(wèn)答系統(tǒng)
知識(shí)圖譜與問(wèn)答系統(tǒng)
摘要: 領(lǐng)域知識(shí)圖譜,是下一代搜索引擎、問(wèn)答系統(tǒng)等智能應(yīng)用的基礎(chǔ)設(shè)施,目前出現(xiàn)的產(chǎn)品有:百度“知心”、搜狗“知立方”等。本篇將介紹知識(shí)圖譜基礎(chǔ)知識(shí),及其在自然語(yǔ)言處理方面(主要是問(wèn)答系統(tǒng))的應(yīng)用。
1. 前言
知識(shí)圖譜(knowledge graph),是下一代搜索引擎、問(wèn)答系統(tǒng)等智能應(yīng)用的基礎(chǔ)設(shè)施,目前出現(xiàn)的產(chǎn)品有:百度“知心”、搜狗“知立方”等。本篇將介紹知識(shí)圖譜基礎(chǔ)知識(shí),及其在自然語(yǔ)言處理方面(主要是問(wèn)答系統(tǒng))的應(yīng)用。
2. 知識(shí)圖譜概念
知識(shí)圖譜,是一種基于有向圖(directed graph)的數(shù)據(jù)結(jié)構(gòu),由節(jié)點(diǎn)(points)及有向邊(directed edges)組成,圖中的每個(gè)節(jié)點(diǎn)稱為實(shí)體(Entity),邊代表實(shí)體間的邏輯關(guān)系(Relation)。
舉一個(gè)例子,這是一個(gè)簡(jiǎn)單地描述旅游景點(diǎn)的知識(shí)圖譜:
現(xiàn)在來(lái)解釋為什么“知識(shí)圖譜是下一代搜索引擎、問(wèn)答系統(tǒng)等智能應(yīng)用的基礎(chǔ)設(shè)施”,如果把智能系統(tǒng)看成一個(gè)大腦,那么知識(shí)圖譜就是大腦中的一個(gè)知識(shí)庫(kù),它使得機(jī)器能夠從“關(guān)系”的角度去分析、思考問(wèn)題。以上圖為例,從知識(shí)圖譜中可以獲取“泰山的海拔高度為1545米”、“衡山和恒山發(fā)音相同”等簡(jiǎn)單知識(shí)。
3. 知識(shí)圖譜的表示
知識(shí)圖譜可以使用三元組(entity-1,relation,entity-2)來(lái)表示,每一條記錄描述一個(gè)事實(shí),例如:(五岳,五岳之一,泰山)表示“泰山是五岳之一”這樣一個(gè)事實(shí)。需要注意的是,如果relation?是確定的,那么entity-1與entity-2?的位置不能夠顛倒的,因?yàn)橐粋€(gè)三元組描述一條有向邊(事實(shí));實(shí)體不一定得是現(xiàn)實(shí)生活中的一個(gè)具體事物,也可以是事物的一個(gè)屬性值,此時(shí)關(guān)系就是該屬性。
我們用三元組來(lái)存儲(chǔ)知識(shí)圖譜,這時(shí)還需要考慮一個(gè)問(wèn)題,那就是實(shí)體識(shí)別(Entity Recognition)與實(shí)體消歧(Entity Disambiguation)。例如,實(shí)體“蘋果”有可能是指水果蘋果,也可能是指iphone。這時(shí),我們對(duì)知識(shí)圖譜需要做一些處理,修改一下搜索策略。
在建立知識(shí)圖譜過(guò)程中,若發(fā)現(xiàn)歧義,則再增添對(duì)應(yīng)上級(jí)節(jié)點(diǎn),在篩選“蘋果”一詞時(shí)使用上級(jí)節(jié)點(diǎn)來(lái)消歧。這里再次強(qiáng)調(diào)知識(shí)圖譜僅是基礎(chǔ)設(shè)施?。后面會(huì)通過(guò)幾個(gè)例子說(shuō)明知識(shí)圖譜的應(yīng)用價(jià)值;再介紹知識(shí)推理(Knowledge Reasoning)技術(shù),即怎樣通過(guò)與用戶互動(dòng)教會(huì)智能系統(tǒng)完善知識(shí)圖譜。
4. 知識(shí)圖譜的應(yīng)用
傳統(tǒng)搜索引擎只是簡(jiǎn)單地根據(jù)用戶輸入的關(guān)鍵詞去篩選目標(biāo)網(wǎng)頁(yè),然后給出一堆網(wǎng)頁(yè)鏈接。知識(shí)圖譜的應(yīng)用,除了給出相應(yīng)的網(wǎng)頁(yè)鏈接外,還會(huì)嘗試提供一些更加智能化的答案。例如,用戶在必應(yīng)搜索輸入“taj mahal”將得到如下結(jié)果:
這里提供泰姬陵的近義詞、旅游信息、地理位置、古代世界七大奇跡等,從而更好地發(fā)掘用戶意圖, 而不像傳統(tǒng)搜索引擎那樣死板,需要用戶自己一條一條去篩選信息, 這樣知識(shí)圖譜技術(shù)就具有很大的商業(yè)價(jià)值了。
又例如,我直接在百度搜索輸入“乒乓球”, 得到以下結(jié)果(其實(shí)我只是想搜索一下“張繼科”,但是一時(shí)間忘了他的名字):
同時(shí),知識(shí)圖譜的應(yīng)用能夠使得搜索引擎獲得一定的推理能力。舉一個(gè)例子,在百度搜索輸入“梁?jiǎn)⒊膬鹤拥钠拮印?,傳統(tǒng)搜索引擎只是簡(jiǎn)單地匹配網(wǎng)頁(yè),很難真正地理解用戶意圖,更別說(shuō)回答這個(gè)問(wèn)題了。然而知識(shí)圖譜卻可以令問(wèn)題變得簡(jiǎn)單起來(lái),我們先從知識(shí)庫(kù)中獲取梁?jiǎn)⒊膬鹤邮橇核汲?,然后再獲取梁思成的妻子是林微因。
這樣就能增強(qiáng)搜索引擎與用戶間的互動(dòng),逐步變成一個(gè)智能問(wèn)答系統(tǒng)。
5. 知識(shí)推理技術(shù)
這里再次強(qiáng)調(diào)知識(shí)圖譜僅是基礎(chǔ)設(shè)施,因?yàn)樗娴暮芎?jiǎn)單,也沒(méi)有什么高大上的技術(shù),我們僅僅只是想將知識(shí)用這樣一個(gè)形式存起來(lái),以便由簡(jiǎn)單的知識(shí)學(xué)習(xí)出更高深的知識(shí)。舉一個(gè)例子,知識(shí)圖譜中僅存有如下信息:
那么智能問(wèn)答系統(tǒng)是無(wú)法回答類如“康熙與乾隆之間是什么關(guān)系?”知識(shí)推理類的問(wèn)題的,這時(shí)可以用過(guò)簡(jiǎn)單地加入人工規(guī)則:“父親+父親→祖父”來(lái)更新知識(shí)圖譜,或者直接從用戶互動(dòng)中學(xué)習(xí)規(guī)則,當(dāng)然用戶互動(dòng)時(shí)就需要上統(tǒng)計(jì)知識(shí)了,不能說(shuō)有網(wǎng)友回答“國(guó)籍相同關(guān)系”那么所有的祖父與孫子都是“國(guó)籍相同關(guān)系”。
接下來(lái)我們來(lái)看一個(gè)更復(fù)雜的例子,在百度搜索引擎中輸入“孕婦可以吃荔枝嗎?”得到如下結(jié)果:
這時(shí)智能問(wèn)答系統(tǒng)可以返回“59%的網(wǎng)友認(rèn)為能吃,28%的網(wǎng)友認(rèn)為不能吃,13%的網(wǎng)友認(rèn)為不能吃”。若用戶繼續(xù)問(wèn)“不能吃的理由是什么?”,那就返回“不能吃”的網(wǎng)友回答。下面通過(guò)這個(gè)例子來(lái)思考統(tǒng)計(jì)機(jī)器學(xué)習(xí)技術(shù)在知識(shí)推理中的應(yīng)用。
我們分析一下,這些“網(wǎng)友回答”有些來(lái)自“寶寶樹”,有些來(lái)自“有問(wèn)必答網(wǎng)”,有些來(lái)自“育兒網(wǎng)”,我們可以利用爬蟲去爬這些網(wǎng)站的問(wèn)題及其回答,然后對(duì)問(wèn)題做聚類,先構(gòu)建如下知識(shí)圖譜:
具體問(wèn)題與回答之間的邏輯關(guān)系邊一開始留空,我們?cè)賹?duì)語(yǔ)義邊上分類技術(shù),把空余的邊填補(bǔ)完整,當(dāng)然也可能誤分類,例如百度例子中的第一個(gè)回答,“慎吃”被歸為“能吃”。最后再對(duì)這些邊做統(tǒng)計(jì),就可以回答類似問(wèn)題,利用語(yǔ)料庫(kù)做知識(shí)推理,學(xué)習(xí)知識(shí)庫(kù)里沒(méi)有的知識(shí),完善知識(shí)圖譜。
Reference
知識(shí)圖譜——機(jī)器大腦中的知識(shí)庫(kù)
知識(shí)圖譜的應(yīng)用
知識(shí)圖譜,為移動(dòng)搜索而生
知識(shí)圖譜概念是什么?
知識(shí)圖譜的概念是:知識(shí)圖譜是自頂向下(top-down)的構(gòu)建方式。自頂向下指的是先為知識(shí)圖譜定義好本體與數(shù)據(jù)模式,再將實(shí)體加入到知識(shí)庫(kù)。
該構(gòu)建方式需要利用一些現(xiàn)有的結(jié)構(gòu)化知識(shí)庫(kù)作為其基礎(chǔ)知識(shí)庫(kù),例如 Freebase 項(xiàng)目就是采用這種方式,它的絕大部分?jǐn)?shù)據(jù)是從維基百科中得到的。
然而目前,大多數(shù)知識(shí)圖譜都采用自底向上(bottom-up)的構(gòu)建方式。自底向上指的是從一些開放連接數(shù)據(jù)(也就是 “信息”)中提取出實(shí)體,選擇其中置信度較高的加入到知識(shí)庫(kù),再構(gòu)建實(shí)體與實(shí)體之間的聯(lián)系。
知識(shí)圖譜的體系架構(gòu)是:
知識(shí)圖譜的架構(gòu)主要包括自身的邏輯結(jié)構(gòu)以及體系架構(gòu)。
知識(shí)圖譜在邏輯結(jié)構(gòu)上可分為模式層與數(shù)據(jù)層兩個(gè)層次,數(shù)據(jù)層主要是由一系列的事實(shí)組成,而知識(shí)將以事實(shí)為單位進(jìn)行存儲(chǔ)。
如果用(實(shí)體1,關(guān)系,實(shí)體2)、(實(shí)體、屬性,屬性值)這樣的三元組來(lái)表達(dá)事實(shí),可選擇圖數(shù)據(jù)庫(kù)作為存儲(chǔ)介質(zhì),例如開源的 Neo4j、Twitter 的 FlockDB、JanusGraph 等。
模式層構(gòu)建在數(shù)據(jù)層之上,主要是通過(guò)本體庫(kù)來(lái)規(guī)范數(shù)據(jù)層的一系列事實(shí)表達(dá)。本體是結(jié)構(gòu)化知識(shí)庫(kù)的概念模板,通過(guò)本體庫(kù)而形成的知識(shí)庫(kù)不僅層次結(jié)構(gòu)較強(qiáng),并且冗余程度較小。
大規(guī)模知識(shí)庫(kù)的構(gòu)建與應(yīng)用需要多種智能信息處理技術(shù)的支持。通過(guò)知識(shí)抽取技術(shù),可以從一些公開的半結(jié)構(gòu)化、非結(jié)構(gòu)化的數(shù)據(jù)中提取出實(shí)體、關(guān)系、屬性等知識(shí)要素。通過(guò)知識(shí)融合,可消除實(shí)體、關(guān)系、屬性等指稱項(xiàng)與事實(shí)對(duì)象之間的歧義,形成高質(zhì)量的知識(shí)庫(kù)。
知識(shí)推理則是在已有的知識(shí)庫(kù)基礎(chǔ)上進(jìn)一步挖掘隱含的知識(shí),從而豐富、擴(kuò)展知識(shí)庫(kù)。分布式的知識(shí)表示形成的綜合向量對(duì)知識(shí)庫(kù)的構(gòu)建、推理、融合以及應(yīng)用均具有重要的意義。
知識(shí)圖譜基礎(chǔ)(一)-什么是知識(shí)圖譜
筆者是一只已經(jīng)離職的AI產(chǎn)品經(jīng)理,主要擅長(zhǎng)的方向是知識(shí)圖譜與自然語(yǔ)言處理,寫這些文章是為了總結(jié)歸納目前已經(jīng)搭建的知識(shí)體系,也在于科普。如有不對(duì),請(qǐng)指正。
知識(shí)圖譜在國(guó)內(nèi)屬于一個(gè)比較新興的概念,國(guó)內(nèi)目前paper都比較少,應(yīng)用方主要集中在BAT這類手握海量數(shù)據(jù)的企業(yè),這個(gè)概念是google在2012年提出的,當(dāng)時(shí)主要是為了將傳統(tǒng)的keyword-base搜索模型向基于語(yǔ)義的搜索升級(jí)。知識(shí)圖譜可以用來(lái)更好的查詢復(fù)雜的關(guān)聯(lián)信息,從語(yǔ)義層面理解用戶意圖,改進(jìn)搜索質(zhì)量。
個(gè)人認(rèn)為,知識(shí)圖譜最大的優(yōu)勢(shì)是在于對(duì)數(shù)據(jù)的描述能力非常強(qiáng)大,各種機(jī)器學(xué)習(xí)算法雖然在預(yù)測(cè)能力上很不錯(cuò),但是在描述能力上非常弱,知識(shí)圖譜剛好填補(bǔ)了這部分空缺。
知識(shí)圖譜的定義非常多,我這里提供一部分我自己的理解:
1.知識(shí)圖譜主要目標(biāo)是用來(lái)描述真實(shí)世界中存在的各種實(shí)體和概念,以及他們之間的強(qiáng)關(guān)系,我們用關(guān)系去描述兩個(gè)實(shí)體之間的關(guān)聯(lián),例如姚明和火箭隊(duì)之間的關(guān)系,他們的屬性,我們就用“屬性--值對(duì)“來(lái)刻畫它的內(nèi)在特性,比如說(shuō)我們的人物,他有年齡、身高、體重屬性。
2.知識(shí)圖譜可以通過(guò)人為構(gòu)建與定義,去描述各種概念之間的弱關(guān)系,例如:“忘了訂單號(hào)”和“找回訂單號(hào)”之間的關(guān)系
知識(shí)庫(kù)目前可以分為兩種類型:Curated KBs 和 Extracted KBs
Curated KBs :以yago2和freebase為代表,他們從維基百科和WordNet等知識(shí)庫(kù)抽取了大量的實(shí)體及實(shí)體關(guān)系,可以把它理解城一種結(jié)構(gòu)化的維基百科。
Extracted KBs :主要是以O(shè)pen Information Extraction (Open IE),? Never-Ending Language Learning (NELL)為代表,他們直接從上億個(gè)網(wǎng)頁(yè)中抽取實(shí)體關(guān)系三元組。與freebase相比,這樣得到的實(shí)體知識(shí)更具有多樣性,而它們的實(shí)體關(guān)系和實(shí)體更多的則是自然語(yǔ)言的形式,如“姚明出生于上海?!?可以被表示為(“Yao Ming”, “was also born in”, “Shanghai”)。直接從網(wǎng)頁(yè)中抽取出來(lái)的知識(shí),也會(huì)存在一定的噪聲,其精確度低于Curated KBs。
a)“姚明出生于上?!?/p>
b)“姚明是籃球運(yùn)動(dòng)員”
c)“姚明是現(xiàn)任中國(guó)籃協(xié)主席”
以上就是一條條知識(shí),把大量的知識(shí)匯聚起來(lái)就成為了知識(shí)庫(kù)(Knowledge Base)。我們可以從wikipedia,百度百科等百科全書獲取到大量的知識(shí)。但是,這些百科全書的知識(shí)是由非結(jié)構(gòu)化的自然語(yǔ)言組建而成的,這樣的組織方式很適合人們閱讀但并不適合計(jì)算機(jī)處理。
為了方便計(jì)算機(jī)的處理和理解,我們需要更加形式化、簡(jiǎn)潔化的方式去表示知識(shí),那就是三元組(triple)。
“姚明出生于中國(guó)上?!?可以用三元組表示為(Yao Ming, PlaceOfBirth, Shanghai)[1]。這里我們可以簡(jiǎn)單的把三元組理解為(實(shí)體entity,實(shí)體關(guān)系relation,實(shí)體entity)。如果我們把實(shí)體看作是結(jié)點(diǎn),把實(shí)體關(guān)系(包括屬性,類別等等)看作是一條邊,那么包含了大量三元組的知識(shí)庫(kù)就成為了一個(gè)龐大的知識(shí)圖。
有些時(shí)候會(huì)將實(shí)體稱為topic,如Justin Bieber。實(shí)體關(guān)系也可分為兩種,一種是屬性property,一種是關(guān)系relation。如下圖所示,屬性和關(guān)系的最大區(qū)別在于,屬性所在的三元組對(duì)應(yīng)的兩個(gè)實(shí)體,常常是一個(gè)topic和一個(gè)字符串,如屬性Type/Gender,對(duì)應(yīng)的三元組(Justin Bieber, Type, Person),而關(guān)系所在的三元組所對(duì)應(yīng)的兩個(gè)實(shí)體,常常是兩個(gè)topic。如關(guān)系PlaceOfBrith,對(duì)應(yīng)的三元組(Justin Bieber, PlaceOfBrith, London)。
(圖中藍(lán)色方塊表示topic,橙色橢圓包括屬性值,它們都屬于知識(shí)庫(kù)的實(shí)體;藍(lán)色直線表示關(guān)系,橙色直線表示屬性,它們都統(tǒng)稱為知識(shí)庫(kù)的實(shí)體關(guān)系,都可以用三元組刻畫實(shí)體和實(shí)體關(guān)系)
這里只是簡(jiǎn)單介紹一下數(shù)據(jù)結(jié)構(gòu),知識(shí)表達(dá)這一塊會(huì)在《知識(shí)圖譜基礎(chǔ)(二)-知識(shí)圖譜的知識(shí)表達(dá)系統(tǒng)》中詳細(xì)講解。
讀者只要記住,freebase的基礎(chǔ)知識(shí)表達(dá)形式:(實(shí)體)-[關(guān)系]-(實(shí)體),(實(shí)體)-[關(guān)系]-(值)即可,參考圖3,姚明和葉莉的關(guān)系。
通過(guò)知識(shí)圖譜,不僅可以將互聯(lián)網(wǎng)的信息表達(dá)成更接近人類認(rèn)知世界的形式,而且提供了一種更好的組織、管理和利用海量信息的方式。下圖是筆者整理的知識(shí)圖譜有關(guān)的應(yīng)用,接下來(lái)的一些文章筆者會(huì)對(duì)下面的應(yīng)用進(jìn)行剖析。
從圖4上看,知識(shí)圖譜的應(yīng)用主要集中在搜索與推薦領(lǐng)域,robot(客服機(jī)器人,私人助理)是問(wèn)答系統(tǒng),本質(zhì)上也是搜索與推薦的延伸??赡苁且?yàn)橹R(shí)圖譜這項(xiàng)技術(shù)(特指freebase)誕生之初就是為了解決搜索問(wèn)題的。知識(shí)存儲(chǔ)這一塊可能是企查查和啟信寶這些企業(yè)發(fā)現(xiàn)使用圖結(jié)構(gòu)的數(shù)據(jù)比較好清洗加工。
在語(yǔ)義搜索這一塊,知識(shí)圖譜的搜索不同于常規(guī)的搜索,常規(guī)的搜索是根據(jù)keyword找到對(duì)應(yīng)的網(wǎng)頁(yè)集合,然后通過(guò)page rank等算法去給網(wǎng)頁(yè)集合內(nèi)的網(wǎng)頁(yè)進(jìn)行排名,然后展示給用戶;基于知識(shí)圖譜的搜索是在已有的圖譜知識(shí)庫(kù)中遍歷知識(shí),然后將查詢到的知識(shí)返回給用戶,通常如果路徑正確,查詢出來(lái)的知識(shí)只有1個(gè)或幾個(gè),相當(dāng)精準(zhǔn)。
問(wèn)答系統(tǒng)這一塊,系統(tǒng)同樣會(huì)首先在知識(shí)圖譜的幫助下對(duì)用戶使用自然語(yǔ)言提出的問(wèn)題進(jìn)行語(yǔ)義分析和語(yǔ)法分析,進(jìn)而將其轉(zhuǎn)化成結(jié)構(gòu)化形式的查詢語(yǔ)句,然后在知識(shí)圖譜中查詢答案。
知識(shí)圖譜是什么?有哪些應(yīng)用價(jià)值
知識(shí)圖譜 (Knowledge Graph) 是當(dāng)前的研究熱點(diǎn)。自從2012年Google推出自己第一版知識(shí)圖譜以來(lái),它在學(xué)術(shù)界和工業(yè)界掀起了一股熱潮。各大互聯(lián)網(wǎng)企業(yè)在之后的短短一年內(nèi)紛紛推出了自己的知識(shí)圖譜產(chǎn)品以作為回應(yīng)。比如在國(guó)內(nèi),互聯(lián)網(wǎng)巨頭百度和搜狗分別推出”知心“和”知立方”來(lái)改進(jìn)其搜索質(zhì)量。那么與這些傳統(tǒng)的互聯(lián)網(wǎng)公司相比,對(duì)處于當(dāng)今風(fēng)口浪尖上的行業(yè) - 互聯(lián)網(wǎng)金融, 知識(shí)圖譜可以有哪方面的應(yīng)用呢?
目錄
1. 什么是知識(shí)圖譜?
2. 知識(shí)圖譜的表示
3. 知識(shí)圖譜的存儲(chǔ)
4. 應(yīng)用
5. 挑戰(zhàn)
6. 結(jié)語(yǔ)
1. 什么是知識(shí)圖譜?
知識(shí)圖譜本質(zhì)上是語(yǔ)義網(wǎng)絡(luò),是一種基于圖的數(shù)據(jù)結(jié)構(gòu),由節(jié)點(diǎn)(Point)和邊(Edge)組成。在知識(shí)圖譜里,每個(gè)節(jié)點(diǎn)表示現(xiàn)實(shí)世界中存在的“實(shí)體”,每條邊為實(shí)體與實(shí)體之間的“關(guān)系”。知識(shí)圖譜是關(guān)系的最有效的表示方式。通俗地講,知識(shí)圖譜就是把所有不同種類的信息(Heterogeneous Information)連接在一起而得到的一個(gè)關(guān)系網(wǎng)絡(luò)。知識(shí)圖譜提供了從“關(guān)系”的角度去分析問(wèn)題的能力。
知識(shí)圖譜這個(gè)概念最早由Google提出,主要是用來(lái)優(yōu)化現(xiàn)有的搜索引擎。不同于基于關(guān)鍵詞搜索的傳統(tǒng)搜索引擎,知識(shí)圖譜可用來(lái)更好地查詢復(fù)雜的關(guān)聯(lián)信息,從語(yǔ)義層面理解用戶意圖,改進(jìn)搜索質(zhì)量。比如在Google的搜索框里輸入Bill Gates的時(shí)候,搜索結(jié)果頁(yè)面的右側(cè)還會(huì)出現(xiàn)Bill Gates相關(guān)的信息比如出生年月,家庭情況等等。
另外,對(duì)于稍微復(fù)雜的搜索語(yǔ)句比如 ”Who is the wife of Bill Gates“,Google能準(zhǔn)確返回他的妻子Melinda Gates。這就說(shuō)明搜索引擎通過(guò)知識(shí)圖譜真正理解了用戶的意圖。
上面提到的知識(shí)圖譜都是屬于比較寬泛的范疇,在通用領(lǐng)域里解決搜索引擎優(yōu)化和問(wèn)答系統(tǒng)(Question-Answering)等方面的問(wèn)題。接下來(lái)我們看一下特定領(lǐng)域里的 (Domain-Specific) 知識(shí)圖譜表示方式和應(yīng)用,這也是工業(yè)界比較關(guān)心的話題。
2. 知識(shí)圖譜的表示
假設(shè)我們用知識(shí)圖譜來(lái)描述一個(gè)事實(shí)(Fact) - “張三是李四的父親”。這里的實(shí)體是張三和李四,關(guān)系是“父親”(is_father_of)。當(dāng)然,張三和李四也可能會(huì)跟其他人存在著某種類型的關(guān)系(暫時(shí)不考慮)。當(dāng)我們把電話號(hào)碼也作為節(jié)點(diǎn)加入到知識(shí)圖譜以后(電話號(hào)碼也是實(shí)體),人和電話之間也可以定義一種關(guān)系叫 has_phone,就是說(shuō)某個(gè)電話號(hào)碼是屬于某個(gè)人。下面的圖就展示了這兩種不同的關(guān)系。
另外,我們可以把時(shí)間作為屬性(Property)添加到 has_phone 關(guān)系里來(lái)表示開通電話號(hào)碼的時(shí)間。這種屬性不僅可以加到關(guān)系里,還可以加到實(shí)體當(dāng)中,當(dāng)我們把所有這些信息作為關(guān)系或者實(shí)體的屬性添加后,所得到的圖譜稱之為屬性圖 (Property Graph)。屬性圖和傳統(tǒng)的RDF格式都可以作為知識(shí)圖譜的表示和存儲(chǔ)方式,但二者還是有區(qū)別的,這將在后面章節(jié)做簡(jiǎn)單說(shuō)明。
3. 知識(shí)圖譜的存儲(chǔ)
知識(shí)圖譜是基于圖的數(shù)據(jù)結(jié)構(gòu),它的存儲(chǔ)方式主要有兩種形式:RDF存儲(chǔ)格式和圖數(shù)據(jù)庫(kù)(Graph Database)。至于它們有哪些區(qū)別,請(qǐng)參考【1】。下面的曲線表示各種數(shù)據(jù)存儲(chǔ)類型在最近幾年的發(fā)展情況。從這里我們可以明顯地看到基于圖的存儲(chǔ)方式在整個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)領(lǐng)域的飛速發(fā)展。這幅曲線圖來(lái)源于 Graph DBMS increased their popularity by 500% within the last 2 years
下面的列表表示的是目前比較流行的基于圖存儲(chǔ)的數(shù)據(jù)庫(kù)排名。從這個(gè)排名中可以看出neo4j在整個(gè)圖存儲(chǔ)領(lǐng)域里占據(jù)著NO.1的地位,而且在RDF領(lǐng)域里Jena還是目前為止最為流行的存儲(chǔ)框架。這部分?jǐn)?shù)據(jù)來(lái)源于 DB-Engines Ranking
當(dāng)然,如果需要設(shè)計(jì)的知識(shí)圖譜非常簡(jiǎn)單,而且查詢也不會(huì)涉及到1度以上的關(guān)聯(lián)查詢,我們也可以選擇用關(guān)系型數(shù)據(jù)存儲(chǔ)格式來(lái)保存知識(shí)圖譜。但對(duì)那些稍微復(fù)雜的關(guān)系網(wǎng)絡(luò)(現(xiàn)實(shí)生活中的實(shí)體和關(guān)系普遍都比較復(fù)雜),知識(shí)圖譜的優(yōu)點(diǎn)還是非常明顯的。首先,在關(guān)聯(lián)查詢的效率上會(huì)比傳統(tǒng)的存儲(chǔ)方式有顯著的提高。當(dāng)我們涉及到2,3度的關(guān)聯(lián)查詢,基于知識(shí)圖譜的查詢效率會(huì)高出幾千倍甚至幾百萬(wàn)倍。其次,基于圖的存儲(chǔ)在設(shè)計(jì)上會(huì)非常靈活,一般只需要局部的改動(dòng)即可。比如我們有一個(gè)新的數(shù)據(jù)源,我們只需要在已有的圖譜上插入就可以。于此相反,關(guān)系型存儲(chǔ)方式靈活性方面比較差,它所有的Schema都是提前定義好的,如果后續(xù)要改變,它的代價(jià)是非常高的。最后,把實(shí)體和關(guān)系存儲(chǔ)在圖數(shù)據(jù)結(jié)構(gòu)是一種符合整個(gè)故事邏輯的最好的方式。
4. 應(yīng)用
在本文中,我們主要討論知識(shí)圖譜在互聯(lián)網(wǎng)金融行業(yè)中的應(yīng)用。當(dāng)然,很多應(yīng)用場(chǎng)景和想法都可以延伸到其他的各行各業(yè)。這里提到的應(yīng)用場(chǎng)景只是冰山一角, 在很多其他的應(yīng)用上,知識(shí)圖譜仍然可以發(fā)揮它潛在的價(jià)值, 我們?cè)诤罄m(xù)的文章中會(huì)繼續(xù)討論。
反欺詐
反欺詐是風(fēng)控中非常重要的一道環(huán)節(jié)?;诖髷?shù)據(jù)的反欺詐的難點(diǎn)在于如何把不同來(lái)源的數(shù)據(jù)(結(jié)構(gòu)化,非結(jié)構(gòu))整合在一起,并構(gòu)建反欺詐引擎,從而有效地識(shí)別出欺詐案件(比如身份造假,團(tuán)體欺詐,代辦包裝等)。而且不少欺詐案件會(huì)涉及到復(fù)雜的關(guān)系網(wǎng)絡(luò),這也給欺詐審核帶來(lái)了新的挑戰(zhàn)。 知識(shí)圖譜,作為關(guān)系的直接表示方式,可以很好地解決這兩個(gè)問(wèn)題。 首先,知識(shí)圖譜提供非常便捷的方式來(lái)添加新的數(shù)據(jù)源,這一點(diǎn)在前面提到過(guò)。其次,知識(shí)圖譜本身就是用來(lái)表示關(guān)系的,這種直觀的表示方法可以幫助我們更有效地分析復(fù)雜關(guān)系中存在的特定的潛在風(fēng)險(xiǎn)。
反欺詐的核心是人,首先需要把與借款人相關(guān)的所有的數(shù)據(jù)源打通,并構(gòu)建包含多數(shù)據(jù)源的知識(shí)圖譜,從而整合成為一臺(tái)機(jī)器可以理解的結(jié)構(gòu)化的知識(shí)。在這里,我們不僅可以整合借款人的基本信息(比如申請(qǐng)時(shí)填寫的信息),還可以把借款人的消費(fèi)記錄、行為記錄、網(wǎng)上的瀏覽記錄等整合到整個(gè)知識(shí)圖譜里,從而進(jìn)行分析和預(yù)測(cè)。這里的一個(gè)難點(diǎn)是很多的數(shù)據(jù)都是從網(wǎng)絡(luò)上獲取的非結(jié)構(gòu)化數(shù)據(jù),需要利用機(jī)器學(xué)習(xí)、自然語(yǔ)言處理技術(shù)把這些數(shù)據(jù)變成結(jié)構(gòu)化的數(shù)據(jù)。
不一致性驗(yàn)證
不一致性驗(yàn)證可以用來(lái)判斷一個(gè)借款人的欺詐風(fēng)險(xiǎn),這個(gè)跟交叉驗(yàn)證類似。比如借款人張三和借款人李四填寫的是同一個(gè)公司電話,但張三填寫的公司和李四填寫的公司完全不一樣,這就成了一個(gè)風(fēng)險(xiǎn)點(diǎn),需要審核人員格外的注意。
再比如,借款人說(shuō)跟張三是朋友關(guān)系,跟李四是父子關(guān)系。當(dāng)我們?cè)噲D把借款人的信息添加到知識(shí)圖譜里的時(shí)候,“一致性驗(yàn)證”引擎會(huì)觸發(fā)。引擎首先會(huì)去讀取張三和李四的關(guān)系,從而去驗(yàn)證這個(gè)“三角關(guān)系”是否正確。很顯然,朋友的朋友不是父子關(guān)系,所以存在著明顯的不一致性。
不一致性驗(yàn)證涉及到知識(shí)的推理。通俗地講,知識(shí)的推理可以理解成“鏈接預(yù)測(cè)”,也就是從已有的關(guān)系圖譜里推導(dǎo)出新的關(guān)系或鏈接。 比如在上面的例子,假設(shè)張三和李四是朋友關(guān)系,而且張三和借款人也是朋友關(guān)系,那我們可以推理出借款人和李四也是朋友關(guān)系。
組團(tuán)欺詐
相比虛假身份的識(shí)別,組團(tuán)欺詐的挖掘難度更大。這種組織在非常復(fù)雜的關(guān)系網(wǎng)絡(luò)里隱藏著,不容易被發(fā)現(xiàn)。當(dāng)我們只有把其中隱含的關(guān)系網(wǎng)絡(luò)梳理清楚,才有可能去分析并發(fā)現(xiàn)其中潛在的風(fēng)險(xiǎn)。知識(shí)圖譜,作為天然的關(guān)系網(wǎng)絡(luò)的分析工具,可以幫助我們更容易地去識(shí)別這種潛在的風(fēng)險(xiǎn)。舉一個(gè)簡(jiǎn)單的例子,有些組團(tuán)欺詐的成員會(huì)用虛假的身份去申請(qǐng)貸款,但部分信息是共享的。下面的圖大概說(shuō)明了這種情形。從圖中可以看出張三、李四和王五之間沒(méi)有直接的關(guān)系,但通過(guò)關(guān)系網(wǎng)絡(luò)我們很容易看出這三者之間都共享著某一部分信息,這就讓我們馬上聯(lián)想到欺詐風(fēng)險(xiǎn)。雖然組團(tuán)欺詐的形式眾多,但有一點(diǎn)值得肯定的是知識(shí)圖譜一定會(huì)比其他任何的工具提供更佳便捷的分析手段。
異常分析(Anomaly Detection)
異常分析是數(shù)據(jù)挖掘研究領(lǐng)域里比較重要的課題。我們可以把它簡(jiǎn)單理解成從給定的數(shù)據(jù)中找出“異常”點(diǎn)。在我們的應(yīng)用中,這些”異?!包c(diǎn)可能會(huì)關(guān)聯(lián)到欺詐。既然知識(shí)圖譜可以看做是一個(gè)圖 (Graph),知識(shí)圖譜的異常分析也大都是基于圖的結(jié)構(gòu)。由于知識(shí)圖譜里的實(shí)體類型、關(guān)系類型不同,異常分析也需要把這些額外的信息考慮進(jìn)去。大多數(shù)基于圖的異常分析的計(jì)算量比較大,可以選擇做離線計(jì)算。在我們的應(yīng)用框架中,可以把異常分析分為兩大類: 靜態(tài)分析和動(dòng)態(tài)分析,后面會(huì)逐一講到。
- 靜態(tài)分析
所謂的靜態(tài)分析指的是,給定一個(gè)圖形結(jié)構(gòu)和某個(gè)時(shí)間點(diǎn),從中去發(fā)現(xiàn)一些異常點(diǎn)(比如有異常的子圖)。下圖中我們可以很清楚地看到其中五個(gè)點(diǎn)的相互緊密度非常強(qiáng),可能是一個(gè)欺詐組織。所以針對(duì)這些異常的結(jié)構(gòu),我們可以做出進(jìn)一步的分析。
- 動(dòng)態(tài)分析
所謂的動(dòng)態(tài)分析指的是分析其結(jié)構(gòu)隨時(shí)間變化的趨勢(shì)。我們的假設(shè)是,在短時(shí)間內(nèi)知識(shí)圖譜結(jié)構(gòu)的變化不會(huì)太大,如果它的變化很大,就說(shuō)明可能存在異常,需要進(jìn)一步的關(guān)注。分析結(jié)構(gòu)隨時(shí)間的變化會(huì)涉及到時(shí)序分析技術(shù)和圖相似性計(jì)算技術(shù)。有興趣的讀者可以去參考這方面的資料【2】。
失聯(lián)客戶管理
除了貸前的風(fēng)險(xiǎn)控制,知識(shí)圖譜也可以在貸后發(fā)揮其強(qiáng)大的作用。比如在貸后失聯(lián)客戶管理的問(wèn)題上,知識(shí)圖譜可以幫助我們挖掘出更多潛在的新的聯(lián)系人,從而提高催收的成功率。
現(xiàn)實(shí)中,不少借款人在借款成功后出現(xiàn)不還款現(xiàn)象,而且玩“捉迷藏”,聯(lián)系不上本人。即便試圖去聯(lián)系借款人曾經(jīng)提供過(guò)的其他聯(lián)系人,但還是沒(méi)有辦法聯(lián)系到本人。這就進(jìn)入了所謂的“失聯(lián)”狀態(tài),使得催收人員也無(wú)從下手。那接下來(lái)的問(wèn)題是,在失聯(lián)的情況下,我們有沒(méi)有辦法去挖掘跟借款人有關(guān)系的新的聯(lián)系人? 而且這部分人群并沒(méi)有以關(guān)聯(lián)聯(lián)系人的身份出現(xiàn)在我們的知識(shí)圖譜里。如果我們能夠挖掘出更多潛在的新的聯(lián)系人,就會(huì)大大地提高催收成功率。舉個(gè)例子,在下面的關(guān)系圖中,借款人跟李四有直接的關(guān)系,但我們卻聯(lián)系不上李四。那有沒(méi)有可能通過(guò)2度關(guān)系的分析,預(yù)測(cè)并判斷哪些李四的聯(lián)系人可能會(huì)認(rèn)識(shí)借款人。這就涉及到圖譜結(jié)構(gòu)的分析。
智能搜索及可視化展示
基于知識(shí)圖譜,我們也可以提供智能搜索和數(shù)據(jù)可視化的服務(wù)。智能搜索的功能類似于知識(shí)圖譜在Google, Baidu上的應(yīng)用。也就是說(shuō),對(duì)于每一個(gè)搜索的關(guān)鍵詞,我們可以通過(guò)知識(shí)圖譜來(lái)返回更豐富,更全面的信息。比如搜索一個(gè)人的身份證號(hào),我們的智能搜索引擎可以返回與這個(gè)人相關(guān)的所有歷史借款記錄、聯(lián)系人信息、行為特征和每一個(gè)實(shí)體的標(biāo)簽(比如黑名單,同業(yè)等)。另外,可視化的好處不言而喻,通過(guò)可視化把復(fù)雜的信息以非常直觀的方式呈現(xiàn)出來(lái), 使得我們對(duì)隱藏信息的來(lái)龍去脈一目了然。
精準(zhǔn)營(yíng)銷
“A knowledge graph allows you to take core information about your customer—their name, where they reside, how to contact them—and relate it to who else they know, how they interact on the web, and more”-- Michele Goetz, a Principal Analyst at Forrester Research
一個(gè)聰明的企業(yè)可以比它的競(jìng)爭(zhēng)對(duì)手以更為有效的方式去挖掘其潛在的客戶。在互聯(lián)網(wǎng)時(shí)代,營(yíng)銷手段多種多樣,但不管有多少種方式,都離不開一個(gè)核心 - 分析用戶和理解用戶。知識(shí)圖譜可以結(jié)合多種數(shù)據(jù)源去分析實(shí)體之間的關(guān)系,從而對(duì)用戶的行為有更好的理解。比如一個(gè)公司的市場(chǎng)經(jīng)理用知識(shí)圖譜來(lái)分析用戶之間的關(guān)系,去發(fā)現(xiàn)一個(gè)組織的共同喜好,從而可以有針對(duì)性的對(duì)某一類人群制定營(yíng)銷策略。只有我們能更好的、更深入的(Deep understanding)理解用戶的需求,我們才能更好地去做營(yíng)銷。
5. 挑戰(zhàn)
知識(shí)圖譜在工業(yè)界還沒(méi)有形成大規(guī)模的應(yīng)用。即便有部分企業(yè)試圖往這個(gè)方向發(fā)展,但很多仍處于調(diào)研階段。主要的原因是很多企業(yè)對(duì)知識(shí)圖譜并不了解,或者理解不深。但有一點(diǎn)可以肯定的是,知識(shí)圖譜在未來(lái)幾年內(nèi)必將成為工業(yè)界的熱門工具,這也是從目前的趨勢(shì)中很容易預(yù)測(cè)到的。當(dāng)然,知識(shí)圖譜畢竟是一個(gè)比較新的工具,所以在實(shí)際應(yīng)用中一定會(huì)涉及到或多或少的挑戰(zhàn)。
數(shù)據(jù)的噪聲
首先,數(shù)據(jù)中存在著很多的噪聲。即便是已經(jīng)存在庫(kù)里的數(shù)據(jù),我們也不能保證它有100%的準(zhǔn)確性。在這里主要從兩個(gè)方面說(shuō)起。第一,目前積累的數(shù)據(jù)本身有錯(cuò)誤,所以這部分錯(cuò)誤數(shù)據(jù)需要糾正。 最簡(jiǎn)單的糾正辦法就是做離線的不一致性驗(yàn)證,這點(diǎn)在前面提過(guò)。第二, 數(shù)據(jù)的冗余。比如借款人張三填寫公司名字為”普惠“,借款人李四填寫的名字為”普惠金融“,借款人王五則填寫成”普惠金融信息服務(wù)有限公司“。雖然這三個(gè)人都隸屬于一家公司,但由于他們填寫的名字不同,計(jì)算機(jī)則會(huì)認(rèn)為他們?nèi)齻€(gè)是來(lái)自不同的公司。那接下來(lái)的問(wèn)題是,怎么從海量的數(shù)據(jù)中找出這些存在歧義的名字并將它們合并成一個(gè)名字? 這就涉及到自然語(yǔ)言處理中的”消歧分析”技術(shù)。
非結(jié)構(gòu)化數(shù)據(jù)處理能力
在大數(shù)據(jù)時(shí)代,很多數(shù)據(jù)都是未經(jīng)處理過(guò)的非結(jié)構(gòu)化數(shù)據(jù),比如文本、圖片、音頻、視頻等。特別在互聯(lián)網(wǎng)金融行業(yè)里,我們往往會(huì)面對(duì)大量的文本數(shù)據(jù)。怎么從這些非結(jié)構(gòu)化數(shù)據(jù)里提取出有價(jià)值的信息是一件非常有挑戰(zhàn)性的任務(wù),這對(duì)掌握的機(jī)器學(xué)習(xí),數(shù)據(jù)挖掘,自然語(yǔ)言處理能力提出了更高的門檻。
知識(shí)推理
推理能力是人類智能的重要特征,使得我們可以從已有的知識(shí)中發(fā)現(xiàn)隱含的知識(shí), 一般的推理往往需要一些規(guī)則的支持【3】。例如“朋友”的“朋友”,可以推理出“朋友”關(guān)系,“父親”的“父親”可以推理出“祖父”的關(guān)系。再比如張三的朋友很多也是李四的朋友,那我們可以推測(cè)張三和李四也很有可能是朋友關(guān)系。當(dāng)然,這里會(huì)涉及到概率的問(wèn)題。當(dāng)信息量特別多的時(shí)候,怎么把這些信息(side information)有效地與推理算法結(jié)合在一起才是最關(guān)鍵的。常用的推理算法包括基于邏輯(Logic) 的推理和基于分布式表示方法(Distributed Representation)的推理。隨著深度學(xué)習(xí)在人工智能領(lǐng)域的地位變得越來(lái)越重要,基于分布式表示方法的推理也成為目前研究的熱點(diǎn)。如果有興趣可以參考一下這方面目前的工作進(jìn)展【4,5,6,7】。
大數(shù)據(jù)、小樣本、構(gòu)建有效的生態(tài)閉環(huán)是關(guān)鍵
雖然現(xiàn)在能獲取的數(shù)據(jù)量非常龐大,我們?nèi)匀幻媾R著小樣本問(wèn)題,也就是樣本數(shù)量少。假設(shè)我們需要搭建一個(gè)基于機(jī)器學(xué)習(xí)的反欺詐評(píng)分系統(tǒng),我們首先需要一些欺詐樣本。但實(shí)際上,我們能拿到的欺詐樣本數(shù)量不多,即便有幾百萬(wàn)個(gè)貸款申請(qǐng),最后被我們標(biāo)記為欺詐的樣本很可能也就幾萬(wàn)個(gè)而已。這對(duì)機(jī)器學(xué)習(xí)的建模提出了更高的挑戰(zhàn)。每一個(gè)欺詐樣本我們都是以很高昂的“代價(jià)”得到的。隨著時(shí)間的推移,我們必然會(huì)收集到更多的樣本,但樣本的增長(zhǎng)空間還是有局限的。這有區(qū)別于傳統(tǒng)的機(jī)器學(xué)習(xí)系統(tǒng),比如圖像識(shí)別,不難拿到好幾十萬(wàn)甚至幾百萬(wàn)的樣本。
在這種小樣本條件下,構(gòu)建有效的生態(tài)閉環(huán)尤其的重要。所謂的生態(tài)閉環(huán),指的是構(gòu)建有效的自反饋系統(tǒng)使其能夠?qū)崟r(shí)地反饋給我們的模型,并使得模型不斷地自優(yōu)化從而提升準(zhǔn)確率。為了搭建這種自學(xué)習(xí)系統(tǒng),我們不僅要完善已有的數(shù)據(jù)流系統(tǒng),而且要深入到各個(gè)業(yè)務(wù)線,并對(duì)相應(yīng)的流程進(jìn)行優(yōu)化。這也是整個(gè)反欺詐環(huán)節(jié)必要的過(guò)程,我們要知道整個(gè)過(guò)程都充滿著博弈。所以我們需要不斷地通過(guò)反饋信號(hào)來(lái)調(diào)整我們的策略。
6. 結(jié)語(yǔ)
知識(shí)圖譜在學(xué)術(shù)界和工業(yè)界受到越來(lái)越多的關(guān)注。除了本文中所提到的應(yīng)用,知識(shí)圖譜還可以應(yīng)用在權(quán)限管理,人力資源管理等不同的領(lǐng)域。在后續(xù)的文章中會(huì)詳細(xì)地講到這方面的應(yīng)用。
參考文獻(xiàn)
【1】De Abreu, D., Flores, A., Palma, G., Pestana, V., Pinero, J., Queipo, J., ... Vidal, M. E. (2013). Choosing Between Graph Databases and RDF Engines for Consuming and Mining Linked Data. In COLD.
【2】User Behavior Tutorial
【3】劉知遠(yuǎn) 知識(shí)圖譜——機(jī)器大腦中的知識(shí)庫(kù) 第二章 知識(shí)圖譜——機(jī)器大腦中的知識(shí)庫(kù)
【4】Nickel, M., Murphy, K., Tresp, V., Gabrilovich, E. A Review of Relational Machine Learning for Knowledge Graphs.
【5】Socher, R., Chen, D., Manning, C. D., Ng, A. (2013). Reasoning with neural tensor networks for knowledge base completion. In Advances in Neural Information Processing Systems (pp. 926-934).
【6】Bordes, A., Usunier, N., Garcia-Duran, A., Weston, J., Yakhnenko, O. (2013). Translating embeddings for modeling multi-relational data. In Advances in Neural Information Processing Systems (pp. 2787-2795).
【7】Jenatton, R., Roux, N. L., Bordes, A., Obozinski, G. R. (2012). A latent factor model for highly multi-relational data. In Advances in Neural Information Processing Systems(pp. 3167-3175).
什么是知識(shí)圖譜
知識(shí)圖譜,是通過(guò)將應(yīng)用數(shù)學(xué)、圖形學(xué)、信息可視化技術(shù)、信息科學(xué)等學(xué)科的理論與方法與計(jì)量學(xué)引文分析、共現(xiàn)分析等方法結(jié)合,并利用可視化的圖譜形象地展示學(xué)科的核心結(jié)構(gòu)、發(fā)展歷史、前沿領(lǐng)域以及整體知識(shí)架構(gòu)達(dá)到多學(xué)科融合目的的現(xiàn)代理論。