2017/09/02

ベイズを用いたハイパーパラメーターの最適化

いきなりまとめ


ハイパーパラメーターの自動最適化方法の1つがBayesian Optimization。
Bayesian Optimizationとは
  • gaussian processによるブラックボックス関数のモデル化
  • グリッドサーチよりも少ないトレーニング時間
  • ベストなパフォーマンス



Today I Learned


Bayesian Optimization for Hyperparameter Tuning
を参考に。


ハイパーパラメーターの自動最適化


ほとんどのハイパーパラメーター最適化アルゴリズムはSequantial Model-based Global Optimization SMBO。
これらは真のブラックボックス関数(ハイパーパラメーターからvalidation setに対するパフォーマンス)を近似するために代理関数を使用。
代理関数を最大化するようなパラメーターが次の試行に使用。
SMBOは代理関数を最大化する基準および代理関数のモデル化によって違いが存在。


・Bayesian Optimizationとは

代理関数のモデル化にgaussian processをベースとしたexpected improvementを使用。
expected improvementは新たなパラメーターがもたらす改善についての期待確率。

Gaussian Processとは
  • 関数についての確率分布
  • データに分布関数を適合させるようトレーニング
  • パラメーター空間における任意のexpected improvementが計算可能
最も高いexpected improvementが次の試行におけるハイパーパラメーターの設定。

Bayesian Optimizationの実装で有名なのはSpearmint


・Bayesian Optimizationのパフォーマンス

Bayesian Optimizationのテストのためにthe San Francisco Crimes datasetを使用。
モデルのテストにおいては時間と場所を用いて39の犯罪カテゴリを予測。

GPUを使ったトレーニングは1回あたり25分。
指定したパラメーター空間に対してグリッドサーチを行うと12.6日。
Bayesian Optimizationは15.8時間かかり、ベストなパフォーマンスを獲得。
ランダムサーチの場合13.7時間かかり、Bayesian Optimizationに次ぐパフォーマンス。

0 件のコメント:

コメントを投稿

Relation Netowrksの概要

いきなりまとめ Relation Netowrksとは関係性の推論を行えるニューラルネット。 画像や音声の単純な認識ではなく、複雑な思考が可能。 例えば、 グレーの物体から最も離れている物体の形は何か? ボールは今何処にあるか? ランダムに動くボール群のどれが...