27
統計分析・機械学習に 関わる線形代数の整理中 とノンパラメトリックベイズのほんの走り 2015/10/24 Tokyowebmining #49 KennyISHIMURA Powered by 1/20

Tokyowebmining #49 Matirx and nonparametric bayes

Embed Size (px)

Citation preview

統計分析・機械学習に関わる線形代数の整理中

とノンパラメトリックベイズのほんの走り

2015/10/24

Tokyowebmining #49

KennyISHIMURA

Powered by 嫁1/20

スライドの流れ• 肉食系(正規分布大好き)男子・星野哲郎は銀河鉄道999(線形代数)に乗って、

機械の体(線形代数のテクニックを使用した文献を読める体)を手に入れるべくアンドロメダ(主成分分析・時系列分析の収束判定や状態空間モデル・・・)へ旅をしようとしていた。

• 途中、宇宙戦士の銃(写像・固有値)という武器も手に入れて、さあ機械の体を目指そうと思ったところ、某HMD銀河指令より「今日はノンポリ(ノンパラメトリック)草食系(ベイジアン) があるのそっち行ってね♪」との指令を受けた。

• 肉食系哲郎は、草食系(ベイジアン)てつろうに宗旨替えをして、銀河鉄道999を降りた。

• 草食系の中での戦いは、宇宙戦士の銃等はあまり活躍せず、禅問答のように「Zizenn!」(事前分布)とお題を決められるとその型で「Zigo!」(事後分布)と返すものだった。

• 哲郎がさらに草食系の中のノンポリ系の中に入ると、実はノンポリ(ノンパラメトリック)どころが、無限ポリ(無限次元パラメトリック)ということだった。。。

2/20

はじめに

• 統計分析や機械学習には、記述に線形代数が使用されることがよくある。

⇒数式の変形が無機質で何とも面白くなくなる。

この発表を聞くと?

• 線形代数の基本的な概念を直感的に理解。

⇒数式意味が直感的に分かりとても面白く!

(なるかな?)

3/20

行列はなぜ有効か?

• 数の組をいっぺんに効率よく処理できる。

⇒まさしくデータ分析処理

• 処理=「行列を掛ける」という方式に拘ると、その処理を繰り返すとどうなるかの判断ができる。

• 「処理」「処理の結合」が結局どの様なものかを判断しやすくなる。

4/20

行列の直感理解(=写像)

• 行列とは、空間の変形である(=写像・変換)

• 「変形」=回転と伸ばしと次元変更

• 標準基底(軸方向単位ベクトル)の動きで理解する。

5/20

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

1

0

-1-1 0 1

行列A=1 -0.3-0.7 0.6

ポイント・原点は原点のまま・e1=(1,0)Tは(1,-0.7) Tへ・e2=(0,1)TはTへ

(例1)

上記は2×2の行列(2次元から2次元への写像)だが、m×n行列はn次空間をm次空間に移す。

(1,-0.7) T

(-0.3,0.6) T

e1

e2

行列Aを掛けることで、空間を「回転」させたり「つぶし」たり「ぺっちゃんこ」にしたり。

Ae2

Ae1

e1の変形先 e2の変形先

行列の直感理解(=写像)

• 行列とは、空間の変形である(=写像・変換)

• 「変形」=回転と伸ばしと次元変更

• 変形の極端な例としてつぶれることもある

6/20

B= C=0 -11 0は上下をつぶす行列。 は反時計回りに90度回す行列。

(例3)

・移った先の像(Im○)の次元数をランクという。例2でImBのランクは1。・移った先のランクが変わらないのは正則行列(逆行列が存在)。減るのは特異行列。・正方行列でも、ぺちゃんこにする行列もある(例2) 。

→ランクは「手がかりの実質的な個数」ともいえる。

D=0.8 -0.60.4 -0.3

BやDのように次元が減ってしまう(移り先を知っても元が特定できない)=逆行列が存在しない

1 00 0

(例2)

(例4)

はぺちゃんこにしてしまう特異行列

行列の直感理解(=写像)

• 行列とは、空間の変形である(=写像・変換)

• 「変形」=回転と伸ばしと次元変更

• 面積・体積拡大率は行列から計算(行列式)で分かる。

7/20

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

1

0

-1-1 0 1

行列A=a b c d

(a,c) T

