線形識別関数


『はじめてのパターン認識』第６章の勉強メモです。

# 線形識別関数の定義

２クラス問題$(C_1,C_2)$の線形識別関数は、$d$次元入力ベクトル$x=(x_1,\cdots,x_d)^\top$、係数ベクトル$\omega=(\omega_1,\cdots,\omega_d)^\top$、バイアス項$\omega_0$とすると、
```math
f(x)=\omega^\top x+\omega_0
```
で表す。識別境界を$f(x)=0$とすれば、識別規則は
- $f(x)\geq 0$で識別クラス$C_1$
- $f(x)<0$で識別クラス$C_2$
となる。識別境界$f(x)=0$では、$\omega^\top x=-\omega_0$となり、係数ベクトルのノルム$\|\omega\|$で正規化すると
```math
\begin{multline}
\begin{split}
&n^\top x=\Delta_\omega\\
&n^\top x-\Delta_\omega=0
\end{split}
\end{multline}
```
となる。ここで、$n=\frac{\omega}{\|\omega\|}$、$\Delta_\omega=-\frac{\omega_0}{\|\omega\|}$。
識別境界上の任意の２点に対する原点からの位置ベクトル$x_1$、$x_2$を考える。
```math
\begin{multline}
\begin{split}
&n^\top x_1-\Delta_\omega=0\\
&n^\top x_2-\Delta_\omega=0\\
&n^\top(x_1-x_2)=0
\end{split}
\end{multline}
```
となり、ここで、$x_1-x_2$は識別境界内の任意のベクトルとなるので、$n$は識別境界の単位法線ベクトルとなる。
$\Delta_\omega=n^\top x_1$は原点から識別超平面までの距離を表し、正規化されたバイアスともいう。
任意の原点からの位置ベクトル$x_m$を考え、$n^\top x_m$が$\Delta_\omega$より大きければ$f(x_m)>0$、$n^\top x_m$が$\Delta_\omega$より小さければ$f(x_m)<0$となり、クラスを識別することができる。

## 多クラス問題への拡張

$K$クラスの線形識別関数を考える。
**一対他**という方法は、１つのクラスと他のすべてのクラスを識別する$K-1$個の２クラス識別関数$f_j(x)(j=1,\cdots,K-1)$について
- ある$j$について$f_j(x)>0$の場合、$C_j$
- すべての$j\neq K$について$f_j(x)<0$の場合、$C_K$
と識別する。このとき、複数の識別関数が$>0$となるときのクラスを決定できない。また、１つのクラスに関する識別関数を決定するため、正となる学習データ数が負となる学習データ数に比べて極端に少なくなる。
**一対一**という方法は、クラス$i$と$j$を識別する$\frac{K(K-1)}{2}$個の２クラス識別関数$f_{ij}(x)(1\leq i\leq j\leq K)$について、$\frac{K(K-1)}{2}$個の識別関数の多数決でクラスを識別する。このとき、多数決で決まらない領域が存在する。また、真のクラスとは関係のない多くの識別関数の結果を含むことになる。
**最大識別関数法**という方法は、$K$個の線形識別関数について、$\arg \max_j f_j(x)$となるクラス$C_j$に識別する。このとき、クラス$i$と$j$の識別境界は$f_i(x)=f_j(x)$となるので、
```math
f_{ij}(x)=(\omega_i-\omega_j)^\top x + (\omega_{i0}-\omega_{j0})=0
```
を満たす最大$\frac{K(K-1)}{2}$個の識別境界ができる。この方法ではクラスが決定できない領域は生じない。また、各クラスの占める領域は単連結で凸となる。

# 最小２乗誤差基準によるパラメータの推定

