ラベル 機械学習 の投稿を表示しています。 すべての投稿を表示
ラベル 機械学習 の投稿を表示しています。 すべての投稿を表示

2017年9月16日土曜日

MIT OCW, Machine Learning 16日目

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.

Bayesian networks

Bayesian networkは確率的な情報を表現し,使うのに有用なモデルである. Bayesian networkは1. 有向グラフと,2. それに付随する確率分布からなる. グラフは確率変数たちの質的な関係(条件付き独立性)を表現し,確率分布は確率変数たちの量的な関係を記述する. HMMでforward-backward algorithmが効率的であったのはMarkov性ゆえであり,これをBayesian networkの場合にも一般化するため,確率変数同士の独立性,条件付き独立性,従属性を明確に記述するグラフは非常に重要である.
まずは単純なBayesian networkを挙げる(fig.1). 確率変数は独立なコイントスの結果で,のどちらかの値を取る. またで確率変数を定義する. 状況設定から同時分布は

とわかるが,同じ分布をfig.1のグラフだけから導ける. その前にいくつかの用語を定義する.
からへの辺が有るから,parent(親)であり,child(子)であるという. もまたの親であり,このときに従属する. グラフに合致した同時確率分布は必ず,それぞれの確率変数の親たちによって条件付けられた条件付き確立の積として書ける. よって(1)はfig.1のグラフと合致している.

Marginal independence and induced dependence


このように,他の確率変数を無視すると周辺分布が独立になるとき,marginary independentであるという. これはグラフからも見て取れる.

確率変数のもう一つの典型的な関係はinduced dependenceである. の現れを与えられず,の現れのみを与えられた場合を考える.ならばのどちらかに決まり,ならばに決まるから,が決まればが決まるし,が決まればが決まる. すなわちが決定されるとdependentな関係になる. これは後で述べる方法によってグラフから見て取れる.

marginal independence とinduced dependenceは現実のモデルでよく現れる. fig.2cのfactorial Hidden Markov Modelはその例である. このモデルでは2つの周辺独立なMarkov chainが観測値を作り出している. 換言すれば,2つのMarkov chainが観測値によってのみ結び付けられているということである(induced dependence). このモデルからサンプリングするには,2つのMarkov modelから独立にサンプリングを行い,各時点において2つのstateから観測値をサンプリングする. fig.2cの同時分布は

とfactorizationできる. このモデルは例えば二人が話しているのを1つのマイクで録音し,それぞれの人が何を話したか推測したり,2つのハプロタイプから生成された表現型からもとのハプロタイプを推測するのに利用できる.

Explaining away

また,Bayesian networkでうまく把握できる確立モデルにexplaning awayがある.Pearl, 1988による,強盗警報機の鳴る原因のモデル(fig.3)を例に見る. 4つの二値(0, 1)確率変数があって,
は警報機,,は地震,はラジオで地震情報がなされていることを代表している.

を仮定する. fig.3で影のついた確率変数の情報のみを持っているとする.
のみが解っているときを考える(fig.3.b).の少なくとも一方が成立しているとわかるが,ともに滅多に生じない事象だから,は必ず起きないと仮定する. この仮定のもとでの情報を得たらを確信し,を排除(explain away)できる. したがって

である. ここでのもとで条件付き従属であることを使った.これもまたグラフから見て取れる性質である.

Bayesian networks and conditional independence

グラフはもともと変数の独立性をencodeしているから,その独立性をextractするための基準が必要である. Bayesian networkの場合,この基準をD-separtation criterionという.

例えば先程のモデルを拡張したfig.4aを考える.ここでは,警報がなったので帰宅したという事象を代表する変数である. のもとで独立か否かと言った問いに答えるための手順を考える.
1. 対象の変数のancestral graphを構成する. ここでは対象とはであって,ancestral graphはこれらとともに,これらの変数に至る有向辺を何ステップでも辿って現れる変数全てを含む. 今の場合,ancestral graphはfig.4bである.
2. 得られたancestral graphにおいて,子ノードを共有するノード間に無向辺を加える. 3つ以上のノードが子ノードを共有する場合には,それらのつくる全てのペアについて辺を加える(fig.4c).これをmoralizeという.
3. 全ての有向辺を無向辺に置き換え,無向グラフ(fig.4d)を得る.

結果得られた無向グラフから,もとの問の答えを読み取れる. 得られた無向グラフからとそれに結ばれた辺を取り去ったとき,を結ぶpathが存在しなければによって条件付き独立であり,存在すれば条件付き独立であると言える. したがってfig.4dから,によって条件付き従属である.

fig.1に立ち返り,D-separated criterionを使うと,fig.5によってがmarginally independentであることが見て取れるし,fig.6からによって条件付従属であることが見て取れる.

