たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

機械学習を育てるx個のステップ

上手く学習しない!改善したい!何しよう…?

バグの検証

実装は正しくなされていますか?
既存モデルの別ドメイン流用であるなら、報告論文にあるドメインで再現が取れるか確認しましょう。
この段階でバグの不安を取り除くことが重要です。

データ数の検証

データ数は充分ですか?
データ数を段々減らして学習し、データ数 vs 性能 のグラフを書きましょう。
性能が飽和していない場合、データ数を増やすと性能が上がるでしょう。
データ集めが難しい場合、データの水増し (data argumentation) も検討できます。

データクオリティの検証

データは適切な前処理をなされていますか?
不要な情報の除去、標準化等、分野のベストプラクティスに学びましょう。

不調原因の検証

学習がどの段階でうまくいっていませんか?
重みの数値や誤認識データ、生成データなどの傾向を見て、何が学習を阻んでいるか (例. 勾配消失、モデルcollapse) をしっかりと見極めましょう。

ハイパーパラメータの検証

ハイパーパラメータは適切ですか?
ハイパーパラメータを1つずつ動かし、パラメータ vs 性能 のグラフを書きましょう。
Grid法など様々な最適化手法があるため、どれを使うか検討して見極めましょう。

それでもうまくいかないなら

モデル (ネットワーク) が不十分な可能性が高いです。
次は上手くいくと願いながら頑張りましょう。