最小２乗誤差基準とは、識別関数の出力値と教師入力との２乗誤差を最小にするパラメータを求める手法で、解析的に解が得られる。
２クラスの場合について考える。係数ベクトルはバイアスを含めて$\omega=(\omega_0,\omega_1,\cdots,\omega_d)^\top$、$i$番目の学習用入力ベクトルはバイアスに対応する項を含めて$x_i=(x_{i0}=1,x_{i1},\cdots,x_{id})^\top$と定義する。線形識別関数は
```math
f(x)=\omega_0 + \omega_1 x_1 +\cdots +\omega_d x_d
```
と表すことができる。
入力ベクトル$x_i$のクラスは教師入力$t_i$により
```math
t_i=
\begin{cases}
+1 & (x_i\in C_1)\\
-1 & (x_i \in C_2)
\end{cases}
```
と与えられる。
学習データ数を$N$とし、学習用入力ベクトルを並べたデータ行列$X=(x_1,\cdots,x_N)^\top$、教師入力を並べた教師ベクトル$t=(t_1,\cdots,t_N)$と定義する。
評価関数$E(\omega)$は、識別関数の出力値と教師入力の2乗誤差なので、
```math
\begin{multline}
\begin{split}
E(\omega)&=\sum_{i=1}^{N}(t_i-f(x_i))^2\\
&=(t-X\omega)^\top(t-X\omega)\\
&=t^\top t-2t^\top X\omega+\omega^\top X^\top X \omega
\end{split}
\end{multline}
```
となる。この評価関数を最小にするパラメータ$\omega$は、評価関数をパラメータで微分して$0$になる値なので、
```math
\begin{multline}
\begin{split}
\frac{\partial E(\omega)}{\partial \omega}&=-2X^\top t+2X^\top X\omega = 0\\
\hat{\omega} &= (X^\top X)^{-1}X^\top t
\end{split}
\end{multline}
```
となる。この式を正規方程式という。学習データに対する予測値$\hat{t}$は
```math
\hat{t}=X\hat{\omega}=X(X^\top X)^{-1}X^\top t
```
となる。行列$X\hat{\omega}=X(X^\top X)^{-1}X^\top$は教師データ$t$を予測値$\hat{t}$に変換する行列で、ハット行列と呼ばれる。
$x_0$を1に固定し、$(x_1,f(1,x_1))$平面による表現を標準座標系、$x_0$を固定せず独立した座標として$(x_0,x_1)$平面に表現を同次座標系という。

## 多クラス問題への拡張

最大識別関数法では、$K$個の識別関数$f_{k}(x)=\omega_k^\top x $ $ (k=1,\cdots,K)$を用意し、２乗誤差を最小にするパラメータ$\omega_k$を求めればよい。１つの学習データに$K$個の教師入力が必要になるため、$i$番目の教師入力を$t_i=(t_{i1},\cdots,t_{iK})^\top$とし、教師データを並べた行列は$T=(t_1,\cdots,t_N)^\top$となる。
２乗誤差を最小にするパラメータ$\hat{W}$は
```math
\hat{W}=(X^\top X)^{-1}X^\top T
```
となり、識別関数は
```math
f(x)=\hat{W}x=(\omega_1,\cdots,\omega_k)^\top x=(f_1(x),\cdots,f_K(x))^\top
```
となる。

# 線形判別分析

１次元に写像されたとき、クラス間の分布ができるだけ重ならないような写像方向を見つける手法を線形判別分析という。

## フィッシャーの線形判別関数

２クラス$(C_1,C_2)$問題について考える。各クラスの学習データ数は$N_1$、$N_2$、全データ数は$N=N_1+N_2$とする。線形識別関数$y=\omega^\top x+\omega_0$について、学習データの平均ベクトル$\mu_k=\frac{1}{N_k}\sum_{i\in C_k}x_i$ $(k=1,2)$を線形変換$m_k=\omega^\top\mu_k+\omega_0$する。クラス間の平均値の差は
```math
m_1-m_2=\omega^\top(\mu_1-\mu_2)
```
となる。平均の差の２乗をクラス間変動といい、
```math
\begin{multline}
\begin{split}
(m_1-m_2)^2&=(\omega^\top(\mu_1-\mu_2))^2\\
&=(\omega^\top(\mu_1-\mu_2))(\omega^\top(\mu_1-\mu_2))^\top\\
&=\omega^\top (\mu_1-\mu_2)(\mu_1-\mu_2)^\top\omega=\omega^\top S_B\omega
\end{split}
\end{multline}
```
となる。クラスごとのデータ分布の広がりをクラス内変動といい、
```math
\begin{multline}
\begin{split}
S_k^2&=\sum_{i\in C_k}(y_i-m_k)^2\\
&=\sum_{C_k}(\omega^\top(x_i-\mu_k))^2\\
&=\sum_{C_k}(\omega^\top(x_i-\mu_k))(\omega^\top(x_i-\mu_k))^\top\\
&=\omega^\top\left(\sum_{C_k}(x_i-\mu_k)(x_i-\mu_k)^\top\right)\omega=\omega^\top S_k\omega
\end{split}
\end{multline}
```
となる。全クラス内変動は$S_1^2+S_2^2=\omega^\top(S_1+S_2)\omega=\omega^\top S_W\omega$となる。
クラス間変動とクラス内変動の比
```math
J(\omega)=\frac{(m_1-m_2)^2}{S_1^2+S_2^2}=\frac{\omega^\top S_B\omega}{\omega^\top S_W\omega}
```
を最大にする$\omega$を見つけることをフィッシャーの基準という。
この式を最大化する解は、一般固有値問題$S_B\omega=\lambda S_W\omega$を解くことで得られる。$S_W$が正則であれば、
```math
S_W^{-1}S_B\omega=\lambda\omega
```
となり、通常の固有値問題となる。
線形識別関数のバイアス項はフィッシャーの基準では$m_1-m_2$の項で消去されてしまうため、直接求めることができない。