(b,d) T

e1

e2

行列式detAが写像の面積拡大率

Ae1

Ae2

e1の変形先 e2の変形先

http://www.ies-math.com/LoveMath/2nd_grade/adbck-j/adbck-j.html

(a+b,c+d) T

行列式 = 面積拡大率detA = ad-bc

平行四辺形の面積の直感的理解

写像のパターン• 全射:どんなyにも元xが存在する

8/18

xx’

O

y

y’

3次元空間 → 2次元空間A

ImA

3次元空間 → 1次元空間A

全射でも単射でもない

1次元空間 → 3次元空間A

単射(全射ではない)

O

xy

y’O

ImA

xx’

O

y

ImA

全射(単射ではない)

O

全単射

2次元空間 → 2次元空間A

O

• 単射:同じ結果yが出る元xが唯一存在する

安定性判定

• どんな初期値から始めても最終的にどうなるか

• 最終的には、固有値・固有ベクトルを求めることによって分かる

9/18

安定性判定

• x(t)=Ax(t-1)=Atx(0)のAtを簡単に出せればよいが、少し複雑

• P-1AP=Λ ⇔ A=PΛP-1 Λ:対角行列

となるPを見つけることにより、

• x(t) = Atx(0) = (PΛP-1)t x(0) = (PΛt P-1)x(0) とAtが簡単な式として表せられる

10/18

x(t)= x(0)=a1

t

ant

a1

an

t

x(0)

安定性判定

• 対角化すると簡単になるので、この順番を狙う

① 全単射にて基底変換(相似変換)

② 対角化

③ 計算

④ 基底変換を戻す

• このためには上手い正則行列Pを選ぶ必要がある

• ⇒固有値・固有ベクトルを求める問題へ

• 対角化=「P-1APが対角」となるような「都合のよいP」を作る。

• Ap=λp p≠o 固有値λ1,…, λnと対応する固有ベクトルp1,…, pnを求める。

• 固有値の絶対値| λ 1|・・・| λ n|のうち1つでも1より大きければ暴走。

• 【固有値の幾何学的意味】

伸縮はしても方向は不変。

• 伸縮率=固有値

11/18

右の例では、伸びてる方の固有値1.3縮んでる方の固有値0.3

安定性判定

12/18

固有値を求めるには、「相似変換を繰り返して行列を徐々に対角行列

(または上三角行列)に近づけていく」=>その代表例)Jacobi法、QR法

安定性判定

13/18

【Jacobi法】

1864年にJacobiが発表した、「実対称行列」の「すべての固有

値を求める」アルゴリズム。

与えられた実対称行列Aに対して、

平面回転による相似変換A’=R(θ,p,q)TAR(θ,p,q)

を、p,q, θを選びながら繰り返し行い、対角行列に近づけていく。

現在でも、10×10程度までの大きさの行列ならば他の方法と比

べて遜色ない速さで計算できる。計算速度ではQR法に劣るが、求

まる固有値の精度はJacobi法の方が高いという報告も。

安定性判定

14/18

【QR分解法】

1961年にFrancisが発表した、対称行列にも非対称行列に

も使える「すべての固有値を求める」アルゴリズム。A=QR

でQはAの列ベクトルのGram-Schmidtの正規直交化、RはA

の列ベクトルの正規直交規定に関する成分表示。「列ベク

トルが線形独立な任意の行列Aは、直交行列Qと右上三角行

列Rの積に分解できる」ことを利用。

実際に数値的にQR分解を計算するときは、Gram-Schmidt

の正規直交化に基づく方法ではなく、平面回転や鏡映変換

を応用したアルゴリズムを使う。(Gram-Schmidtには誤差

を蓄積するという欠点があるため。)

安定性判定

15/18

n次空間の中の第p軸と第q軸が張る平面内の回転(pq平面回転)平面回転

鏡映変換 空間の任意の点xを、原点を通る超平面(uを法線ベクトルとする)に関して対称な点x’に移す変換。

・超平面:座標の自由度を落としていったときにできる点の集合

・法線ベクトル:超平面内のすべてのベクトルと直交するベクトル

余談

16/18

ガロアが完成させた、「方程式の難しさを図る方法」「どんな場合にべき根を用いて方程式が解けるのか」

(『数学の言葉で世界をみたら~父から娘に贈る数学~』より)

