知識是大搜尋的基礎,知識的表示與推演是智慧化搜尋的核心問題。對知識表示和管理的研究已經有很長的歷史。迄今為止,知識表示和管理的模型可以分為基於邏輯的表示模型、基於框架的表示模型、基於語義網的表示模型、基於本體的表示模型和面向機器學習的表示模型。知識表示的研究有很長的歷史,發展出了多個分支,每一種知識表示方法都有其優缺點。
基於邏輯的表示模型
專家系統已經有很多年的歷史,邏輯規則和模糊規則是專家系統中常見的知識表示模型。美國加利福尼亞人工智慧研究中心的Moore在1982年的AAAI上首先提出了基於邏輯的知識表示。早期的邏輯規則靠專家構建,後來研究者們一直探索自動構建邏輯規則的方法。美國路易斯安那大學的Minkoo等2000年採用自動化的方法提取邏輯規則,但只能支持特定的數據集。德國不萊梅大學的Tenorth等2013年採用半自動化的方法從多種數據集中提取邏輯規則,取得了比較好的效果。在基於模糊規則的系統中,知識是通過模糊集來表示的。和邏輯規則相比,模糊規則能夠更好地表示不確定性和連續變數。早期的模糊規則構建是通過專家的方式。後來人們不斷提出新的方法來從數據中提取模糊規則,如波蘭哥白尼大學的Duch等2001年提出的特徵空間映射和C4.5分類樹方法、加州大學伯克利的Nurnberger等2004年提出的基於遺傳算法的方法、西班牙詹恩大學的Prado等2010年提出的基於粒子群最佳化的方法等。基於邏輯的知識表示方法的特點是善於表達因果關係,具備很好的推理能力,但在知識表示的靈活性方面有很大不足。
基於框架的知識表示
麻省理工的明斯基於1975年首先提出了基於框架的知識表示方法。框架模型能夠把知識的內部結構關係以及知識之間的特殊關係表示出來,並把與某個實體或實體集的相關特性都集中在一起。1970年代中期,加州大學伯克利的Fillmore等人開始研究架構語義的理論,後來發展成了計算資源FrameNet。框架知識表示語言的一個重大進展是Brachman等在1978年提出的KL-ONE框架語言。後來的很多其他框架語言都是從KL-ONE發展而來的。當前在框架知識表示方面仍然有很多研究工作,如加拿大蒙特婁大學的Azoulay在2017年AAAI上發表的面向大規模專門語料庫的基於框架的知識表示方法。基於框架的知識表示最突出的特點是善於表示結構性知識,框架系統的數據結構和問題求解過程也與人類的思維和問題求解過程相似。但框架知識表示缺乏形式理論,沒有明確的推理機制保證問題求解的可行性和推理過程的嚴密性。同時由於許多實際情況與原型存在較大的差異,因此適應能力不強。
基於語義網的知識表示
劍橋大學語言研究中心的Richens在1956年首先提出了語義網的概念。語義網利用節點和帶標記的邊結構的有向圖描述事件、概念、狀況、動作及客體之間的關係。帶標記的有向圖能十分自然的描述客體之間的關係。加利福尼亞SDC公司的Simmons等1960年代在SYNTHEX項目中單獨進行了語義網方面的開發。1980年代,荷蘭的格羅寧根大學和特溫特大學聯合開發了知識圖項目,是谷歌在2012年提出的知識圖譜的雛形。WordNet由普林斯頓大學從1985年開始開發,當前的最新版本是3.1。在WordNet中,詞及其含義之間基於語義和詞法相似性進行連線。研究者們對WordNet進行了持續的改進,如2011年義大利特蘭托大學的Verdezoto等採取半自動化的方法來最佳化WordNet。FrameNet由加州大學伯克利的Fillmore等人在1997開始開發,是多層次的框架構成的網路。愛丁堡大學的McConville等2008年提出基於繼承和同心集的方法來改進FrameNet。韓國延世大學的Park等人2016年提出了面向FrameNet的概念語義化方法。語義網具有廣泛的表示範圍和強大的表示能力,用其他形式的表示方法能表達的知識幾乎都可以用語義網路來表示。但基於語義網的知識表示也有一些缺陷,其推理規則不十分明了,不能充分保證網路操作所得推論的嚴格性和有效性。一旦節點個數太多,網路結構複雜,推理就比較困難。同時語義網頁不便於表達判斷性知識與深層知識。
基於本體的知識表示
本體概念的產生可以追溯到古希臘時代。本體模型把知識表示為一個概念的分類系統,其中概念包含屬性、值和關係。本體知識表示模型的主要目標是提供一個知識共享與重用的平台。一個本體至少包括三個部分:類(領域概念)、關係及實例。本體的常用描述工具是Web本體語言(OWL)和資源定義框架(RDF)。加拿大蒙特婁大學的Ebrahimipour等2015年提出了融合OWL和RDF來描述本體的方法。套用本體是面向特定套用的,往往描述的是面向特定任務的概念關係。早期的套用本體依靠人工構建,或採取一些半自動化的方法。西班牙穆爾西亞大學的Minarro-Gimenez等在2012年提出了一種自動化的套用本體構建方法,支持對多種已有本體的重用。領域本體是面向一個特定領域的,如加拿大多倫多大學的El-Diraby等2011年開發的製造業領域本體。通用本體一般是指頂層的本體,已經在很多領域中體現出了有效性。通用本體中的概念一般是狀態、事件、過程、動作等抽象的通用概念。Su等2003年把通用本體套用於多Agent系統中,支持Agent間基於通用本體進行互動和協作。Czarnecki等2010年提出了通用本體TOGAF,包括面向商業、數據、套用和技術四大領域的通用知識。通用本體的構建很難實現完全自動化,一般都是半自動化的方法。通用本體當前面臨的挑戰是構建困難和難以驗證效果。表示本體不面向特定領域,這種本體裡面的實體並不有確切地說明應該表示什麼,主要套用於語義網。韓國慶熙大學的Khanet等2015年提出MBO(Mediation Bridge Ontology)表示本體來支持語義網上的互動。表示本體的構建大都採用人工的方法。基於本體的知識表示方法有很強的表達能力,但本體的構建代價比較大,並且本體表示的複雜性導致基於本體的知識表示在產業界套用的比較少。
基於機器學習的知識表示
和前面的知識表示不同,面向機器學習的知識表示側重於如何通過機器學習的方法從數據中自動獲取知識。在前面提到的幾種知識表示方法中,也都或多或少用到了基於機器學習的知識獲取。近年來,隨著大數據的發展,知識圖譜及相關的基於圖的知識表示模型得到廣泛套用。知識圖譜這一概念2012年被Google公司提出,而後誕生了很多其它的類似模型。這類基於圖的模型可以說是語義網的一種,但更側重實用、大規模和自動化。2013年,法國UTC大學Bordes等提出了基於翻譯模型TransE的知識表示學習,主要用來解決知識表示問題。隨後,產生了一系列模型對TransE模型進行改進和補充。知識圖譜中知識推理方法主要基於神經網路模型或路徑排序算法,例如史丹福大學Socher等提出了神經張量網路模型藉助神經網路模型進行知識推理。卡耐基梅隆大學的Gardner等提出了一種結合語義向量和隨機遊走的關係路徑推理方式,首次嘗試採用語義向量結合路徑特徵的方式來建立推理模型,獲得了比較好的效果。基於圖的知識表示需要基於圖資料庫的管理。目前最具代表性的圖數據管理系統(如Neo4j、GraphX等)通常定義了一些運算元,並基於這些運算元來實現圖數據的管理與分析。現有系統所定義的運算元大部分基於圖遍歷運算和疊代操作,對於圖上結構操作(如子圖匹配運算)的管理與分析效率不高。此外,這些常用的圖數據管理系統都是主要面向一些靜態圖上的運算。對於不斷更新的動態圖,現有系統的查詢處理的效率不高,尤其是針對大搜尋套用中對於異構數據的處理和基於智慧型體的靈活配置服務還需要進一步深入研究。