歸納邏輯程序設計的應用與發展論文
機器學習試圖利用計算機來模擬人類的學習行為,進而利用計算機的技術優勢給人類的生活帶來便利。歸納邏輯程序設計(Inductive Logic Programming,簡寫為ILI}是機器學習和邏輯程序設計的交叉研究領域。它在子句邏輯的框架下,通過讓計算機考察具體的事例,然后學習出能夠刻畫這些事例特有屬性的一般性規則。具體來說,計算機進行操作時,根據背景知識在限定的歸納假設空間中不斷地搜索,最后得出一個理論(也即滿足某種語言偏向的子句巢,使得所有的正例都能被理論覆蓋,而負實例不被覆蓋。ILP作為機器學習的重要方法,已經在生物信息學、自然語言處理、軟件工程等應用領域取得成功。
一、歸納邏輯程序設計的研究現狀
近年來,ILP得到很大的發展,其應用領域也不斷拓寬。一般說來,ILP最重要的應用領域之一是生物信息學的。ILP之所以能適用于生物信息學的任務,是因為它會將背景知識和結構數據考慮在內,學習產生人類能理解的知識。在學習蛋白質結構的折疊的過程中,由于對其結構的學習很重要,所以需要找到能夠清晰描述其結構的語言。傳統的屬性方法無法描述對象間的關系,因而也就無法合理地表示蛋白質分子的三維結構,ILP的一階邏輯工具—子句邏輯是非常適合描述這種關系的語言,它在預測蛋白質結構信息和蛋白質次級結構生成中發揮了很大作用。同時,在預測化合物誘變問題上,ILP也解決了傳統方法無法解決的結構關系問題。
機器學習一個非常獨特的應用領域是自然語言處理,它的主要任務在于建立各種自然語言處理系統,如文字自動識別系統、語音自動識別系統、機器翻譯系統、自然語言信息檢索系統、自動索引系統等。在自然語言處理中,ILP的方法可以從文本中抽取復雜的關系數據,這是ILP優于其他機器學習技術的特點之一。ILP系統還常常為工程學、環境監控、軟件分析、模式學習和關系發現等領域的數據構造預測模型。雖然ILP與其他機器學習方法相比有一定的優勢,然而隨著科學技術發展和需求的增加,ILP在應用中也面臨許多挑戰:
首先,相比其他的機器學習系統來說,ILP系統對時間和空間有更高的要求,這使得ILP很難去處理大的數據集。因此,ILP應該努力尋求與隨機搜索和并行處理技術等方法結合以處理結構復雜的數據集。
其次,隱馬爾科夫模型、動態貝葉斯網絡、雙連詞和三連詞等技術都能充分表達任務中的內在概率,而ILP系統很少有表達、處理概率的能力,這也是ILP的重大不足之一。
最后,當背景知識和數據集用一階邏輯清晰表達出來時,ILP可以運行良好。但是當數據集是無法通過一階邏輯清晰表達的圖像、視頻、音頻時,ILP就無能為力。就這一問題來說,ILP需要從約束邏輯程序設計中借鑒經驗,學習處理特殊數據格式的技術。
二、歸納邏輯程序設計的發展展望
ILP用過程中所顯現出來的不足之處,使得ILP必須與其他研究領域的技術相結合,來提高它解決問題的能力。為了使ILP更好地完成歸納學習任務,戴維·培基提出了ILP未來發展的五個研究方向。
1 .ILP和貝葉斯網絡
目前在人工智能中,貝葉斯網絡(Bayesian network)是處理不確定信息和進行概率推理的最有力工具,它在很大程度上取代了傳統的基于規則的專家系統。人工智能的研究者已經意識到概率的重要性,例如在醫療診斷中,幾乎沒有普遍真的醫學規律存在,也很少有完全正確的實驗可被利用。取而代之的是,概率被用來刻畫任務本身內在的不確定性。貝葉斯網絡被特別設計出來去表達一些可能的概率分布,并且嘗試對這些概率分布進行推理。它已經在醫療診斷、拼寫糾錯、故障診斷等領域得到應用,也成為了國內外研究的新寵兒。
雖然貝葉斯網絡有如此良好的應用,然而它本質上是命題的:變量集是確定且有限的,并且每個變量都有其確定的可能值域。這個事實限制了貝葉斯網絡的應用。此外,當一個貝葉斯網用一個圖表表示時,圖表能夠刻畫的唯一關系是概率、或然性之間的條件依賴關系,它不能表達關系結構。要想使貝葉斯網絡更好地為人類服務,必須試圖去拓展貝葉斯網絡的表達力,并且試圖用一個拓展的表達來進行歸納學習。實踐證明,這個拓展的表達結果是復雜的,還降低了一階邏輯的表達力。ILP研究者嘗試學習添加概率的子句,來拓展貝葉斯網的表達力,在一定程度上可以解決這一問題。目前,學者已經提出幾種可供選擇的子句表達方式,其中包括概率邏輯程序設計,隨機邏輯程序設計和概率約束邏輯程序設計。庫塞斯(Cusses)著手研究隨機邏輯程序設計的算法和應用,而恩格"'b"和哈達維則研究貝葉斯網絡的一階表達。一般說來,ILP和貝葉斯網絡學習是正交的。ILP擅長處理關系域,而貝葉斯網絡對概率處理的很好。因此,設想一個能夠具有貝葉斯網絡學習和ILP-者優點的學習算法的存在和應用是合理的,嘗試將貝葉斯網絡學習和ILP結合的領域也應該是一個有前途、有希望的研究領域。
2 .ILP和隨機搜索
隨著計算機技術的發展,人類收集數據、存儲數據的能力有了很大提高,對這些數據施以算法搜索處理,就能滿足人類不同的需求。隨機搜索是指在目標位置基本服從均勻分布的條件下,搜索軌跡隨機且均勻散布在目標分布區域內的一種搜索方式。常用的隨機搜索算法主要包括模擬退火算法、進化策略、遺傳算法。這些算法求解時搜索過程是非確定性的,算法對約束函數及目標函數有限制,因而可以解決大規模復雜問題。
大部分ILP算法搜索由假設而定的一個子句格。它們尋找這樣一個子句—即能夠使子句覆蓋范圍的函數達到最大化的`子句。根據它們如何搜索這個子句格,這些ILP算法被分為(基于最小一般泛化腳自底向上算法和(基于求精的自頂向下算法。算法又根據它們是否利用貪婪搜索、定向搜索、接受搜索來進行進一步劃分。在幾乎所有算法中,以上這些搜索方法都是確定性搜索。然而,對于其他ILP之外的具有挑戰性的邏輯或人工智能任務,隨機搜索常常勝過確定性搜索。1992年,考茨、塞爾曼、維斯克、米切爾以及其他學者對局部搜索算法諸如LSAT, WSAT的可滿足性問題的研究,已經證實了隨機搜索更具優勢。塞巴格(Saba咨和羅維洛從事于隨機匹配和定理證明,并且在誘變性研究上超越PROGOL程序,同時并沒有犧牲預測準確性和理解力。由此可以看出,隨機搜索是ILP中一個有前途的研究方向。ILP可以嘗試與隨機搜索算法結合,利用隨機搜索可選擇的形式去檢測子句格,嘗試解決不確定搜索問題。
3 .ILP和約束邏輯程序設計
機器學習中廣為人知的成功理論之一是約束邏輯程序設計。這個理論成功的原因在于它整合邏輯和特殊目的的推理者或約束解決者的能力。前面提到的在ILP中加入概率的方法也可以理解為特殊目的推理者在貝葉斯網絡片段形式中訴諸約束。關于約束問題,斯里尼瓦森和卡馬喬使用線性回歸去構建一個約束,而克萊文和斯拉特利的工作是用樸素貝葉斯技術去構造一個約束。值得注意的是,除了在演繹過程中所需要的約束解釋器外,ILP還需要一個像類似線性回歸一樣的“約束構造函數”。一般情況下,采用一個數據庫的標準邏輯解釋,這里每一個關系是一個謂詞,并且關系中每一元組是由那個謂詞建立而來的一個基原子公式。現在假設數據庫中包含一些復雜數據的格式諸如影像,簡單的邏輯相似性就不能夠刻畫一系列影像的重要特征,這時就需要基于特殊目的的影像處理技術。我們將ILP運用于處理電影(如MPEG格溝或視頻(如格溝數據時,首先需要構造特殊目的的約束解釋器,再用ILP技術對其進行處理。關于如何將約束加入到ILP研究中,需要關注阿蘭·弗里希的工作。令人遺憾的是,他的工作沒有涉及如何確保歸納學習系統的效率,以及如何去設計約束解釋器的正確類型。這些問題正是留給我們去思考的,阿蘭·弗里希至少給我們提供了一種考慮問題的思路。ILP確實需要從約束邏輯程序設計中借鑒經驗,學習處理特殊數據格式的技術,提高其處理問題和解決問題的能力。
4 .ILP和人類專家的交流
在從遠程通訊、分子生物學、制藥學等領域的數據庫中發現新知識的過程中,如果一個機器學習系統和人類專家能夠以團隊的形式合作,充分利用計算機的速度優勢及人類專家的知識和技術優勢,那么在很大程度上會提高機器學習的效率和工作水平,促進新知識的發現。ILP系統的三個特性使得它在知識發現中能夠很自然地與人類專家進行合作:首先,ILP系統能夠利用可宣告的背景知識去構造假設,這就使得ILP和領域專家之間能夠展開合作。其次,基于特征的學習系統要求使用者從描述創造實例的特征開始,ILP系統允許結構實例根據組成它的對象以及這些對象之間的關系一起自然地被描述。一個分子的二維結構可以將它的原子作為對象,將原子之間的聯系作為關系,這樣直接表示出來。三維結構可以通過添加距離關系而被表示。最后,ILP系統和命題邏輯學習者一樣,都具有輸出用戶可以理解的規則的能力,一些ILP系統甚至可以用英語返回規則。
盡管ILP系統呈現了如此多的有用特性,它在知識發現中作為人類的合作者,仍然還有許多缺點和不足。首先,大多數ILP系統在探試程序基礎上返回單一理論,因此丟掉了對一些領域專家來說有意義的子句。其次,ILP系統不能用人類合作者所使用的那種方式來回答人類專家的問題。它們用簡單的成批處理模式操作,采用一個數據庫作為輸入,并且在此基礎上返回一個假設。再次,ILP系統不會像人類合作者那樣對輸入的數據進行質疑。最后,人類專家能夠為假設提供知識豐富的辯護形式,例如將一個新的假設與現有的信念聯系起來,ILP系統做不到這一點,它僅僅能提供正確的判斷。在知識發現和知識獲取的人機合作中,要克服ILP的不足,不僅需要邏輯和人工智能的技術,還需要對邏輯主體進行研究,只有二者結合才能使機器與人類專家進行良好溝通。
5 .ILP和并行處理技術
面對今天復雜的科學計算、各式各樣的圖象處理以及大量的信號等問題,提高計算機的運行速度和縮短程序的運行時間至關重要。ILP系統對時間和空間有很高的要求,這使得ILP很難去處理大的數據集。并行處理技術的出現,為ILP處理大數據集提供了解決思路。并行處理系統由多個處理單元組成,通過特定方法可以將一個任務分成若干個子任務,分別由各處理單元完成。目前并行處理技術最顯著的是“貝奧武夫簇群技術”的普遍應用,以及個人計算機、工作站、智能終端并行處理技術的使用。大衛·斯基利康在大容量同步并行模型之下發展了一個PROGOL的并行實施技術。艾倫·韋德在貝奧武夫簇群技術基礎上,再次進行自上而下的ILP研究。
并行處理技術的理想是在處理時間上的一個縮減,這里處理時間是處理程序所用數量的一個線性函數,斜率接近于1。由于程序之間的管理自檢和資源的競爭,這個理想很難達到。一個好的并行策略,要求程序之間盡可能地相對獨立,盡量使得程序之間擁有較少的交流或資源共享。在測試數據時,在不同的處理器之間派發假設空間。更詳細地說,對一個完備的搜索,一個并行ILP方案能夠產生一個戶主用戶模式,這里戶主將不同分段的假設空間指派給用戶,然后用戶用假設對數據進行測試。用戶反饋給戶主的所有假設在數據上達到一個預先最小評估值。當用戶完成自己的任務時,戶主繼續指派時空的新程序段,直到整個空間被開發。在用戶和戶主交流過程中,要考慮每次交流產生數據的成本,還要考慮戶主所花費的時間和戶主一用戶交流的時間。在相對較大的論域中,完備性搜索期望用戶和戶主之間有盡量少的假設交流。如果戶主面對如此快速增長的假設空間片段,能夠以這樣一個方式將這些片段與用戶簡潔地交流是可能的;那么整體開銷將是低的,處理時間也會縮減,這樣也就接近理想的并行處理模式。
三、結語
人類有對宇宙本源、生命本質、自我本體的好奇,對機器如何模擬人類思維進行學習和思考這一問題的探討,給機器學習添加了自然科學色彩。本文總結了歸納邏輯程序設計的發展現狀,對目前ILP發展過程存在的問題進行了詳細地闡述。雖然ILP已經在軟件工程、計算機網絡、生物信息學等眾多領域發揮作用,然而應用領域的迫切需求使得ILP仍需與貝葉斯網絡、隨機搜索、并行處理等技術結合,進一步推動科技的發展,進而為人類的生活帶來便利。.
【歸納邏輯程序設計的應用與發展論文】相關文章:
歸納邏輯程序設計的發展論文05-30
燃氣空調的應用與發展論文03-03
電子商務發展與應用論文04-25
新型建材的發展與應用論文07-02
論文:納米涂料發展與應用分析06-28
淺談涂料染色的發展與應用論文05-25
管理會計在我國的應用與發展論文12-13
平面設計應用與未來發展論文05-06
變革型領導理論應用發展的論文05-12