## 判別分析法

線形変換後の平均値と分散は、クラス$k=1,2$について
```math
\begin{multline}
\begin{split}
m_k&=\omega^\top\mu_k+\omega_0\\
\sigma_k^2&=\omega^\top\Sigma_k\omega
\end{split}
\end{multline}
```
と定義できる。クラス分離度の評価関数を$h(m_1,\sigma_1^2,m_2,\sigma_2^2)$で表す。この評価関数を最大にする$\omega$と$\omega_0$は、
```math
\begin{multline}
\begin{split}
\frac{\partial h}{\partial \omega}&=\frac{\partial h}{\partial \sigma_1^2}\frac{\partial\sigma_1^2}{\partial\omega}+\frac{\partial h}{\partial\sigma_2^2}\frac{\partial\sigma_2^2}{\partial\omega}+\frac{\partial h}{\partial m_1}\frac{\partial m_1}{\partial\omega}+\frac{\partial h}{\partial m_2}\frac{\partial m_2}{\partial \omega}\\
\frac{\partial h}{\partial \omega_0}&=\frac{\partial h}{\partial \sigma_1^2}\frac{\partial\sigma_1^2}{\partial\omega_0}+\frac{\partial h}{\partial\sigma_2^2}\frac{\partial\sigma_2^2}{\partial\omega_0}+\frac{\partial h}{\partial m_1}\frac{\partial m_1}{\partial\omega_0}+\frac{\partial h}{\partial m_2}\frac{\partial m_2}{\partial \omega_0}
\end{split}
\end{multline}
```
を解けばよい。ここで、$\frac{\partial \sigma_k^2}{\partial \omega}=2\Sigma_k\omega$、$\frac{\partial\sigma_k^2}{\partial \omega_0}$、$\frac{\partial m_k}{\partial \omega}=\mu_k$、$\frac{\partial m_k}{\partial \omega_0}=1$となるので、整理すると
```math
\begin{multline}
\begin{split}
2(\frac{\partial h}{\partial \sigma_1^2}\Sigma_1+\frac{\partial h}{\partial \sigma_2^2}\Sigma_2)\omega&=-(\frac{\partial h}{\partial m_1}\mu_1+\frac{\partial h}{\partial m_2}\mu_2)\\
\frac{\partial h}{\partial m_1}+\frac{\partial h}{\partial m_2}&=0
\end{split}
\end{multline}
```
となる。ここで、
```math
s=\frac{\frac{\partial h}{\partial \sigma_1^2}}{\frac{\partial h}{\partial \sigma_1^2}+\frac{\partial h}{\partial \sigma_2^2}}
```
と定義して、整理すると
```math
2(\frac{\partial h}{\partial \sigma_1^2}+\frac{\partial h}{\partial \sigma_2^2})(s\Sigma_1+(1-s)\Sigma_2)\omega=\frac{\partial h}{\partial m_1}(\mu_2-\mu_1)
```
となり、最適な$\omega$はスカラー項を無視すると、
```math
\omega=(s\Sigma_1+(1-s)\Sigma_2)^{-1}(\mu_2-\mu_1)
```
となる。
評価関数をクラス間分散とクラス内分散の比で定義した判別関数を判別分析法という。クラス間分散は
```math
\frac{N_1(m_1-\bar{m}^2+N_2(m_2-\bar{m})^2)}{N_1+N_2}=P(C_1)(m_1-\bar{m}^2+P(C_2)(m_2-\bar{m})^2)
```
となり、クラス内分散は
```math
\frac{N_1\sigma_1^2+N_2\sigma_2^2}{N_1+N_2}=P(C_1)\sigma_1^2+P(C_2)\sigma_2^2
```
となる。ここで、$\bar{m}$は全データ平均で$\bar{m}=\frac{1}{N}(N_1m_1+N_2m_2)$となる。評価関数は
```math
h=\frac{P(C_1)(m_1-\bar{m}^2+P(C_2)(m_2-\bar{m})^2)}{P(C_1)\sigma_1^2+P(C_2)\sigma_2^2}
```
このとき、
```math
\begin{multline}
\begin{split}
\frac{\partial h}{\partial \sigma_k^2}&=-\frac{P(C_k)(P(C_1)(m_1-\bar{m}^2+P(C_2)(m_2-\bar{m})^2))}{P(C_1)\sigma_1^2+P(C_2)\sigma_2^2}\\
\frac{\partial h}{\partial m_k}&=\frac{2P(C_k)(m_k-\bar{m})}{P(C_1)\sigma_1^2+P(C_2)\sigma_2^2}
\end{split}
\end{multline}
```
が得られる。このとき、$s=P(C_1)$となるので、最適な$\omega$は
```math
\omega=(P(C_1)\Sigma_1+P(C_2)\Sigma_2)^{-1}(\mu_2-\mu_1)
```
となる。また、最適なバイアス項は
```math
\omega_0=\bar{m}-\omega^\top(P(C_1)\mu_1+P(C_2)\mu_2)
```
となる。

