知識圖譜是一個宏大的數據模型,可以構建龐大的「知識」網絡,包含世間萬物構成的「實體」以及它們之間的「關係」,圖文並茂地展現知識方方面面地「屬性」,讓人們更便捷地獲取信息、找到所求。為了讓大家對知識圖譜有更深入的認識,今天這篇文章將由東南大學計算機科學與工程學院王萌老師為我們講解基於向量空間的知識圖譜查詢及結果解釋。
以下為王萌老師的演講實錄
深度學習和知識圖譜的結合,目前是整個AI最新、最熱的一個方向,如百度也是將知識圖譜作為AI的核心競爭力。它的主要內容包括五個方面,分別是知識圖譜及SPARQL查詢、查詢空集問題、知識圖譜表示學習、基於向量空間的近似查詢和實際應用。
知識圖譜及SPARQL查詢
知識圖譜是機器生成並為機器服務的,服務對象不是人類,需要追求機器可理解的東西。一個大規模的知識圖譜本質上是通過實體相關聯,以及實體的各種屬性構成的網絡。知識圖譜的目的是將以前處於非結構化的數據,中間發現的非結構化的實體和他們之間的關聯,強調的是net、實體、關係,以及描述這些實體和關係的類別,最終會把非結構化的文本變成網絡。
下面以醫療知識圖譜為例,知識圖譜可以把藥物、疾病、症狀、基因、病毒各種信息關聯起來,形成一個龐大的數據網絡。病人有兩種方式和知識圖譜產生關聯,服藥或者治療。可以想像雖然只吃了這個藥,但其實背後和一個龐大的知識庫相關聯。因此在分析病人的一些藥物推薦或者是病人症狀的時候,就可以在上面進行搜索。
SPARQL查詢是類似於關係資料庫的SQL, W3C推薦,面向關聯數據的標準結構化查詢語言,主要基於圖模式匹配來查詢信息。
知識圖譜的優勢目前已經應用在醫療領域、在線搜索、電影娛樂等領域。
查詢空集問題
Alexandra Meliou曾說過「輸入查詢,得到結果,是網際網路時代用戶獲取信息系統中有關數據的重要方式。理解查詢的異常結果,是人類獲取知識的自然過程之一。」因此,當用戶對於查詢結果都有一定期望,但查詢結果為空的時候,用戶自然想知道為什麼,怎麼辦。這類問題被稱為查詢空集問題。目前,可以通過總計557個SPARQL終端查詢2969個知識圖譜,然而其中393個終端(72.22%),涵蓋2084 數據集(70.09%)在查詢過程中遇到空集問題,嚴重影響了數據查詢的可用性。因此,我們解決用戶的空集查詢問題有以下優點:提高SPARQL查詢系統的可用性和可信性;幫助用戶明確信息需求,修改原始查詢及快速獲取期望結果。
知識圖譜表示學習
知識圖譜表示學習是在2014年左右的時候出現的一項新的技術,核心思想是詞項的問題。做自然語言的深度學習,如何選擇詞項模型和訓練方式是第一項基本任務。知識圖譜的向量模型之前是通過關係資料庫或者圖資料庫,採用傳統的方式存儲。但在2015年,谷歌的工程師就思考用向量表示網絡和知識圖譜。由此產生的概念是表示學習,如果看經典機器學習的書,第一就是介紹表示學習,即通過機器學習得到數據的表示形式,以及分布式表示和連續的向量的概念。
基於向量空間的近似查詢
回到最初的問題,查詢空集問題結果為空,傳統的方法是不斷修改查詢,向量空間給了我們另一個角度。基於向量空間的近似查詢旨在不修改用戶初始查詢的前提下,基於知識圖譜連續向量空間,採用數據驅動的方式,計算近似答案和推薦查詢,解決查詢空集問題。
右側是在向量空間中的視角,這個V1代表我們想發現的點,雖然在資料庫中不存在,但是我們可以在通過其他的向量結點,在空間中的加減法算出他的坐標,這個方法其實是把一個解決空集問題轉化成一個最近零搜索的問題,給另一個節點在空間中找到最近的結點。但這個空間必須要滿足語義相似的實體在連續向量空間中分布緊密,且實體和實體之間的關係(謂詞)可以使用翻譯機制表達,所以這種傳統的KG embedding學習方法有局限性,難以同時滿足這兩個條件。根據這兩個條件,我們對現有的方法進行改良。第一個問題是通過概率的形式求解最大,使其優化最大。第二個問題,先把圖進行切分,把複雜的圖切割成每一個查詢圖只包含一個變量的圖,對於只包含一個變量的查詢圖我們可以計算通過周圍的結點計算大概的位置。這時候得到的數量是不同的,所以算權重的時候要考慮不同的影響。對於多個數據,可以進行迭代處理,直到穩定。這種情況是需要具體問題具體對待,如果通過一次迭代或者很少次數的迭代已經滿足基本需求的時候,就不需要迭代到非常完美的數據。接著是可解釋性,基於節點的坐標可以找到相似的答案,最後基於這個答案去傳播,返回的不再是一個具體的值,而是把周圍的信息都反饋給用戶,這是一個很簡單的基於最近名搜索以及查詢圖的功能。
實際應用
我們在實際應用中有兩個案例,第一個是基於知識圖譜查詢的治療和藥物推薦,這是把所有病人和藥物的知識圖譜以及疾病的知識譜形成一個關聯網絡,關聯網絡中發現所有圖的基本關係,然後形成查詢圖,之後放到更大規模,幾乎涉及到所有病人裡面去找相近的查詢,所以可以提供兩種,一種是精準的檢索,完全匹配和用戶一模一樣的,可以直接對症下藥。第二種是可以反饋近似的結果,最後告訴患者詳細的治療方案。整個過程並沒有用到特別複雜的模型,也沒有追求很花哨的神經網絡,只是簡單的基於圖譜的功能。
第二個案例是華西第二醫院線上分診系統,這個系統中看似很高大上,其實是一個對話系統。給兒科和婦科的在線醫生提問任何一個自然語言形成的問題,系統會進行一個關係的建立並形成查詢圖,然後構成知識圖譜去匹配,得到相近的症狀和疾病。同時也會生成一些侯選的症狀,用戶自己選擇,再形成一個新的查詢圖,然後到知識圖譜裡進一步的匹配,更加區分開,最終基於結果推薦最合適的醫生,直接掛號、問診等。
提問環節
提問:訓練過程中是如何量化訓練過程的。
王萌:迭代是指位置,這個是訓練的過程,前期要做實驗分析。
提問:相當於整個過程初始向量都是適用的。還有一個問題,最後是出了論文,對這個論文做出的評判指標是什麼指標?
王萌:首先我們第一部分是提出來一個全新的知識圖譜表述模型,主要做兩項改進,第一個是我們讓語意相近的實體很近,傳統方法是亂的,因此在上下文改進上有效果。另外還強調邊的刻畫也是要滿足標準,而邊的滿足標準是有專門的評價指標,至少要達到傳統的方法,如果滿足了就說明方法可以。線上部分的評價,首先評價之一是用戶的滿意度,然後我們是讓直接的用戶去看結果是不是和查詢接近,同時還要做一定的分析,看接近程度是否和真實的相似度之間有關聯,最後效率評測的部分,模型一定是在有效性和效益上共同匹配。
提問:查詢圖的規模是什麼規模?
王萌:比如說微機百科規模比較大,包含了將近60個實體。
提問:就是實驗的時候。
王萌:這個規模很大,是整個BPP,但是是線下的過程。
提問:如果按照緊急聯繫人和朋友做參照,如何做區分。因為在向量空間中具體是不同的,但我們平時得到這個信息只有個人才能感知到緊急聯繫人和其他聯繫人的差別。
王萌:最簡單的是給哪條邊上加權重,每一條變量都有權重,並有相應的模型。另外一種方式,結點表示為概率分布,或者表示為範圍,如果這個範圍兩個節點之間的範圍重合面積越大說明關係越強,這個方式有相應的文章可以查詢。權重是需要有一定的人為幹預,如果基於機器學習很難把握。
提問:第二個問題是,您說的embedding這種模型,是一個同構網絡,同構網絡和知識圖譜的區別,我理解知識圖譜是異構的,我想問如果用同構網絡算法,用我的embedding在同構網絡上和知識圖譜上,最後的結果會差多少?
王萌:用同構的網絡去跑,它在意的是結點之間的距離,想要的是這些結點越相似的結點在空間中越近,但是他們之間距離的含義沒有辦法理解。
提問:比如我用一個知識圖譜或者一個同構網絡訓練了一個模型,我有一個下遊其他的任務,在機器學習的時候訓練一個模型並得到圖譜,用得到的向量進行模型訓練,確定參數。當把參數傳到預測的時候,可能不能直接訓練這個模型,要把這個數據放回圖譜裡,然後重構這個圖譜,再抽取向量,然後再到這個模型。這個過程相比經驗式的訓練更複雜嗎?
王萌:現在已經有了動態的知識圖譜的訓練模型,可以解決這個問題。這個領域大家可以去純模型關注清華大學,他們把知識圖譜這個模型,所有的文章和所有的開原始碼全部實現放在app上,隨時下載和使用,而且都是統一的框架。
提問:您和您團隊有沒有考慮到其他任務,就像是問答APP。
王萌:這個已經有大量研究了。
提問:好多找到關係對應的詞,把裡面連接上,有沒有圖譜研究的角度,可以更好的用這個圖譜。
王萌:其實大家可以把圖譜理解成一個知識庫,傳統在做自然語言處理的時候,任何一個詞本質上都是一個字符串,即使基於上下文只是帶有少量的信息,圖譜除了這個字符串後賦予了更多的額外信息,如果想要用還是和你相關,如何把圖譜的信息加到你的訓練任務裡,可以參照他們做PDQA或者端到端的系統裡。今年的傑出論文是清華大學朱老師提出的基於知識圖譜的對話問題,是關於做對話的理念,如何把知識圖譜應用。
提問:您這個模型訓練的時候是哪些參數需要訓練?
王萌:需要參數其實整個模型都是以向量維度,所有的向量都是隨機,都會調整,通過這個函數讓所有的向量趨於一個穩定的狀態,所以他的參數很少,但向量是幾乎所有的。
提問:醫療推薦的系統,病人提了問題會選一些可能問到的症狀,比如說綠色字點進去會不會一直推薦出結果。
王萌:騰訊要求對話一共只能三輪,不想讓病人漫無目的詢問,要求三輪之後,必須要讓醫生達到99%的概率。因此我們的對話輪數被限定死,在這樣的情況下怎麼求這個問題。
提問:當算術數量比較大,但是可以運行的,類似這樣的問題用一個決策樹是否可以。
王萌:決策樹我們也試過,達到80%多精度的時候已經不能再提升。剛開始第一版本是完全基於決策樹,第二版本上CNN,上神經網絡的方式,最後發現在85%-86%準確率就很難上升。但是這個項目要求是99%,甚至100%,因此只能上更準確的知識。
提問:最後的準確率是怎麼評判的?是一個評分嗎?
王萌:這是線上的系統,線下華西二院提供的所有病人的問診記錄,要在問診記錄上做評測,而且這個項目是三個團隊一起做,最後放到一個公開的平臺上PK。
實錄結束
王萌,畢業於西安交通大學計算機系,獲工學博士學位;澳大利亞昆士蘭大學聯合培養博士; 現為東南大學計算機科學與工程學院講師,研究方向為知識圖譜、人工智慧。發表SCI 論文、頂級會議論文10餘篇。