クラシックな機械学習の入門
3. 線形回帰および識別
線形回帰のモデル
正則化項の導入
L2正則化
L1正則化
正則化項のBayes的解釈
線形識別
生成モデルを利用した識別
2乗誤差最小化の線形識別の問題点
by 中川裕志(東京大学)
線形モデル
y=w1x+w0
y
データ の分布状況
から線形回帰式を求
める
w0
x
線形モデル
入力ベクトル:x から出力:y を得る関数がxの線形関数
(wとxの内積)
K
y x, w wi xi
i 0
ただし、 x [1, x1 ,, xK ]T , w [ w0 , w1 , ,, wK ]T
一般に観測データはノイズを含んでいる。つまり
y x, w
はノイズで N (0, 2 )と考える。
得られたN個の観測データ の組(y,X)に対して最適なwを推
定する。
そこで、yと
Xw
の2乗誤差を最小化するようにwを選ぶ。
2乗誤差の最小化
y1
y
yN
x1T 1 x11
x1K
X
T
x 1 x
xNK
N1
N
w0
w
w 1
wK
ˆ arg min (y Xw)T (y Xw)
wの推定値 w
w
(y Xw)T (y Xw)
0
w
を解くと XT Xw XT y
w ( XT X) 1 XT y
正規方程式 と呼ばれる基本式
(y Xw )T
補遺:正規方程式の導出
(y Xw ) y w X (y Xw ) y y w X y y Xw w X Xw
T
T
T
T
T
T
T
T
T
(y Xw )T (y Xw )
wT XT y y T Xw wT XT Xw
0 (1)
w
w
w
w
T
xT a
wT XT y
aT x
y T Xw
T
aより
X y
aより
y T X XT y
x
w
x
w
T
wT XT Xw wT XT Xw wT XT X w
XT Xw wT XT X 2 XT Xw
w
w
w
(1) 2 XT y Xw 2 XT y 2 XT Xw 0 XT y XT Xw
1
w XT X XT y
f ( g x ) g x f ( g x )
cf 行列で微分する場合 の chain rule
を使えば
x
x
g x
(y Xw )T (y Xw ) (y..) (y..)T (y..) (y..)T (y..)T (y..)
w
w
(y..)
w
(y..)T
XT (y Xw ) XT (y Xw ) 2 XT (y Xw )
正規方程式を解く簡単な例
1 x1
X
1 xN
1
x
1
y1
w
y
w 0
正規方程式 X T Xw X T yは
w1
y N
1 x1
y1
1
1
1
w
0
w1 x1 xN
xN
1 xN
y N
N
N
x
i
i 1
N
xi
yi
w0
i 1
i 1
N
w N
xi2 1 xi yi
i 1
i 1
N
X X
N
w0
N xi2 xi
i 1
i 1
N
N
N
N
2
N
X T X w X T y
N 2
xi
i 1N
x
i
i 1
1
1
T
N
xi
i 1
N
N
N
N
N
w1
N
i 1
i
i 1
i
i 1
i
N xi2 xi
i 1
i 1
N
N
i
i 1
2
i
i 1
N
i
i 1
N
i
i
i 1
i
i 1
i
i
i 1
N
2
N xi xi
i 1
i 1
N
N
N xi yi xi yi
i 1
i 1
i 1
N xi2 xi
i 1
i 1
N
N
2
N
x y x x y y x Nx y x y
2
N
2
1
w0
N
N
N
1
yi w1 xi
N i 1
i 1
用語:誤差、損失、目的関数
線形モデルで最小化したかったのは2乗誤差
真のモデルにおける値(2乗誤差におけるy)と
予測値(2乗誤差におけるXw)の差異を表す関数を
損失関数(単に損失)あるいはLossと呼び、Lで表す
ことが多い。
上記のような最適化問題において最小化(一般的に
は最適化)したい関数を目的関数と呼ぶ。
線形モデルの2乗誤差最小化では
2乗誤差=損失=目的関数
線形モデルの一般化
y (x), w
x [1, 1 (x) ,, K (x)]T
基底関数 重み
N個の観測データ(y,x)に対して
y1
y
y
N
1 x T
φx
T
x
N
(y、φ(x))が得られたとすると、2乗誤差を最小化するwは前
を同じく以下の通りだが、少し別の見方で解く。
ˆ (φ(x)T φ(x))1 φ(x)T y
w
j x x j : polynominal
基底関数の例
x j 2
j x exp
: Gaussian
2
2
s
1
j x
: sigmoidal
1 exp x j / s
j x exp 2i
xj
(m : even) : Fast Fourier
m
正規方程式を求める別の方法
y φ(x), w
N (0, 1 )
2を精度と呼ぶ .
p ( y | x, w, ) N ( y | φ(x), w , 1 )
{x(ベクトル),y}が観測データ(training data)
w,βを決定する、即ち (p(y|x,w,β)を最大化)
N組のi.i.d.観測データすなわち教師データがあるとする。
y ( y1 ,, yN )T
x1T
X
x T
N
w0
w
w 1
wK
すると次のページのようにp(y|x,w,β)が書ける。
N
p (y | X, w, ) N ( yi | φ(xi ), w , 1 )
i 1
両辺のlogをとる
N
N
log p (y | w, w0 , X, ) log log 2 L(w )
2
2
1 N
2
L(w ) yi (xi ), w
2 i 1
log p(y|w,X,β)をw,βについて最大化したい。まず、
wについて最大化する。
N
log p (y | w, X, )
(xi ) yi (xi ), w 0
w
i 1
N
N
i 1
i 1
T
(x
)
y
(x
)
(x
)
i i i i w0
φ(X)T y (φ(X)T φ(X))w
ˆ (φ(X)T φ(X)) 1 φ(X)T y
w
φx1 T
φx
T
φ
x
N
バイアスw0の部分だけに注目してみると
• 対数近似関数から最適なw0を によって求めると
2
w0
2
N
w
w
N
1
yi (1, 1 (x i ),..K (x i )) 1
yi (1 (x i ),..K (x i )) w0
i 1
i 1
w
w
Lw
K
K
w0
w0
w0
w0
w1
N
N
w1
2 yi (1, 1 (x i ),..K (x i )) 2 yi (1 (x i ),..K (x i )) w0 0
i 1
i 1
w
K
w
K
1
w0
N
N
y
i 1
i
yの平均
1
N
N
w
(x
)
j j
i
j 1
i 1
K
基底関数の学習データの平均のw
重み付き和
精度βを求める。
log p(y|w,X,β)をβに対して最大化
ただし、wは最適化されたものを用いる
ˆ , X, ) N
log p (y | w
ˆ)
L(w
2
1 N
ˆ 2
L(w ) yi φ(xi )w
2 i 1
1
1
ˆ
N
N
2
ˆ
y
φ(x
)
w
i
i
i 1
yの予測値と観測された値の差の2乗の平均
幾何学的イメージ
新規データ:y
φ2 (x)
x wが張る空間 : S
yからSに最も近い点(垂直に落としている)
φ1(x)
計算の効率化
大きなdata setsに対して w
ˆ (φT φ) 1φT y
の右辺第1項の逆行列計算量が問題
特にデータの次元Nに対してO(N3)なので高次
元だと大変
定石は、コレスキー分解O(N2)して上/下半3角
行列で表現される連立方程式を2回解く
L(w)を最小化するようなwの数値計算
w ( 1) w ( ) L(w)
w ( ) ( yn (xn )w ( ) ) (xn )T
目的関数(すなわち損失L(w))の減る方向へ進む( ー
gradientをwに加える)方法をgradient descent は呼ばれ、
最適化における基本的数値計算法である。
正則化項の導入
モデルを複雑にするほど学習データにはよく
合致するが、学習データ以外のデータには弱
いという過学習を起こす。
過学習を抑えるために、損失関数に正則化
項を導入。
正則化項にはモデルをできるだけ簡単化す
る方向に作用する。
データが高次元の場合には次元削減効果あり。
一般的な正則化項
1
L(w ) yi φ(xi ), w
2 i 1
N
2
2
K
q
|
w
|
j
j 1
正則化項
q=2のときがL2正則化
q=1のときはLASSO: 1ノルムによる正則化なの
で L1正則化と呼ぶ
Least Absolute Shrinkage and Selection
Operator
λが十分大きいと、wjのいくつかは0になりやす
い → スパースなモデル
q=0のときはL0正則化。解きにくい問題(上記2つ
と違い凸ではない)
• 制約
q
K
w
j 1
j
のもとで、L(w)を最小化する、と考える。
q=0.5
q=1
q=2
q=4
L2正則化
1 N
L(w ) yi φ(xi ), w
2 i 1
最小化すると
2
2
正則化項
T
w w
(wの影響を小さく
する効果)
ˆ arg min L(w ) (I φ(X)T φ(X))1 φ(X)T y Wの2ノルムによる
w
w
正則化であるので、
L2正則化と呼ぶ
最適なwはL(w)を微分して0とすれ
ば上記のように解析的に閉じた式で求
まる。
これはφ(X)とλの案配よって決まり、
どの成分も強制的にゼロにしようとい
う力は働かない
L2正則化のイメージ
W1
最短の2乗距離
で結ぶ
W2
1
L(w ) yi φ(xi ), w
2 i 1
N
2
2
K
wj
j 1
2
L1正則化
ˆ を損失Lの微分
L2正則化ではwの最適値 w
で閉じた式で求められたが、L1正則化では
|w|がw=0で微分できないので、ややこしくな
る。
L1正則化を行う逐次的な方法と
L1正則化がwの要素の多くをゼロ化する傾
向を以下で説明する
L1正則化イメージ: (1)
~
軸でのLossの微分=0として
w
w2
2 を求める
W1
Loss+L1の
最小距離で
結ぶ
Case 3 では、
W2=0となる
3
2
1
W2
1 N
L(w ) yi φ(xi ), w
2 i 1
Loss
2
K
w
2
j 1
L1
j
L1正則化イメージ: (2)
~
軸でのLossの微分=0として
w
w2
2 を求める
W1
Loss+L1の
最小距離で
結ぶ
Case 3 では、
W2=0となる
3
2
1
W2
1 N
L(w ) yi φ(xi ), w
2 i 1
Loss
2
K
w
2
j 1
L1
j
L1正則化イメージ: (3)
~
軸でのLossの微分=0として
w
w2
2 を求める
W1
Loss+L1の
最小距離で
結ぶ
Case 3 では、
W2=0となる
3
2
1
W2
(1)(2)(3)で2本の赤
い矢印線の長さの和が
変わらない点に注目
以下でL1正則化に関し
てもう少し細かく議論す
る。
1 N
L(w ) yi φ(xi ), w
2 i 1
Loss
2
K
w
2
j 1
L1
j
1
L(w ) yi φ(xi ), w
2 i 1
N
2
K
|w
2
j 1
j
|
( L1 10)
ある次元dに着目してL(w)を最小化するような
wdを求める。
これを各次元について繰り返し、 L(w)の最小化
を図る。 wdについてL(w)を書き直すと
2
1
Lw yi d xi wd j xi w j wd w j
2 i 1
j d
j d
2
Loss w L1w ( L1 20) Lw
0
とおきwdの最適値を求めたいが絶対
wd
N
値を含む第2項L1(w)が微分できないので、ひと
まずLoss(w)を微分して0とおくと
2
N
Loss w
1
yi d xi wd j xi w j
wd
wd 2 i 1
j d
N
~ とする
d xi yi d xi wd j xi w j 0の解を w
d
i 1
j d
N
d xi yi j xi w j
j d
~ i 1
w
d
N
2
x
d i
i 1
これを用いてL(w)を書き換える。ただし、wdに関係しないところ
は当面定数と見なせるので、無視した。
N
2 2
~
2 L( wd ) d x i wd 2 d x i wd yi j x i w j wd Const
i 1
j d
w
2
d
w
2
d
N
x
i 1
2
d
i
N
x
i 1
2
d
i
N
2 wd d x i
i 1
N
2
x
w
y
x
w
d
i
d i
j
i
j
i 1
j d
N
2
~
2 wd w
d d x i wd Const
i 1
x w
N
i 1
2
d
i
d
Const
ここで
とおくと、
N
2
2i 1 d xi
1 2
~ w const
L( wd ) wd wd w
d
d
2
~
wd w
wd 0
d
L( wd )
L( wd )
~
wd w
w
0
0なる wdを探す
d
d
wd
wd
undefined
wd 0
~ 0 なら w 0 なので w w
~
case 1 w
d
d
d
d
~ 0 なら w 0 なので w w
~
case 2
w
d
d
d
d
~ なら w 0 なぜなら
w
d
d
~ 0すなわち w
~ 矛盾
wd 0だと w
d
d
~ 0すなわち w
~ 矛盾 w 0だと w
case 3
d
d
d
~ すなわち Loss w の w の解 w
~ がゼロに近づくと
case 3により w
d
d
d
wd 0になりゼロ化 (スパース化)される力
が働く
W全体の正則化
[step 1] w の各要素を適当な値に初期化
[step 2] w の各要素の値w_k(k=1,..,K)が収束
するまで以下step 3,4,5 を繰り返す
[step 3] k=1,.., Kでstep 4,step 5を繰り返す
[step 4] wj (j ≠ k)を用いて case1,2,3にし
たがってwjを計算してゼロ化
[step 5] wkを更新
[step 6] 収束したらwの最終結果とする
wdのゼロ化のイメージ
wd
~
w
d
L1正則化が支配的になり wˆ d をゼロ
化する様子を下図で例示する
L(wd)
λ大
λ小
正規化項L1
が支配的
wd
0
wd
2乗誤差Loss
が支配的
正則化項のBayes的解釈
Bayesでは事後確率は
観測データの確率×事前確率
事後確率を最大化するパラメタηを求めたい
ˆ arg max P X | P | は事前分布のハイパー パラメタ
ここで対数尤度にしてみると、次のように解釈できる
ˆ arg maxlog P X | log P |
損失関数
正則化項
例:事前分布、事後分布とも正規分布
y ( y1 ,, y N )T
y φ( x ) w
w0
w
w 1
wK
x 1T
X
x T
N
N (0,1)
log p( yi | x i , w,1) log N ( yi | φ( x i ), w ,1) yi φ( x i ), w
i
i
2 / 2
i
事前分布p w | , も同様にすると
log p( w | , ) w T w / 2
arg min log p( yi | x i , w, ) log p( w | , )
w
i
1
1
2
arg min yi φ( x i ), w w T w
2
w
2 i
ここで、 0, 事前分布の重みを とすると
1
arg max yi φ( x i ), w
w
2 i
2 wT w 2
事前分布のwの
分散:λー1 とも見
える。
L2ノルムによる正則化項
例:事前分布がLaplace分布、事後分布が正規分布
y φ( x ) w
N (0,1)
log p( yi | x i , w,1) log N ( yi | φ( x i ), w ,1) yi φ( x i ), w
i
i
i
w
事前分布は期待値 0の Laplace分布p w | exp
4
2
w
log p( w | )
2
arg min log p( yi | x i , w, ) log p( w | )
w
i
1
arg min yi φ( x i ), w
w
2 i
2 / 2
2 w 2
も同様にすると
L1ノルムによる正則化項
以上、述べてきた線形回帰のよるモデル化は、
生成モデル
当然、線形の識別モデルもある。次以降は線
形識別モデルの話
線形識別
と の領域の
境界面を線形関数
として求める
線形識別
x [ x1 , x2 ,, xM ]T
データ:
xがいくつかのクラス(あるいはカテゴリー):Ckのどれか
に属する。
例:新聞記事が「政治」「経済」「スポーツ」「芸能」「社会」などのクラ
スのどれかに属する場合。この場合、データ:xは例えば、記事に
現れる単語の集合、など。
データ:xがK個のクラスの各々に属するかどうかの判定
は(-1=属さない,1=属する)の2値を要素とするK次
元ベクトル:yi=(-1,1,-1,..,1)で表される。
ただし、1つのクラスに属するか属さないかだけを識別すの場合は
2クラス分類という。当然、 yi=ー1 or yi = 1
この属するか否かの判断をする式が線形の場合を線形識
別という。
線形識別の関数
y (x) x, w w0
あるいは
1 ~ w0
~
x , w とおくなら
x
w
~
y ( x) ~
x, w
一般化線形識別の関数は以下
y (x) f ( x, w w0 )
fは非線形でもよい
2クラス分類
クラスC1に属するかC2(=notC1)に属するかは、次
の通り
if y(x)≥0 then データ:xはC1に属する
otherwiseデータ:xはC2に属する
(すなわちC1に属さない)
2値分類の直観的説明
y={-1,1}、xは2次元とする。(下図を参照)
{y,x}を教師データとして、2乗誤差の最小化を行っ
て正規方程式を求めると、下図の のようなクラス
を分類する分離平面が得られる。
x2
y=1
境界面
y=-1
x1
線形識別関数の幾何学的解釈
w0
xd
|| w ||
xa
識別境界線
xb
x
xd
y (x)
|| w ||
w
xc
y ( x a ) x a , w w0 0 ,
y ( x b ) x b , w w0 0
0 y ( x a ) y ( x b ) ( x a x b ), w
wは ( x a x b )すなわち識別境界線と 直交。
原点から識別境界線へ の垂線の交点を x dとおく。
0 y ( x d ) x d , w w0
x dは wに並行で横ベクトルだ から、 x d , w | x d || || w ||
これを上式に代入して 整理すると
x d , w w0 || x d || || w || w0 0
| x d |
w0
|| w ||
線形識別関数の幾何学的解釈
識別境界線
xa
xb
x
xd
r
w
y ( x)
|| w ||
xc
w0
|| w ||
w
x xc r
|| w ||
両辺と w の内積をとり、
w0を足すと
|| w ||2
y ( x ) x, w w0 x c , w w0 r
y (x c ) r
|| w ||
|| w ||
y (x)
y ( x c ) 0 だから r
|| w ||
w, w
wの計算方法:2クラス分類の場合
~ で書けるとする
クラス C1 , C2の境界が y (x) ~
x, w
.
~)
y
(x
すると新規のデータ:xは
が正ならクラス
C1に,負ならC2属する
N個の教師データ ~
xn , yn (n 1, N )があったとき
.
ただしクラス1なら
T
~
x1
~
X
~ T
xN
yn 1, 0なら yn 1
y1
Y
y
N
~~
XW
~
~
x1 , w
~
~
xN , w
すると、観測データ(教師データ)において個々のクラスに
分類されたか否かの観点からの2乗誤差は次式となる
T ~ ~
~
~~
E ( W) XW Y XW Y
もう少し詳しく書くと
T ~ ~
~~
XW Y XW Y
~
~
x1 , w
~
~
x1 , w
~
~
y1 xN , w yN
2
~ y
y ~
x ,w
1
N
N
~
~ y
x1 , w
1
~
~ y
xN , w
N
2
T ~ ~
~
~~
E ( W) XW Y XW Y
~
~
これを最小化する W は W で微分して0とおけ
ば、線形回帰のときと同様の計算により求まる。
微分は次式:
AT A
AT
~~
~ ~~
2
A A XW Y 2 XT XW Y
W
W
~
E W ~ T ~ ~
~ X XW Y 0
W
~
~ T ~ 1 ~ T
W (X X) X Y
新規のデータxnewに対する予測を行うy(xnew)も求ま
る。
~
~ T ~ 1 ~ T
W ( X X) X Y
xnew )
y1 (~
~ ~ ~ T ~ 1 ~ T
~
~
y ( xnew )
xnewW xnew ( X X) X Y
yK (~
xnew )
y(xnew)が大きいほどクラス C1 に属する可能性が高い。
wの計算方法 :多クラス分類の場合
~
~ で書けるとする。
クラス
C
が線形識別モデル
y
(
x
)
x
w
k
k
k
.
すると新規のデータ:xは y k (x~ ) が最大のkのクラ
スCkに属する
yk (x)を K個並べたベクトル y [ y1 (x) yK (x)]
~
~
~
~
~
~
x ,w
x
,
w
x
W
1
K
T
.
N個の教師データ ~
xn , y n (n 1,.., N )があったとき
~
xnは K個のクラス内の複数個 に属することもあるな
注
y nは K次元ベクトル (1,1,1,...,1)のような形。
T
~
~
~
~
x1
y1
x1 , w
~
x1 , w
1
K
~
~~
X
Y
XW
~ T
~
~
~
~
y
x
x
,
w
x
,
w
N
N
N
1
N
K
ら
すると、観測データ(教師データ)において個々のクラスに
分類されたか否かの観点からの2乗誤差は次式となる
T ~ ~
~
~~
E ( W) Tr XW Y XW Y
もう少し詳しく書くと
T ~ ~
~~
XW Y XW Y
~ y
~
~ y
~
x1w
x
,
w
1
11
N
1
N1
~
~ y
~
~ y
x
,
w
x
,
w
1K
N
K
NK
1 K
T ~ ~
~~
Tr XW Y XW Y
2
2
~
~
~
~
x1 , w1 y11 xN , w1 yN 1
~x , w~
1
K
~
~ y
x1 , w
1
11
~
~ y
xN , w
1
N1
2
~ y 2
y1K ~
xN , w
K
NK
~
~ y
x1 , w
K
1K
~
~ y
xN , w
K
NK
T ~ ~
~
~~
E ( W) Tr XW Y XW Y
~
~
これを最小化する W は W で微分して0とおけ
ば、線形回帰のときと同様の計算により求まる。
Trの微分は次式:
Tr ( AT A)
AT
~~
~ ~~
2
A A XW Y 2XT XW Y
W
W
~
E W ~ T ~ ~
~ X XW Y 0
W
~
~ T ~ 1 ~ T
W (X X) X Y
新規のデータxnewに対する予測を行うy(xnew)も求ま
る。
~
~ T ~ 1 ~ T
W ( X X) X Y
xnew )
y1 (~
~ ~ ~ T ~ 1 ~ T
~
~
y ( xnew )
xnewW xnew ( X X) X Y
yK (~
xnew )
yi(xnew)が大きいほどそのクラス i に属する可能性が高い。
もちろん、 yi(xnew)が最大となるi のクラスに属すると考え
るのが自然。だが。。。
生成モデルを利用した識別
識別はベイズ統計的には次式
p(x | Ck ) p(Ck )
p(Ck | x)
p( x )
N個のデータ:xk(k=1,..,N)があるクラスに属するかど
うかの判定は(0=属さない,1=属する)の2値を要
素とするN個のK次元ベクトル:y=(0,1,0,..,1)で表さ
れる。
以下のベイズ統計による分類では、属さない場合を-1では
なく0とすることに注意。
以下ではベイズ統計による2クラス分類をする場合に
事後確率について考える。
Logistic sigmoid function
クラスC1の事後分布は次式(s-1)
p (C1 | x)
where
p (x | C1 ) p (C1 )
p (x | C1 ) p (C1 ) p (x | C2 ) p (C2 )
1
(a ) - (s - 1)
1 exp(a )
p (x | C1 ) p (C1 )
a log
p (x | C2 ) p (C2 )
(a) 1 (a) a log
exp(a )
d
da 1 exp(a ) 2
logistc sigmoid function
1
exp(a )
1
(1 )
1 exp(a ) 1 exp(a )
クラスC1,C2が共分散∑が等しい2つの
正規分布の場合の事後確率 p(C1|x)
式(s-1)によって以下のように導ける。
p( x | Ci )
log
1
2 K 2
1
| |
1
2
1
exp x i T 1 x i
2
p( x | C1 ) p(C1 )
p ( x | C 2 ) p (C 2 )
1
K
2
log 2
| | 2
1 x T 1 x 1 x T 1 x log p(C1 )
1
1
2
2
1
K
2
2
p (C 2 )
log 2 2 | | 2
1
p(C1 )
1
x T 11 1T 1x 1T 11 x T 12 2T 1x 2T 12 log
2
p (C 2 )
2
1
1
p(C1 )
x T 1 ( 1 2 ) 1T 11 2T 12 log
2
2
p (C 2 )
∑が2つのクラスで等しいことにとってキャンセルしてい
ることに注意。等しくないともう少し複雑。
クラスC1,C2が共分散∑が等しい2つの
正規分布の場合の事後確率 p(C1|x)
p( x | Ci )
1
1
T 1
exp
x
x
i
i
1
2
2
| |
1
2
K
2
p( x | C1 ) p(C1 ) T 1
1 T 1
1 T 1
p(C1 )
log
x ( 1 2 ) 1 1 2 2 log
p ( x | C2 ) p ( C2 )
2
2
p ( C2 )
1
事後確率: p(C1 | x ) w T x w0
1 exp w T x w0
where
w 1 ( 1 2 )
1 T
1 T
p(C1 )
w0 1 11 2 12 log
2
2
p ( C2 )
∑が2つのクラスで等しいことにとってキャンセルしている
ことに注意。等しくないともう少し複雑。
次に Maximum likelihood solution (つまりw,w0)を
求める。これによって、各クラスの事後確率が求まる
ここで各クラスの事前確率が以下だったとする
p (C1 )
p (C2 ) 1
このとき観測データ
x nが C1に属するとき tn 1とし
p (x n , C1 ) p (C1 ) p (x n | C1 ) N x n | 1 ,
観測データ x nが C2に属するとき tn 0とし
p (x n , C2 ) p (C2 ) p (x n | C2 ) (1 ) N x n | 2 ,
ここで likelihoodは次式
観測データは N個あることを思い出そ
tn
N
p (t | , 1 , 2 , ) N x n | 1 , (1 ) N x n | 2 , 1tn
n 1
where
t t1 ,...., t N
T
( s 10)
う
(s-10)のlogすなわち log likelihood function を最大化すること
が目標
まず、最大化するπを求める。
(s-10)のlogのπに関する部分は次式(s-20) logp (π)
N
log p( ) tn log (1 tn ) log(1 )
n 1
log p( )
0
where
1 N
N1
N1
tn
N n 1
N N1 N 2
N1 はクラス
C1に属するデータ数。
N 2 はクラス
C2に属するデータ数。
次に (s-10)の log を最大化する μ1 を求める。
(s-10)のlogのμ2 に関する部分は次式(s-30) logp (μ1 )
N
1 N
T
log p( 2 ) (1 tn ) log N (x n | 2 , ) (1 tn )x n 2 1 x n 2
2 n 1
n 1
const
log p( 2 )
0
2
1 N
2
(1 tn )x n
N 2 n 1
同様にしてμ1も求めると
N
1 N
T
log p( 1 ) tn log N (x n | 1 , ) tn x n 1 1 x n 1 const
2 n 1
n 1
log p( 1 )
0
1
1 N
1
tn x n
N1 n 1
最後に (s-10)の log を最大化する精度行列 Λ=∑-1 (C1
とC2共分散) を求める。
(s-10)のlogの∑ に関する部分は次式(s-40) logp (∑ )
1 N
1 N
log p () tn log | | tn (x n 1 )T (x n 1 )
2 n1
2 n1
1 N
1 N
(1 tn ) log | | (1 tn )(x n 2 )T (x n 2 )
2 n1
2 n1
N
N
log | | Tr (S ) ( s 40)
2
2
logp (Λ )をΛ で微分して0とおき、 (s-10)の log を最大化
するΛ =∑-1 を求める。
まず第1項の微分は線形代数学の公式より
N log | | N 1 T N 1
2
2
2
が対称 1が対称
( s 50)
( s 40)のSは次式
T
T
1
1
S (x n 1 )(x n 1 ) (x n 2 )(x n 2 )
N nC1
N nC2
次はTr(ΛS)をΛで微分して0とおき、 logp(Λ) を最大化するΛ を
求める。
Tr (S )
S T S ( s 60)
log p ( ) N 1 N
S 0
2
2
1
T
1
1
S (x n 1 )(x n 1 )
N nC1
N
(x
nC2
2 )(x n 2 )
T
n
このようにして、教師データ集合
{(xn,tn)n=1,..N}からμ1, μ2,Σ-1(=Λ),πが求まっ
たので、これらを用いて定義されるw,w0も求ま
る。
未知データxがクラスC1に属する確率は
1
p(C1 | x ) w x w0
1 exp w T x w0
T
where
w 1 ( 1 2 )
1 T
1 T
w0 1 11 2 12 log
2
2
1
なので、この分布を教師データから学習できた。
2乗誤差最小化の線形識別の問題点
この領域に青の
境界線が引っ張
られることあり。
この領域の判断が
困難
そもそも、Yの値は正規分布を想定した理論なのに、{0、1}
の2値しかとらないとして2乗誤差最小化を当てはめたところ
に無理がある。
© Copyright 2026 ExpyDoc