【論文読み】FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence

FixMatchと呼ばれる半教師あり学習を用いた画像分類モデルの学習手法の論文を読んでみたいと思います。FixMatchは2020年1月にGoogleによって提案された手法で、NeurIPS 2020に採択されています。

arxiv.org

なお、本手法をベースとした改良版のFlexMatchが2021年10月に提案されており、本手法は現在ではやや古い手法となっています。FlexMatchに興味がある方は以下の記事も参考にしていただければと思います。

sek165-ai.hatenablog.jp

概要

  • FixMatchは、2つの一般的な半教師あり学習手法である consistency regularization (一貫性正則化) と pseudo-labeling (疑似ラベル付け) を組み合わせた手法
  • 弱いデータ拡張を加えたラベル無しデータに対し信頼度の高い疑似ラベルを生成。さらに、同じラベル無しデータに対し強いデータ拡張を加え、疑似ラベルと予測結果が一致するように学習
  • 250ラベルのCIFAR-10で94.93%の精度、40ラベルで88.61%の精度など、さまざまな標準的な半教師あり学習ベンチマークでSOTAを達成
続きを読む

TorchSSLで半教師あり学習を試す~FlexMatch編~

TorchSSLは、9つの半教師あり学習手法のPyTorch実装を集めたリポジトリです。今回はその中でもSOTAな手法であるFlexMatchを使った半教師あり学習を試してみたいと思います。FlexMatchについての詳細な解説は以下の記事を参考にしていただければと思います。

sek165-ai.hatenablog.jp

github.com

続きを読む

【論文読み】FlexMatch: Boosting Semi-Supervised Learning with Curriculum Pseudo Labeling

arxiv.org

github.com

今まで真面目に半教師あり学習の論文を読んだことがなかったので、頑張って読んでみます。本論文は、東工大Microsoft Research Asiaの共同研究で、NeurIPS 2021に採択されています。論文の理解、解釈が誤っていることもあると思いますが、ご容赦ください。

要約

最近提案されたFixMatchは、ほとんどの半教師あり学習ベンチマークにおいてSOTAを達成した。しかし、疑似ラベルを付与する際のしきい値は全てのクラスに対し事前に定義された一定の値を使用しているため、クラスごとに異なる学習状況や学習の困難さを考慮できていないため、特定のクラスで極端に精度が低下する課題がある。

この問題を解決するために、モデルの学習状態に応じてラベルなしデータを活用するカリキュラム学習アプローチであるCurriculum Pseudo Labeling (CPL)を提案する。CPLのコアは、各学習ステップで異なるクラスのしきい値をフレキシブルに調整し、各クラスの学習の進み具合に合わせて、使用するラベル無しデータの量を動的に調整する。

CPLをFixMatchに適用し、改良したアルゴリズムをFlexMatchと呼ぶ。FlexMatchは様々な半教師あり学習ベンチマークにおいて、SOTAを達成し、特にラベル付きデータが極端に少ない場合や、タスクが困難な場合に強い性能を発揮する。例えば、FlexMatch は CIFAR-100 と STL-10 データセットにおいて、各クラスに4つのラベルしかない場合に、FixMatch をそれぞれ 14.32% と 24.55% 超えている。また、CPLは収束速度を大幅に向上させ、例えば、FlexMatchはFixMatchの1/5の学習時間しか使用せず、さらに優れた性能を得ることができる。さらに、CPLは他のSSLアルゴリズムにも容易に適用でき、その性能を著しく向上させることができることを示している。

続きを読む