【機器學習】使用偽標籤進行半監督學習
阿新 • • 發佈:2021-10-30
使用偽標籤進行半監督學習,在機器學習競賽當中是一個比較容易快速上分的關鍵點。下面給大家來介紹一下什麼是基於偽標籤的半監督學習。在傳統的監督學習當中,我們的訓練集具有標籤,同時,測試集也具有標籤。這樣我們通過訓練集訓練到的模型就可以在測試集上驗證模型的準確率。
然而使用偽標籤的話,我們則可以使用訓練集訓練出一個最好的模型,然後再去除測試集的真實的標籤,然後用這個已經train好的模型去predict測試集的標籤。然後將這個predict後的標籤假裝認為是真實的標籤,也就是“偽標籤”。將其放到原來的訓練集當中,同時再次開始訓練出一個最新的model。
最後再用這個最新的model,在我們的測試集上用真實的標籤來驗證模型的正確性。整體流程如下圖所示:
在半監督學習當中,用無標籤資料的優點如下:
- 有標籤資料往往意味著高成本和難以獲得,但無標籤資料量大又便宜。
- 通過提高決策邊界的精確性,它們能提高模型的穩健性。
- 在機器學習競賽噹噹中常常用來上分
具體的步驟整理如下,和大家一起看一下:
- 將有標籤部分資料分為兩份:train_set&validation_set,並訓練出最優的model1
- 用model1對未知標籤資料(test_set)進行預測,給出偽標籤結果pseudo-labeled
- 將train_set中抽取一部分做新的validation_set,把剩餘部分與pseudo-labeled部分融合作為新的train_set,訓練出最優的model2
- 再用model2對未知標籤資料(test_set)進行預測,得到最終的final result label