4.1.3.-4.1.4
分類における最小二乗
フィッシャーの線形判別


               @ry_okun
目的
  分類問題を最小二乗法を用いて解く
分布に正規分布を仮定したときの、目的変数値
        E[t|x]
の条件付き期待値    を近似するから    


1-of-K符号化法をとる.
例えばクラス4であるとすると

                             T
   t = (0   0   0   1   0)
いつもと同じく、目的変数ベクトルとの
二乗誤差関数を考える

各クラス毎に
線形モデルは以下のように表される
              T
  yk (x) =   wk x   + wk0
                      k = 1, 2, . . . , K
以下のようにまとめる

             ˜ Tx
      y(x) = W ˜
学習データ {xn , tn } (n = 1, 2, . . . , N )
が得られたとすると

二乗和誤差関数は以下で与えられる


        1        n                             o
    ˜        ˜ ˜
ED (W) = Tr (XW               T˜ ˜
                           T) (XW         T)
        2
ここでなぜかトレースが出てくる


               X
    (AB)ij =            aik bkj
                k
                X
      T
    (A A)ij =            aki akj
                    k

この表記で考えるいろいろとてもわかりやすいと
思う
X
               T
      Tr(A A) =                aku aku
                         k,u
                         X
                                2
                     =         aku
                         k,u
二乗のトレースをとると全ての要素の二乗和の
足し合わせが得られる
           X
 ˜ ˜
(XW)ij =       xik wkj
               ˜ ˜
           k
 i番目のデータのj番目のクラスでの出力
         1  n               o
      ˜ = Tr (XW T)T (XW T)
  ED (W)      ˜ ˜     ˜ ˜
         2
       誤差の各要素の二乗和
˜
  W       による微分計算
 n                    o    Xn                   o2
    ˜ ˜
Tr (XW      T ˜ ˜
          T) (XW    T) =           ˜ ˜
                                 ( XW    T)st
                           s,t

であるので

   @            1 @   Xn                 o2
           ˜
       ED (W) =             ˜ ˜
                           (XW T)st
  @wij          2 @wij s,t
                X               @ ˜ ˜
              =       ˜ ˜
                     (XW T)st      ( XW         T)st
                 s,t
                              @wij

                    全体の微分         中身の微分
X                      @ ˜ ˜
=           ˜ ˜
          ( XW       T)st      (XW T)st
                          @wij
    s,t
    X                           Xtは後から消えるので省く
            ˜ ˜            @
=         ( XW       T)st     (   xsu wut )
                                  ˜ ˜
    s,t
                          @wij u
    X
=             ˜ ˜
            ( XW     T)st xsu
                          ˜     iu jt
                                        この書き方もおすすめ
    s,t,u
    X
=           ˜ ˜
          ( XW      T)sj xsi
                         ˜
     s
    X