ガロアってどんな人 19世紀最高の数学者の1人、エバリスト・ガロア 1811年フランス生まれ(『レ・ミゼラブル』の時代設定とほぼ重複) 18歳で共和主義者として7月革命に参加 ルイ・フィリップが立憲君主として即位し、共和主義者は挫折 政治的に先鋭化したガロアは20歳で投獄 出獄後に決闘の挑戦を受け、致命傷を負い、20歳7か月で死亡

ガロアがチャレンジするまでに分かっていた方程式の解法 1次方程式→四則混合計算の完成(貨幣発明の頃?)で解決。

例)a-bはx+b=aの解x 2次方程式→9世紀バグダードの数学者アル=フワーリズミーが発見。 3次方程式→16世紀にデル・フェッロとタルタリアが

独立に発見、カルダーノが公表。 4次方程式→カルダーノの弟子ロドビコ・フェラーリが発見、公表。 2~4次はすべて、平方根や立方根で表記可能。 次数が上がるほど「難しい」

例)2次方程式では平方根(無理数という新たな概念含む)が出てくる。平方根は定規とコンパスで作図できるが、立方根はできない。

以降300年、数学者たちの努力もむなしく、5次方程式の解は見つからなかった。

余談

17/18

アーベルが「5次方程式には解の公式が存在しないことを証明」 ニールス・ヘンリック・アーベル。1802年ノルウェー生まれ。 何かが「できない」ことを示すのは難しいが、

アーベルは「方程式の難しさを測る方法」を利用。 べき根だけを使って解くことのできる方程式をすべて見つけ、

どんな場合にべき根で解けるか、解明を試みた。 が、達成できず。↓これを明らかにしたのがガロア。 ガロア理論の完成 あらゆる次数の方程式について、

その方程式がべき根で解けるかどうかを判定する方法を発見。 この論文を世に発表しようとしたが、

唯一の理解者コーシー(王政派)が7月革命によって亡命。 コーシー亡き後のアカデミーには

彼の研究を理解できる数学者はいなかった。 高等理工科学校の受験に2年続けて失敗したり、

町長をしていた自由派の父親が自殺したり。 絶望したガロアは革命に身を投じ、投獄。→決闘。→死亡。 ガロアは、決闘の前夜から早朝までかけて、

親友オーギュスト・シュバリエに手紙を書いた。=これが現在「ガロア理論」として知られているもの。

ガロアの死後、リウビルがガロアの遺稿を解読し、1846年に解説を発表。=ようやくガロア理論受け入れ

ちなみにこの人も26歳8か月で逝去。貧乏で肺結核に。

今ではオスロの王宮に記念碑が。

死の直前、シュバリエに宛てた手紙→

ここからノンパラメトリックベイズ(のほんの走り)

ベイジアンの世界へLet’s go!

18/18

ノンパラメトリックベイズとは

• ディリクレ過程やベータ・ベルヌーイ過程などを総称した確率モデル

• ノンパラメトリックという名があるが、確率分布は仮定しており、無限個のモデルを想定した無限個のパラメータを持ちえるベイズモデルの総称

19/18

ノンパラメトリックベイズ

ディリクレ過程

例)ホップの壷モデル、中華料理店過程

ベータベルヌーイ過程

ディリクレ分布 ベータ分布 ベルヌーイ分布

可測(加速)空間 確率測度

ギブスサンプリング

・・・

ディリクレ過程混合モデル

ほんのはしりをご紹介

なにはともあれベイズの定理

加法定理

• P(X) = ∑YP(X,Y)、P(X) = ∫P(X,Y)dY = ∫f(x,y)dy

乗法定理

• P(X,Y) = P(Y|X)P(X)

ベイズの定理

• P(X|Y) = P(Y|X)P(X) / P(Y)

20/18

ディリクレ分布と他の分布の関係

21/18

)

多項分布二項分布

ディリクレ分布ベータ分布

• 2つの値のどちらかを取る試行(コイン投げ)をN回実施した時の、1(0)の出た回数別の確率分布

• 確率変数は出た回数(スカラ)

• 複数値のどれか一つを取る試行(複数目サイコロ)をN回実施した時の、複数値の出た回数別の確率分布

• 確率変数はそれぞれの目の出た回数(ベクトル)