## 多クラス問題への拡張

各クラスのデータ数を$N_k$ $(k=1,\cdots,K)$とする。各クラスのクラス内変動は
```math
\begin{multline}
\begin{split}
S_k&=\sum_{i\in C_k}(x_i-\mu_k)(x_i-\mu_k)^\top\\
\mu_k&=\frac{1}{N_k}\sum_{i\in C_k}x_i
\end{split}
\end{multline}
```
となる。全クラスのクラス内変動の和は$S_W=\sum_{k=1}^KS_k$となる。全データ数を$N=N_1+\cdots +N_K$となるので、全データの平均は
```math
\mu=\frac{1}{N}\sum_{i=1}^N x_i=\frac{1}{N}\sum_{k=1}^K N_k\mu_k
```
となる。全平均からの全データの変動の和を全変動といい、
```math
S_T=\sum_{i=1}^N(x_i-\mu)(x_i-\mu)^\top
```
となる。$S_T$をクラス内分散を含む項に分解すると
```math
\begin{multline}
\begin{split}
S_T&=\sum_{k=1}^K\sum_{i\in C_k}(x_i-\mu_k+\mu_k-\mu)(x_i-\mu_k+\mu_k-\mu)^\top\\
&=\sum_{k=1}^K\sum_{i\in C_k}(x_i-\mu_k)(x_i-\mu_k)^\top+2\sum_{k=1}^K\sum_{i\in C_k}(x_i-\mu_k)(\mu_k-\mu)+\sum_{k=1}^K\sum_{i\in C_k}(\mu_k-\mu)(\mu_k-\mu)^\top\\
&=S_W+2\sum_{k=1}^K(N_k\mu_k-N_k\mu_k)+\sum_{k=1}^KN_k(\mu_k-\mu)(\mu_k-\mu)^\top\\
&=S_W+\sum_{k=1}^KN_k(\mu_k-\mu)(\mu_k-\mu)^\top
\end{split}
\end{multline}
```
となり、クラス間変動は$S_B=\sum_{k=1}^KN_k(\mu_k-\mu)(\mu_k-\mu)^\top$となる。$S_B$のランクは、バイアス項を除いたデータの次元を$d$とすると、たかだか$\min[K-1,d]$になる。
$d>K$であれば、$d$次元空間から$K-1$次元空間への線形写像
```math
y_k=\omega_k^\top x (k=1,\cdots,K-1)
```
をかんがえる。$y=(y_1,\cdots,y_{K-1})^\top$、$W=(\omega_1,\cdots,\omega_{K-1})$とすると線形変換は$y=W^\top x$とできる。各クラスの平均ベクトル$m_k$と全平均ベクトル$m$は
```math
\begin{multline}
\begin{split}
m_k&=\frac{1}{N_k}\sum_{i\in C_k}y_i=\frac{1}{N}\sum_{i\in C_k}W^\top x_i=W^\top \mu_k\\
m&=\frac{1}{N}\sum_{k=1}^K N_km_k=\frac{1}{N}\sum_{k=1}^K N_kW^\top\mu_k=W^\top\mu
\end{split}
\end{multline}
```
なる。線形変換後のクラス内変動$\tilde{S_W}$、クラス間変動$\tilde{S_B}$、全変動$\tilde{S_T}$は
```math
\begin{multline}
\begin{split}
\tilde{S_W}&=\sum_{k=1}^K\sum_{i\in C_k}(y_i-m_k)(y_i-m_k)^\top\\
&=\sum_{k=1}^K\sum_{i\in C_k}W^\top(x_i-\mu_k)\{W^\top(x_i-\mu_k)\}^\top\\
&=\sum_{k=1}^K\sum_{i\in C_k}W^\top(x_i-\mu_k)(x_i-\mu_k)^\top W = W^\top S_WW\\
\tilde{S_B}&=\sum_{k=1}^K N_k(m_k-m)(m_k-m)^\top\\
&=\sum_{k=1}^K N_k W^\top(\mu_k-\mu)\{W^\top(\mu_k-\mu)\}^\top\\
&=\sum_{k=1}^K N_k W^\top(\mu_k-\mu)(\mu_k-\mu)^\top W=W^\top S_B W\\
\tilde{S_T}&=\tilde{S_W}+\tilde{S_B}
\end{split}
\end{multline}
```
となる。

