話說上回我們首先破解了幾個學術黑話,從爹媽和你的關系角度了解了知識圖譜的基本組成:三元組、概念、實體、屬性、關系。簡單點兒說就是“兩點一線”,節點就是實體或概念,邊就是關系或屬性。
然后我們認識了一下當今圖數據庫圈的頂流明星 Neo4j 大師。這貨開源不要錢還特別直觀好用。
最后我們快速見識了知識圖譜滲透進日常生活的方方面面,從社交、搜索、醫療,到金融、商業、娛樂,越早學會就越早拿到了打開新時代知識大門的鑰匙。
這門功夫到底怎么練?今天咱們就見識一下。
知識圖譜說白了就是把客觀經驗沉淀在巨大的網絡中,借助計算機、互聯網和人工智能算法的力量,讓原來只屬于個別大牛的專業知識能被普通人享用,便于復制、傳播和使用。這就好比金庸武俠小說中的吸星大法,專吸別人的內功,牛掰!
自從谷歌、百度這類搜索引擎橫行江湖,還有幾個閑人沒事再去泡圖書館?同樣,等知識圖譜技術日益成熟之后,估計大伙兒也就徹底解放了,沒人再費勁兒扒拉地上學、考試、考證,學習將變得超級容易,互相把知識庫吸來吸取就夠了。
知識圖譜有這么多好處,我們怎么去構建一個知識圖譜呢?簡單!只需要五招必殺技即可搞定!
1. 本體(Schema)定義
這第一招好比練基本功,類似扎馬步。通俗點兒講就是先有個大概的圖紙,根據專家經驗畫出個大致的層級關系,供后續不斷完善,這點也特別像蓋樓先得有個大致的設計圖一樣。這步的關鍵之處在于只有底子打好了,后面的功夫才練得快,否則一旦出問題再返工就麻煩了。
2. 知識抽取
這第二招就類似吸星大法了,也是人工智能知識圖譜的精髓所在,靠的就是用計算機算法自動地抓取并解析數據,抽取其中的實體和關系,使得圖譜中沉淀的知識庫源源不斷的擴大。蓋樓的例子雖然不完全一樣,不太好像軟件一樣直接抄,但很多設計也都是相互借鑒。用料就更甭提了,基本上都是鋼筋、水泥、混凝土,先模塊化,然后盡量復用成熟的建設方法。只不過二者的區別就是知識圖譜是純軟件的,能夠用算法自動進行。
3. 知識抽取
吸星大法雖然可以偷懶,撿現成的直接從別人那里吸取內力,但也容易走火入魔。因此必須要能融會貫通,消化吸收變成真正自己的內功。知識圖譜也是一樣,同一件事可能不同人在不同場合有不同的說法,因此必須要進行知識的融合,消除實體歧義,合并相似的實體和關系,剔除冗余和錯誤的概念,保證知識的質量。這點也十分類似在蓋樓過程中發現設計圖紙的問題,要及時修改一樣。
4. 知識存儲
知識的存儲也是非常大的挑戰。大一點的通用知識圖譜動輒都是幾十億甚至上百億的節點,百億乃至于千億級別的關系。小一點的專業知識圖譜一般也會有幾十萬的節點,上千萬的關系。因此如何做好存儲系統是非常重要的事情,這部分我們可以借助像 Neo4j 這樣的工具軟件,但同時也要靠經驗和設計。這就像人練武功一樣,再好的武功也得有好的身體承受,敏捷的身手、不懈的鍛煉那是必須的。蓋樓也是一樣,再漂亮的設計也得一磚一瓦一層一層的蓋。
5. 知識推理
第五招是知識圖譜的特色。這點其實也和練武功非常像,吸收了別人的內力,融會貫通,沉淀到自己的奇經八脈后,往往可以再突破衍生出新的招式。知識推理可以補充知識圖譜的內容,或是進行完善、校驗。以蓋樓類別,這步有點像裝修,同樣的房間可以進一步展現出不同樣式。
知識圖譜的完善是永無止境的,往往需要在不斷反饋、動態擴展和逐步迭代中進化。
這種循環反饋機制也恰恰是知識圖譜的魅力所在。
歡迎跟進,未完待續…