Graph and the probability distribution

以上の議論は,グラフとそれに対応付けられる確率分布がconsistentであるときにのみ成立する. consistentとは,グラフから見て取れる全ての(条件付き含む)独立性が,確率分布の上でも言えるということである. グラフから見て取れる独立性というのは数多く存在する.
個のノードをもつ循環しないグラフが与えられたとき,

はそのグラフとconsistentであることが知られている.ただしの親ノードの集合である.

2017年9月14日木曜日

MIT OCW, Machine Learning 15日目

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 19, 20.

は初期分布,はstateの数とする.またMarkov chainの初期のstateはである.

Markov chains(cont’d)

Markov chainを記述する方法には2つある. state transition diagramgraphical modelである. transition diagramはstateたちをノードとし,遷移確率が0でないstateをつないだ有向グラフであって,例えばfig.1のようである. また,初期分布を,特別に設定したnull stateからの遷移とみてグラフに書き込むことも出来る.
graphical modelでは対照的に,確率変数たちの独立/従属関係に着目する. ある時刻におけるstate は確率変数であって,と独立でないことがMarkov chainの定義から言える. ある頂点(state)がほかのある頂点(state)に従属しているときに有向辺によってその従属関係を示して,graphical modelを構成する.つまり,
に従属する
という規則をグラフ化する. fig.2 がその例である.
enter image description here
enter image description here

State prediction


から,任意の

が成立する. 番目の要素がであるような横ベクトルであって,

と書くことにすると,

が成立する.

Estimation

sample pathの観測からMakov chainのtransition matrixを推測することが出来る.
の現れ(sample path)のが与えられたとき,そのlog-likelihoodは,
においてみられたからへの推移の回数とすると,

であって,を考えれば,transition matrix の最尤推定は

である. しかし,初期分布を推測するには多くのsample path が必要不可欠である.

Hidden Markov Models

Hidden Markov Models (HMMs)は,観測している値が,直接観測されないMarkov chainが更に確率的に生成しているものであると仮定したモデルである. HMMモデルは広く利用され,例えば,あとで発話をphoneme(音素)のMarkov chainでHMM化し,また,アミノ基の列であるタンパク質をモデル化するのに,タンパク質分子をその構造的特徴のMarkov chainによってHMM化する.
HMMはMarkov chainとmixture modelによって理解できる. fig.3の単純な例を議論する. 時刻はの4つだけで,fig.3.aは何度かの観測によって得られた値の複数のプロットである. 一旦時刻の情報を捨て去って,の値だけを基準にクラスタリングすると,two component mixture

でうまくモデル化出来る. 例えばなどとできる. このmixture modelから(まだ時刻を無視しつつ)各時刻でsampleを生成すると,fig.3.bの楕円の中に収まるようになる. このとき,各時刻における観測値のサンプルは,選ばれたコンポーネントからのみ生成される(fig.4).
各時刻で正しい方の楕円でのみsampleを生成させるためにMarkov chainを使う. Markov chainによって正しい方のcomponentを選ぶようにするのである. すなわち,でのcomponentを,で選んだcomponentによって選ぶ(fig.5).
enter image description here
enter image description here
enter image description here

Probability model

HMMをgraphical modelで書くことによって,全ての確率変数に対する同時確率を簡単に書き下せる. グラフはどの変数がどの変数に依存しているかを明確にし,どの条件付き確率が同時確率のfactorであるかがわかる. fig.5では,

である.

Three problems to solve

  1. 観測値の確率を評価する
  2. 観測値が与えられたとき,最もありそうな隠れたMarkov path を推測する.
  3. 時系列に沿った観測値の集合の集合 から,モデルのパラメータを推測する.

Problem 1.

として,
と計算していくアルゴリズム(forward algorithm)と,と計算していくアルゴリズム(backward algorithm)があり,どちらか一方だけでも計算できるのだが,計算ステップ()が多くなるほど計算量が幾何級数的に増大するので,前後から挟み撃ちして効率的に計算する.
以下はforward algorithmの導出だが,backwardの場合も殆ど同様である.


によって

などと計算できる. 同様に

これを繰り返して,

が得られる. とすると,

さらにとすると,

である.組み合わせて

が任意のに成立する.
これは,

と理解でき,あるいはMarkov propertyによって

からも理解できる.

Problem 2. most likely hidden state sequence (Viterbi)

目的は

なるを求めることだった.

とすると,

が計算できる. であって,これによって

が得られて,これを起点として

によって,を計算していく.
このように,forwad algorithmによっての最大値をごとに計算し,さらにbackward algorithmによって,具体的にを最大化するを求めていくアルゴリズムをViterbi Algorithmという.

Example

