440 likes | 663 Views
基多面体上のオンライン予測. 畑埜 晃平 九州 大学 大学院システム情報科学研究院 2012.11.29-30 文科省 数学・数理科学と諸科学・産業との連携研究 WS 「離散構造と最適化:展開と 連携」. 共同研究者. 末廣大貴(九大 ) 来嶋秀治(九大) 瀧本英二(九大) 永野 清 仁(東大). 本発表 “Online Prediction over Submodular Constraints,” ALT’12, 2012. 目次. 離散構造のオンライン予測問題 本研究の概要:基多面体上のオンライン予測 まとめ・未解決問題など.
E N D
基多面体上のオンライン予測 畑埜 晃平 九州大学 大学院システム情報科学研究院 2012.11.29-30 文科省 数学・数理科学と諸科学・産業との連携研究WS 「離散構造と最適化:展開と連携」
共同研究者 • 末廣大貴(九大) • 来嶋秀治(九大) • 瀧本英二(九大) • 永野清仁(東大) 本発表 “Online Prediction over SubmodularConstraints,” ALT’12, 2012.
目次 • 離散構造のオンライン予測問題 • 本研究の概要:基多面体上のオンライン予測 • まとめ・未解決問題など
離散構造を用いた“オンライン”意思決定問題離散構造を用いた“オンライン”意思決定問題 離散構造 プレイヤー 環境 累積損失を 小さくしたい 損失
例:オンラインスケジューリング問題 • 教授と n人の学生 • T日間,毎日教授は各学生とディスカッションをする • 学生のフロー時間(待ち+処理時間)の総和の累積を小さくしたい • 各学生に要する時間は不明 Let’s discuss in the order of A, C, D, B ! A B D C time
オンラインスケジューリング問題 (2/3) フロー時間 = 待ち時間+ 処理時間 e.g. 処理時間 待ち時間 0 A C 1日の総フロー時間 D B 順列を表現するベクトル 損失ベクトル
オンラインスケジューリング問題(3/3) Let’s discuss in the order of A, C, D, B ! 損失 損失 t= 1 Let’s discuss in the order of C, A, D, B ! t= 2 …
オンライン離散構造予測問題 仮定: C: 離散構造のクラス 各離散構造を n 次元ベクトルで表現(C) プロトコル: 各時刻 t=1,…T において 1 プレイヤー (敵対的)環境 3 2
オンライン離散構造予測問題(2) プレイヤーのゴール: プレイヤーの 累積損失 (後から見て) 最良の離散構造の 累積損失
補足:リグレットvs競合比 • オンラインアルゴリズムの解析には が用いられる • 一方,オンライン予測の分野では多くの場合 競合比→ 1(T→∞)となるためリグレットを採用 • 問題によっては競合比+リグレットで測る場合もある (例:オフライン問題がNP困難な場合など)
既存研究 • Follow the PeturbedLearder(FPL) [Kalai & Vempala 03] • オフライン離散最適化手法をサブルーチンとして用いる • リグレットは若干他手法に劣る • Kakadeらの手法 [Kakade+ 09] • オフライン近似離散最適化手法をサブルーチンとして用いる • 各ステップ毎の実行時間は多項式時間だが T に依存 • 個々の離散構造に対する手法 • 全域木[Cesa-Bianch&Lugosi 09] • 順列[Helmbold&Warmuth 09][Yasutake+ 11][Yasutake+ 12] • パス ・・・[Koolen+ 10] 汎用的&効率的かつリグレットの小さい手法が求められる
どうやってリグレットを最小化するか?~多くの手法に共通する戦略~どうやってリグレットを最小化するか?~多くの手法に共通する戦略~ 連続緩和+ラウンディング プレイヤー 離散構造を表現する ベクトル ラウンディング 連続ベクトル ct wt 連続ベクトルの オンライン予測アルゴリズム (既存手法,リグレット保証付き) 損失ベクトル
連続ベクトルのオンライン予測Follow the Regularized Leader(FTRL) 予測方法: 累積損失 基準となるベクトルからのダイバージェンス 多くの場合,解析的な更新が可能 具体例:Hedge [Freund&Schapire 97], OGD[Zinkevich03] リグレット: (多くの場合に最適)
射影とラウンディング conv(C): クラスCの要素の凸包 射影 ラウンディング
射影とラウンディング(2) FTRLによる更新 射影 射影の利点 リグレットを保存 ラウンディングの利点 損失を保存 離散構造の期待損失 conv(C)の内点の損失
要点 小さいリグレットを得るには離散構造のクラスCに 対する射影とラウンディングがあればOK 問題点 • 多くの離散構造のクラスに対して射影・ラウンディングは計算困難(一般に離散構造の候補は指数個) • 個々の離散構造ごとに設計が必要
目次 • 離散構造のオンライン予測問題 • 本研究の概要:基多面体上のオンライン予測 • まとめ・未解決問題など
本研究の概要 • 基多面体の端点で表現される離散構造に対する射影・ラウンディングの設計 • 基多面体の端点で表現される離散構造の例 • エキスパート [Littlestone&Warmuth 94][Vovk 90] • k-set [Warmuth&Kuzmin 08] • 順列 [Yasutake+ 11][Helmbold&Warmuth 09] • 全域木 [Lugosi&Cesa-Bianch 06][Koolen+ 10] • k-forest • truncated permutation オンライン予測分野において 知られていない例
準備 • 劣モジュラ関数と基多面体
劣モジュラ関数 定義 関数Rが劣モジュラ関数⇔ g 例 |A| |B| |S|
基多面体 x1+x2=f({1,2}) 例(n=2) x2 f({2}) B(f) x1 f({1})
基多面体(n=3) B(f) 一般には2n-1個の線形制約,高々n!個の端点を持つ
conv(C)=B(f)となる離散構造の例(1) 離散構造のクラスC ベクトル表現 劣モジュラ関数 エキスパート 1が1つ 1がk 個 “n 人のエキスパートから 1人を選択” |S| k-set “n 人のエキスパートから k人の組み合わせを選択” |S|
conv(C)=B(f)となる離散構造の例(2) 離散構造のクラスC ベクトル表現 劣モジュラ関数 順列(Permutahedron) (n-k)がk個 損失はn人の 待ち時間の総和 |S| truncated permutation 損失は上位k人を除いたn-k人の 待ち時間の総和 |S|
本研究の概要 • 基多面体の端点で表現される離散構造に対する射影・ラウンディングの設計 • O(n6)時間 • O(n2)時間(特殊ケース) • 関数オラクルの呼出しは単位時間で出来ると仮定 Aアルゴリズム A関数オラクル
本結果1:基多面体に対する射影と ラウンディング 定理 基多面体B(f) に対する射影とラウンディングは多項式時間で計算可能. (ここで,ダイバージェンスは2ノルムとKLダイバージェンスに限定) アイデア • 基多面体上の分離可能な凸関数の最小化は 劣モジュラ関数最小化(SFM)に帰着可能[Nagano 07] • SFMは多項式時間で計算可能[e.g., Orlin 07] • SFM解法の多くは端点の線形結合で解を構成 • 副産物としてラウンディングも構成可能 • 詳しい話は永野先生にお願いします! :-)
本結果2:特殊な場合 定義 劣モジュラ関数fがcardinarity-based ⇔ 例: エキスパート, k-set,順列,truncated permutation 定理 劣モジュラ関数fが cardinarity-based ならば 基多面体B(f) に対する射影とラウンディングはO(n2)時間で計算可能. (ここで,ダイバージェンスは2ノルムとKLダイバージェンスに限定)
キーアイデア:“順序保存”補題 定義 劣モジュラ関数 f が 交換可能⇔ 注: f がcardinarity-based ならば 交換可能 “順序保存”補題
順序保存補題を適用すると・・・ n個の制約 2n-1個の制約
幾何学的解釈 (2, 1, 3) 不等式制約は2n-1個 (1, 2, 3) (3, 1, 2) “有効な”不等式制約はn-1個 (3, 2,1) (2, 1, 3) (3, 1,2) (5,4,3)と同じ 順序をもつ端点 (5, 4, 3)
ダイバージェンスが2ノルムの場合 n個の線形制約を持つ2次計画問題=>多項式時間で解ける 本研究:貪欲手法により O(n2)時間で解ける (KLダイバージェンスの場合も同様)
x*が射影となるための必要十分条件(2) x1* z1 z2 x2* z3 α1 α2 α2 z4 α3 α3 x4* 相補性条件 α4 α4 x3* z5 η η x5* α3 η α4 α4 η η 不等式制約を等式で満たすiでαi>0
x1* x1* x1* x2* x2* x*が射影となるための必要十分条件(3) x3* x2* x1* x3* x4* x3* x5* x4* α1 x2* α1 α1 α2 x1* α2 α2 α2 α2 α3 α2 α1 α3 α3 α3 α2 α3 α3 α1 α3 α2 α3 α3 α2 α3 g(3) g(2) g(1) g(5) g(4) α4 α4 α3 α3 α4 α4 α4 α4 α4 α4 α4 α4 α4 α4 η η α4 α4 η η η η η η η η η η η η η
射影のアイデア α1=α2 =0!!!
x1* x1* x2* x2* 射影のアイデア(2) x3* x3* x4* x5* x4* α1 α1 x1* α2 α2 α2 α2 α3 x2* α3 x1* α3 x3* α3 α3 x2* α1 α3 g(5) g(3) g(2) g(1) g(4) α2 α4 x1* α2 α4 α4 α1 α3 α4 α4 α2 α3 α4 α2 α4 α3 α3 η α1 α4 α4 α3 η α2 η α4 η α3 α4 α4 η α4 η η α4 η η η η η η η η
射影のアイデア(3) 残りのα3 ,α4,ηは後で決まる x1* x1* x2* x1* x2* x3* 残りを同様の手法で処理(高々n回) ここまでは確定(O(n)時間) x1* x4* x2* x3* x2* x3* g(2) g(1) g(3) g(5) g(4) x1* x4* x5* α4 α4 η η η 計算時間はO(n)×n=O(n2)
ラウンディングのアイデア 簡単のため,順列の場合のみ議論 (1, 3, 2) (1, 2, 3) (3, 1, 2) (2.75, 2,1.25) (3, 2,1) (2, 1, 3) (2, 3,1) conv(C)内部の点をO(n)個の端点の凸結合で表現
ラウンディングのアイデア(2) 毎ステップ後に段差が1つ以上 消滅⇒O(n)ステップで終了 詳細は来嶋先生に・・・
目次 • 離散構造のオンライン予測問題 • 本研究の概要:基多面体上のオンライン予測 • まとめ・未解決問題など
まとめ • オンライン離散構造予測問題 • 既存研究:これまでは個々の離散構造ごとにアルゴリズムを設計する必要があった(汎用的なアプローチも存在するが予測精度 や計算効率で劣る) • 本研究:基多面体で特徴づけられる離散構造のクラスに対する汎用的な手法 (射影・ラウンディングの設計)
未解決問題(1) 問題:多面体に基づく,より一般的オンライン予測の特徴付けは可能か? 例:順列 • Permuthahedronと Birkhoffpolytope • いずれも効率的な射影・ラウンディングが可能[Yasutake+11][Helmbold&Warmuth 09] Permutahedron(基多面体) Birkhoffpolytope(???)
未解決問題(2) “オフラインーオンライン”変換 [Kakade+ 09] • オフライン離散近似アルゴリズムを用いて “近似”射影を実現 • 毎ステップあたりの計算時間・・・Tに依存 問題:より効率的な変換手法は構成できるか? Cf. Meta Rounding[Carr&Vempala 02] オフライン離散近似アルゴリズムを用いてラウンディングを実現(ただし,整数性ギャップの制限されたアルゴリズムを仮定)
Take Home Message オンライン予測分野だけでも 離散最適化にまつわる問題はまだまだある