簡介
表示學習是學習一個特徵的技術的集合:將原始數據轉換成為能夠被機器學習來有效開發的一種形式。它避免了手動提取特徵的麻煩,允許計算機學習使用特徵的同時,也學習如何提取特徵:學習如何學習。機器學習任務,例如分類問題,通常都要求輸入在
數學上或者在計算上都非常便於處理,在這樣的前提下,特徵學習就應運而生了。然而,在我們現實世界中的數據例如圖片,視頻,以及感測器的測量值都非常的複雜,冗餘並且多變。那么,如何有效的提取出特徵並且將其表達出來就顯得非常重要。傳統的手動提取特徵需要大量的人力並且依賴於非常專業的知識。同時,還不便於推廣。這就要求特徵學習技術的整體設計非常有效,自動化,並且易於推廣。表示學習中最關鍵的問題是:如何評價一個表示比另一個表示更好?表示的選擇通常通常取決於隨後的學習任務,即一個好的表示應該使隨後的任務的學習變得更容易。
以無監督和有監督結合的共享表示學習為例。在深度學習任務中,我們通常有大量的無標籤的訓練樣本和少量的有標籤的訓練樣本。只在有限的有標籤的訓練樣本上學習,會導致模型存在嚴重過擬合問題。共享表示具體來說,可以從大量無標籤的觀測樣本中通過無監督的方法,學習出很好的表示,然後基於這些表示,採用少量有標籤的觀測樣本來得到好的模型參數,緩解監督學習中的過擬合問題。
共享表示學習涉及多個任務,多個任務之間共享一定相同的因素,比如相同的分布(distribution)、觀測樣本X來自相同的領域(domain)等。共享表示學習有多種表示形式。假設共享表示學習中採用訓練樣本A進行無監督學習,訓練樣本B進行有監督學習。樣本A和樣本B可能來自相同的領域,也可能來自不同的領域;可能任務服從相同的分布,也可能服從不同的分布。
理論基礎
表示學習得到的低維向量表示是一種分散式表示(distributed representation)。之所以如此命名,是因為孤立地看向量中的每一維,都沒有明確對應的含義;而綜合各維形成一個向量,則能夠表示對象的語義信息。這種表示方案並非憑空而來,而是受到人腦的工作機制啟發而來。我們知道,現實世界中的實體是離散的,不同對象之間有明顯的界限。人腦通過大量神經元上的激活和抑制存儲這些對象,形成內隱世界。顯而易見,每個單獨神經元的激活或抑制並沒有明確含義,但是多個神經元的狀態則能表示世間萬物。受到該工作機制的啟發,分散式表示的向量可以看作模擬人腦的多個神經元,每維對應一個神經元,而向量中的值對應神經元的激活或抑制狀態。基於神經網路這種對離散世界的連續表示機制,人腦具備了高度的學習能力與智慧型水平。表示學習正是對人腦這一工作機制的模仿。還值得一提的是,現實世界存在層次結構一個對象往往由更小的對象組成。例如一個房屋作為一個對象,是由門、窗戶、牆、天花板和地板等對象有機組合而成的,牆則由更小的磚塊和水泥等對象組成,以此類推。這種層次或嵌套的結構反映在人腦中,形成了神經網路的層次結構。最近象徵
人工神經網路復興的深度學習技術,其津津樂道的“深度”正是這種層次性的體現。
套用
知識表示學習是面向知識庫中實體和關係的表示學習。通過將實體或關係投影到低維向量空間,我們能夠實現對實體和關係的語義信息的表示,可以高效地計算實體、關係及其之間的複雜語義關聯。這對知識庫的構建、推理與套用均有重要意義。知識表示學習得到的分散式表示有以下典型套用:
1)相似度計算。利用實體的分散式表示,我們可以快速計算實體間的語義相似度,這對於自然語言處理和信息檢索的很多任務具有重要意義。
2)知識圖譜補全。構建大規模知識圖譜,需要不斷補充實體間的關係。利用知識表示學習模型,可以預測2個實體的關係,這一般稱為知識庫的連結預測,又稱為知識圖譜補全。
3)其他套用。知識表示學習已被廣泛用於關係抽取、自動問答、實體鏈指等任務,展現出巨大的套用潛力。隨著深度學習在自然語言處理各項重要任務中得到廣泛套用,這將為知識表示學習帶來更廣闊的套用空間。
優點
知識表示學習實現了對實體和關係的分散式表示,它具有以下主要優點:
顯著提升
計算效率。知識庫的三元組表示實際就是基於獨熱表示的。如前所分析的,在這種表示方式下,需要設計專門的圖算法計算實體間的語義和推理關係,計算複雜度高、可擴展性差。而表示學習得到的分散式表示,則能夠高效地實現語義相似度計算等操作,顯著提升計算效率。
有效緩解數據稀疏。由於表示學習將對象投影到統一的低維空間中,使每個對象均對應一個稠密向量,從而有效緩解數據稀疏問題,這主要在2個方面體現。一方面,每個對象的向量均為稠密有值的,因此可以度量任意對象之間的語義相似程度。而基於獨熱表示的圖算法,由於受到大規模知識圖譜稀疏特性的影響,往往無法有效計算很多對象之間的語義相似度。另一方面,將大量對象投影到統一空間的過程,也能夠將高頻對象的語義信息用於幫助低頻對象的語義表示,提高低頻對象的語義表示的精確性。
實現異質信息融合。不同來源的異質信息需要融合為整體,才能得到有效套用。例如,人們構造了大量知識庫,這些知識庫的構建規範和信息來源均有不同,例如著名的世界知識庫有DBPedia,YAGO,Freebase等。大量實體和關係在不同知識庫中的名稱不同。如何實現多知識庫的有機融合,對知識庫套用具有重要意義。如果基於網路表示,該任務只能通過設計專門圖算法來實現,效果較差,效率低下。而通過設計合理的表示學習模型,將不同來源的對象投影到同一個語義空間中,就能夠建立統一的表示空間,實現多知識庫的信息融合。此外,當我們在信息檢索或自然語言處理中套用知識庫時,往往需要計算查詢詞、句子、文檔和知識庫實體之間的複雜語義關聯。由於這些對象的異質性,計算它們的語義關聯往往是棘手問題。而表示學習亦能為異質對象提供統一表示空問,輕而易舉實現異質對象之間的語義關聯計算。