• 二項分布の事前情報無しの事後確率分布(共役分布)

• 確率変数は事後確率(スカラ)

• 多項分布の事前情報無しの事後確率分布(共役分布)

• 確率変数は事後確率(ベクトル)

N項一般化

N項一般化

確率変数の変換ベイズ推定

確率変数の変換ベイズ推定

ディリクレ過程の一実現例中華料理店過程(CRP:Chinese Restaurant Process)

22/18

• 中華料理店の複数のテーブルに順次客が着席していく

• 最初の客は任意のテーブルに着席する

• n(≧2)番目以降の客は以下のルールで着席する

• すでにni(>0)人着席しているテーブルiに着席する確率

ni/(n-1+α)

• 誰も着席していない最も番号の小さなテーブルに着席する確率

α/(n-1+α)

テーブル

1

テーブル

2

テーブル

3

5

1

4 23

ディリクレ過程の一実現例中華料理店過程(CRP:Chinese Restaurant Process)

23/18

• 特徴

• 着席順に確率は依存しない

• 着席されるテーブル数は試行とともに増大する

• αの値が大きい程着席テーブル数が多くなり、逆にαの値が小さいほど着席テーブル数が少なくなって特定のテーブルの着席数が多くなりやすい

ディリクレ過程(厳密な定義)

24/18

集合Φとその部分集合を要素とする集合族F からなる可測空間(Φ, F )の基底分布をG0、集中度パラメータをα(>0)とする。確率測度Gが、θのいかなる可測な排他的分割

ci=1Ai = θ かつ Ai Aj = φ (i ≠ j)

に対しても、r次元確率ベクトル(G(A1),・・・,G(Ar))がディリクレ分布Dir(αG0(A1) ,・・・,G0(Ar))に従うときすなわち

(G(A1),・・・,G(Ar)) ~ Dir(αG0(A1) ,・・・,αG0(Ar))

のとき、かつそのとき限り、Gはディリクレ過程に従うといい

G ~ DP(α,G0)

と記す。ただしG0(Ai)は、G0から生成されたθが区間Aiに所属する確率P(θ Ai)を意味する。G(Ai)も同様である。

• 上記定義を厳密に理解するには、可測空間、確率測度など、確率論、測度論の知識が必要。

ディリクレ過程(平易な形)

25/18

分散数および分割の仕方の如何に関わらず、確率ベクトル

g = (G(A1),・・・,G(Ar)) が

p(g) = Dir(α1 ,・・・,αr)

αi = αG0(Ai) (i = 1,…, r)

を満たすとき、このような確率分布G(θ)を生成する確率過程をディリクレ過程といい、次のように記す

G(θ) ~ DP(α,G0(θ))

G(Ai)の期待値と分散は

E[G(Ai)] = E[gi] = αi / α = G0(Ai)

V[G(Ai)] )] = V[gi] = αi(α - αi) / α2(α + 1)

= G0(Ai)(1 - G0(Ai)) / (α + 1)

となる。すなわちDP(α,G0(θ))からG(θ)を生成し、そのG(θ)から生成したθが区間Ai 内にある確率gi =G(Ai)の値は、平均としてαi / α = G0(Ai)となる。また集中度αの値が大きい程、G(Ai)の分散が小さくなってより平均に集中する。

正規分布とディリクレ過程の対応

26/18

• 正規分布に従って生成されるxに対応するのがディリクレ過程に従って生成されるG(θ)

• 正規分布の平均μと精度1/σ2 がそれぞれG0(θ)とαに対応している

• ディルクレ過程は、生成される平均的な分布G0(θ)とその周りのばらつきの度合いαを定めた分布関数の役割を果たしている。ディリクレ過程が分布に対する分布と呼ばれるのはこのような理由による。

正規分布 ディリクレ過程

確率変数 x G(θ)

分布(パラメータ) x ~ N (x; μ,σ2) G(θ) ~ DP(α,G0(θ))

期待値 μ G0(θ)

精度 1/σ2 α

参考資料

1. プログラミングのための線形代数 平岡和幸 堀玄

2. 数学の言葉で世界をみたら 父から娘に贈る数学: 大栗 博司

3. パターン認識と機械学習 C・Mビショップ

4. 続・分かりやすいパターン認識 石井健一郎 上田修功

Illustration by 嫁

27/20