Processing math: 100%

2017年9月13日水曜日

MIT OCW, Machine Learning 14日目

Rohit Singh, Tommi Jaakkola, and Ali Mohammad. 6.867 Machine Learning. Fall 2006. Massachusetts Institute of Technology: MIT OpenCourseWare, https://ocw.mit.edu. License: Creative Commons BY-NC-SA.
Lecture 18.

Specral clustering

データ点の近さの尺度を導入してそれぞれの点同士を頂点とし,辺をその近さの尺度によって重み付けしたグラフを構成できる. spectral clusteringはその重みづけグラフの分割を,固有値問題と考えるアルゴリズムのクラスである. 大きな正の重みで繋がれているノードたちは同じクラスターに入れられることが多い. グラフ表現を行うことで,そのアルゴリズムがノード間の近さだけを基準にして分類を行っていることを際立たせることができる.

Graph construction

ベクトル空間上で表現できる場合にも,グラフ構造での表現には有利な点が有る.例えばfig.1.aの点は2つの半円上の点に分類できるが,これを少数のGaussianの混合で表現することはできない一方,それぞれの点の最近傍の2点をつなげることで,fig.1.bの,非常によく特徴を捉えたグラフが構成できる. このような重み付けグラフを構成するより一般的な方法を議論する. これには多くの方法が有るが,もっとも典型的なのが,上で見たように,k-nearest neighborを使う方法である. すなわち,すべての点について,k個の最近傍の点をつなげる無向グラフを作成し,さらに
Wij={exp(βxixj)  if i,j are connected0otherwise
によって重みを計算する. Wij=Wjiである. 対角成分は全て0とする.
k,βが選べるパラメータである. kは求めたいクラスターたちの次元によって適した値が決まってくる.例えば,クラスターがd次元の表面をもつとするなら,kdが望ましい. 小さなkは疎なグラフを作りやすくし,よく似た点たちのみのクラスターが作られるようになる. これは,遠く離れた点ではユークリッド距離を使うのがナンセンスになるような場合に有利である .例えば球面にのみ全てのデータ点が存在して,点たちの距離が球面に沿った距離で図られるべきときには,点が遠くなれば遠くなるほど,ユークリッド距離と球面上の距離が乖離してくることが想像できるだろう.
βも同様の役割を果たす.

Graph partitioning and criteria

n個の点を2つに分類する問題を定式化する. より多くの種類に分類するときには再帰的に二値分類を適用する. 対象は,重み付け行列Wで表現されていて,Wは非負の対称行列で対角成分は0である. Wを近さの尺度として,ノードたちをC+,Cの二つに分類する. yi={1  iC+1iCという変数y={yi}を定義する.
C+,Cを決めれば分類は一意に定まり,その分類(cut)に対する重み
s(C+,C)=iC+,jCWij=14Wiji,j(yiyj)2=J(y)
を導入する. i,jが異なって分類されるとWij分の重みがsにつく. 全てが同じクラスタに分類されるときs=0だから,どちらのクラスタにも同じくらいの数のノードが入るようにするため,minimum cut criterionを導入する. よく使われるcriterionにnormalized cut(Shi and Malik 2000)がある.
Norm-cut(C+,C)=s(C+,C)s(C+,C+)+s(C+,C)+s(C+,C)s(C,C)+s(C+,C)
である.ただしs(C+,C+)=iC+,C+Wi,jとする.
この問題を厳密かつ効率的に解く方法は存在しないため,eigenvalue problemによって近似的に解く.

Spectral clustering, the eigenvalue problem

y=(y1,..,yn)でそれぞれは±1のどちらかを取ったが,z=(z1,..,zn)ziRに条件を緩和する.やはりiC+zi>0,iCzi<0とする.このように二値分類問題を緩和し,eigenvalue問題に帰着させる.まずはcutの重みを改めて表現する.
J(z)=14Wij(zizj)2=14i,j(z2i2zizj+z2j)=14i,jWij(2z2i2zizj)=12i(jWij)_Diiz2i+12i,jWijzizj=12zT(DW)z

Dii=jWijという対角行列を使って表現した.
L=DWgraph Laplacianという名でしられ,半正定値行列である. Lの最小固有値は必ず0であり,対応する固有ベクトルはz=(1,...,1)である. normalized cut criterionを考慮すると,最適化問題は
minimize12zT(DW)z   subject to zTDz=1,zTD1=0
となる. Lagrange multiplierを使うと,
(DW)z=λDz
の2番目に小さい固有値を求めることと同じになる(らしい). ^yi=sign(z2i)の符号が有るノードが入るクラスターになる.fig.2はあるspectral cluseringの近似解である.

Spectral clustering, random walk

normalized cut problemを緩和して近似的に解いた.全く異なったアプローチでこの近似方法を正当化する. 重み付きグラフの上でのrandom walkを考えるのである.
Pij=WijjWij=WijDii
によって定義される行列P=D1Wである. jPij=1で,P1=1が成立する.よってPを重み付きグラフの上でのrandom walkのtransition matrixと考えることが出来る. すなわち,X(t)を時刻t(ここではt回目の遷移とする)でのrandom walkのstateを表すとすると,
P(X(t+1)=j|X(t)=i)=Pij
であって,homogeneous Markov chainと考えることが出来る. Markov chainのstateはこの場合グラフのnodeである. Markov chainのErgodic propertyを定義する.

Definition

Markov chain {X(t)}ergocid
m s.t. t,i,j. P(X(t+m)=j|X(t)=i)>0

erogodicであるとき,{X}はirreducible かつrecurrentかつstationary distributionをもつ.
stationary distribution ππj=limmP(X(t+m)=j|X(t)=i)である. これまで議論してきた重み付きグラフを上の方法でMarkov chainにするとergodicであり,したがってergodic theoremが成立する.

(以下,講義はもう少し続くが固有値とMarkov chainがどうつながるかわからないので飛ばす.そのうちいい教科書を見つけて読む)

0 件のコメント:

コメントを投稿