=          ˜       ˜ ˜
          (XT )is (XW      T)sj
     s
    ˜ T )(XW
= ((X     ˜ ˜           T))ij
@       ˜      ˜    ˜ ˜
        ED (W) = ((XT )(XW    T))ij
   @wij

    @      ˜      ˜    ˜ ˜
       ED (W) = ((XT )(XW     T))
   @W˜

よりいつもの疑似逆行列による以下の解が得られる
    ˜ = (XT X)
    W    ˜ ˜      1   ˜ TT
                      X
演習4.2
                       T
目的変数ベクトルがある定数       a ,b
に対して以下の線形制約
      T
     a tn + b = 0

を満たすときモデル予測も以下を満たすことを
示せ
       T
      a y(x) + b = 0
1           T                     T          T
    ED (W) = Tr (XW + 1w0                 T) (XW +     1w0        T)
            2

0                         1
 x11    x12    ..   x1D
@ :      :     :     : A w1         w2   ..   wK
 xN 1   xN 2   ..   xN D

                                              0                        1
    0 1                                        t11    t12    ..   t1K
     1                                        @ :      :     :      : A
    B1C
    B C    w01      w02       ..   w0K         tN 1   tN 2   ..   tN K
    @:A
     1
w0 に関して微分すると
       右辺は全要素の二乗和の足し合わせだった
       ことを利用して
                         (                              )
      @            @          1X
         ED (W) =                   (XW + 1wT
                                            0    T)2
                                                   st
     @w0          @w0         2 s,t


  @ED (W)      X                          @
(         )i =     (XW + 1wT
                           0        T)st      (XW + 1wT
                                                      0     T)st
    @w0        s,t
                                         @w0i
  (1wT )st = 1s w0t = 1s w0t より右辺は
     0
                 T


               X
                                T
                      (XW +   1w0    T)st   it
                s,t
X
                T
      (XW +   1w0       T)st   it
s,t
    X
                    T
=         (XW +   1w0     T)si
      s




      (                 )           T
                                        i
                                            (   )
              i

                    T               T
= ((XW +          1w0          T) 1)i
@
       ED (W) = (XW + 1wT
                        0   T)T 1
   @w0

  =0として解くと

          1  T          T   T
      w0 = (T        W X )1
          N

     1 T
   ¯= T 1                 1 T
   t                    x= X 1
                        ¯
     N                    N
とすると
(それぞれ各クラス得点、入力値のN回の平均ベ
クトルである)
w0 = ¯
                  t    w x
                         ¯ T

   となり、バイアスベクトルは平均値のずれを
   吸収するように決定されることが分かる

   これを最初の二乗和誤差関数に代入
        1         ¯   ¯              ¯   ¯
ED (W) = Tr (XW + T   XW   T)T (XW + T   XW   T)
        2
               ˆ =T
               T           ¯
                           T
               ˆ
               X=X         ¯
                           X
      とおくと最初と同じ形式になる   ˆ +T
                     W=X ˆ
⇤            T ⇤
     y(x ) = W x + w0
                   T ⇤
              = W x +¯
                     t               ¯
                                   W x  T


              =t ˆ x
               ¯ + TT (ˆ+ )T (x⇤            x)
                                            ¯

 T    ⇤       T¯       T ˆT       + T   ⇤
a y(x ) = a t + a T (ˆ ) (x
                     x                      x)
                                            ¯
           b      ˆ       ¯
                         T=T            T

                   b     b   ..    b
0 1
    1
   B1C
 a=B C
   @:A   b=1
    1


とするとyの要素の和も1になることが示せる

負になったりするので確率になる保証はない
・t分布との比較でも出てきたが、はずれ値に
 敏感で引っ張られてしまうという欠点がある
 →図4.4

・クラス分類問題の分布は明らかにガウス分布
 とは異なるのでうまく使えない
 (最小二乗法はパラメータの条件付き確率分
 布に正規分布を仮定した方法であった)
フィッシャーの線形判別
線形識別モデルを次元削減とみることも出来る
                     T
 うまくクラス分類できる y = w       x
 のパラメータw を見つけよう
m1
                       平均の分離度が最大に
             m2
                       なるようにしてみる
                            T
                        w (m2        m2 )

演習4.4ラグランジュの未定乗数法より
     T                  T
 L = w (m2    m2 ) + (w w       1)
 w で微分して
               1
     w=          (m2    m2 )
              2
m1
                       平均の分離度が最大に
             m2
                       なるようにしてみる
                            T
                        w (m2        m2 )

演習4.4ラグランジュの未定乗数法より
     T                  T
 L = w (m2    m2 ) + (w w       1)
 w で微分して
               1
     w=          (m2    m2 )
              2
クラス間分離度だけを見ても良い結果が
得られない可能性がある




 射影した後のクラス内分散も考えることにする
射影した時のクラスkのクラス内分散は
                X
        2                           2
       sk   =          (yn   mk )
                n2Ck    クラスkに含まれるデータ平均
                    X
              2
             sk
   総クラス内分散    と定義    
                     
           k
                2                            2
今回はとりあえず2クラスより s1                       +   s2
フィッシャーの判別基準は以下で定義

                        2
        (m2 m1 )             クラス間分散
 J(W) =    2 + s2
          s1    2            クラス内分散
ここで、この式をパラメータ行列を使って書き
 換えてみる(言ってることは全く同じ)

                                                     T
          SB = (m2            m1 )(m2         m1 )
              クラス間共分散行列と呼ぶ
       X                               X
                                 T                                    T
SW =          (xn   m1 )(xn   m1 ) +          (xn    m2 )(xn   m2 )
       n2C1                            n2C2

              総クラス内共分散行列と呼ぶ

 という2つの共分散行列を定義すると
T        T                       T
w SB w = w (m2       m1 )(m2   m1 ) w
                        2
      = (m2      m1 )
      T        T
     w m1 =   m1 w   = m1 だから
X                                              X
SW =          (xn       m1 )(xn          m1 ) T +           (xn     m2 )(xn    m2 ) T
       n2C1                                          n2C2

                          X
   T                            w (xnT
                                                 m1 )(xn             T
                                                                  m1 ) w    +...
 w SW w =
                         n2C1
                         X
                                     T                        T                T
                    =           w (xn                m1 )(w (xn            m1 )) +...
                        n2C1
                        X
                                                 2
                    =          (yn        m1 )       +...
                        n2C1

                                                              となる
0                    0
    d f (x)   f (x) g(x) f (x)g (x)
            =               2
   dx g(x)             g(x)
                                                 を用いて
 @
   J(W) を解くと
@w
      T                     T
    (w SB w)SW w = (w SW w)SB w
                                X
     = (m2   m1 )   2       =          (yn       m1 )2 +...
                                n2C1


この2つはスカラーなのでとりあえず無視する

          SW w / SB w
SW w / SB w
                              T
    SB w = (m2   m1 )(m2   m1 ) w
        / (m2    m1 )


   よって以下が得られる
             1
      w/   SW (m2   m1 )


クラス内共分散が等方的ならクラス平均の差に比例
射影方向が決定したら




              クラスの条件付き確率密度
    データ数   p(y|Ck ) をモデル化できる




                 y
例えばデータから最尤法を用いてパラメータ決定

prml4.1.3-4.1.4