概要
LightGBMTunerを使うとLightGBMで簡単にOptunaを使ったハイパラチューニングができる。
...という記事を以前投稿した。
が、最近のOptunaのアップデートによって使い方が少し変わったのでここにまとめておく。
ちなみにOptuna内部で行われているベイズ最適化の原理についても以前記事としてまとめたので、興味のある人はこちらも見てね。
エラーと解決方法
今までは
!pip install optuna
で入れた後に
import optuna.integration.lightgbm as lgb
とするだけでLightGBMTunerの機能が使えた。
しかし、Optunaのバージョン 3.6.0
以降はこの機能がoptuna-integration
に移管されたため、これだけだと
ModuleNotFoundError: No module named 'optuna'
とエラーが出る。
解決方法は単純に
!pip install optuna optuna-integration
のようにoptunaに加えてoptuna-integration
をpipでinstallすればよい。
それか単純に
!pip3 install optuna==3.5.0
と古いバージョン固定でも大丈夫。
3.6.0での変更内容は以下のrelease noteから詳しく見れる。
ちなみに
もともと自分はこの変更に気づかず、ある日突然OptunaがこけるようになってしまったためX(Twitter)以下のように呟いた。
すると、なんとOptuna開発者の方から直接返信をもらうことができた。
「ちゃんと自分で確認しとけよ」という話であるのだが、X(Twitter)やっててよかったーと思った瞬間だった。
感謝。
まとめ
- Optuna3.6.0でLightGBMTunerの立て付けが少し変わった
- pip install
optuna-integration
で解決