【ラベルスムージング】
ラベルスムージング とは?
💡 「絶対に正しい!」という断言を少しやわらげる、謙虚さの調整弁
📌 このページのポイント
- 正解ラベルの確率を1.0→0.9などに下げ、残りを他クラスに分配する
- モデルが特定クラスに過度に自信を持つ「過信」を防ぐ
- Vision TransformerやTranslation系モデルなどで広く採用されている
- εという係数(例: 0.1)でスムージングの強さを調整する
ラベルスムージングって何をスムーズにするの?
正解ラベルの「自信度」を少しだけ下げるんだよ。通常は正解クラスの確率が1.0だけど、0.9とか0.95に設定して「確実に正解だけど、少し余裕を持たせる」わけだ。
正解なのに確率を下げる必要があるの?
過信を防ぐためだよ。モデルが「この画像は絶対に猫だ!」と断言しすぎると、訓練データに特化しすぎて未知データに弱くなるんだ。少し謙虚にさせることで汎化が上がるんだよ。
下げた0.1はどこに行くの?
他の全クラスに均等に分配されるんだよ。例えばクラスが10個なら、正解が0.9で残り9クラスが0.1÷9≒0.011ずつになるイメージだね。
εって何のこと?
どれだけスムージングするかの係数だよ。ε=0.1が定番で、正解ラベルが1.0−0.1=0.9になるんだ。大きくしすぎると今度はモデルが自信を持てなくなるので、0.05〜0.2あたりがよく使われるよ。
どんなモデルで使われているの?
まとめ:ざっくりこれだけ覚えればOK!
「ラベルスムージング」って出てきたら「正解の自信を少し抑えて過学習を防ぐ技術」と思えればだいたいOK!
📖 おまけ:英語の意味
「Label Smoothing」 = ラベル平滑化
💬 Label(ラベル)をSmoothing(平滑化)するという意味で、カクカクした「0か1か」のラベルを少しなだらかにするイメージから来ているんだよ。