機械学習勉強会 2010・6・3 松島慎 1 第一部 グラフィカルモデルとグラフ理論 2 論文のための予備知識+α • グラフィカルモデル – 無向グラフ(Markov network, Markov random field, Markov random network) • グラフ理論 – ジャンクションツリー。ジャンクションツリーアルゴ リズム – 全域木。重みつき最小(大)全域木 3 有向グラフ※ • 有効閉路が存在しない X1 X2 X3 X4 P(x) = Pp(xi|x{pa(i)}) P(x) = p(x1) p(x2|x1) p(x3|x1) p(x4| x2,x3) p(x5| x3,x4) X5 4 5 無向グラフ • Markov network, Markov random field X1 X2 P(x) = PfC(xC) 独立性高い Cは全部の極大クリークを動く X3 X4 特殊 疎 P(x) = f12(x1,x2) f13(x1,x3) f24(x2,x4) f345(x3,x4,x5 P(x) = f123(x1,x2,x3) f234(x2, x3,x4) f345(x3,x4,x5) X5 P(x) = f1234(x1,x2,x3,x4) f345(x3,x4,x5) 低い 一般 密 因子グラフ f1 • Belief Propagation(信 念伝播)に有用 f2 X2 X1 f23 P(x) = f1 (x1) f2 (x2) f3 (x3) f13 (x1,x3) f12 (x1,x2) f13 X3 f3 6 因子グラフvs無向グラフ f1 P( x1 , x2 , x3 ) ( x1 , x2 ) ( x2 , x3 ) f2 X2 X1 X2 f23 f13 X1 X3 f3 X3 P(x1,x2,x3) = f1 (x1) f2 (x2) f3 (x3) f13 (x1,x3) f12 (x1,x2) 7 グラフィカルモデル • 有向グラフ – 直感的にわかりやすい – “閉路がない”独立性 • 無向グラフ(Markov network, Markov random field) – 複雑な変数間の独立性(依存性)がある時 • 因子グラフ – 無向グラフより詳しい記述が可能 どれも一長一短。 8 ジャンクションツリー • ジャンクションツリー →クリークたちが少なくとも一つのノードしか共有し ないようなグラフ • ジャンクションツリーアルゴリズム – ジャンクションツリーを構成して、一般のMarkov Networkの一般の周辺確率を計算する方法 9 ジャンクションツリーの構成 X1,X2,X3 X1 X2 X3 X4 クリーク セパレータ X2,X3 X2,X3,X4 X3,X4 X5 X3,X4,X5 10 重みつき最大(小)全域木 • クラスカル法とよばれ、効率はO(E log E) 11 第二部 NIPS 2009’Outstanding Student Paper Awards An LP View of M-MAP Problem Menachem Fromer, Amir Globerson 12 概要 離散の台における確率モデルを扱う。 • M-best MAP問題 – 最尤点だけでなく、M番目までの尤もらしい点 (assignment)をすべて探したい – いろいろ応用ある • MAP問題 – 一般にはNP-Hard. – 緩和LPを定式化、効率的に解く[Yanover+06JMLR] • LP View of M-MAP – MAPのLPに不等式線形制約を一つ加えると2nd MAPのLPになる。 13 論文の貢献 • 2nd bestのLPによる定式化 – Markov networkが木の場合 • 線形不等式制約を一つ加える厳密な方法 – Markov Networkが木でない場合 • ジャンクションツリーを用いた厳密な方法 • 全域木+cutting plane methodを用いた近似法 STRIPES • 2nd best solver を用いたM bestの取り方※ 14 15 考える確率モデル • 確率∝1項の関数+2項間の関数 →Markov NetworkがG=(V,E)で表わされる p(x) exp f θ (x) exp i ( xi ) ij ( xi , x j ) ( i , j )E iV 例.) 各Xiは0,1変数 f θ (x) 1 ( x1 ) 2 ( x2 ) 3 ( x3 ) 12 ( x1 , x2 ) 13 ( x1 , x3 ) 2 3 X2 X2 1 X3 1 3 X1 2 1 X3 X1 x 0 1 1(x) 0.7 0.3 2(x) 0.9 0.3 3(x) 0.5 0.3 (x, x’) (0、0) (1、0) (0、1) (1、1) 12(x, x’) 0.5 0.1 0.7 0.3 13(x, x’) 0.6 0.6 0.7 0.3 • まずはMAPをLPとして書き下そう。 • 次に2nd bestの定式化をしよう 16 18 LP緩和の考え方 max f θ (x) max i ( xi ) ij ( xi , x j ) x x i i, j max θ v (x) x X2 X3 X1 LP緩和 →連続に広げた場所 で最適化する →M(G)だと等価な問 題になる max μconvv ( x ) 1 ( 0 ) 1 ( 1 ) 1 0 ( 0) 2 1 2 (1) 0 ( 0 ) 3 1 3 (1) 0 ( 0 , 0 ) 12 1 (0,1) 0 12 12 (1,0) 0 (1,1) 0 12 13 (0,0) 1 13 (0,1) 0 (1,0) 0 13 ( 1 , 1 ) 13 0 θμ 0 v 0 0 [[ x1 0]] [[ x1 1]] vx [[ x 1]][[ x 1]] n n M(G)という概念 M(G)= μ | p ( x ) s . t . x , 0 p ( x ) 1 , p ( x ) m ( x , x ), m ( x , x ) m ( x ), m ( x , x ) m ( x ), m ( x ) 1 ij i j ij i j j j ij i j i i i i xa :a i , j xi xj xi = v(x)やと同じ型のベクトルm iaに対応する次元の値がpXi=aとなり, ijaに対 { | 応する次元の値がpXi=a, Xj=bとなるような確率分布が存在する。 }= conv{v(x)} m120,0 • Marginal polytope X1 m10 m11 m20 X2 19 • まずはMAPをLPとして書き下そう。 → max f θ (x) max θ μ x mM (G ) μ| p(x) s.t. x, 0 p(x) 1, p(x) mij ( xi , x j ), mij ( xi , x j ) m j ( x j ), mij ( xi , x j ) mi ( xi ), mi ( xi ) 1 xa :a i , j xi xj xi – 木の場合、 M(G)はML (G)に制約を緩めても等価。 M L (G ) μ 0 mij ( xi , x j ) mi ( xi ), mij ( xi , x j ) m j ( x j ), mi ( xi ) 1 jV iV iV • 次に2nd bestの定式化をしよう 20 2nd Bestはどうなるか • 制約をいじれば、2nd bestになる。 best 2nd best m∈ML (G) (or M (G)) m ∈ M(G,z) = {m | m ∈M(G), mに対応するp で、pz0となるものがある} • 木の場合、 M(G,z) = {m | m ∈M(G), I(m,z)< 0} 21 I(m,z)とは I (μ, z ) (1 d i ) mi ( zi ) iV • • • • m ( i , j )E ij ( zi , z j ) 木にはエッジがn-1個ある I(v(z), z) = 1 z=z’ or I(v(z’),z)<0 証明はtreeのノード数に対する帰納法。 22 論文の貢献 • 2nd bestのLPによる定式化 – Markov networkが木の場合 • 線形不等式制約を一つ加える厳密な方法 – Markov Networkが木でない場合 • ジャンクションツリーを用いた厳密な方法 • 全域木+cutting plane methodを用いた近似法 STRIPES • 2nd best solver を用いたM bestの取り方※ 23 木でない場合 • G のジャンクションツリーのクリークc、セパ レータs I (μ, z) (1 d c ) mc ( zc ) m s ( z s ) cC sS M(G,z) = {m | m ∈M(G), I(m,z)<0} • triplet以上の変数を持たなければならない、 制約も増える。 m (x , x , x ) m (x , x ) m123x1, x2, x3 123 1 2 3 13 1 3 x2 24 例 X1,X2,X3 X1 X2 X2,X3 X3 X4 X2,X3,X4 X3,X4 X5 X3,X4,X5 I (μ, z) m234 ( z1 , z2 , z3 ) m23 ( z2 , z3 ) m34 ( z3 , z4 ) 0 25 論文の貢献 • 2nd bestのLPによる定式化 – Markov networkが木の場合 • 線形不等式制約を一つ加える厳密な方法 – Markov Networkが木でない場合 • ジャンクションツリーを用いた厳密な方法 • 全域木+cutting plane methodを用いた近似法 STRIPES • 2nd best solver を用いたM bestの取り方※ 26 全域木を使った方法 T E なる全域木 T に対し I (μ, z ) (1 d ) mi ( zi ) T iV T i m ( i , j )T ' ij ( zi , z j ) と定義する。そして T μ M ( G ) | tree T G , I (μ, z) 0 MST (G,z) = L L と定義する。 27 MLST (G,z)という概念 MST L (G,z) {μ | μ M (G), T , I (μ, z) 0} T • M(G,z) ⊂ MST L (G,z) ⊂ ML(G) • 大きい場所で最適化しても答えが実行可能 ならばよい – 実際かなりの割合でintegralな解が得られる • ML(G)から出発して、だんだんに制約をつけ たしていく(平面切除法) 28 平面切除法 • 制約0からスタート – 今の場合、ML(G)の制約 • 緩和問題を解く • 満足しなければ制約を加えてもう一度 • どの制約を加えるか? I T (μ, z ) (1 d iT ) mi ( zi ) • どのtreeか? – 今のm iV m ( i , j )T ' が最も乱している制約 ij ( zi , z j ) 29 arg max I T (μ, z ) (1 d iT ) mi ( zi ) T iV m i ( zi ) iV m ( i , j )T ij m ( i , j )T ij ( zi , z j ) ( zi , z j ) m i ( zi ) m j ( z j ) • クラスカル法を使う 30 from 2nd to M-best • 問題を分断する。 1 3 4 2 5 max μ θ | μ M (G ), mi1 (0) 1 max μ θ | μ M (G ), mi1 (1) 1 max μ θ | μ M (G ), m (0) 1 max μ θ | μ M (G ), mi1 (1) 1, mi2 (1) 1 i1 (1) 1, mi2 31 論文の貢献 • 2nd bestのLPによる定式化 – Markov networkが木の場合 • 線形不等式制約を一つ加える厳密な方法 – Markov Networkが木でない場合 • ジャンクションツリーを用いた厳密な方法 • 全域木+cutting plane methodを用いた近似法 STRIPES • 2nd best solver を用いたM bestの取り方※ 32 実験1 • binary grid graphs of size 10 × 10 ~1030states – attractive (submodular) potentials, a setting in which the pairwise LP relaxation is exact – For each grid edge ij, we randomly chose Jij ∈ [0, 0.5], and local potentials were randomized in the range ±0.5. – ~2minites (19 columns(MSTs) are generated) – vs. 13 minites by Nilson algorithm – vs. 10 second by Loopy BF (not exact ) 33 実験2 • Jij and the local potentials randomly chosen in [−0.5, 0.5] • all three algorithms were not able to successfully find the top solutions. • we added regions of triplets to tighten the LP relaxation (for STRIPES and Nilsson) and to perform GBP instead of BP (for BMMF). • STRIPES and Nilsson always provably finding the optimal solutions and BMMF mostly finding these solutions 34 実験2 • STRIPES was the fastest of the algorithms, taking 0.5 - 5 minutes. – vs. 18 minutes by Nilsson – vs. 2.5 -7 minutes by BMMF • Up to 23 MST 35 36 実験3 • The protein side-chain prediction (SCP) problem – corresponds to finding a MAP assignment for a pairwise MRF – up to 45 states per variable, mean approximate treewidth 50) • STRIPES provably found the top 50 solutions for 369 of the 370 • 146 of the 315 problems was the Nilsson method able to complete within five days 37 38 Conclusion • In this work, we present a novel combinatorial object M(G, z) and show its utility in obtaining the M best MAP assignments. • We provide a simple characterization of it for tree structured graphs, and show how it can be used for approximations in non-tree graphs. 39 • Here we studied the polytope that results from excluding one assignment. An intriguing question is to characterize the polytope that excludes M assignments. • We have found that it does not simply correspond to adding M constraints I(μ, zi) ≤ 0 for i = 1, . . . ,M, so its geometry is apparently more complicated than that of ˆM(G, z) 40 • Here we used LP solvers to solve for μ. Such generic solvers could be slow for large-scale problems. However, in recent years, specialized algorithms have been suggested for solving MAP-LP relaxations. • These use the special form of the constraints to obtain local-updates and more scalable algorithms. We intend to apply these schemes to our method. 41 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 1 0.2 0.4 0.5 0.6 0.8 1 0 42 • M(G)<ML(G) M(G) ML(G) • 定式化に要する変 数の数はM(G)のほ うが多い 43 LP緩和とは • 実際に解きたい問題は組み合わせ最適化 • これを連続に拡張→Marginal Polytope • 連続だとLPの手法を使って解ける – CPLEX – Tree-reweighted belief propagation (TRBP) • しかし近似になる • いかに解を厳密にするか→いかにtightに緩 和するか 44 • MAP problem X2 X3 X1 max f (x) s. t. xi Di P(X1,X2,X3) x1 0 1 (X1,X2,X3) P(X1=x1) 0.7 0.3 (0,0,0) 0.2 x1 0 1 (0,0,1) 0.2 P(X1=x1,X2=0) 0.4 0.25 (0,1,0) 0.15 P(X1=x1,X2=1) 0.3 0.05 (0,1,1) 0.15 x3 0 1 (1,0,0) 0.25 P(X1=x1,X3=0) 0.35 0.3 (1,0,1) 0 P(X1=x1,X3=1) 0.35 0 (1,1,0) 0.05 (1,1,1) 0 45 • MAP problem (ここでは尤度最大化と同じ) x3 X2 fa X3 fb X1 fb X1 1 P(X1=x1) 0.7 0.3 0 1 x3 0 P(X2=0,X3=x3) 0.35 0 P(X2=0,X3=x3) 0.35 0 0 1 x3 0 1 P(X2=1,X3=x3)0.35 0.3 P(X2=1,X3=x3)0.35 0.3 P(X2=0,X3=x3) 0.35 0 P(X2=0,X3=x3) 0.35 0 0 1 x3 0 1 P(X2=1,X3=x3)0.35 0.3 P(X2=1,X3=x3)0.35 0.3 P(X2=0,X3=x3) 0.35 0 P(X2=0,X3=x3) 0.35 0 2M-1 (X1,X2,X3,X4,X5,X6) P(X1,X2,X3,X4,X5,X6) (0,0,0,0,0,0) 0.15 (0,0,0,0,0,1) 0 (0,0,0,0,1,0) 0.15 1 P(X2=1,X3=x3)0.35 0.3 x3 fb 0 P(X2=1,X3=x3)0.35 0.3 x3 X1 x1 2M ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ (1,1,1,1,1,0,0) 0.2 (1,1,1,1,1,0,1) 0 (1,1,1,1,1,1,0) 0.2 (1,1,1,1,1,1,1) 0.05 47 所感 • 筆者らはM-best MAP問題を解くためのLPの 定式化を新しく提案した。 • Gが木の場合のM-best MAP問題は、積和ア ルゴリズム+beam search(HMMでやられて いるようなk-best)でも解ける。そしてLPを解く よりはきっとそっちの方が早いだろう。 • 基本的にはMAPさえintractableな時の提案法 と考えた方がよい。最適性の保証がある?の がよいと筆者は主張しているようだ。 49 木の場合は効率的にできるはず・・・ • 木でない場合このような問題の計算量は爆 発するので、厳密に解くのはMAP問題でさえ 困難 • M-bestを近似する方法としてLBPの拡張など が考えられている – しかし、なんの保証もない近似法である • 本手法は近似ではあるが最適性の保証が得 られる 50 例 • 各Xiは0,1変数 f θ (x) 1 ( x1 ) 2 ( x2 ) 3 ( x3 ) 12 ( x1 , x2 ) 13 ( x1 , x3 ) x 0 1 1(x) 0.7 0.3 2(x) 0.9 0.3 3(x) 0.5 0.3 (x, x’) (0、0) (1、0) (0、1) (1、1) 12(x, x’) 0.5 0.1 0.7 0.3 13(x, x’) 0.6 0.6 0.7 0.3 51
© Copyright 2024 ExpyDoc