# ロジスティック回帰

## ロジスティック関数

２クラス問題について、クラス$C_1$の事後確率$P(C_1|x)$は
```math
P(C_1|x)=\frac{p(x|C_1)P(C_1)}{p(x|C_1)P(C_1)+p(x|C_2)P(C_2)}
```
となるが、$a=\ln\frac{p(x|C_1)P(C_1)}{p(x|C_2)P(C_2)}$とすると、
```math
P(C_1|x)=\frac{1}{1+\exp{(-a)}}=\sigma(a)
```
とできる。$\sigma(a)$をロジスティック関数と呼ぶ。無限区間$(-\infty,\infty)$を区間$(0,1)$に写像する。また、$\sigma(-a)=1-\sigma(a)$のような対称性を示す。
ロジスティック関数の逆関数
```math
a=\ln(\frac{\sigma(a)}{1-\sigma(a)})=\ln\frac{P(C_1|x)}{P(C_2|x)}
```
をロジット関数という。事後確率の比$\frac{P(C_1|x)}{P(C_2|x)}$をオッズという。

## ロジスティック回帰モデル

ロジスティック回帰モデルは、事象の有無を$\{0,1\}$の２値で表し、事象の生起確率をロジスティック関数で表す。
例えば、肺がんの有無を${0,1}$で示し、$N$人の喫煙量$x_i$,$i=1,\cdots,N$を観測したとき、喫煙量$x$の人が肺がんになる確率を$P(1|x)=\frac{1}{1+\exp(-(\omega_0+\omega_1x))}$で表す。$\omega=(\omega_0,\omega_1)^\top$とし、$x$にはバイアス項に対応する$1$を追加して$x=(1,x)^\top$とする。$a=\omega^\top x$とすると、
```math
P(1|x)=\frac{1}{1+\exp(-a)}=\frac{\exp{a}}{1+\exp{a}}=\sigma(a)
```
となり、ロジスティック関数となる。

## 一般化線形モデル

