多標籤學習Multi-Label Learning by Exploiting Label Dependency
Multi-Label Learning by Exploiting Label Dependency
2010 KDD
Min-Ling Zhang,Kun Zhang
摘要
在多標籤學習中,每個訓練示例與一組標籤相關聯,並且任務是為未見示例預測正確的標籤集。由於可能的標籤集的數量巨大(指數),從多標籤示例中學習的任務相當具有挑戰性。因此,成功進行多標籤學習的關鍵是如何有效利用不同標籤之間的相關性,以促進學習過程。
在本文中,我們建議使用貝葉斯網路結構來有效地編碼標籤的條件依賴性以及特徵集,其中特徵集作為所有標籤的共同父節點。為了使其實用,我們給出了一種近似但有效的程式來找到這樣的網路結構。在該網路的幫助下,多標籤學習被分解為一系列單標籤分類問題,其中通過將其父標籤作為附加特徵來為每個標籤構建分類器。根據網路給出的標籤排序遞迴地預測標籤集的未見示例。對廣泛的資料集進行廣泛的實驗驗證了我們的方法對其他成熟方法的有效性。
介紹
形式上,從多標籤示例學習對應於找到從特徵空間到標籤集空間的對映,即所有標籤的功率集。因此,當存在大量或甚至中等數量的標籤時,由於可能的標籤集的數量巨大(指數),多標籤學習的任務將變得相當具有挑戰性。為了解決這個問題,應該利用不同標籤之間的相關性來促進多標籤學習。例如,如果我們知道有標籤獅子和草地,那麼用非洲標籤註釋影象的概率會很高;如果我們知道一份文件與娛樂有關,那麼它就不太可能被標記為政治。因此,有效利用不同標籤之間的相關資訊對於任何多標籤學習系統的成功至關重要。
在本文中,我們的目標是以有效且計算有效的方式解決標籤相關性問題。具體而言,提出了一種名為 **Lead (multi-label Learning by Exploiting lAbel Dependency)**的新方法來學習多標籤示例。
首先,構建**貝葉斯網路(或有向無環圖,DAG)**以表徵以特徵集為條件的所有標籤的聯合概率,使得標籤之間的相關性通過其由DAG結構表示的依賴關係明確表達。之後,通過將DAG中的父級標籤視為附加輸入要素,為每個標籤學習二進位制分類器。最後,通過使用所識別的貝葉斯網路和所學習的二元分類器進行推理來預測未見示例的標籤集。
與其他多標籤學習方法相比,Lead通過採用貝葉斯網路具有以下優勢:
- 標籤空間中固有的基礎結構以緊湊的方式明確表達,這提供了一個有效的方法可以獲得有關的相關資訊,來學習問題;
- 它能夠解決標籤相關性的任意順序,其中依賴性的順序由每個標籤的父母的數量“控制”;
- 模型複雜度與可能標籤的數量(每個標籤一個二元分類器)成線性關係,並且對於貝葉斯網路和學習的分類器,對看不見的示例進行預測是直截了當的。
通過廣泛的多標籤資料集進行的廣泛實驗表明,Lead可以為完善的一階,二階和高階方法提供極具競爭力的效能。
LEAD 方法
以前的方法以各種方式解決了對 建模的問題,一階方法通過建模將其分解為許多獨立的任務來解決問題 ,二階方法通過建模考慮一對標籤之間的相互作用來解決問題 ,高階方法通過建模解決標籤子集之間的相關性來解決問題
我們的目標是通過利用標籤依賴性找到一種簡單有效的方法來提高多標籤學習的效能。
基本思想
我們的目標是利用標籤 之間的條件依賴關係,這樣每個例子我們都可以更好地預測它們的組合,問題是如何以有效的方式查詢和利用這種條件依賴。為此,我們採用貝葉斯網路作為一種緊湊的方式來編碼標籤依賴性;為了簡化表示,我們假設標籤 和特徵集 $X $的聯合分佈根據一些貝葉斯網路結構或有向無環圖進行分解。請注意,在多標籤學習中,所有標籤本身都依賴於特徵集 ,因此, 是所有標籤的共同父級。 因此我們有 其中 表示標籤 的父項集合,不包括固有父項 。這樣,多標籤分類問題被分解為一系列小規模的單標籤分類問題。
(a)描述了特徵集,所有標籤之間的關係(待尋找),從該圖可以看出標籤之間存在兩種型別的依賴關係,一個是由於共同的父母,即特徵集 ;因為它的效果,標籤變得依賴,即使它們在 條件下是有條件獨立的。另一個是標籤的直接依賴關係。
一般來說,貝葉斯網路結構學習有兩種方法。一個是基於約束的,另一個是基於分數的。
一個實用方法
DAG關於誤差:消除特徵的影響
然後,我們的目標是在某些合理的假設的幫助下,開發一個簡化的程式來識別圖1(a)中標籤之間的聯絡。 為了便於以下分析,我們將二元分類問題視為非線性迴歸問題的一個特例:
其中 表示目標變數, 表示預測變數, 表示噪聲。以下命題顯示了最大化該模型的資料可能性與最小化 與 的估計之間的互資訊之間的關係。
命題1.考慮非線性迴歸模型Eq2,其中f是平滑函式。 給定示例,以最大似然擬合上述模型等同於最小化x與e的估計之間的互資訊。
我們將分類視為非線性迴歸的極端情況:在分類中,y表示目標類標籤(0或1),f表示閾值函式,並且誤差e是離散的,可以是0,1或-1。e = 1(-1)表示實際來自類1(0)的示例被分類為類0(1)。
對於利用相同功能集的兩個不同分類問題
命題2.假設我們有兩個具有相同屬性的分類問題: 如果(1)e1和e2都獨立於x,並且(2)e1和e2也彼此獨立,則y1和y2在給定x的條件下是獨立的。
換句話說,這裡我們合理地假設 的效果是“可分離的”:我們可以首先消除 在所有標籤中的影響,然後通過分析錯誤來發現之間的條件獨立性。這種假設可能並不總是嚴格。然而,它提供了一種極其簡化的方式來識別網路中存在公共父 的 之間的鏈路(圖1(a))。
LEAD演算法流程
我們首先通過為所有標籤構造分類器並找到相應的錯誤來消除所有標籤上的特徵集的影響。 然後,我們找到誤差的貝葉斯網路結構,並將其視為與作為共同父項的標籤的近似值。 圖1(b)說明了這個想法。有了這個貝葉斯網路,我們就可以找到方程式1中每個標籤 的 。 在我們的方法中,我們通過在構造 的分類器時直接將合併到“特徵集”中來利用貝葉斯網路結構中的連結。
我們提出的方法包括以下四個步驟。
- 獨立構建所有標籤的分類器。這會為每個標籤 產生誤差 (公式2)。
- 學習貝葉斯網路
- 對於每一個標籤 通過在特徵集中引入依賴父節點 構建分類器
- 對於測試資料,遞迴的進行預測
參考文獻
[Zhang, M.-L., & Zhang, K. (2010). Multi-label learning by exploiting label dependency. In KDD’10: proceedings of the 16th ACM SIGKDD international conference on knowledge discovery and data mining (pp. 999–1008). New York: ACM.(https://dl.acm.org/citation.cfm?id=1835930)