為什麼使用偽標籤會對結果產生重大影響?
我一直在研究半監督學習方法,並且遇到了“偽標籤”的概念。
據我了解,通過偽標籤,您擁有一組標記數據和一組未標記數據。您首先僅在標記數據上訓練模型。然後,您使用該初始數據對未標記數據進行分類(附加臨時標籤)。然後,您將標記和未標記的數據反饋回模型訓練,(重新)擬合已知標籤和預測標籤。(迭代這個過程,用更新的模型重新標記。)
聲稱的好處是您可以使用有關未標記數據結構的信息來改進模型。經常顯示下圖的變體,“證明”該過程可以根據(未標記的)數據所在的位置做出更複雜的決策邊界。
圖片來自Techerin CC BY-SA 3.0的維基共享資源
但是,我不太贊同這種簡單化的解釋。天真地,如果原始的僅標記訓練結果是上決策邊界,則將基於該決策邊界分配偽標籤。也就是說,上曲線的左手將被偽標記為白色,而下曲線的右手將被偽標記為黑色。重新訓練後你不會得到漂亮的彎曲決策邊界,因為新的偽標籤只會加強當前的決策邊界。
或者換一種說法,當前的僅標記決策邊界將對未標記數據具有完美的預測精度(因為這是我們用來製作它們的)。沒有驅動力(沒有梯度)會導致我們通過添加偽標記數據來改變決策邊界的位置。
我認為缺少圖表所體現的解釋是否正確?還是我缺少什麼?如果不是,那麼偽標籤有什麼好處,因為預訓練決策邊界對偽標籤具有完美的準確性?
偽標籤不適用於給定的玩具問題
奧利弗等人。(2018)評估了不同的半監督學習算法。他們的第一個圖顯示了偽標記(和其他方法)如何在與您的問題(稱為“雙月”數據集)相同的玩具問題上執行:
該圖顯示了標記和未標記的數據點,以及使用不同的半監督學習方法訓練神經網絡後獲得的決策邊界。正如您所懷疑的,偽標籤在這種情況下效果不佳。他們說偽標籤“是一種簡單的啟發式方法,在實踐中被廣泛使用,可能是因為它的簡單性和通用性”。但是:“雖然直觀,但當預測函數為 [未標記的數據] 生成無用的目標時,它仍然會產生不正確的結果,如圖 1 所示。”
偽標籤為什麼以及何時起作用?
偽標籤是由 Lee (2013) 引入的,因此您可以在此處找到更多詳細信息。
集群假設
Lee 給出的偽標籤的理論理由是它類似於熵正則化。熵正則化(Grandvalet 和 Bengio 2005)是另一種半監督學習技術,它鼓勵分類器對未標記的數據做出自信的預測。例如,我們更喜歡將未標記的點分配到特定類別中的高概率,而不是分散在多個類別中的概率。目的是利用數據根據類別聚類的假設(在半監督學習中稱為“聚類假設”)。因此,附近的點具有相同的類別,不同類別的點之間的距離更遠,因此真正的決策邊界貫穿輸入空間的低密度區域。
為什麼偽標籤可能會失敗
鑑於上述情況,猜測集群假設是偽標籤工作的必要條件似乎是合理的。但是,顯然這還不夠,因為上面的兩個月亮問題確實滿足了集群假設,但是偽標籤不起作用。在這種情況下,我懷疑問題在於標記點很少,並且無法從這些點中識別出正確的集群結構。所以,正如奧利弗等人一樣。描述(並且正如您在問題中指出的那樣),生成的偽標籤將分類器引導至錯誤的決策邊界。考慮到更多標記數據,它可能會起作用。例如,將此與下面描述的 MNIST 案例進行對比,其中偽標籤確實有效。
它在哪里工作
Lee (2013) 表明偽標記可以幫助 MNIST 數據集(帶有 100-3000 個標記的示例)。在圖。在該論文的第 1 篇中,您可以看到在 600 個標記示例上訓練的神經網絡(沒有任何半監督學習)已經可以恢復類之間的集群結構。似乎偽標籤有助於改進結構。請注意,這與兩個月亮的示例不同,其中幾個標記點不足以學習正確的集群。
該論文還提到,只有 100 個標記示例的結果不穩定。這再次支持了偽標記對初始預測敏感的想法,並且良好的初始預測需要足夠數量的標記點。
Lee 還表明,使用去噪自動編碼器進行無監督預訓練有助於進一步,但這似乎是一種利用未標記數據結構的單獨方法;不幸的是,沒有與單獨的無監督預訓練(沒有偽標籤)相比。
Grandvalet 和 Bengio (2005) 報告說,在 CIFAR-10 和 SVHN 數據集(分別有 4000 和 1000 個標記示例)上,偽標記優於監督學習。如上所述,這比雙月問題中的 6 個標記點要多得多。
參考
- Grandvalet 和 Bengio (2005)。通過熵最小化的半監督學習。
- 李(2013)。偽標籤:用於深度神經網絡的簡單高效的半監督學習方法。
- 奧利弗等人。(2018 年)。半監督學習算法的現實評估。