【要約】【ML】AutoGluonを試してみた [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者が機械学習モデルを構築する際、個別estimatorの使用は周辺工程の工数を増大させる。手動での設計には以下の課題が存在する。
- ・LightGBM等の単発学習では、評価、CV、アンサンブル、保存設計をすべて手動で行う必要がある。
- ・AutoGluon利用時、stacking設定とtuning_dataの指定が衝突しエラーが発生する。
- ・HPO実行時、多クラス分類の評価過程で次元不一致(AxisError)が生じる。
// Approach
開発者はAutoGluonを導入し、複数モデルの学習からアンサンブルまでを自動化する手法を試行した。具体的なアプローチは以下の通りである。
- ・
predictor.fitを用い、LR、GBM、CAT、XGBなどの複数モデルを同時に管理する。 - ・スタッキングエラー回避のため、
tuning_data=Noneとし、内部のCVに処理を委ねる。 - ・HPO時のエラー対策として、内部の評価経路で次元エラーを起こさない
eval_metricを選定する。
// Result
AutoGluonの活用により、モデル探索とアンサンブル構築のプロセスが大幅に効率化された。得られた成果は以下の通りである。
- ・モデルの学習、評価、選択、アンサンブルまでを一貫して自動管理できる。
- ・学習済みモデルのArtifact化が容易になり、管理コストが低減した。
- ・既存の個別パイプラインと比較し、アンサンブル部品の探索が容易であることを確認した。
Senior Engineer Insight
> プロトタイピングやベースライン構築において、AutoGluonは極めて強力な武器となる。モデル選定からアンサンブルまでを自動化でき、開発サイクルを劇的に加速できる。一方で、スタッキング時の挙動やHPO中の内部エラーなど、ブラックボックスな挙動への対処が必要だ。本番投入時は、推論レイテンシと精度のトレードオフを考慮し、モデルの複雑さを制御すべきである。