第4問講深度學習的時候我們說過:隨著大數(shù)據(jù)紅利的消失殆盡,數(shù)據(jù)采集難度和獲取成本日益增高,深度學習模型效果的天花板也已近在眉睫。
而另一方面,已經大量存在并持續(xù)涌現(xiàn)的先驗知識卻尚未被深度學習有效利用。融合知識圖譜與深度學習,已然成為進一步提升深度學習效果的重要思路之一。
壹
什么是知識圖譜?
知識圖譜,是基于二元關系的知識庫,旨在描述現(xiàn)實世界中存在的各種實體或概念(“蘋果”是一個實體;“水果”是“蘋果”的概念),及其相互關系。其基本組成單位是“實體-關系-實體”的三元組,實體之間通過關系相互聯(lián)結,構成網狀結構。
在實踐中,我們并不需要太過糾結使用哪種工具的才是知識圖譜,哪些不是。關鍵是它的本質是什么。
而理解本質需要從知識圖譜的演化過程入手。
貮
知識圖譜的演化
知識圖譜這個概念是近五、六年才逐漸為人所知的,但這項技術本身則可追溯到五六十年代前就已經形成的一個方向:即知識工程。我們叫它符號主義或者理性主義,也就是我們之前第3問提到過的人工智能領域內的三大學術流派之一。
60s 語義網
六十年代有一種東西叫做語義網絡。語義網絡的誕生起源于一些做認知科學的學者,他們認為人類的自然語言是很復雜的,和計算機儲存信息的差別非常大。如何把人類的自然語言用一種符號化的形式表示出來,從而讓計算機也能夠讀懂和學會。
給大家看一個語義網絡的示例就很容易明白了:
語義網絡其實就是一個網絡。這張圖上有各種不同的概念,比如中間的哺乳動物,貓(cat)是一種哺乳動物,貓有毛(Fur);熊是哺乳動物,熊也有毛;鯨(Whale)是哺乳動物,但生活在水里面;魚也生活在水里面,但不是哺乳動物,而屬于哺乳動物的上位概念:動物(Animal)這個類別;哺乳動物是一種脊椎動物(Vertebra),也是動物的一種。
看懂了這張示例圖,大家理解起來是不是有點兒感覺了呢?
70-80s 描述邏輯
語義網絡到了七十、八十年代時演化成了描述邏輯。產生這種變化的原因在于,很多從事自然語言處理和知識表現(xiàn)的學者批評了這種語義網絡,他們認為語義網絡本身只是一種表征,而沒有辦法用于推理。語義網絡+推理變成了新的邏輯系統(tǒng),叫做“描述邏輯”
如上圖所示,假設我們知道1)Gowild是一個人工智能公司;2)人工智能公司是高科技公司。那么就可以推理得出:Gowild是高科技公司。
很容易理解對吧!
再比如,1)投資是投資人投資公司;2)胡海泉投資了Gowild。那么我們就可以推理出:1)胡海泉是一個投資人;2)Gowild是一個公司。
當然這都是一些比較簡單的例子,人類的語言遠比這些要復雜得多。
90s OWL
到了九十年代,描述邏輯成為知識表現(xiàn)領域的一種非常顯學和重要的分支,正好這時候互聯(lián)網興起了。到了1995年前后開始了真正知識圖譜化的第一步:開始把描述邏輯用互聯(lián)網的語言來重新表征,有人用HTML,也有人用XML。
1999年馬里蘭大學開始發(fā)布了第一個這樣的語言,叫“SHOE”,后來這個語言被美國國防部高等研究所資助了一個項目叫“DAML”。與此同時,在歐洲也有一個非常相似的項目“OIL”,再后來經過W3C的綜合匯總與進一步協(xié)調,合并了一個新的語言叫“OWL”。
從九十年代到 2009 年這十幾年期間,這個領域不斷向上、向好積極發(fā)展,在那個時候我們曾經認為 OWL 是描述這個世界非常好的一種工具,因為它對于機?處理是非常友好的,所以我們就希望把它放到互聯(lián)網上去,讓更多人用到,但是這個設想后來并沒有實現(xiàn)。
OWL這個語言,或者說語義網整個領域,在2006 年前后遇到了瓶頸:沒有人真的去產生這樣的數(shù)據(jù),因為大多數(shù)日常場景根本用不到。關于到底應該加強語義呢,還是加強互聯(lián)網屬性?由此產生了兩派不同的人不斷進行爭論。
60-90s 小結
知識圖譜技術的發(fā)展歷史總的來說可以分為兩個大的階段:一個是從六十年代到九十年代,早期的知識圖譜原型,包括語義網絡、專家系統(tǒng)等等;第二個就是從語義網絡到描述邏輯,一直發(fā)展到OWL(并行的還有另外一些,比如基于框架邏輯產生的另外一種語言“RIF”)。這十幾年的時間,實際上完成了一種從弱語義到強語義的嘗試,不斷加強語義表現(xiàn)的表達力,但最后證明這個做法是不太妥當?shù)?/b>。
雖然在最早的語義網絡里,我們無法定義一個詞的意義。比如第一個例子圖中居于中間位置的詞語“哺乳動物”,我們很難讓計算機理解什么是真正的哺乳動物。但對于計算機而言,它只需要知道萬事萬物之間的聯(lián)系,對于機器處理來說就夠了。雖然語義網絡沒有所謂的“語義”,但它的語義其實都在關系里了。
叄
元數(shù)據(jù)框架到RDF
除了學術性很強的描述邏輯OWL分支之外,知識圖譜還有另外一個分支是來自于元數(shù)據(jù)框架的。這個工作最早是一個叫“Guha”的人在蘋果公司做的,Ghua在某種程度上可以說是“知識圖譜之父”,谷歌的知識圖譜建立的背后Ghua也是主要推手。
1997年Guha發(fā)明了RDF,并且在RDF的基礎上發(fā)明了RSS語言。十多年前我們看新聞都是用RSS訂閱的。從本源上來講,RSS這項技術就是RDF的第一個應用。RSS的第一個字母“R”就是RDF。
RDF的本質就是三元組,主語、謂語、賓語就是個三元組。比如“我叫小T”,“我”是主語,“是”是謂語,“小T”是賓語。在RDF這個框架下,萬事萬物各種復雜的關系最后都被拆分成三元組。
RDF是一個沒有語義的元數(shù)據(jù)框架,它和前面提到的描述邏輯不同,描述邏輯是從實驗室里來的,它想構建一個龐大的體系,一個完美的知識表現(xiàn)語言,然后再尋求落地。
而RDF從一開始就是一個從實踐出發(fā)、自底向上的語言。我們日常生活中所遇到的絕大多數(shù)網站,都有著某種類型的元數(shù)據(jù),其中相當一部分就是用RDF的不同變種來實現(xiàn)的。所以RDF總得來說是一個比較成功的技術,因為它來自于現(xiàn)實的實踐基礎。
小? 結
知識圖譜的領域從 2006 年往前一直不斷從弱語義到強語義的發(fā)展過程中,這個階段最后被證明是不太成功的。2006 年之后這個領域不斷的強調工程、強調應用、強調數(shù)據(jù)、強調跟實踐最相關的東西,語義也進一步弱化,又從強語義再次回歸到弱語義。2012 年谷歌的知識圖譜是完全拋棄掉語義的。
從二十年來的歷史表明,從實踐中總結的方法要優(yōu)于從頂向下設計的方法。簡單的優(yōu)于強大的,太過復雜的比如 OWL 最終用不起來,反而比較簡單的的像 RDF、最近比較火的 JSON?LD 用得越來越多。越簡單越好,這就是 20 年來最核心學習到的東西。
—THE END—
下期內容:如何構建知識圖譜? | “人工智能+區(qū)塊鏈”科普第7問