enter image description here
fig.1で表されるHMMを例に上のアルゴリズムを考察する.state が選ばれると,,によって観測される値が確率的に決まるとし,,で共通とする.観測点はが与えられていて,を推測する.
まず,が,の変化によってどう振る舞うかを見る. が大きいとき,はほとんど同じ分布になり,観測値が役に立たなくなる.
と近似できるから,となる.
が非常に小さい時,今度はほとんど観測値と制約条件だけが推測に影響するようになる.というのは,

において,(2)の部分が極めて大きな,あるいは極めて小さな値を取るようになり,(1)の部分をほとんど無視できるからである.
が極端な値でない場合には,Markov chainのtransition matrixからstate 2へできるだけ早く移ろうとする性質と,観測値に合ったhidden pathを辿ろうとする性質のバランスを取ろうとする. 例えばなら,most likely state sequenceは1122222である.

Problem 3: estimation

Hidden statesを観測できず,そこから確率的に生成される値のみを観測できるというのは,モデルの全ての変数を知ることなくモデルを推測しようとしているという点でmixture modelと似ている. この問題はmixture modelと同様にEM algorithmを反復的に用いることで解ける. 普通は複数回行われる,すなわちのように観測値が得られるのだが,簡単のためにすなわち観測値は1通りしか無いとする.
EM-algorithmを導く簡単な方法は,まずは全ての変数が観測されているとしてモデルを構成することである.

とすると,complete log-likelihoodは

(1): 初期状態の確率
(2): 各state における,を生成する確率をでの総和
(3): の遷移が起きる回数
(4): 全てのstateの組で,遷移がどれほど起こるかの総和

を緩和させた”soft”なカウント

と定める.

だから,posteriorは

という正規化で計算できて,同様に

したがって

Multiple (partial) alignment

複数の列が与えられるとき,その類似点をさがすのがalignment問題である. そのパターンは,全ての列に存在するということの他にはほとんど情報が得られていないとする. 簡単のため,そのパターンは長さ4であることは既知とする. この状況で考えられる最も簡単なHMMはfig.2である.というstatesは”match states”といって,求めるべきパターンを生成したであろうstatesである. は”insert states”であって,探しているパターン以外の列を生成する. それぞれのstateはというoutput distributionをもつ.これらの分布との値を与えられた列たちから推測する.
enter image description here
このモデルは有限長の列を生成する. に入って最初の要素を生成し,平均ステップにとどまった後,に遷移してパターンを生成し,に遷移してまた平均ステップとどまってから列を終わらせる.
複数の列が与えられたとき,このHMMのパラメータを,EM algorithmによって最尤推定する. ここではまだどこが生成されたパターンなのかは考えず,単にパラメータを最適化する. パラメータが見つかったら,Viterbi algorithmによってそれぞれの観測点がどのhidden stateによって生成されたかを推測する.例えば観測列

という対応の推測が得られたとき,hiddenの列とobesrvationの列には一対一の関係が有り,この例では,パターンはにおいて,すなわちmatch statesが始まったところで始まる.
それぞれの観測列でのパターンの部分列はfig.3のようにアラインされる.
figure 3
figure 3

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を使う方法である. すなわち,すべての点について,個の最近傍の点をつなげる無向グラフを作成し,さらに

によって重みを計算する. である. 対角成分は全て0とする.
が選べるパラメータである. は求めたいクラスターたちの次元によって適した値が決まってくる.例えば,クラスターが次元の表面をもつとするなら,が望ましい. 小さなは疎なグラフを作りやすくし,よく似た点たちのみのクラスターが作られるようになる. これは,遠く離れた点ではユークリッド距離を使うのがナンセンスになるような場合に有利である .例えば球面にのみ全てのデータ点が存在して,点たちの距離が球面に沿った距離で図られるべきときには,点が遠くなれば遠くなるほど,ユークリッド距離と球面上の距離が乖離してくることが想像できるだろう.
も同様の役割を果たす.

Graph partitioning and criteria

個の点を2つに分類する問題を定式化する. より多くの種類に分類するときには再帰的に二値分類を適用する. 対象は,重み付け行列で表現されていて,は非負の対称行列で対角成分は0である. を近さの尺度として,ノードたちをの二つに分類する. という変数を定義する.
を決めれば分類は一意に定まり,その分類(cut)に対する重み

を導入する. が異なって分類されると分の重みがにつく. 全てが同じクラスタに分類されるときだから,どちらのクラスタにも同じくらいの数のノードが入るようにするため,minimum cut criterionを導入する. よく使われるcriterionにnormalized cut(Shi and Malik 2000)がある.

である.ただしとする.
この問題を厳密かつ効率的に解く方法は存在しないため,eigenvalue problemによって近似的に解く.

