Slide 7
Slide 7 text
しっかりファイル分けする派
● pudae/kaggle-hpa(https://github.com/pudae/kaggle-hpa
)などのスタイル
● loss, optimizer, schedulerなど要素ごとに切り分ける
7
メリット
● 理想的にはconfigを書き換えるだけで実験が行える
● 要素ごとに使い回しが効く(例: optimizerを他のコンペで使い回す、など)
● ファイルごとに用途が切り分けられているため、どこになんの処理が書いてある
か把握しやすい
デメリット
● 後方互換性(過去の実験が回せる保証をすること)を保ちづらい
○ gitで管理していてもわざわざ過去のコミットに戻るのは手間
● 複数の要素に変更が生じると実装に手間がかかる
○ 例えばSAM Optimizerを使うとoptimizersに加えてtrainersも改修する必要
あり
● チームで共有する場合、チームメンバーのキャッチアップが大変