Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PRML勉強会 第四章 - 岡田正平 作成分
Search
takegue
June 02, 2014
Technology
0
1.2k
PRML勉強会 第四章 - 岡田正平 作成分
代理Upload
takegue
June 02, 2014
Tweet
Share
More Decks by takegue
See All by takegue
不自然言語の自然言語処理: コード補完を支える最新技術
takegue
1
800
つかわれるプラットフォーム 〜デザイン編〜@DPM#2
takegue
2
11k
カルチャーとエンジニアリングをつなぐ データプラットフォーム
takegue
4
6.1k
toC企業でのデータ活用 (PyData.Okinawa + PythonBeginners沖縄 合同勉強会 2019)
takegue
4
950
Rettyにおけるデータ活用について
takegue
0
820
Sparse Overcomplete Word Vector Representations
takegue
0
180
Aligning Sentences from Standard Wikipedia to Simple Wikipedia
takegue
0
190
High-Order Low-Rank Tensors for Semantic Role Labeling
takegue
0
98
Dependency-based empty category detection via phrase structure trees
takegue
0
62
Other Decks in Technology
See All in Technology
Kaggleで学ぶ系列データのための深層学習モデリング
yu4u
7
1.2k
CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?
kota2and3kan
6
4k
How to do well in consulting–Balkan Ruby 2024
irinanazarova
0
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
0
1.9k
今さら聞けないDocker入門 〜 Dockerfileのベストプラクティス編
devops_vtj
22
6.6k
個人的、Kubernetes の最新注目機能! (2024年5月版) / TechFeed Experts Night#28 〜 コンテナ技術最前線
pfn
PRO
1
150
コードや知識を組み込む / Incorporate Code and knowledge
ks91
PRO
0
160
Microsoft for Startups Founders Hub_20240429 update
daikikanemitsu
1
2.5k
cgroup v2 で何が変わったのか / TechFeed Experts Night #28
tenforward
2
120
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
3
470
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
530
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.2k
Featured
See All Featured
Visualization
eitanlees
137
14k
A Philosophy of Restraint
colly
197
16k
How GitHub (no longer) Works
holman
305
140k
Git: the NoSQL Database
bkeepers
PRO
423
63k
Agile that works and the tools we love
rasmusluckow
325
20k
Debugging Ruby Performance
tmm1
70
11k
Making Projects Easy
brettharned
109
5.5k
From Idea to $5000 a Month in 5 Months
shpigford
378
45k
Designing the Hi-DPI Web
ddemaree
276
33k
Building a Modern Day E-commerce SEO Strategy
aleyda
22
6.4k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
KATA
mclloyd
16
12k
Transcript
第4章 線形識別モデル PRML勉強会@長岡 presented by 岡田 正平
おことわり • 勉強会用資料です – 口頭で説明することを前提にしているため, スライド単体では説明不十分な部分があります • スライド中の情報の正しさは保証しません 2
はじめに 3
この章について • 分類問題について扱います • 決定領域 • 決定境界 – 決定面とも 4
目的変数の表現 • 1-of-K符号化法 – = 5クラスの例 t = 0,1,0,0,0 T
– の値はクラスが である確率と解釈可能 5
3つのアプローチ (recall that 1章) 6
3つのアプローチ (recall that 1章) • 識別関数 • 生成モデル • 識別モデル
– みんな大好きSVM 7
ちょっと3章も思い出して • 入力xに対して出力値を予測 • 最も簡単なモデル x = wTx + 0
∈ ℝ 8
分類問題では? • は離散値を取るクラスラベル – もっと一般的には領域(0,1)の値を取る事後確率 9
分類問題では? • は離散値を取るクラスラベル – もっと一般的には領域(0,1)の値を取る事後確率 • 非線形関数(⋅)によって変換 x = (wTx
+ 0 ):一般化線形モデル (⋅):活性化関数 10
4章の構成 4.1 識別関数(判別関数) 4.2 確率的生成モデル 4.3 確率的識別モデル ---------------------------------------------------- 4.4 ラプラス近似
4.5 ベイズロジスティック回帰 11 ↓ 省略
4.1 識別関数(判別関数) 12
識別とは • 入力ベクトルxをクラス に割り当てる関数 • 本章では決定面が超平面となる 線形識別のみを扱う 13
2クラス • 最も簡単な線形識別関数 x = T + 0 :重みベクトル 0
:バイアスパラメータ ≥ 0ならばクラス1 決定面は = 0 14
2クラス • は決定面の法線ベクトル • 0 は決定面の位置を決定する • 決定面から点への距離は = 15
16
2クラス • ダミー入力値0 = 1を導入 � = 0 , ,
� = 0 , を導入 = �T � スッキリ! – ベクトルの次元が1増えてる 17
多クラス • 1対多分類器・1対1分類器 – 曖昧な領域が存在 18
多クラス • 個の線形関数で構成される単独のクラス 識別を考える = T + 0 = �T
� – すべての ≠ に対して () > ()である場合 点はクラス 19
多クラス • , 間の決定境界は = = 0 • つまり −
T + 𝑘 − 𝑗 = 0 – 2クラスの時と同様の幾何学的性質が適用される – 各決定領域は凸領域 20
21
パラメータの学習 • 最小二乗 • フィッシャーの線形判別 • パーセプトロンアルゴリズム 22
最小二乗法 • (結論)学習データ集合{ , }に対して � = T �† T
:番目の行が Tである行列 �:番目の行が Tである行列 �†: �の擬似逆行列(→3.1.1) – が,いろいろ問題がある 23
最小二乗法の問題 • 分類問題においては外れ値に特に弱い (「正し過ぎる」予測にペナルティ) 24 分類問題に対する誤 差関数(→7.1.2)に よりある程度は避け られるが...
最小二乗法の問題 • 3クラス分類問題の例 25 (´・ω・`)
そもそも • 最小二乗法は確率分布にガウス分布を仮定 • 2値目的変数ベクトルはガウス分布から かけ離れている ハナから無理があるってもんですよ 適切な確率モデルを採用しよう! (次回?) 26
フィッシャーの線形判別 • 次元の削除という観点から • これまでは次元入力ベクトルを1次元(実 数)に射影していた – 当然情報は落ちるが,重みベクトルを調整す ることでうまく分離する –
最も単純な方法は射影されたクラス平均の分離 度を最大化 27
フィッシャーの線形判別 しかし... 28 (・A・)イマイチ
フィッシャーの線形判別 • フィッシャーさん,考えた • 射影されたクラス内の分散が小さくなるよ うにすれば... 29
フィッシャーの線形判別 30 (・∀・)イイ!!
フィッシャーの線形判別 実は目的変数に1-of-K符号化法とは異なる表現を もちいた場合の最小二乗法と等価 = 1 for 1 2 for 2
31
パーセプトロンアルゴリズム • 2クラスのモデル • 入力ベクトルを変換して得られる特徴ベク トル()に対して = (T ) ただし,
= � +1, ≥ 0 −1. < 0 32
パーセプトロンアルゴリズム • 目的変数の表記は ∈ {−1,1} – 活性化関数との相性がいい 33
パーセプトロンアルゴリズム • 誤差関数の選択 – 誤識別したパターン総数 殆どの場合で勾配0 学習アルゴリズムが難しい – パーセプトロン規準 34
パーセプトロンアルゴリズム • パーセプトロン規準 = − ∑ ∈ℳ = ℳ:誤分類された全てのパターン集合 •
確率的最急降下アルゴリズム(→3.1.3) – +1 = − = w + 35
パーセプトロンアルゴリズム 36
パーセプトロンアルゴリズム • パーセプトロンの収束定理 – 厳密解が存在する場合,パーセプトロン学習ア ルゴリズムは有限回の繰り返しで厳密解に収束 することを保証 実用的には,分離できない問題なのか,単に収 束が遅いのかの区別が収束するまでわからない という点に注意
37
4.2 確率的生成モデル 38
ベイズ! • 2クラスの場合を考える 1 x = x 1 1 x
1 1 + x 2 (2) = 1 1+exp (−) = = ln x 1 1 x 2 (2) 39
ロジスティックシグモイド関数 • = 1 1+exp (−) • 「スカッシング(押し込み)関数」とも 40
多クラスの場合 • = x ∑ x () = exp ∑
exp () = ln( x ) – 正規化指数関数 • ソフトマックス関数とも 41
連続値入力 • クラスの条件付き確率密度がガウス分布と 仮定 • すべてのクラスが同じ共分散行列を仮定 x = 1 2
2 1 1 2 exp − 1 2 x − T−1(x − ) 42
連続値入力 • 指数部分にあるxの二次の項がキャンセルさ れるため,正規化指数関数の引数がの線形 関数になる 43
連続値入力 • 共分散行列が異なる場合は? 境界が非線形(二次関数) 44
最尤解 • もう一度2クラス,ガウス分布,共通の共分 散の場合を考える • データ集合 x , が与えられていると仮定 =
1, ⋯ , = � 1 for 1 0 for 2 45
最尤解 • 尤度関数は t, X , 1 , 2 ,
= � x 1 , 1 − 𝒩 x 2 , 1− =1 ただし = 1 , ⋯ , T, = 1 46
最尤解 • 各パラメータの最大化は = 1 1 = 1 1 ∑
x =1 2 = 1 2 ∑ (1 − )x =1 47
最尤解 = 1 S1 + 2 S2 S1 = 1
1 ∑ x − 1 x − 1 ∈1 S2 = 1 2 ∑ x − 2 x − 2 ∈2 • この結果は多クラスにも拡張可能 48
離散特徴 • 特徴が離散値 の場合を考える • 2値 ∈ 1,0 , 特徴数個の場合
– 特徴量を抑えるためナイーブベイズを仮定 x = � 1 − 1− =1 49
離散特徴 • 正規化指数関数の引数は = �{ ln 𝑘 + 1 −
ln 1 − 𝑘 } =1 + ln ( ) 入力値 の線形関数となる 50
指数型分布族 • クラスの条件付き確率が指数型分布族のメ ンバーであると仮定 • x = ℎ x λ
exp {λ Tu x } • u x = xとなるような分布については,正規 化指数関数の引数がxの線形関数となる 51
4.3 確率的識別モデル 52
識別アプローチの利点 • 決めるべき適用パラメータが少ない 53
固定基底関数 • 基底関数ベクトル(x)を使って入力を非線 形変換 – 決定境界を非線形にできる – SVMでいうところのカーネル関数 54
固定基底関数 55
ロジスティック回帰 • 事後確率(2クラスの場合) 1 = = (wT) • ロジスティックシグモイド関数 2
= 1 − (1 |) • パラメータの数=の次元数 56
最尤法によるパラメータ決定 • データ集合 , , ∈ 0,1 , = ,
= 1, ⋯ , に対する尤度関数 t w = � 1 − 1− =1 – t = 1 , ⋯ , T, = (1 | ) 57
最尤法によるパラメータ決定 • 負の対数をとって誤差関数とする w = − ln t w =
− ∑ ln + 1 − ln 1 − =1 – 交差エントロピー誤差関数 58
最尤法によるパラメータ決定 • 誤差関数の勾配をとると w = � − =1 – なんか簡単な形に!
59
最尤法に寄るパラメータ推定 • 線形分離可能なデータに対して,過学習を 起こしてしまう点に注意 60
反復重み付け最小二乗 • ロジスティック回帰では最尤解を解析的に 導出することはできない • しかし誤差関数は凸関数 唯一の最小解を持つ • ニュートン・ラフソン法を用いる w(new)
= w old − H−1(w) 61
反復重み付け最小二乗 • 二乗和誤差関数の場合 w = ∑ wT − = ΦTΦw
− ΦTt =1 H = ∑ =1 = ΦΦ – Φは番目の行が Tで与えられる × 行列 62
反復重み付け最小二乗 • 代入して,整理すると w new = ΦΦ −1Φt – w
old が消えた 反復回数1回で正確な解が求められる 63
反復重み付け最小二乗 • 交差エントロピー誤差関数の場合 • w new = ΦTRΦ −1 ΦTRz
– Rは要素が = { 1 − }の対角行列 – z = Φw old − R−1(y − t) – 重み付き最小二乗問題に対する正規方程式集合 64
多クラスロジスティック回帰 • 事後確率 = = exp ∑ exp • ソフトマックス関数
= w T 65
多クラスロジスティック回帰 • 尤度関数(1-of-K符号化法を使用) 1 , ⋯ , = ∏ ∏
𝑛 𝑛 =1 =1 • 以下,2クラスの場合と同様に導出可能 66
プロビット回帰 • ロジスティック回帰で,どんなときでも事 後確率が簡単な形になるわけではない 別のタイプの識別確率モデルも見てみよう • 2クラスの場合を考えます = 1 =
() = wT, ⋅ :活性化関数 67
プロビット回帰 • 雑音しきい値モデル = � 1 if ≤ 0 otherwise
• の値が確率密度()で与えら得る場合 = � 𝑑 −∞ 68
69
プロビット回帰 • ()が標準正規分布の場合の() プロビット関数 • プロビット関数に基づく一般化線形モデル をプロビット回帰という 70
プロビット回帰 • 点線部分がプロビット関数 – (実線はロジスティックシグモイド関数) 71
プロビット回帰 • ロジスティク回帰の結果と似る傾向がある • より外れ値に敏感 • ロジスティック回帰のベイズ的な扱いにお いて,利用法がある(4.5節) 72
4.4 ラプラス近似 73
ラプラス近似とは • 連続確率密度分布をガウス分布に近似 74
4.5 ベイズロジスティック回帰 75
この節では... • ロジスティック回帰のベイズ的取り扱い 厳密に適用するのは難しい ラプラス近似を適用して考える 76