Spectral clustering, the eigenvalue problem

でそれぞれはのどちらかを取ったが,に条件を緩和する.やはりとする.このように二値分類問題を緩和し,eigenvalue問題に帰着させる.まずはcutの重みを改めて表現する.

という対角行列を使って表現した.
graph Laplacianという名でしられ,半正定値行列である. の最小固有値は必ずであり,対応する固有ベクトルはである. normalized cut criterionを考慮すると,最適化問題は

となる. Lagrange multiplierを使うと,

の2番目に小さい固有値を求めることと同じになる(らしい). の符号が有るノードが入るクラスターになる.fig.2はあるspectral cluseringの近似解である.

Spectral clustering, random walk

normalized cut problemを緩和して近似的に解いた.全く異なったアプローチでこの近似方法を正当化する. 重み付きグラフの上でのrandom walkを考えるのである.

によって定義される行列である. で,が成立する.よってを重み付きグラフの上でのrandom walkのtransition matrixと考えることが出来る. すなわち,を時刻(ここでは回目の遷移とする)でのrandom walkのstateを表すとすると,

であって,homogeneous Markov chainと考えることが出来る. Markov chainのstateはこの場合グラフのnodeである. Markov chainのErgodic propertyを定義する.

Definition

Markov chain ergocid

erogodicであるとき,はirreducible かつrecurrentかつstationary distributionをもつ.
stationary distribution である. これまで議論してきた重み付きグラフを上の方法でMarkov chainにするとergodicであり,したがってergodic theoremが成立する.

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

2017年9月12日火曜日

MIT OCW, Machine Learning 13日目

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.

停電でデータが消えるという悲しみ

Mixture models and clustering

与えられたデータは暗黙的に複数の種類に分けられると仮定し,それを踏まえてより精度の高い推測をするというのがmixture modelの動機のひとつだった. 一方で,その暗黙の構造自体を明らかにすることも有用である. このような問題をclusteringという. つまり,データセットをいくつかのclusterに分類するのである.
mixture modelをgenerative modelとして扱うには,我々が分類しようとしているクラスターがどんなものなのか知らなければならない. 最も単純な例がspherical Gaussian clusterで,すなわち

というmixture modelを推測する.
他にも様々なクラスタリングアルゴリズムがあり,あるものはネストしたクラスターを小さなクラスターをマージしていくことで生成し(hierarchical agglomerative clustering),またあるものはに最適なクラスターの数を推測してからクラスタリングを行う(k-means). などと期待問題によって適したアルゴリズムは異なる.

データセットに対してをどのように設定すればいいかとか,が十分大きければEM-algorithmでよいクラスタリングが出来るのかとか,頑強なモデルであるのかとか,様々な疑問があり,その答えの一部を以下で与える.

Mixtures and K-means

Gaussian mixture modelを,全ての分散行列を同一のspherical(単位行列の定数倍)にし,さらに全てのcomponentの頻度を同一にすることで単純化する.すなわち

を考える. これをEM-algorithmで最適化するとどうなるのかをみる.
まず,クラスターの境界がどうなっているかをみる. つまりをみたすをみる. 仮定より,この点で
が成立する.どちらのGaussianも同じsphericalな共分散行列を持つので, これが成立するでは

が成立する.
すなわち境界は線形であり,fig.1のように,任意のクラスターの組に対してこのような境界を引ける. 組ごとの比較はVoronoi partitionを導く. Voronoi partitionのあるregionでは,例えば,全ての点がに最も近い.このregionは同時にが任意ので成立する.

K-means

上のような単純なモデルではEM-algorithmも単純化できて,それを特にK-meansという.
K-meansでは,E-stepで,とし,M-stepでとmeanを設定し直す.

K-meansは非常によく利用されるhard assignment(各点がどれかただ一つのクラスターに分類される)版EM-algorithmである. K-meansはEM-algoと同様初期値が結果に大きく影響するので,初期値を変更して何度も行うのが望ましい. また,ある一点をに割り当て,から最も遠い点を,から最も遠い点を,…として初期のを決める方法をgreedy packingという.

Distance and clustering

これまでの議論でEuclidean distanceを使ってきたことを正当化する. ところで,多くの場合,特徴データを特別な関数で空間に写像して,それからclusteringを考えたりする.
例えば文書をクラスタリングすることを考える. document を単語の入った袋と考えて,これを以下の写像によって扱いやすいベクトルにする.

をTFIDF(term frequency - inverse document frequency)写像という. IDFは,多くの文書に現れるためクラスタリングに役立たなそうなwordほど小さく(1に近く)なる. こうして文書を実数空間に写して,K-meansのようなアルゴリズムに掛けることができる.
クラスタリングを行う際には適切な距離関数を使うことが非常に重要で,適切な距離を使うためにクラスタリングアルゴリズムを選んでもよいほどである. ほとんどのアルゴリズムは任意の距離関数で使える. 適切な距離関数はモデル選択理論を使って選ぶことが出来る.