確率変数$x$、確率密度関数$f(x)$について、係数ベクトル$\omega$より
```math
f(x)=\omega x
```
という形で表すことができるモデルを一般線形モデルという。重回帰分析などがこれに当てはまる。
指数型分布族の確率変数$y$、確率密度関数$f(y)$について、正準パラメータ$\theta$、確率変数$x$、係数ベクトル$\omega$より
```math
\begin{multline}
\begin{split}
f(y|\theta)&=ポアソン分布、ベルヌーイ分布など\\
g(\theta)&=\lambda\\
\lambda &= \omega x
\end{split}
\end{multline}
```
という形で表すことができるモデルを一般**化**線形モデルという。ロジスティック回帰モデルなどが当てはまる。一般化線形モデルは指数分布型確率分布（上式１番目）、リンク関数（上式２番目）、線形予測子（上式３番目）の３つで構成される。
ロジスティック回帰モデルでは、確率分布をロジスティック関数、リンク関数を$g(\theta)=\theta$としている。

## パラメータの最尤推定

モデルの出力を確率変数$t$で表す。$t=1$となる確率を$P(t=1)=\pi$で、0となる確率を$P(t=0)=1-\pi$で表す。確率変数$t$はパラメータ$\pi$をもつベルヌーイ試行$f(t|\pi)=\pi^t(1-\pi)^{1-t}$にしたがう。$N$回の試行に基づく尤度関数は
```math
L(\pi_1,\cdots,\pi_N)=\prod_{i=1}^N f(t_i|\pi_i)=\prod_{i=1}^N \pi_i^{t_i}(1-\pi_i)^{(1-t_i)}
```
となり、負の対数尤度関数は
```math
\mathcal{L}(\pi_1,\cdots,\pi_N)=-\ln L(\pi_1,\cdots,\pi_N)=-\sum_{i=1}^N (t_i\ln \pi_i+(1-t_i)\ln(1-\pi_i))
```
となる。この評価関数は交差エントロピー型誤差関数とよぶ。
ここで$\pi_i=\sigma(x_i)=\frac{\exp(\omega^\top x_i)}{1+\exp(\omega^\top x_i)}$を代入すると、
```math
\mathcal{L}(\pi_1,\cdots,\pi_N)=-\sum_{i=1}^N (t_i\omega^\top x_i-\ln(1+\exp(\omega^\top x_i)))
```
となる。
最尤推定法はこの交差エントロピー型誤差関数を最小にするパラメータ$\omega$を得ることである。負の対数尤度関数を$\omega$で微分すれば
```math
\frac{\partial \mathcal{L}(\omega)}{\partial \omega}=-\sum_{i=1}^{N}(t_i x_i - \frac{x_i \exp(\omega^\top x_i)}{1+\exp(\omega x_i)})=sum_{i=1}^N x_i(\pi_i - t_i)
```
となり、この式が0となる$omega$を求めればよい。解析的に求めることはできないので、最急降下法やニュートン-ラフソン法などで数値的に求める。

## 交差エントロピー型誤差関数

モデルの出力を$t$、真の確率分布を$p$とすると、交差エントロピー型誤差関数は
```math
CrossEntropyError=-\sum_k t_k\ln p_k
```
と定義される。機械学習、とくにニューラルネットワークの損失関数としてよく使われる。
$\ln p$は$p=1$のときに0となり、$p=0$のときに$\infty$をとるため、モデルの出力と真の確率分布との誤差をよく表現する。

## 多クラス問題への拡張

各クラスごとに線形変換
```math
a_k = \omega_k^\top x
```
を求め、事後確率を
```math
P(C_k|x)=\pi_k(x)=\frac{\exp(a_k)}{\sum_{j=1}^K\exp(a_j)}
```
で計算して、最大事後確率を与えるクラスに分類すればよい。この関数をソフトマックス関数という。
線形関数でうまく分離できない場合、入力ベクトル$x$を非線形関数$\psi$で
```math
\psi(x)=(\psi_0=1,\psi_1(x),\cdots,\psi_M(x))^\top
```
のように変換するとうまく分離できる場合がある。変換されたM+1次元空間でロジスティック回帰を$a_k=\omega_k^\top \psi(x)$のように行う。このような非線形関数を非線形基底関数という。

# 章末問題

## ６．１

