機械学習自然言語処理

スケジュール化サンプリング

スケジュールかサンプリング · Scheduled Sampling
15 views

機械学習のシーケンス生成(自然言語生成など)において、訓練時の入力に「教師データ(正解)」と「モデル自身の直前の予測値」を確率的に混ぜ合わせ、学習が進むにつれて徐々に予測値の割合を増やしていく手法。訓練時と推論時の入力分布の乖離(露出バイアス)を緩和し、生成品質を向上させる役割を果たす。

スケジュール化サンプリングとは

スケジュール化サンプリングとは、リカレントニューラルネットワーク(RNN)などの系列データ生成モデルの訓練において、正解データ(教師データ)を与える割合と、モデル自身が直前に生成した予測値を与える割合を、学習の進行状況(スケジュール)に合わせて動的に変化させる手法です。

詳しく解説

シーケンス生成タスク(機械翻訳や音声認識など)の従来の訓練では、教師強制(Teacher Forcing)と呼ばれる手法が一般的でした。これは、モデルがどのような予測を出したかに関わらず、常に一歩手前の正解データを入力として次の予測を行う方法です。しかし、実際の推論時には正解データが存在しないため、モデルは自身が直前に生成した予測値を入力せざるを得ません。この「訓練時と推論時における入力の乖離」は露出バイアス(Exposure Bias)と呼ばれ、一度予測を誤るとエラーが累積し、生成が崩壊する原因となっていました。スケジュール化サンプリングはこの露出バイアスを緩和するために提案されました。学習の初期段階では教師データを多く使い、学習が進むにつれて(スケジュールに従って)徐々にモデル自身の予測値を入力する確率を高めていきます。これにより、モデルは「自身の誤りを補正しながら生成を続ける能力」を段階的に身につけることができます。

具体例・使われ方

機械翻訳システムにおいて、「私はリンゴを食べる」という文を翻訳する学習を例にします。従来の教師強制では、モデルが「I like」と誤って予測しても、次の入力には正しい翻訳である「I eat」の一部として「eat」が強制的に与えられます。これに対してスケジュール化サンプリングを導入すると、学習の中盤以降では確率的に「I like」というモデル自身の予測を入力として受け取ります。モデルは「I like」という誤った(あるいは想定外の)文脈からでも、その後に続く適切な単語(「an apple」など)を出力できるように訓練され、実際の利用時(推論時)に近い過酷な環境での耐性を高めることができます。

似た用語との違い

教師強制(Teacher Forcing)との違い:教師強制は、常に100%の確率で正解データのみを入力として学習を進めます。初期の学習効率は非常に高いですが、露出バイアスの問題を解決できません。これに対し、スケジュール化サンプリングは、教師強制と推論時と同じ自己回帰による生成のハイブリッドであり、学習の進行とともに両者の割合を段階的にシフトさせていく点が異なります。

注意点

スケジュール化サンプリングは効果的な手法ですが、確率の減衰スケジュール(教師データを使う比率をどう下げるか)の調整が難しく、タスクごとに最適なハイパーパラメータを探索する必要があります。また、系列の依存関係が複雑な場合、モデル自身の誤った予測を学習に用いることで、不自然な文脈を学習してしまい、最終的な精度が逆に低下するケースもあります。近年では、強化学習を用いた手法や、Transformerモデルでの異なるアプローチに取って代わられることもあります。

更新日時: 2026年9月17日 21:01