2017年9月11日月曜日

MIT OCW, Machine Learning 12日目

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.

モデル選択理論難しすぎ

Mixture models

mixture model(混合モデル)は与えられたデータの曖昧さを捉えるモデルで,データの背後に有る,観測できない要因についての仮定を行う. 観測された一つのexampleをというベクトルで表すとする. exampleは個の要因(とする)のどれかによって生成されているcomponentの数という. その要因であるとすると,の事後確率はである. またの頻度をとすると,. 実際のが何であるかは一般にはわからず,全てのについて混合して,の確率

となる.

Example: Student exam model: 1-year

例えば,学生たちの試験の結果をモデル化することを考える. 学生たちは,例えば学士での専攻のような,では与えられていない要因によってことなった正答/誤答の傾向が存在すると仮定する. そのような要因が合計で個(このを選ぶのはmodel selectionの問題である)あって,さらに個々の学生がどれに該当するかわからないときのモデリングを考える.
それぞれの学生の点数が独立とするなら
である.

Example: student exam model: K-years

上の例で,過去年間のデータがあるとする. 年での学生数で,は学生年目の試験結果とする(はただのインデックスで,が同じだからといって同じ学生であるというわけではない). は変わらないと仮定する. しかし学生の数は各年でことなって,の頻度も一定でなく,と条件付きにする. この場合のmixture modelは

そして全てのデータを考えたときの尤度は

となる.ここでのをも決定する.

Collaborative filtering

mixture modelは推薦システムにもよく使われる. 人のユーザに本の映画を推薦する問題を考える. ユーザはのうち極わずかだけに点数をつけているとして,つけていない映画たちをどう評価するかを推測するのが我々の課題である. このような問題をcollaborative filtering(協調フィルタリング)という.
点数はをつけられるとする. ただしはユーザの映画に対する評価とする. ユーザたちが実際に与えた評価をとする. が与えられているときと書く.
collaborative filteringでは,ユーザと映画の両方にいくつかの種類があって,それが評価に影響すると仮定する.すなわち,それぞれの映画が”movie types” の分布の上にあって,ユーザも”user types” の分布の上にあるとする. 有る映画が,すべてのユーザにとって同じタイプであるとは考えず,それぞれの映画が,その映画に対応した特徴のバッグをもっており,それぞれのユーザごとにそのバッグからタイプを取り出すと考える. この仮定はユーザにも適用される. すなわち点数を付けるたびに,そのユーザのタイプのバッグからタイプが取り出される.
を以下によって推測する.
から映画のタイプをサンプルし,またからユーザのタイプをサンプルする. さらにからをサンプルするのである. これを全てのに足し合わせて

となる. はタイプから評価への写像を決定する.
を与えられたときの尤度は

である.
さらに,ユーザの評価のスタイルもモデルに組み込める. 例えばのような高評価に偏った評価をする人や,のみのような極端な評価をする人を考えることが出来る.このような評価スタイルの集合をとする.ユーザのスタイルは全ての映画に一貫しているが,個々のユーザにどうスタイルを割り当てるかは未知とする. ユーザがスタイルをもつ確率はと書ける. スタイルもすべてをを重みにして総和を考えて尤度を求めるとすると,尤度は,

となる.(1): user がスタイルによって評価する尤度
このモデルは

個のパラメータを持つ.
さらに充実したモデルでは,”missing elements”のモデル,すなわちある映画の評価がなぜなされないかもモデル化するはずである.

Estimating mixtures: the EM-algorithm (期待値最大化法)

midture modelの例をいくつか見てきた. データによく合うようにパラメータを設定する方法を論じる. の要因が不明なので,で総和を取ってきたのだが,まずは要因がわかっているモデルを考える.

Complete data


それぞれのに対応するが既知であると仮定して議論する. を使うと便利である. log-likelihoddは

尤度を最大とするパラメータをハットで表すと,


となる.このようにが既知である場合には,最尤推定は簡単に行えるとわかる.

Imcomplete data

がわかっていない場合を考える. を初期のパラメータとする. このパラメータで,あるによって生成される確率は

という二値の割当の代わりに,という”soft”な割当を使うのである. この割当はによっており,を更新していくたびに変化していく.
これらの結果から,Expectation Maximization algorithm (EM)が導かれる. EMは全てのmixture modelと更に広範なモデルに適用できる. Gaussian mixtureでのEM-algorithmは以下の通り.

Algorithm (EM)

