一、从线性回归到线性分类
- 线性回归的特性
线性回归 f(w,b)=wTx+bf(w, b)=w^T x+b 具有线性、全局性和数据末加工的特性。
线性包括三个方面,其间:
- 特点线性指的是 f(w,b)f(w, b) 关于 xx 是线性的;
- 全局线性指的是 wTx+bw^T x+b 只是一个线性组合,然后直接就输出得到 f(w,b)f(w, b) ;
- 系数线性指的是 f(w,b)f(w, b) 关于 wTw^T 是线性的。
全局性指的是线性回归是在整个特征空间上学习,并没有将特征空间进行划分然后在每个划分上学习。
数据未加工指的是线性回归直接在给定数据上进行学习没有对数据进行其他的加工。
其他的学习算法跟线性回归比较起来打破了其某些特性,在上面的树状图中也举出了一些比如。
- 从线性回归到线性分类
线性回归通过一个激活函数然后依据一个阈值来取得分类的成果,如此就成为线性分类,也能够了解为将wTx+bw^{T}x+b降维到一维而取得分类成果。
激活函数y=f(wTx+b),y∈{{0,1},硬分类[0,1],软分类函数f叫做激活函数(activationfunction)函数f−1叫做链接函数(linkfunction)f:wTx+b↦{0,1}/[0,1]f−1:{0,1}/[0,1]↦wTx+b\begin{gathered} 激活函数 y=f\left(w^T x+b\right), y \in\left\{\begin{array}{c}\{0,1\}, \text { 硬分类 } \\ {[0,1], \text { 软分类 }}\end{array}\right.\\ 函数 f 叫做激活函数 (activation function)\\ 函数 f^{-1} 叫做链接函数 (link function)\\ f: w^T x+b \mapsto\{0,1\} /[0,1] \\ f^{-1}:\{0,1\} /[0,1] \mapsto w^T x+b \end{gathered}
- 硬分类和软分类
二、感知机
两分类-硬分类-感知机算法
- 概述
假定有一能够被线性分类的样本集 {(xi,yi)}i=1N\left\{\left(x_i, y_i\right)\right\}_{i=1}^N ,其间 xi∈Rp,yi{−1,+1}x_i \in \mathbb{R}^p, y_i\{-1,+1\} 。感知机算法(Perceptron Learning Algorithm)运用随机梯度下降法 (SGD) 来在特征空间 Rp\mathbb{R}^p 寻找一个超平面 wTx+b=0w^T x+b=0 来将数据 划分为正、负两类,其间 w∈Rpw \in \mathbb{R}^p ,是超平面的法向量。 2. 学习策略 感知机的思维是错误驱动。其模型是 f(x)=sign(wTx+b),f(x)f(x)=\operatorname{sign}\left(w^T x+b\right) , f(x) 输出该样本点的类别,界说调集M为误分类点的调集。
补充:wTxw^T x也能够表明wTx+bw^T x+b,由于咱们能够看做W = [W b] X = [X 1]^T
- 能够确认关于误分类的数据 (xi,yi)\left(x_i, y_i\right) 来说,满足以下联系:
丢失函数的一个自然选择是误分类点的个数,即 L(w)=∑i=1NI{−yi(wTxi+b)>0}L(w)=\sum_{i=1}^N I\left\{-y_i\left(w^T x_i+b\right)>0\right\} ,但是这样的丢失函数虽然直观,但是是非连续函数,所以不行导,不易优化。因而选用另一种丢失函数,即误分类点到超平面的总间隔。
在 RpR^p 空间中任一点 x0x_0 到超平面的间隔为:
因而所有误分类点到超平面 wTx+b=0w^T x+b=0 的总间隔为:
不考虑 1∥w∥\frac{1}{\|w\|} ,就得到感知机的丢失函数:
- 学习算法 计算丢失函数的梯度:
感知机的学习算法运用随机梯度下降法 (SGD),这儿选取 (0<≤1)\eta(0<\eta \leq 1) 作为学习率,其学习的进程如下: ① 选取初值 w0,b0w_0, b_0 ; ② 在练习会集选取数据 (xi,yi)\left(x_i, y_i\right) ; ③ 假如 yi(wTxi+b)≤0y_i\left(w^T x_i+b\right) \leq 0 ,则更新参数:
④ 转至②,直到练习会集没有误分类点。 截止这儿咱们都是假定数据是线性可分的,假如线性不行分,能够用口袋算法 (pocket algorithm),这儿不做过多介绍。
三、线性判别分析
两分类-硬分类-线性判别分析 LDA
- 概述
线性判别分析可用于处理二分类问题,其进程是寻找一个最佳的投影方向,使得样本点在该方向上的投影符合类内小、类间大的思维,详细指的是类内的方差之和小,类间的均值之差大。
假定有以下数据:
X=(x1,x1,⋯ ,xN)T=(x1Tx2T⋮xNT)NpY=(y1y2⋮yN)N1{(xi,yi)}i=1N,xi∈Rp,yi∈{+1C1−1C2}xC1={xi∣yi=+1},xC2={xi∣yi=−1}∣xC1∣=N1,∣xC2∣=N2,N1+N2=N\begin{gathered} X=\left(x_1, x_1, \cdots, x_N\right)^T=\left(\begin{array}{c} x_1^T \\ x_2^T \\ \vdots \\ x_N^T \end{array}\right)_{N \times p} Y=\left(\begin{array}{c} y_1 \\ y_2 \\ \vdots \\ y_N \end{array}\right)_{N \times 1} \\ \left\{\left(x_i, y_i\right)\right\}_{i=1}^N, x_i \in \mathbb{R}^p, y_i \in\left\{\frac{+1}{C_1} \frac{-1}{C_2}\right\} \\ x_{C_1}=\left\{x_i \mid y_i=+1\right\}, x_{C_2}=\left\{x_i \mid y_i=-1\right\} \\ \left|x_{C_1}\right|=N_1,\left|x_{C_2}\right|=N_2, N_1+N_2=N \end{gathered}
- 线性判别分析的丢失函数
投影轴的方向向量为 ww ,将样本点往该轴上投影以后的值 ziz_i 为 wTxiw^T x_i ,均值和方差按照如下办法计算:
均值 z=1N∑i=1Nzi=1N∑i=1NwTxi\bar z=\frac{1}{N} \sum_{i=1}^N z_i=\frac{1}{N} \sum_{i=1}^N w^T x_i
方差 Sz=1N∑i=1N(wTxi−z2)(wTxi−z2)TS_z=\frac{1}{N} \sum_{i=1}^N\left(w^T x_i-z^2\right)\left(w^T x_i-z^2\right)^T
接下来计算每一类的均值和方差:
C1:z1=1N1∑i=1N1wTxiS1=1N1∑i=1N1(wTxi−z1)(wTxi−z1)TC2:z2=1N2∑i=1N2wTxiS2=1N2∑i=1N2(wTxi−z2)(wTxi−z2)T\begin{gathered} C_1: \\ \bar z_1=\frac{1}{N_1} \sum_{i=1}^{N_1} w^T x_i \\ S_1=\frac{1}{N_1} \sum_{i=1}^{N_1}\left(w^T x_i-\bar z_1\right)\left(w^T x_i-\bar z_1\right)^T \\ C_2: \\ \bar z_2=\frac{1}{N_2} \sum_{i=1}^{N_2} w^T x_i \\ S_2=\frac{1}{N_2} \sum_{i=1}^{N_2}\left(w^T x_i-\bar z_2\right)\left(w^T x_i-\bar z_2\right)^T \end{gathered}
类间:(z1−z2)2\left(\bar z_1-\bar z_2\right)^2
类内:S1+S2S_{1}+S_{2}
界说丢失函数:
J(w)=(z1−z2)2S1+S2分子=(z1−z2)2=(1N1∑i=1N1wTxi−1N2∑i=1N2wTxi)2=[wT(1N1∑i=1N1xi−1N2∑i=1N2xi)]2=[wT(xC1−xC2)]2=wT(xC1−xC2)(xC1−xC2)Tw−−−−−−−−−−−−−−−−−−−−S1=1N1∑i=1N1(wTxi−z1)(wTxi−z1)T=1N1∑i=1N1(wTxi−1N1∑i=1N1wTxi)(wTxi−1N1∑i=1N1wTxi)T=1N1∑i=1N1wT(xi−xC1)(xi−xC2)Tw=wT[1N1∑i=1N1(xi−xC1)(xi−xC2)T]w=wTSC1w分母=S1+S2=wTSC1w+wTSC2w=wT(SC1+SC2)w∴J(w)=wT(xC1−xC2)(xC1−xC2)TwwT(SC1+SC2)w\begin{gathered} J(w)=\frac{\left(\bar z_1-\bar z_2\right)^2}{S_1+S_2}\\ 分子=\left(\bar z_1-\bar z_2\right)^2=\left(\frac{1}{N_1} \sum_{i=1}^{N_1} w^T x_i-\frac{1}{N_2} \sum_{i=1}^{N_2} w^T x_i\right)^2 \\ =\left[w^T\left(\frac{1}{N_1} \sum_{i=1}^{N_1} x_i-\frac{1}{N_2} \sum_{i=1}^{N_2} x_i\right)\right]^2 \\ =\left[w^T\left(\bar x_{C_1}-\bar x_{C_2}\right)\right]^2 \\ =w^T\left(\bar x_{C_1}-\bar x_{C_2}\right)\left(\bar x_{C_1}-\bar x_{C_2}\right)^T w \\ ——————–\\ S_1=\frac{1}{N_1} \sum_{i=1}^{N_1}\left(w^T x_i-\bar z_1\right)\left(w^T x_i-\bar z_1\right)^T \\ =\frac{1}{N_1} \sum_{i=1}^{N_1}\left(w^T x_i-\frac{1}{N_1} \sum_{i=1}^{N_1} w^T x_i\right)\left(w^T x_i-\frac{1}{N_1} \sum_{i=1}^{N_1} w^T x_i\right)^T \\ =\frac{1}{N_1} \sum_{i=1}^{N_1} w^T\left(x_i-\bar x_{C_1}\right)\left(x_i-\bar x_{C_2}\right)^T w \\ =w^T\left[\frac{1}{N_1} \sum_{i=1}^{N_1}\left(x_i-\bar x_{C_1}\right)\left(x_i-\bar x_{C_2}\right)^T\right] w \\ =w^T S_{C_1} w \\ 分母=S_1+S_2=w^T S_{C_1} w+w^T S_{C_2} w=w^T\left(S_{C_1}+S_{C_2}\right) w \\ \therefore J(w)=\frac{w^T\left(\bar x_{C_1}-\bar x_{C_2}\right)\left(\bar x_{C_1}-\bar x_{C_2}\right)^T w}{w^T\left(S_{C_1}+S_{C_2}\right) w} \\ \end{gathered}
极大化 J(w)J(w) 就能够使得类内的方差之和小,类间的均值之差大。
- 线性判别分析的求解
令{Sb=(xC1−xC2)(xC1−xC2)TSw=SC1+SC2则J(w)=wTSbwwTSww=wTSbw(wTSww)−1∂J(w)∂w=2Sbw(wTSww)−1+wTSbw(−1)(wTSww)−22Sbw=2[Sbw(wTSww)−1+wTSbw(−1)(wTSww)−2Sbw]=0(wTSbw,wTSww∈R)⇒Sbw(wTSww)−wTSbwSww=0⇒wTSbwSww=Sbw(wTSww)⇒Sww=wTSwwwTSbwSbw⇒w=wTSwwwTSbwSw−1Sbw\begin{gathered} & \text { 令 }\left\{\begin{array}{c} S_b=\left(\bar x_{C_1}-\bar x_{C_2}\right)\left(\bar x_{C_1}-\bar x_{C_2}\right)^T \\ S_w=S_{C_1}+S_{C_2} \end{array}\right. \\ & \text { 则 } J(w)=\frac{w^T S_b w}{w^T S_w w}=w^T S_b w\left(w^T S_w w\right)^{-1} \\ & \frac{\partial J(w)}{\partial w}=2 S_b w\left(w^T S_w w\right)^{-1}+w^T S_b w(-1)\left(w^T S_w w\right)^{-2} 2 S_b w \\ & =2\left[S_b w\left(w^T S_w w\right)^{-1}+w^T S_b w(-1)\left(w^T S_w w\right)^{-2} S_b w\right]=0 \\ & \left(w^T S_b w, w^T S_w w \in \mathbb{R}\right) \\ & \Rightarrow S_b w\left(w^T S_w w\right)-w^T S_b w S_w w=0 \\ & \Rightarrow w^T S_b w S_w w=S_b w\left(w^T S_w w\right) \\ & \Rightarrow S_w w=\frac{w^T S_w w}{w^T S_b w} S_b w \\ & \Rightarrow w=\frac{w^T S_w w}{w^T S_b w} S_w^{-1} S_b w \\ & \end{gathered}
(要注意关于 ww 咱们只关注它的方向, 不关心它的巨细。)
⇒w∝Sw−1Sbw⇒w∝Sw−1(xC12−xC22)xC12−xC22)Tw⏟1⩽S1⇒w∝Sw−1(xC12−xC22)⇒w∝(SC1+SC2)−1(xC12−xC22)\begin{gathered} \Rightarrow w \propto S_w^{-1} S_b w \\ \Rightarrow w \propto S_w^{-1}\left(x_{C_1}^2-x_{C_2}^2\right) \underbrace{\left.x_{C_1}^2-x_{C_2}^2\right)^T w}_{1 \leqslant S_1} \\ \Rightarrow w \propto S_w^{-1}\left(x_{C_1}^2-x_{C_2}^2\right) \\ \Rightarrow w \propto\left(S_{C_1}+S_{C_2}\right)^{-1}\left(x_{C_1}^2-x_{C_2}^2\right) \end{gathered}
进一步假如 Sw−1S_w^{-1} 是各向同性的对角矩阵的话, w∝xC12−xC22w \propto x_{C_1}^2-x_{C_2}^2 。
四、逻辑回归
两分类-软分类-概率判别模型-Logistic 回归
- 概述
逻辑回归是一种二分类算法,通过 sigmoid 激活函数将线性组合 wTxw^T x 压缩到 0 和 1 之间来代表归于某一个分类的概率。 假定有如下数据:
- sigmoid 激活函数
其图像为:
- 逻辑回归的模型 逻辑回归预测 y=1y=1 的概率,然后依据极大似然估量法来求解。
- 逻辑回归的求解
因而这儿的极大似然估量就等价于极小化穿插熵丢失函数。
求导的进程较为简略,就不做展现了。
五、高斯判别分析
两分类-软分类-概率生成模型-高斯判别分析 GDA
- 概述
假定有如下数据:
- 高斯判别分析的模型 在高斯判别分析中样本数据的类别 yy 在给定的情况下遵守伯努利散布,别的不同类别中的样本数据分别遵守多元高斯散布,因而有以下模型:
y∼Bernoulli()⇔y,y=1(1−)1−y,y=0}P(y)=y(1−)1−yx∣y=1∼N(1,)x∣y=0∼N(2,)}P(x∣y)=N(1,)yN(2,)1−y\begin{aligned} & \left.y \sim \text { Bernoulli }(\phi) \Leftrightarrow \begin{array}{c} \phi^y, y=1 \\ (1-\phi)^{1-y}, y=0 \end{array}\right\} P(y)=\phi^y (1 – \phi)^{1-y} \\ & \left.\begin{array}{l} x \mid y=1 \sim N\left(\mu_1, \Sigma\right) \\ x \mid y=0 \sim N\left(\mu_2, \Sigma\right) \end{array}\right\} P(x \mid y)=N\left(\mu_1, \Sigma\right)^y N\left(\mu_2, \Sigma\right)^{1-y} \\ & \end{aligned}
这儿假定两个高斯散布具有相同的方差。 3. 高斯判别模型的求解
- 丢失函数 高斯判别模型的丢失函数为其 log\log 似然,要估量的参数 \theta 为 (1,2,,)\left(\mu_1, \mu_2, \Sigma, \phi\right) :
L()=log∏i=1NP(xi,yi)=∑i=1NlogP(xi,yi)=∑i=1NlogP(xi∣yi)P(yi)=∑i=1N[logP(xi∣yi)+logP(yi)]=∑i=1N[logN(1,)yiN(2,)1−yi+logyi1−yi]=∑i=1N[logN(1,)yi⏟①+logN(2,)1−yi⏟②+logyi1−yi⏟③]L(\theta )=log\prod_{i=1}^{N}P(x_{i},y_{i})\\ =\sum _{i=1}^{N}logP(x_{i},y_{i})\\ =\sum _{i=1}^{N}logP(x_{i}|y_{i})P(y_{i})\\ =\sum _{i=1}^{N}[logP(x_{i}|y_{i})+logP(y_{i})]\\ =\sum _{i=1}^{N}[logN(\mu _{1},\Sigma )^{y_{i}}N(\mu _{2},\Sigma )^{1-y_{i}}+log\phi^{y_{i}}\phi^{1-y_{i}}]\\ =\sum _{i=1}^{N}[\underset{①}{\underbrace{logN(\mu _{1},\Sigma )^{y_{i}}}}+\underset{②}{\underbrace{logN(\mu _{2},\Sigma )^{1-y_{i}}}}+\underset{③}{\underbrace{log\phi^{y_{i}}\phi^{1-y_{i}}}}]
然后运用极大似然估量法来求解:
=argmaxL()\hat{\theta }=\underset{\theta}{argmax}L(\theta )
界说标签为11的样本个数为N1N_{1},标签为00的样本个数为N2N_{2},则有N1+N2=NN_{1}+N_{2} = N。
- 求解\phi
\phi只存在于③式中,因而求解\phi只需要看③式即可:
③=∑i=1N[yilog+(1−yi)log(1−)]∂③∂=∑i=1N[yi1−(1−yi)11−]=0⇒∑i=1N[yi(1−)−(1−yi)]=0⇒∑i=1N(yi−)=0⇒∑i=1Nyi−N=0=1N∑i=1Nyi=N1N③=\sum _{i=1}^{N}[y_{i}log\phi +(1-y_{i})log(1-\phi )]\\ \frac{\partial ③}{\partial \phi}=\sum _{i=1}^{N}[y_{i}\frac{1}{\phi}-(1-y_{i})\frac{1}{1-\phi }]=0\\ \Rightarrow \sum _{i=1}^{N}[y_{i}(1-\phi)-(1-y_{i})\phi ]=0\\ \Rightarrow \sum _{i=1}^{N}(y_{i}-\phi)=0\\ \Rightarrow \sum _{i=1}^{N}y_{i}-N\phi=0\\ \hat{\phi}=\frac{1}{N}\sum _{i=1}^{N}y_{i}=\frac{N_{1}}{N}
- 求解1、2\mu_{1}、\mu_{2}
\phi只存在于①式中,因而求解1\mu_{1}只需要看①式即可:
①=∑i=1Nyilog1(2)p/2∣∣1/2exp{−12(xi−1)T−1(xi−1)}1=argmax1①=argmax1∑i=1Nyi[log1(2)p/2∣∣1/2−12(xi−1)T−1(xi−1)]=argmax1∑i=1Nyi[−12(xi−1)T−1(xi−1)]=argmax1=∑i=1Nyi[−12(xi−1)T−1(xi−1)]=−12∑i=1Nyi(xiT−1−1T−1)(xi−1)=−12∑i=1Nyi(xiT−1xi−21T−1xi+1T−11)∂∂1=−12∑i=1Nyi(−2−1xi+2−11)=0⇒∑i=1Nyi(−11−−1xi)=0⇒∑i=1Nyi(1−xi)=0⇒∑i=1Nyi1=∑i=1Nyixi1=∑i=1Nyixi∑i=1Nyi=∑i=1NyixiN1同理2=∑i=1NyixiN2①=\sum _{i=1}^{N}y_{i}log\frac{1}{(2\pi )^{p/2}|\Sigma |^{1/2}}exp\left \{-\frac{1}{2}(x_{i}-\mu _{1})^{T}\Sigma ^{-1}(x_{i}-\mu _{1})\right \}\\ \mu _{1}=\underset{\mu _{1}}{argmax}①\\ =\underset{\mu _{1}}{argmax}\sum _{i=1}^{N}y_{i}[log\frac{1}{(2\pi )^{p/2}|\Sigma |^{1/2}}-\frac{1}{2}(x_{i}-\mu _{1})^{T}\Sigma ^{-1}(x_{i}-\mu _{1})]\\ =\underset{\mu _{1}}{argmax}\sum _{i=1}^{N}y_{i}[-\frac{1}{2}(x_{i}-\mu _{1})^{T}\Sigma ^{-1}(x_{i}-\mu _{1})]\\ =\underset{\mu _{1}}{argmax}\Delta\\ \Delta=\sum _{i=1}^{N}y_{i}[-\frac{1}{2}(x_{i}-\mu _{1})^{T}\Sigma ^{-1}(x_{i}-\mu _{1})]\\ =-\frac{1}{2}\sum _{i=1}^{N}y_{i}(x_{i}^{T}\Sigma ^{-1}-\mu _{1}^{T}\Sigma ^{-1})(x_{i}-\mu _{1})\\ =-\frac{1}{2}\sum _{i=1}^{N}y_{i}(x_{i}^{T}\Sigma ^{-1}x_{i}-2\mu _{1}^{T}\Sigma ^{-1}x_{i}+\mu _{1}^{T}\Sigma ^{-1}\mu _{1})\\ \frac{\partial \Delta}{\partial \mu _{1}}=-\frac{1}{2}\sum _{i=1}^{N}y_{i}(-2\Sigma ^{-1}x_{i}+2\Sigma ^{-1}\mu _{1})=0\\ \Rightarrow \sum _{i=1}^{N}y_{i}(\Sigma ^{-1}\mu _{1}-\Sigma ^{-1}x_{i})=0\\ \Rightarrow \sum _{i=1}^{N}y_{i}(\mu _{1}-x_{i})=0\\ \Rightarrow \sum _{i=1}^{N}y_{i}\mu _{1}=\sum _{i=1}^{N}y_{i}x_{i}\\ \hat{\mu _{1}}=\frac{\sum _{i=1}^{N}y_{i}x_{i}}{\sum _{i=1}^{N}y_{i}}=\frac{\sum _{i=1}^{N}y_{i}x_{i}}{N_{1}}\\ 同理\hat{\mu _{2}}=\frac{\sum _{i=1}^{N}y_{i}x_{i}}{N_{2}}
- 求解\Sigma
以下是求解进程中用到的一些预备常识:
∂tr(AB)∂A=BT∂∣A∣∂A=∣A∣A−1tr(AB)=tr(BA)tr(ABC)=tr(CAB)=tr(BCA)\frac{\partial tr(AB)}{\partial A}=B^{T} \\ \frac{\partial |A|}{\partial A}=|A|A^{-1} \\ tr(AB)=tr(BA)\\ tr(ABC)=tr(CAB)=tr(BCA)
两类数据按照以下两个调集来表明:
C1={xi∣yi=1,i=1,2,⋯ ,N}C2={xi∣yi=0,i=1,2,⋯ ,N}∣C1∣=N1,∣C2∣=N2,N1+N2=NC_{1}=\left \{x_{i}|y_{i}=1,i=1,2,\cdots ,N\right \}\\ C_{2}=\left \{x_{i}|y_{i}=0,i=1,2,\cdots ,N\right \}\\ |C_{1}|=N_{1},|C_{2}|=N_{2},N_{1}+N_{2}=N
然后进行求解:
=argmax(①+②)①+②=∑xi∈C1logN(1,)+∑xi∈C2logN(2,)\hat{\Sigma }=\underset{\Sigma }{argmax}(①+②)\\ ①+②=\sum _{x_{i}\in C_{1}}logN(\mu _{1},\Sigma )+\sum _{x_{i}\in C_{2}}logN(\mu _{2},\Sigma )
然后求解上式中的通项:
∑i=1NlogN(,)=∑i=1Nlog1(2)p/2∣∣1/2exp{−12(xi−)T−1(xi−)}=∑i=1N[log1(2)p/2+log∣∣−12−12(xi−)T−1(xi−)]=∑i=1N[C−12log∣∣−12(xi−)T−1(xi−)]=C−12Nlog∣∣−12∑i=1N(xi−)T−1(xi−)=C−12Nlog∣∣−12∑i=1Ntr[(xi−)T−1(xi−)](实数的迹等于其自身)=C−12Nlog∣∣−12∑i=1Ntr[(xi−)(xi−)T−1]=C−12Nlog∣∣−12tr[∑i=1N(xi−)(xi−)T−1]=C−12tr(NS−1)(S=1N∑i=1N(xi−)(xi−)T,为协方差矩阵)=−12Nlog∣∣−12Ntr(S−1)+C则①+②=−12N1log∣∣−12N1tr(S1−1)−12N2log∣∣−12N2tr(S2−1)+C=−12Nlog∣∣−12N1tr(S1−1)−12N2tr(S2−1)+C=−12[Nlog∣∣+N1tr(S1−1)+N2tr(S2−1)]+C\sum_{i=1}^{N}logN(\mu ,\Sigma )=\sum_{i=1}^{N}log\frac{1}{(2\pi )^{p/2}|\Sigma |^{1/2}}exp\left \{-\frac{1}{2}(x_{i}-\mu )^{T}\Sigma ^{-1}(x_{i}-\mu )\right \}\\ =\sum_{i=1}^{N}[log\frac{1}{(2\pi )^{p/2}}+log|\Sigma |^{-\frac{1}{2}}-\frac{1}{2}(x_{i}-\mu )^{T}\Sigma ^{-1}(x_{i}-\mu )]\\ =\sum_{i=1}^{N}[C-\frac{1}{2}log|\Sigma |-\frac{1}{2}(x_{i}-\mu )^{T}\Sigma ^{-1}(x_{i}-\mu )]\\ =C-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}\sum_{i=1}^{N}(x_{i}-\mu )^{T}\Sigma ^{-1}(x_{i}-\mu )\\ =C-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}\sum_{i=1}^{N}tr[(x_{i}-\mu )^{T}\Sigma ^{-1}(x_{i}-\mu )]\\ (实数的迹等于其自身)\\ =C-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}\sum_{i=1}^{N}tr[(x_{i}-\mu )(x_{i}-\mu )^{T}\Sigma ^{-1}]\\ =C-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}tr[\sum_{i=1}^{N}(x_{i}-\mu )(x_{i}-\mu )^{T}\Sigma ^{-1}]\\ =C-\frac{1}{2}tr(NS\Sigma ^{-1})\\ (S=\frac{1}{N}\sum_{i=1}^{N}(x_{i}-\mu )(x_{i}-\mu )^{T},为协方差矩阵)\\ =-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}Ntr(S\Sigma ^{-1})+C\\ 则①+②=-\frac{1}{2}N_{1}log|\Sigma |-\frac{1}{2}N_{1}tr(S_{1}\Sigma ^{-1})-\frac{1}{2}N_{2}log|\Sigma |-\frac{1}{2}N_{2}tr(S_{2}\Sigma ^{-1})+C\\ =-\frac{1}{2}Nlog|\Sigma |-\frac{1}{2}N_{1}tr(S_{1}\Sigma ^{-1})-\frac{1}{2}N_{2}tr(S_{2}\Sigma ^{-1})+C\\ =-\frac{1}{2}[Nlog|\Sigma |+N_{1}tr(S_{1}\Sigma ^{-1})+N_{2}tr(S_{2}\Sigma ^{-1})]+C
然后对\Sigma进行求导:
∂①+②∂=−12[N1∣∣∣∣−1+N1∂tr(−1S1)∂+N2∂tr(−1S2)∂]=−12[N−1+N1S1T(−1)−2+N2S2T(−1)−2]=−12(N−1−N1S1T−2−N2S2T−2)=0N−N1S1−N2S2=0=N1S1+N2S2N\frac{\partial ①+②}{\partial \Sigma}=-\frac{1}{2}[N\frac{1}{|\Sigma |}|\Sigma |\Sigma^{-1}+N_{1}\frac{\partial tr(\Sigma ^{-1}S_{1})}{\partial \Sigma}+N_{2}\frac{\partial tr(\Sigma ^{-1}S_{2})}{\partial \Sigma}]\\ =-\frac{1}{2}[N\Sigma^{-1}+N_{1}S_{1}^{T}(-1)\Sigma ^{-2}+N_{2}S_{2}^{T}(-1)\Sigma ^{-2}]\\ =-\frac{1}{2}(N\Sigma^{-1}-N_{1}S_{1}^{T}\Sigma ^{-2}-N_{2}S_{2}^{T}\Sigma ^{-2})\\ =0\\ N\Sigma-N_{1}S_{1}-N_{2}S_{2}=0\\ \hat{\Sigma}=\frac{N_{1}S_{1}+N_{2}S_{2}}{N}
六、朴素贝叶斯
两分类-软分类-概率生成模型-朴素贝叶斯
- 概述
假定有如下数据:
{(xi,yi)}i=1N,xi∈Rp,yi∈{0,1}\left \{(x_{i},y_{i})\right \}_{i=1}^{N},x_{i}\in \mathbb{R}^{p},y_{i}\in \left \{0,1\right \}
- 朴素贝叶斯的模型
朴素贝叶斯分类器能够用来做多分类,其基本思维是条件独立性假定,即假定数据的每个特征之间是彼此独立的,其形式化表达为
关于x∣y来说xi∣y与xj∣y是彼此独立的(i≠j),即P(x∣y)=∏i=1pP(xi∣y)关于x|y来说x^{i}|y与x^{j}|y是彼此独立的(i\neq j),即\\ P(x|y)=\prod_{i=1}^{p}P(x^{i}|y)
朴素贝叶斯分类器是最简略的概率图模型(有向图):
给定xx,判断yy的类别能够通过以下办法,即将xx归为类别的概率中最大的一类:
y=argmaxyP(y∣x)=argmaxyP(x,y)P(x)=argmaxyP(y)P(x∣y)P(x)=argmaxyP(y)P(x∣y)\hat{y}=\underset{y}{argmax}P(y|x)\\ =\underset{y}{argmax}\frac{P(x,y)}{P(x)} \\ =\underset{y}{argmax}\frac{P(y)P(x|y)}{P(x)} \\ =\underset{y}{argmax}P(y)P(x|y)
P(y)P(y)是先验概率,假如有两类则遵守伯努利散布(Bernoulli distribution),假如有多类则遵守类别散布(Categorical distribution)。P(x∣y)P(x|y)则符合条件独立性假定P(x∣y)=∏i=1pP(xi∣y)P(x|y)=\prod_{i=1}^{p}P(x^{i}|y),其间关于xix^{i},假如xix^{i}是离散的,则能够以为其遵守类别散布(Categorical distribution),假如xix^{i}是连续的,则能够以为其遵守高斯散布(Gaussian distribution)。
至于其求解进程则能够依据详细情况运用极大似然估量法即可。关于朴素贝叶斯办法重要的是了解其条件独立性假定,这个假定也是其被称为“朴素(Naive)”的原因。
七、小结
分类使命分为两类,关于需要直接输出类别的使命,感知机算法中咱们在线性模型的基础上参加符号函数作为激活函数,那么就能得到这个类别,但是符号函数不光滑,于是咱们选用错误驱动的方式,引进 ∑xi∈Dwrong−yiwTxi\sum\limits_{x_i\in\mathcal{D}_{wrong}}-y_iw^Tx_i 作为丢失函数,然后最小化这个差错,选用批量随机梯度下降的办法来获取最佳的参数值。而在线性判别分析中,咱们将线性模型看作是数据点在某一个方向的投影,选用类内小,类间大的思路来界说丢失函数,其间类内小界说为两类数据的方差之和,类间大界说为两类数据中心点的间距,对丢失函数求导得到参数的方向,这个方向便是 Sw−1(x‾c1−x‾c2)S_w^{-1}(\overline x_{c1}-\overline x_{c2}),其间 SwS_w 为原数据集两类的方差之和。
另一种使命是输出分类的概率,关于概率模型,咱们有两种方案,第一种是判别模型,也便是直接对类别的条件概率建模,将线性模型套入 Logistic 函数中,咱们就得到了 Logistic 回归模型,这儿的概率解说是两类的联合概率比值的对数是线性的,咱们界说的丢失函数是穿插熵(等价于 MLE),对这个函数求导得到 1N∑i=1N(yi−p1)xi\frac{1}{N}\sum\limits_{i=1}^N(y_i-p_1)x_i,相同利用批量随机梯度(上升)的办法进行优化。第二种是生成模型,生成模型引进了类别的先验,在高斯判别分析中,咱们对数据集的数据散布作出了假定,其间类先验是二项散布,而每一类的似然是高斯散布,对这个联合散布的对数似然进行最大化就得到了参数, ∑i=1NyixiN1,∑i=1N(1−yi)xiN0,N1S1+N2S2N,N1N\frac{\sum\limits_{i=1}^Ny_ix_i}{N_1},\frac{\sum\limits_{i=1}^N(1-y_i)x_i}{N_0},\frac{N_1S_1+N_2S_2}{N},\frac{N_1}{N}。在朴素贝叶斯中,咱们进一步对特点的各个维度之间的依靠联系作出假定,条件独立性假定大大减少了数据量的需求。