整理對於UDA與MixMatch的一些想法

甘樂
Nov 16, 2020

--

本篇是整理Google在2019年發表的2篇DSSL (深度半監督式學習)的論文 UDA & MixMatch的差異比較

前言:

寫這篇文章的時候我還沒看ReMixMatch, FixMatch等最新的DSSL論文, 搞不好看完之後會有想法又變了也說不定, 寫這篇主要是給自己做個整理, 內容會整理幾篇知乎文章與自己的想法:

  1. MixMatch 和 UDA比较
  2. 超强半监督学习MixMatch姐妹篇 Unsupervised Data Augmentation
  3. 半监督学习在金融文本分类上的探索和实践

1. 何謂consistency regularization?

一致性正則是UDA, MixMatch, 是當今DSSL方法中最重要的核心概念, 是unlabeled data如何傳遞unsupervised signal的方法, 概念非常簡單:

進行SSL時會用到大量的unlabeled data, 對於unlabeled data增加一些擾動 (noise / augmentation), 增加擾動是為了讓model更robust。

但unlabeled data增加擾動很容易有風險(因為本身label就不明確), 因此要考慮增加擾動後是否與增加前一致。

也就是augment前後, model都能對unlabeled data做出一致的預測

這裡就可透過KL divergence或是MSE來計算original unlabeled data & augmented unlabeled data之間的差異, UDA是使用KL散度, MixMatch使用MSE中的L2 loss。

Q. 那為何SSL中的unlabeled data一定要augmentation和搞啥consistency training, 為啥不直接靠unlabeled data + pseudo label, 就直接跟labeled data training?

其實這就是self-training的概念, 論文pesudo-label就是這樣, 效果也不錯但consistency training更好。

2. 快速複習MixMatch

詳細可參考之前文章

超簡易MixMatch架構, 但概念上幾乎就是這樣
MixMatch loss fucntion

3. 快速複習UDA

詳細可參考之前文章

超簡易UDA架構
UDA loss function

4. MixMatch, UDA的LOSS FUNCTION

  1. 對於labeled data, 都使用cross-entropy
  2. 對於unlabeled data, MixMatch使用L2 loss, UDA使用KL散度, L2 loss比起KL散度更嚴謹 (可參考此篇文章底下的"一致性正则的数学选择")
  3. unsupervised loss部分都有λ權重
  4. unlabeled data都有訓練細節: MixMatch不讓guessed label的梯度傳回model, UDA則是original unlabeled data使用固定住model參數

5. MixMatch, UDA特別之處

MixMatch

  1. 將unlabeled data DA k次, 這k個augmentation的label都是同個guessed label, 並在label guessing過程使用averaging, sharpening
  2. 將augmented labeled data & augmented unlabeled data MixUp

UDA

  1. Training Signal Annealing for Low-data Regime (TSA), 緩慢地釋放labeled data中的training signals
  2. 使用SOTA DA方法, 並強調都要保有valid & diverse

6. 發展的可能性:

  1. MixMatch中的augment K次unlabeled data 和 UDA中的TSA, 都是為了解決SSL容易overfitting在labeled data上的問題
  2. UDA沒使用MixUp, 但MixMatch的消融測試表示MixUp的效果很棒
  3. UDA也許可使用SOTA DA來對unlabeled data DA K次, 因為對unlabeled data進行DA是為了獲取unsupervised signals
  4. 為UDA找到更SOTA的DA方法
  5. 合併2個LOSS FUNCTION (?? 不確定
  6. 將supervised loss改成這篇文章介紹的技巧 (也許可行吧
  7. 還是先看ReMixMatch, FixMatch的論文再說

--

--

No responses yet