(step1)
を定める. 例えばとし,をランダムに選んだの点に,の分散行列としたりなどする.
(E-step)
によって評価する.
(M-step)
パラメータを,

によって更新する.

この更新則によってlog-likelihoodは増加し,またパラメータは収束することが証明されているが, その極限ではが成立することしか保証されていない.

Example

2つのGaussianのmixture modelを考える. fig.2 はEM-algorithmのイテレーションの様子である.
enter image description here

2017年9月6日水曜日

MIT OCW, Machine Learning 11日目 宿題3

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.

assigmnemt 3
Q and A

1.

答案.

(b)
(c)
(1)の不等号を示せなければならなのだが,模範解答でも定性的に言及されただけだからもう明らかでいいと思う
(d)
がtraining errorを0にするというのは,任意のが成り立つということ. を生成するを生成するは独立で,だから,がtraining errorを0にする確率は. (1): 各サンプルの生成の独立性
も同様で,足し合わせると求める確率が得られる.
(e)
においてのtraining error とする.
を考える()
だから,training setから番目を引いてもから選ばれるestimatorは変わらず.のまま. したがってが任意ので成立.
よって
これはのtraining errorがの時も同じ. よって示せた.

模範解答.

(a)
r.v. が同じdistributionをもつとき,であるのを利用する.これは

からわかる.
がそれぞれr.v.の集合であっても成立する. とする.ただしでtrainし,を識別子, 個のtraining dataでを識別する. は同じdistributionを持つから,与えられた四季が成立する.
(f)
training error をとすると,classifierは回間違える. ある次元においてtraining errorが以下である時,すなわち間違いがせいぜいであるとする.間違いの回数をとおくと,間違いの起こる場合の数は通りで,まさにそこで間違いが起こる確率は. よってtraining errorが未満である確率は

errorが以上である確率はで,次元全てがそうである確率は.これが以下であれば少なくとも1つの次元でerrorが未満となる. よって
を解くと,

2.

答案.

(a)

(d) marginal likelihoodが減少し始めるとき

模範解答.

(b) 与えられた式は間違いに対して確率0を割り当ててしまう.

とする.

2017年8月29日火曜日

MIT OCW, Machine Learning 10日目 モデル選択の理論1

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 9

Kernel Optimization

kernelのあるパラメータを変えて,問題により適したkernelをつくることができる. 例えばradial basis kernelののようなパラメータを変化させたり,の次元に重み付けをしてからに渡すような方法が考えられる. パラメータのよさの基準には,cross-validationやgeneralization errorに関連した基準(marginなど)が用いられる. marginはを定数倍すると同時に倍化するため,normalization という制限を加える.normalizationは例えば

で実現できる.
他のkernel optimizationの方法にkernel alignentがある. すなわち,パラメータやGram matrixを理想的なkernelに近づけるように調整するのである. 例えばclassificationでは

を標的となるkernelのGram matrixとする.というのは,とすれば,

と,全てのtraining exampleが等しいmarginで正しく分類できるためである.
kernelをこの標的に近づける方法を考える.

のように,kernelたちのconvex combinationによってkernel を構成するとき,が我々が選べるパラメータである. のGram matrix を,標的のGram matrix に近づけるため,Gram matrixをベクトルと考えて,その内積を

と定める. こうしてのcosine類似度

を最大化させるを求めれば良い.

Model (kernel) selection

少ないtraining exampleに複雑すぎるmodel(kernel)を使うと,over-fittingという問題が起きる. 問題によって使うkernelの種類を制限することがある. kernelを選ぶことで
linearながあるとき,discriminant functionは

という形をしている.となる関数で,によるfeature representationという. を変えることで可能なdiscriminant functionの集合

を構成できる. 同様にquadratic kernelによって可能な集合がある. このように

Model Selection Preliminaries

はtraining setとする. をmodelとして選んで,をbest fitting discriminant functionとすると,

を最小化する.はhinge lossでもlogisticでも他の何でもよい. によってへk擦るregularization parameterである. が新しいexampleにどれほどgeneralizeできているかが問題となる.
それぞれのすなわちそれぞれのdiscriminant functionはexpected lossあるいはrisk

をもつ.ここでは問題となるデータを生成している分布で,普通は未知であり,もそこから生成されていると考える. これが,我々が最小化したいgeneralization errorである. によって決まるのrisk を最小化するを選ぶことが最終的な目標である. ただしから生成されるので,も確率変数である(理論的には便利な仮定だが,実際にが正しくから生成されているとは限らない).
が既知であるならを考えれば良いが,ここではは未知として,だけを使ってを,さらにはをも選ばなければならない.
簡単のため,を,linearとquadraticなdiscriminant functionの集合とし,のみを議論する. だから,から選ぶことで必ずtraining setにおけるerrorが小さいを得られるが,example とlabelの関係が線形であるときにも非線形なから選ぶと,over-fittingしているかもしれない. 真の分布が線形分離可能であるとき,quadraticなdecison boundaryはノイズに影響されてgeneralizeがうまく行っていないということである. したがってが複雑になるほどtraining setに対する性能が向上する一方でtest setに対する性能は低下していく(fig.1). よって適切な複雑さを選ぶことが重要になってくる.

