Preferred Networks(PFN)は2020年1月14日、ディープラーニング(深層学習)のパラメータを自動調整するライブラリ「Optuna v1.0」(オプチュナ v1.0)を発表した。2018年12月からベータ版を公開してきたが、今回、初のメジャーバージョンとなるv1.0を公開した。ベータ版のコードをほとんど変更することなく動作する。
Preferred Networks(PFN)の「Optuna」は、ディープラーニングの各種のパラメータを自動調整するライブラリである。2018年12月より公開してきたベータ版が今回、バージョン1.0となった(関連記事:PFN、深層学習のハイパーパラメータを自動調整するフレームワーク「Optuna」ベータ版を公開、画面1)。
拡大画像表示
アルゴリズムの挙動を制御する各種のハイパーパラメータを自動で最適化する。例えば、学習率、バッチサイズ、学習イテレーション数、ニューラルネットワークの層数、チャンネル数など、各種のパラメータがある。
Optunaは、これらのハイパーパラメータの値に関する試行錯誤を自動化し、良い性能が出るパラメータの値を自動的に発見する。ディープラーニングのライブラリであるPyTorchやTensorFlowなど、各種のライブラリと一緒に使用できる。
PFNは、Optunaの主な特徴として、複数の計算機で並列実行できること、探索空間をPythonの制御構文で記述できること、各種の可視化手段を提供し最適化結果を多面的に分析できることなどを挙げる。
ライブラリ提供の背景について同社は、ディープラーニングにおいては、アルゴリズムの挙動を制御するハイパーパラメータの調整が不可欠となっていることを挙げる。「エンジニアの多くは、相当の時間を費やしてパラメータを手動で調整している」という。
「特にディープラーニングでは、学習率、バッチサイズ、学習イテレーション数、ニューラルネットワークの層数、チャンネル数といった様々な要素を調節する必要がある。これらの調整がモデルの精度を大きく左右する」(同社)。
すでに、PFNの複数のプロジェクトでOptunaを実際に使っている。例えば、物体検出コンペティション「Kaggle Open Images」では、チームPFDetの上位入賞に大きく貢献したとしている。