0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

元論文: Auto-WEKA: Combined Selection and Hyperparameter Optimization of Classification Algorithms
著者: Chris Thornton, Frank Hutter, Holger H. Hoos, Kevin Leyton-Brown

ちょっと古い論文です.(2013)

従来,アルゴリズムの選択とハイパーパラメータの設定は個別に行われてきましたが,これらを同時に自動で最適化する手法です.

既存手法の問題点

従来の機械学習アルゴリズムの選択やハイパーパラメータの選択ではユーザが意思決定をする必要があり,人間の判断による選択には限界がありました.

ここで機械学習アルゴリズムを自動で選択する場合,手法ごとに使用するハイパラが違うという問題があります.

提案手法のアイデア

CASH

アルゴリズム選択とハイパーパラメータ最適化を同時に行うために CASH (combined algorithm selection and hyperparameter optimization problem)を定義.
アルゴリズムとハイパラの探索空間から,最適な組み合わせを探索することを目指します.

探索自体は普通にアルゴリズムとハイパラを選択したらデータで訓練・推論して,ロスを最小化することを目指すみたいです.

SMAC

SMAC (Sequential Model-Based Algorithm Configuration) はCASHを最適化するために使用されている既存手法で,ベイズ最適化をするみたいです.

ハイパラに対する損失を計算し,これを最小化します.

いくつかのtrain・validateデータで出した損失の平均を使って一度に計算することで,精度と効率を両立しています.

TPE

TPE (Tree-structured Parzen Estimator) は損失関数のモデル化に密度推定 (density estimate) を用いる既存手法です.

損失が閾値を超えるかどうかに基づいて,"良い"設定と"悪い"設定の2グループに割り振ります.
それぞれの設定について別の損失関数として密度推定することで,損失が低い = 良い設定のグループに対してより良い推定ができる,という狙いです.

Auto-WEKA

Auto-WEKAは多種多様なアルゴリズムを自動的に選択し,ハイパラを最適化してくれるツールです.

コードが公開されている他,Pythonのためのwrapperもあります.

さいごに

実験ではちゃんと適切な手法とハイパラを選択し,良い結果を残していました.

少し古い手法なので,ハイパラ最適化なら他に色々手法があるかと思います.
しかし多種多様なアルゴリズムに対応し,アルゴリズムの探索ができるような手法はまだまだ貴重だと思います.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?