# ラベル不足への対処
## 定義
ラベル不足への対処とは、十分な数の高品質な手作業ラベルを手に入れることが難しいという問題に対処するために開発されてきた技法群であり、弱教師学習(weak supervision)・半教師学習(semi-supervision)・転移学習(transfer learning)・能動学習(active learning)の4手法がある。4手法は正解ラベルを必要とするかどうかで前提条件が異なる。弱教師学習は正解ラベルを必須としないがヒューリスティック開発の指針として少量あるほうがよく、半教師学習はラベルを生成するシードとしての少量の初期ラベルを必要とし、転移学習はゼロショット学習では不要だがファインチューニングでは必要(ゼロから訓練するより少量でよい)、能動学習は必要、という違いがある。(Source: [[@2023__OReillyJapan__機械学習システムデザイン - Chapter 4 訓練データ]] §4.2.3, 表4-2)
- **弱教師学習**: 専門知識に基づくヒューリスティックをラベリング関数(labeling function、LF)としてコード化し、プログラムでラベルを生成する。Snorkelが代表的なオープンソースツールで、キーワード・正規表現・データベース照会・他モデルの出力などをLFとして書ける。複数のLFの結果を組み合わせてノイズを除去し再重み付けする。正解ラベルは必須ではないがLFの精度把握に少量あるほうがよく、データプライバシー要件が厳しい場合に有効で、専門知識をバージョン管理・共有・再利用できる。スタンフォード大学医学部との共同実験では、1人の放射線科医が8時間で書いたラベリング関数による弱教師学習が、約1年かけた手作業ラベル付けと同程度のパフォーマンスを達成した。(Source: 同 §4.2.3.1)
- **半教師学習**: 構造的な仮説を用いて少量の初期ラベルから新たなラベルを生成する。古典的手法である自己訓練(self-training)は、既存モデルの高確信度な予測を正解とみなして訓練セットに追加し再訓練を繰り返す。他に、類似した特徴を持つサンプルは同じラベルを共有するという仮定に基づく手法(クラスタリング・k近傍法を利用)、摂動を加えてもラベルは変化しないという仮説に基づく手法(4.4.2「摂動」参照)がある。弱教師学習と異なり初期のラベルセットを必要とする。(Source: 同 §4.2.3.2)
- **転移学習**: あるタスク(ベースタスク。多くの場合ラベル付きデータを必要としない言語モデリングのような低コストなタスク)向けに訓練したモデルを、別タスク(下流タスク)向けモデルのスタート地点として再利用する。ゼロショット学習ではベースモデルをそのまま使えることもあるが、多くの場合ファインチューニング(ベースモデルに軽微な変更を加え下流タスクのデータで訓練を継続すること)が必要になる。ラベル付きデータが少ないタスクで特に力を発揮するだけでなく、ラベル付きデータが大量にあるタスクでもゼロから訓練するより性能が向上することがある。近年の傾向として、事前訓練するベースモデルの規模が大きいほど下流タスクの性能が概ね向上する。(Source: 同 §4.2.3.3)
- **能動学習**: モデル(アクティブ学習器)が最も学習効果の高いサンプルを選んでアノテーターにラベル付けを依頼する手法で、クエリー学習と呼ばれることもある。最も一般的な指標は不確実性サンプリング(モデルの確信度が最も低いサンプルを選ぶ)で、query-by-committee(複数の候補モデルの投票が最も割れたサンプルを選ぶアンサンブル手法)や、勾配や損失の減少が最も大きいサンプルを選ぶヒューリスティックもある。模擬データセットの実験では、ランダムに選んだ30サンプルで訓練したモデルの精度は70%だが、能動学習で選んだ30サンプルで訓練したモデルの精度は90%に達した。ラベル付けするサンプルは、モデルが最も不確かな領域で合成する・収集済みの定常分布のプールから選ぶ・実現場のデータストリームから選ぶ、のいずれかの手段で得る。(Source: 同 §4.2.3.4)
## 横断的知見
(この節は今後、複数ソースの突き合わせで得られた知見を蓄積する。現時点では単一ソース([[@2023__OReillyJapan__機械学習システムデザイン - Chapter 4 訓練データ]])からの知見のみ。ただし、[[クラウドソーシングによるアノテーション]]が『信頼性の高い機械学習』第4章§4.3.4から扱う能動学習・半教師ありシステム(弱いヒューリスティック関数をブートストラップし人間が高品質な訓練データに仕上げるアプローチ)は、本ページの弱教師学習・半教師学習・能動学習の定義と重なる領域であり、今後両ページの記述を突き合わせて横断的知見を蓄積する。)
## 未解決の問い
- 4手法(弱教師学習・半教師学習・転移学習・能動学習)は同時に組み合わせて使えるのか、それとも互いに代替的な選択肢として使い分けるべきか。本ソースは4手法をそれぞれ独立に説明するのみで、組み合わせのパターンには触れない。
- 弱教師学習のラベリング関数と半教師学習の自己訓練は、いずれもモデル自身(またはヒューリスティック)が生成したノイズの多いラベルを使うという点で似ているが、両者を使い分ける基準、あるいは組み合わせる手順は本ソースでは扱われていない。
- 能動学習でモデルが最も不確かな領域のサンプルを合成する手法は、[[データオーグメンテーション]]が扱うデータの合成(ミックスアップ・GAN等)とどう関係するか。本ソースはいずれも扱うが両者を接続する記述はない。
- [[教師データ収集手段の選択]]が挙げる公開データセット活用・クラウドソーシングなどの「誰がラベルを付けるか」という5手段と、本ページの4手法(いずれも「ラベルなしでどう学習するか・少ないラベルをどう活かすか」)を組み合わせた実務上の意思決定フロー(いつ後者に切り替えるべきか)は、両ソースとも扱っていない。
## 関連
- source: [[@2023__OReillyJapan__機械学習システムデザイン - Chapter 4 訓練データ]]
- concept: [[教師データ収集手段の選択]](誰がラベルを付けるかという別軸の教師データ取得論点) / [[クラウドソーシングによるアノテーション]](能動学習・半教師ありシステムをアノテーション体制の一部として扱う) / [[サンプリング手法]](能動学習のサンプル選択と関わるリザーバーサンプリング等) / [[データオーグメンテーション]](半教師学習の摂動仮説・能動学習のサンプル合成と関わる)
## 出典
- Chip Huyen 著, 江川崇・平山順一 訳, 『機械学習システムデザイン』, オライリー・ジャパン, 2023, 4 章, §4.2.3.