最初にモデルをトレーニングしたときに、すべての損失曲線が次のようになると、機械学習を簡単に実現できます。
しかし実際には、損失曲線の解釈は非常に難しい場合があります。損失曲線について理解し、次の質問に答えてください。
1. モデルが学習されない
友だちのメルさんは、ユニコーンの外観の予測に引き続き取り組んでいます。
こちらが最初の損失曲線です。
メルさんが問題をどのように解決できるかを説明します。
プラスアイコンをクリックすると、セクションが展開され、正解が表示されます。
モデルが収束していません。次のデバッグ手順をお試しください。
- モデルのデバッグの手順に沿って、特徴がラベルを予測できるかどうかを確認します。
- データスキーマとデータを確認して、不適切な例を検出します
- このプロットのようにトレーニングが不安定に見える場合は、学習率を下げて、モデルがパラメータ空間で跳ね回らないようにします。
- データセットの予測が容易な 10 のサンプルに簡略化される。情報量が削減されたデータセットで極めて低い損失を取得します。その後、データセット全体に対するモデルのデバッグを続けます。
- モデルを単純化し、モデルがベースラインを上回るようにします。そして、モデルの複雑さが徐々に増えていきます。
2. ダイバーシティ
Mel は別の曲線を表示します。どのような点が問題で、どうすれば解決できますか?以下に回答を入力してください。
プラスアイコンをクリックすると、セクションが展開され、正解が表示されます。
損失の大幅な増加は通常、入力データの異常値が原因で発生します。考えられる原因:
- 入力データ内の NaN。
- 異常なデータによる勾配の急増。
- ゼロ除算。
- 0 または負の数の対数。
爆発的な損失を修正するには、バッチとエンジニアリング データで異常なデータをチェックします。異常があると思われる場合は、原因を調査してください。それ以外の場合、異常が外れ値のように見える場合は、データをシャッフルして、バッチ間で外れ値が均等に分散されるようにします。
3. 自分の指標が矛盾している
メルさんは別の曲に挑戦したいと思っています。どのような点が問題で、どうすれば解決できますか。以下に回答を入力してください。
メルさんが問題をどのように解決できるかを説明します。
プラスアイコンをクリックしてセクションを展開すると、答えが表示されます。
サンプルの分類確率がポジティブな分類のしきい値を超えることはないため、再現率は 0 で停止します。この状況は、多くの場合、クラスの不均衡が大きいときに発生します。通常、TF Keras などの ML ライブラリでは、分類しきい値の計算にデフォルトのしきい値 0.5 を使用します。
次の手順をお試しください。
分類のしきい値を下げます。
しきい値の不変の指標(AUC など)を確認します。
4. テストの損失が高すぎます。
Mel には、データセットのトレーニングとテストの損失曲線が表示され、「何が問題ですか?」と質問されます。回答を以下に記入してください。
メルさんが問題をどのように解決できるかを説明します。
プラスアイコンをクリックすると、セクションが展開され、正解が表示されます。
モデルがトレーニング データに過学習されています。次の手順をお試しください。
- モデルの容量を減らす。
- 正則化を追加する。
- トレーニングとテストの分割が統計的に同等であることを確認します。
5. モデルが固まる
数日後にメルブが戻ってくると、忍耐強くです。どのような点が問題ですか。また、メルさんはどうすればそれを修正できますか。
メルさんが問題をどのように解決できるかを説明します。
プラスアイコンをクリックしてセクションを展開すると、答えが表示されます。
ロスは、歩数のように繰り返されていることを示しています。モデルで見られる入力データ自体が反復的な動作を示している可能性があります。シャッフルによって、入力データから繰り返しの挙動が除外されていることを確認してください。
機能しています。
「現在、問題なく機能しています。」メルを感嘆させる。彼女の勝手に椅子に寄り添い、大きなため息を負っています。曲線が見やすく、ビームで達成して完了です。モデルを検証するため、次のような追加のチェックを行います。
実際の指標
ベースライン
回帰問題の絶対損失
分類の問題に関するその他の指標