enter image description here

Model selection criteria: structural risk minimization

expected risk

empirical risk(training errro)

を関連付けることができれば,を計算することでを議論することが出来る. モデルが複雑になるほどtraining errorがgeneralization errorを表現しなくなっていくと考えられるので,の関係を以下のように記述する.

complexity penaltyといって,が複雑になるほど増大し,によって減少する.
(16)はupper bound guarantee of generalization errorを与える. このupper boundが最小になるようなを選べば良い. fig.2 はモデルの複雑さとこのboundの関係である.
enter image description here

が有限集合である時の不等式(16)の意味を考える.

の上限を見積もる. これは少なくとも1つのについて,そのtraining errorとriskの差がを上回る確率で,sample spaceはの選び方である.


という主張が成立しない確率と言える. を固定すると,(6)をみたす最小のがcomplexity penaltyとなる.
によってを計算することはふつう不可能だから,上限を与える.

を固定してを考える. training sample がi.i.d.に得られて,とすると empirical error の和で,

だから,

ただしで,確率のsample spaceはをみたすである.
Hoeffding’s inequalityから

が成立する. この上限はによらない. この結果を(8)に代入して,

が成立する. に解いて,

である.これがの場合のcomplexity penaltyである.
以上より,少なくともの確率で

が成立する. model selectionではのそれぞれについてを選び,によってboundを計算し,boundが最小となるを選ぶ. このときは固定する.

Example

とし,training error 0, generalization error が最大10%であるようにtraining exampleの個数を見積もる.

だから,

である.

Model selection criteria: Bayesian score, Bayesian information criterion

linear regressionの例を通じてBayesian scoreについての理解を深める. モデル次元のインプットに写す写像で,

とする. を固定して,だけを動かすとする. が与えられたとき,likelihoodは

以前はを最大化するを唯一つ選んだが,Bayesian analysisではlinear regression functionたちをによって重み付けして,それら全てを利用する.
このような枠組みでは,を得た後のの知識はposterior distribution であって,これはと相似である.つまり.
しかし例えばの場合にはだから,が発散してしまう. よってprior distribution を導入する.

すると

で,normalization constantは

であり,marginal likelihoodともいう. これはにのみよる. regressionでは

ここではnoise とpriorの比で,である.
このときposteriorは

と正規化される.とposteriorも正規分布する.

新たなに対する推測は

で与えられる. 真のBayesianはまさに全てのについて上の積分を行うが,我々はfeature mapping で特徴づけられるregression modelにを制限して議論することになる.linearなとquadraticなをfeature mappingとする.

が比較するmodelである. modelにPrior distribution を含むのには利点も欠点もあるが,どちらにせよ含まないのと大した差はない.
のうち,よりmarginal likelihood (Bayesian score)が大きい方を選ぶことになる. すなわち,を与えられたら,ならばを選ぶのである.

Model selection criteria: Bayesian information criterion(BIC)

Bayesian information criterion(BIC)はBayesian scoreに対するasymptotic(漸近的な) 近似であって,その単純さのためによく使われる.

である.ここではtraining dataに対するmaximum likelihoodの対数であって,はmodelのindependent parameterの個数, はtraining exampleの個数である. が十分大きいときBayesian scoreに漸近する. Bayesian scoreの計算は困難なことが多いので,かわりにBICを使う. Bayesian scoreと同様に,BICが大きい方のmodelを選ぶ.

2017年8月28日月曜日

MIT OCW, Machine Learning 09日目 カーネル化SVM

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 8

Support Vector Machine Revisited

SVMをdual form(exampleが内積でのみ現れる形)に変換する. すべてのexampleを次元のfeature spaceに写し,が線形分離可能であるようにし,feature spaceにおいてmarginを最大化するパラメータを考える.この問題は

という最適化問題に一致する. もちろんslack variableも導入できるが,これは後に回す. このような最適化問題(凸,線形制約)は,Lagrange multipliersによってdual formに変形できる. を導入し,によって

によって最大化することを考えるのである.の最小化がに一致することを示す.
を少なくとも1つの束縛条件が満たされていないように設定する.であるとすると任意の.とすれば.だから,Lagrange multiplier は制約条件を満たさせる働きがあるとわかる.
Slater conditionsという条件を満たしているとき,ある変数で最大化し,他の変数で最小化するというLagrange multipliersの最適化問題の最大化最小化の順序を交換できる.つまり

