ICML2013読み会 2013/07/09 http://partake.in/events/0ae21389-aa2a-42c1-a247-f93582127216
Marcela Zuluaga, Andreas Krause, Guillaume Sergent, Markus Püschel,
“Active Learning for Multi-Objective Optimization”
@jkomiyama_
読む論文
•“Active Learning for Multi-Objective Optimization”
•問題:
•Multi-objective learning:
•複数の相反する目的関数を最適化したい
•例:ハードウェア設計ー電力消費、パフォーマンス、実装面積など
•全データを評価するのはコストがかかる
•できるだけ少ないデータの評価で済ませたい
•提案手法:Pareto Active Learning (PAL)
•Gaussian processで目的関数の確率モデル化
•active learningで選択的な探索
•Pareto-optimalな集合を探す問題として、multi-objective learningを定式化
Gaussian process
•回帰問題のGaussian processモデル:
•入力と目的関数の関係 を予想する確率モデル
• 次の2つの要素で規定される
•mean function
•covariance function
)(xfx →
)(xµ)',( xxk
図はhttp://www.sciencedirect.com/science/article/pii/S1053811909011434より引用
Active learning
•ある点xに関してのラベルf(x)を欲しいかどうかを、アルゴリズムが能動的に選択
•今回の問題設定
•入力の点集合(有限)
•各点を評価しようとすればできるが、評価コストが重い
• 情報量の高い点から、各ラウンド1点ずつ順番に評価していく
•少ない評価点の数で高い精度を目指す
dE ℜ⊂
Multi-objective optimization:
•複数の目的関数 を両立するような場所を探したい
•目標:Pareto optimal set の決定
• に対して優位な点 が存在しない
• 優位性( ): 全ての で
•評価手法:Pareto frontierの体積の推定誤差
f1(目的関数1)
f
2(目的関数2)
)ˆ()( PVPV −=η
)(),...,(1 xfxf n
EP ⊂xPx ⇔⊂
)'()( xfxf ii <},...,1{ ni∈'x
'xx
問題設定:
•入力空間(design space):
•目的関数:
•目的空間:
•Pareto最適集合
•Pareto frontier
•評価:ノイズの入った観測
dE ℜ⊂
nℜEP ⊂
Gaussian process: posterior distribution
•関数f(x) をGaussian processでモデル化
•観測 ( )の後の状態は
• が点xでの期待値、 が分散
},...,1{ Tt∈
提案Algorithm:PAL
•ラウンド制 t=1,…
•各ラウンド3フェーズ
•Modeling
•各点の を計算
•Classification
•各点を分類
•Sampling
•新たな点を評価
)(),( xx σµ
Modeling
•各点xの を計算
•Uncertainty hyper-rectangle
•Uncertainty region
uncertainty region Rt
))(max( xRt
))(min( xRt
)(),( xx σµ
)(1 xf
)(2 xf
Classification
•各点を 3つの集合に分類
• (Pareto最適集合)
• (non-Pareto最適集合)
• (上記2つのどちらにも属さない未知の集合)
• が単調減少であるため、 は単調減少
• に属す点がなくなれば終了
ttt UNP ,,tP
tN
tU
tU)(xRt
tU
Sampling
•uncertainty regionのdiagonal length
• の点のうち、 を最大にする点 が選ばれ評価される
tt UPx ∪⊂
終了条件
• に属す点が無くなれば終了 tU
理論解析:information gain
•information gain
•maximum possible information gain
•GPの決定問題の難しさの指標 [Srinivas+ ICML2010]
•Gaussian kernel の場合
理論解析:Theorem1
• 以外は定数
•
• が十分大きくなれば、(8)を満たす
TTT γβ ,,))(log(, TOTT =γβ
T
Experiment
•3つのデータセットでの実験
•ハードウェア/ソフトウェアでのデータ
•ハードウェア(FGPA, ASIC):実装方式を比較
•ソフトウェア(LLVM): コンパイルオプションを比較
•First authorはハードウェア回路合成の専門家
•高次のアルゴリズム構造を、どうやってハードウェアレベルに変換するか
Experiment: SNW dataset
•SNW (Sorting Network) dataset
•FPGA (field-programmable gate array): 電子回路を自由にプログラムできるハードウェア
•通電で回路の更新が可能
•応用:特定用途ハードウェア回路(通信、暗号、研究(分子間力計算))
•入力空間:高レベル表現をどのようにハードウェア実装にコンパイルするか?(d=4, |E|=206点)
•高コスト(大規模回路では数時間)
•目的関数:
ベンチマークでの
パフォーマンスと消費電力
Experiment: NoC dataset
•ASIC回路の設計
•ASIC(application specific integrated circuit): 特定用途向け集積回路
•応用:ネットワーク機器、車載機器、画像処理、etc…
•入力空間:回路デザインのパラメータ(d=4, |E|=259点)
目的関数:ベンチマークでのパフォーマンスと消費電力
例:F社の車載ASICチップ
Experiment: SW-LLVM dataset
•LLVM: コンパイラ基盤
•仮想マシン+各アーキテクチャ(e.g. x86)のネイティブコードへの変換
•GCCを始めとした20以上の言語がLLVMバイトコードを出力可能
•入力空間:
•d=11(11個のコンパイラオプション
のオン・オフ, |E|=1023)
•目的関数:ベンチマークソフトウェアの
LLVM上でのパフォーマンスとメモリ使用量
Experiment: 結果
•提案手法(PAL):
•カーネルパラメータは事前に小さいデータセットで最適化
•探索パラメータ(β)は理論保証より小さくした
•全てのデータセットで、既存手法(ParEGO: heuristic)より高い精度を実現
まとめ
•評価にコストがかかる評価点の集合において、複数の目的関数のPareto最適な部分集合を求めるタスクを解いた
•提案手法: Gaussian processによる確率モデル化
•既存手法(heuristic) と比較して、強い理論的な保証・高いパフォーマンス
•気になった点:
•精度がハイパーパラメータに結構依存する:
•類型の探索問題の理論保証は探索を大きめにする傾向
•近い研究で、パラメータを決めるniceな提案をご存じの方はご教授下さい
•枠組みとしては[Srinivas+ ICML2010](”Gaussian Process Optimization
in the Bandit Setting: No Regret and Experimental Design”) のmulti-objectiveへの拡張