数週間前、トレーニング実行で役に立たない結果を出していました。
エラーもクラッシュもなく、学習が何も身につかなかったモデル。3日後に原因を見つけました。訓練データと検証データ間のラベル漏れ。モデルはその間ずっと不正をしていたのです。
それで preflight を作りました。これは、トレーニング開始前に実行する CLI ツールで、
NaN、ラベル漏れ、チャネル順序の誤り、死んだ勾配、クラス不均衡、VRAM 推定といった静かな問題を検出します。致命的な失敗時にはコード 1 で終了し、CI をブロックします。
pip install preflight-ml
preflight run --dataloader my_dataloader.py
まだ非常に初期 — v0.1.1 を公開したばかりです。どのチェックが人々にとって最も重要か、私が見落としている点、現行のアプローチの何が間違っているのか、ぜひフィードバックをお願いします。1つまたは2つのチェックを寄与してくれる方がいればさらに良いです。各チェックには、通過テスト、失敗テスト、修正のヒントが必要です。
GitHub: https://github.com/Rusheel86/preflight
PyPI: https://pypi.org/project/preflight-ml/
Not trying to replace pytest or Deepchecks, just fill the gap between 「私のコードが動く」と「私のトレーニングが実際に機能する」。
[リンク] [コメント]