である. 左辺をprimal formといい,右辺をdual formという. dual formについて,まずを解く.微分して

またしても,最適なの張る空間の元となった.これらをもとの式に代入して,

よって,dual formの解は

の解である. これがSVMのdual formとかkernel formといい,quadratic optimization problemであり,Gram matrix によって,特徴づけられる.
maximum margin hyperplaneはsupport vectorと呼ばれる少数のexampleによって決まることをすでに見たが,これはによって写像されたexampleたちにも同様で,ほとんどのになり,なるとき,をまたsupport vectorという.
が決まると,をsupport vectorの集合として,

によって新しいexample の推測が計算できる.
を求めた後で,

を解くことで得られる.
この解のgeometric marginはで得られる.つまり

geometric marginを最大にするようなkernelが最適なkernelと言えるが,定数倍によってgeometric marginもその分定数倍になるので,kernelの比較には正規化が必要である.

Kernel Optimization

kernelのあるパラメータを変えて,問題により適したkernelをつくることができる. パラメータの最適化には,cross-validationやgeneralization errorに関連した基準(marginなど)が用いられる.

2017年8月24日木曜日

MIT OCW, Machine Learning 08日目 カーネル

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 6.

Active Learning (cont)

というlinear modelについて,最尤法で推測されるパラメータのMSEは

となることから,をうまく設計することで少ないexampleからよりよい推測を行うことをactive learningといった. の設計で最も単純な方法は,があるときに,が最少になるようにを選ぶという操作を繰り返すというのがある. すでにがあって,とする. の行に新たに加えることを考える.


を最小化するを考える.

であって,を考えれば

が成立する. (は実数で,traceはその実数そのもの)
任意のだから,どのようなを加えたとしてもMSEは減少するが,減少量が最大であるようなを求めたい.

の大きさはの最大の固有値が上限である. 言い換えると,新しいexampleによってパラメータ空間からせいぜい1つだけ自由度を減じることが出来る. に制限がなければ,の最大の固有値に対応する固有ベクトルに平行な長さ無限のベクトルをとするのだが,という制限が有る場合には,最大固有値に対応する固有ベクトルと平行でながさのベクトルをとする. ほかにもに制限が有る場合には,もその制限を考慮することになる.

これまでMSEを推定量の良さの基準としてきたが,今度はvarianceを考える.

よって,が最大になるようながよいが,これはMSEを小さくするようなと同じである.
(MSEを小さくしつつvarianceを小さくすることが対立することを言いたいのかと思ったら,varianceを大きくしたいらしい・・・)

Non-linear Predictions, Kernels

の非線形な写像に対する像に対してこれまで議論してきた方法が使える.例えばというlinear modelが有るとき,を含む高次元のベクトルに写像してquadratic(二次) modelが得られ,を含む高次元のベクトルに写像するとthird order modelが得られる.
のような感じである.の意味は後で見る.
新しいpolynomial regression modelは

となる. 高次元空間に写像してから線形回帰するわけだが,このときregularizationを行わないとoverfittingが起きることが多い.(figure 2)
!

が多次元の場合も,

というふうにしてより高次元な空間に写像できる.
高次元な空間への変換は計算コストが膨大になることが有るが,を直接計算せずとも,例えば

のように,と,を暗黙に表現する計算が簡単なが存在することが有る(存在するようにを定めたのである). ではなく計算が簡単なを使うように問題を書き換えることを考える.

Lecture 7.

Linear Regression and Kernels

を外したモデルはの推測は

の最適化問題である. 前節で述べたとおり,ではなくでこの最適化問題を表現する.
regularizationによってに圧縮され,のtraining feature vectorと関係ない次元はになる. よってこの問題の解はの張る空間の元である.
proof.

局地の条件を考えると


を満たして,最適解である.


が成立するから,だけで決まる.
Gram行列

によってベクトルで書くと

そして解は

が得られたら,

によって,新しいexample に対してresponseの推測が計算できる.ここでkernel functionという.

Kernels

以上で, regularized linear regressionをkernel formに変形できた. kernel function を変えることで,例えば任意の次数のpolynomial expansionが実現できるし,polynomial expansion以外のを高次元に写した像を使ったlinear regressionも実現できる.
実現される高次元への写像の種類によってを分類することが有る.例えば
- Polynomial kernel


- Radial basis kernel

polynomial kernelは,を二項展開したときの各項へと写す写像を考えたときのkernel functionで, radial basis kernelは無限次元空間への写像のkernel functionである. radial basis functionはの近さを表していると考えることが出来る.