$f(y,x)=y-4x+3$より、法線ベクトルは$(y,x)=(1,-4)$となる。この単位法線ベクトルは$n=(y,x)=(\frac{1}{\sqrt{17}},-\frac{4}{\sqrt{17}})$となる。
原点から直線へ最短距離となる位置ベクトルは直交するため、単位法線ベクトルのスカラ倍$an$となる。位置ベクトルは直線上にあるため、
```math
\begin{multline}
\begin{split}
a(\frac{1-4(-4)}{\sqrt{17}})&=-3\\
a&=-\frac{3}{\sqrt{17}}
\end{split}
\end{multline}
```
よって、位置ベクトルは$(y,x)=(-\frac{3}{17},\frac{12}{17})$となる。

## ６．２

```math
\begin{multline}
\begin{split}
\frac{\partial J(\omega)}{\partial \omega}&=\frac{2S_B \omega (\omega^\top S_W \omega )-\omega^\top S_B \omega (2S_W \omega )}{(\omega^\top S_W \omega )^2}\\
&=\frac{2}{\omega^\top S_W \omega}(S_B \omega -\frac{\omega^\top S_B \omega}{\omega^\top S_W \omega}S_W \omega)\\
&=\frac{2}{\omega^\top S_W \omega}(S_B \omega -\lambda S_W \omega)\\
S_B\omega &=\lambda S_W\omega
\end{split}
\end{multline}
```

## ６．３

### （１）

```math
\begin{multline}
\begin{split}
クラス間分散&=P(C_1)(x_1-\bar{x})(x_1-\bar{x})^\top+P(C_2)(x_2-\bar{x})(x_2-\bar{x})^\top\\
&=\frac{n_1}{n}(x_1-\frac{n_1 x_1+n_2 x_2}{n})(x_1-\frac{n_1 x_1+n_2 x_2}{n})^\top+\frac{n_2}{n}(x_2-\frac{n_1 x_1+n_2 x_2}{n})(x_2-\frac{n_1 x_1+n_2 x_2}{n})^\top\\
&=\frac{n_1}{n}(\frac{n_2 x_1-n_2 x_2}{n})(\frac{n_2 x_1-n_2 x_2}{n})^\top+\frac{n_2}{n}(\frac{-n_1 x_1+n_1 x_2}{n})(\frac{-n_1 x_1+n_1 x_2}{n})^\top\\
&=\frac{n_1 n_2}{n^3}(n_2+n_1)(x_1-x_2)(x_1-x_2)\top\\
&=\frac{n_1 n_2}{n^2}(x_1-x_2)(x_1-x_2)\top
\end{split}
\end{multline}
```

### （２）

$x'=\bar{x_1}-\bar{x_2}$とすると
```math
\Sigma_B = \frac{n_1n_2}{n^2}x'x'^\top
```
となる。$x'x'^\top$について
```math
x'x'^\top =
\begin{pmatrix}
x_1'\\
\vdots\\
x_n'
\end{pmatrix}
(x_1' \cdots x_n')=

\begin{pmatrix}
{x_1'}^2 & x_1'x_2' & \cdots & x_1'x_n'\\
x_2'x_1' & {x_2'}^2 & \cdots & x_2'x_n'\\
\vdots & & & \\
x_n'x_1' & x_n'x_2' & \cdots & {x_n'}^2
\end{pmatrix}
```
となる。ここで、$i$行目に対して、1行目を$-\frac{x_i'}{x_1'}$倍して加えることで、$i$行目はすべて0になる。よって、$x'x'^\top$のランクは1となる。

## ６．４

```math
\begin{multline}
\begin{split}
\sigma(-a)&=\frac{1}{1+\exp(a)}\\
&=\frac{\frac{1}{\exp(a)}}{\frac{1}{\exp(a)}+1}\\
&=\frac{(1+\exp(-a))-1}{1+\exp(-a)}\\
&=1-\sigma(a)
\end{split}
\end{multline}
```

## ６．５

環境１失敗について
```math
\frac{P(B)/(1-P(B))}{P(A)/(1-P(A))}=\frac{0.01/0.99}{0.1/0.9}=\frac{1}{11}
```
環境２失敗について
```math
\frac{P(B)/(1-P(B))}{P(A)/(1-P(A))}=\frac{0.45/0.55}{0.5/0.5}=frac{9}{11}
```
以上より、失敗に関するオッズ比は通常の比と同様の結果が出る。