多視圖學習(multi-view learning)
前期吹牛:今天這一章我們就是來吹牛的,剛開始老板在和我說什么叫多視圖學習的時候,我的腦海中是這么理解的:我們在欣賞妹子福利照片的時候,不能只看45度角的吧,要不那樣豈不是都是美女了,這還得了。所以我們要看各個角度的照片,打擊盜版美女,給大家創建一個真誠的少點欺騙的和諧世界。所以說,多視圖學習就是360度,全方位無死角的欣賞(學習)然后得到最接近真實值的判定。
話說那么一天啊,一個人和一個螞蟻在對話,他們看着一個米飯粒,人說,這個米飯粒胖嘟嘟的一定很香,螞蟻說:你胡說,這米粒明明是長方形的,你干嘛說他胖嘟嘟的。然后他們就吵得面紅耳赤,就去問上帝,這米究竟是什么樣子的。上帝說:你們都沒有錯,人看到的是三維的世界,所以他們能看到立體的東西,而螞蟻只能看到二維的,所以螞蟻只能看到平面的。
從上面的小故事我們可以看出,多視圖學習就是從多個角度去學習,然后數據進行預測提高准確性。
一 半監督學習
半監督學習問題在真實世界中大量存在,以下列舉幾例:
在文本分類中,例如,垃圾郵件過濾問題,所有郵件都可以作為未標記數據,標記數據的獲取要求用戶標注哪些是垃圾郵件,哪些不是,如果使用傳統的監督學習方法,需要用戶標記上千個郵件作為樣本,才能使訓練的學習器有較好的過濾性能,而幾乎沒有用戶願意花如此多的時間標記郵件,在只有少量的用戶標記郵件和大量的未標記郵件的情況下,使用半監督學習方法訓練垃圾郵件過濾器可能是一個好的選擇。在圖像處理中,例如,計算機輔助醫學圖像分析問題,可以從醫院獲得大量的醫學圖像作為未標記數據,但如果要求醫學專家把這些圖像中的病灶都標識出來,往往是不現實的,一般只能對少量醫學圖像中的病灶進行標識,所以需要使用半監督學習方法來減少對標記數據的需求,在自然語言處理中,例如,句法分析問題,為了訓練一個好的句法分析器需要構造句子/句法樹,這是一項十分耗時的工作,構造幾千個句法樹可能要耗費一個語言學家幾年的時間,而可以作為未標記數據使用的句子是普遍存在的,考慮未標記數據的半監督學習能解決語言學家的困難,上述實例表明,隨着信息技術的飛速發展,我們面臨的問題是,數據大量存在,但獲取數據的標記卻需要耗費大量的人力物力,傳統的監督學習方法在標記數據較少的情況下很難獲得好的預測性能"半監督學習正是為了解決這類問題而提出,在理論和實際中都具有重要意義。
1.1多視圖的半監督學習
1.1.1多視圖數據
在一些實際問題中,對於同一事物可以從多種不同的途徑或不同的角度對其進行描述,這多種描述構成事物的多個視圖(multi view)。本文用帶下標的xi表示第i個數據點,用帶上標的x(t)表示數據的第i個視圖,則多視圖數據可表示為xi={x1x2,…,xn}其中,表示視圖的個數,多視圖數據在真實世界中廣泛存在,以下列舉幾例:在網頁分類問題中,既可以根據網頁本身包含的信息來對網頁進行分類,也可以利用鏈接到該網頁的超鏈接所包含的信息來進行分類,這樣,網頁數據就可以用兩個視圖表示,刻畫網頁本身包含信息的特征集構成第一個視圖,刻畫超鏈接所包含信息的特征集構成第二個視圖,在電視片段的識別問題中,既可以根據視頻中包含的信息來進行識別,也可以根據音頻中包含的信息來進行識別,所以電視數據可以用視頻和音頻這兩個視圖表示"在自然語言理解問題中,同一語義對象,可以用不同的語言來表達,這些不同的語言描述就構成了此語義對象的不同視圖表示,上述示例中,多視圖用於表示數據的不同特征集,多視圖還可以用於表示數據的不同來源;例如對於同一個數據源,用不同的采集裝置進行采集,這多個采集結果構成了數據的不同視圖;另外,多視圖還可以用於表示數據間的不同關系;例如,學術論文的分類問題中,論文間既有參考文獻的引用關系,也有作者的合作關系,可以把不同的關系用不同的視圖來表示;有一些文獻涉及多模態(multimodal)學習問題,但不同的文獻中模態一詞的含義不同"狹義的多模態是指人的不同感官,如視覺,聽覺,嗅覺!觸覺等;視覺所對應的圖像或文字信息,和聽覺所對應的聲音信息,就構成多模態數據;廣義的模態數據是指對於一個事物,通過不同的方法收集到的數據"例如在人臉識別中,可能收集到人臉的2D圖像和3D形狀模型,這就構成人臉數據的兩個模態;在指紋識別中,用不同傳感器采集的一個指紋的多種不同印痕,構成指紋數據的多個模態;對比多模態數據和多視圖數據的概念可以看出,多視圖的含義里包含了多模態,多視圖可以表示更廣泛的實際問題;
1.3.2多視圖數據的表示
數據的表示問題是機器學習的重點和難點問題之一,因為學習效果往往受到數據表示方法的影響。對於客觀世界的對象,常常提取它的特征,然后用特征向量表示此對象,即xi={x1, x2… xn}了,其中n代表特征的個數。人們希望提取的特征體現了此對象的本質,從而能夠用這些特征學習到目標概念。然而,對於一個學習問題,需要的最小特征集是不可知的,在缺乏先驗信息的情況下,只能提取盡可能多的特征,提供給學習器,期望學習器能獲得更好的預測性能"另外,數據收集技術的發展,使得人們可以通過更加復雜多樣的手段對事物進行描述,這也導致數據的特征較多。這些描述對象的特征中,有些特征具有不同的屬性,因此不適合使用同一種學習器進行學習。例如上述電視片段的識別問題中,電視片段具有視頻和音頻兩部分特征,這兩部分特征更適合分別用圖像識別方法和聲音識別方法來學習。如果使用單視圖(即用所有特征組成一個特征向量,來表示電視片段,將無法選擇一種既適合圖像又適合聲音的普適學習方法,在這種情況下,使用多視圖的表示法較為適合,即把數據表示成多個特征集,然后在每個特征集上可以用不同的學習方法進行學習。
即使數據的特征能夠使用同一種學習器進行學習,多視圖學習也可能比單視圖學習具有優勢"例如上述網頁分類問題中,網頁本身所包含的信息和指向該網頁的超鏈接所包含的信息均由單詞構成,網頁視圖和超鏈接視圖都可以表示成文本向量的形式,在這兩個視圖上可以用同一種學習器進行學習"然而,如果要把這兩個視圖合成一個視圖,則得到的特征向量失去了原有的意義,而且可能增加了特征空間的維數,從而給學習帶來不必要的困難"另外,數據的多視圖表示方法還能夠發揮各個視圖的優勢,利用未標記數據達到協同學習的目的,以改善學習性能,這一點接下來將具體介紹。
1.3.3多視圖的半監督學習
在多視圖的半監督學習中,一方面數據有多個視圖,即x=xt,另一方面數據由標記數據集L和未標記數據集U組成,學習算法應考慮如何利用多個視圖蘊含的信息和未標記數據蘊含的信息,來輔助傳統的監督學習.在該領域具有代表性的算法有A.Blum和T.Mitchell提出的協同訓練算法 (co一training)。該算法假設數據有兩個視圖,首先在兩個視圖上利用標記數據分別訓練出一個分類器,然后,在協同訓練過程中,每個分類器從未標記數據中挑選若干預測置信度較高的數據進行標記,並把標記后的數據加入另一個分類器的標記數據集中,以便對方利用這些新標記的數據進行更新,此過程不斷迭代進行,直到達到某個停止條件。
上圖展示了協同訓練算法的主要思想,圖中,Cl和C2分別代表兩個類別的數據,用兩個不同的顏色表示,X(l)和X(2)代表數據的兩個不同視圖,在視圖X(1)中,這兩個類別的數據可以被分類器很好地區別開來,而在視圖X(2)中,這兩個類別的數據混合分布,很難訓練得到好的分類器,在這種情況下,用視圖X(l)訓練的分類器可以把它對未標記數據的分類結果中比較置信那些的未標記數據,連同它對那些未標記數據的分類結果,一起提供給視圖X(2)上的分類器,然后,用視圖x(2)訓練的分類器能夠利用從視圖X(l)上得到的信息,排除自身的不確定性,從而提高用視圖X(2)訓練的分類器性能,反之亦然,多視圖學習正是利用數據在不同的視圖學習的難易程度不同,來發揮視圖之間的相互作用,,優勢互補,協同學習。自從協同訓練算法被提出以后,多視圖的半監督學習得到研究者的重視,涌現出了一批相關工作,並取得了很多研究以根據音頻中包含的信息來進行識別,所以電視數據可以用視頻和音頻這兩個視圖表示,在自然語言理解問題中,同一語義對象,可以用不同的語言來表達,這些不同的語言描述就構成了此語義對象的不同視圖表示。上述示例中,多視圖用於表示數據的不同特征集,多視圖還可以用於表示數據的不同來源。例如對於同一個數據源,用不同的采集裝置進行采集,這多個采集結果構成了數據的不同視圖。另外,多視圖還可以用於表示數據間的不同關系。例如,學術論文的分類問題中,論文間既有參考文獻的引用關系,也有作者的合作關系,可以把不同的關系用不同的視圖來表示,有一些文獻涉及多模態(multimodal)學習問題,但不同的文獻中模態一詞的含義不同。狹義的多模態是指人的不同感官,如視覺,聽覺,嗅覺,觸覺等視覺所對應的圖像或文字信息,和聽覺所對應的聲音信息,就構成多模態數據。廣義的多模態數據是指對於一個事物,通過不同的方法收集到的數據。例如在人臉識別中,可能收集到人臉的3D圖像和3D形狀模型,這就構成人臉數據的兩個模態。在指紋識別中,用不同傳感器采集的一個指紋的多種不同印痕,構成指紋數據的多個模態。對比多模態數據和多視圖數據的概念可以看出,多視圖的含義里包含了多模態,多視圖可以表示更廣泛的實際問題。
二 本文總結:
本文是科普性的文章,大家沒事讀一讀,對多視圖學習有個大概的了解,我以后的方向大概就是這個了。