监督学习(二)线性分类

每个样本都有标签的机器学习称为监督学习。根据标签数值类型的不同,监督学习又可以分为回归问题和分类问题。分类和回归是监督学习的核心问题。

  • 回归(regression)问题中的标签是连续值。
  • 分类(classification)问题中的标签是离散值。分类问题根据其类别数量又可分为二分类(binary classification)和多分类(multi-class classification)问题。

线性分类

Logistic 回归

基本形式

给定的数据集
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N } D=\{(\mathbf x_1,y_1),(\mathbf x_2,y_2),\cdots,(\mathbf x_N,y_N\} D={(x1,y1),(x2,y2),,(xN,yN}
包含 N N N 个样本, p p p 个特征。其中,第 i i i 个样本的特征向量为 x i = ( x i 1 , x i 2 , ⋯   , x i p ) T \mathbf x_i=(x_{i1},x_{i2},\cdots,x_{ip})^T xi=(xi1,xi2,,xip)T 。目标变量 y i ∈ { 0 , 1 } y_i\in \{0,1\} yi{0,1} 。逻辑回归试图预测正样本的概率,那我们需要一个输出 [ 0 , 1 ] [0,1] [0,1] 区间的激活函数。假设二分类数据集服从均值不同、方差相同的正态分布
{ P ( x ∣ y = 1 ) = N ( x ; μ 1 , Σ ) P ( x ∣ y = 0 ) = N ( x ; μ 0 , Σ ) \begin{cases} \mathbb P(\mathbf x|y=1)=\mathcal N(\mathbf x;\mathbf \mu_1, \mathbf\Sigma) \\ \mathbb P(\mathbf x|y=0)=\mathcal N(\mathbf x;\mathbf \mu_0, \mathbf\Sigma) \end{cases} {P(xy=1)=N(x;μ1,Σ)P(xy=0)=N(x;μ0,Σ)
其中,协方差矩阵 Σ \mathbf\Sigma Σ 为对称阵。正态分布概率密度函数为
N ( x ; μ , Σ ) = 1 ( 2 π ) p det ⁡ Σ exp ⁡ ( − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) ) \mathcal N(\mathbf x;\mathbf \mu, \mathbf\Sigma)=\frac{1}{\sqrt{(2\pi)^p\det\mathbf\Sigma}}\exp\left(-\frac{1}{2}(\mathbf x-\mathbf\mu)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf\mu)\right) N(x;μ,Σ)=(2π)pdetΣ 1exp(21(xμ)TΣ1(xμ))
利用贝叶斯定理,正样本条件概率
P ( y = 1 ∣ x ) = P ( x ∣ y = 1 ) P ( y = 1 ) P ( x ∣ y = 0 ) P ( y = 0 ) + P ( x ∣ y = 1 ) P ( y = 1 ) \mathbb P(y=1|\mathbf x)=\frac{\mathbb P(\mathbf x|y=1)\mathbb P(y=1)}{\mathbb P(\mathbf x|y=0)\mathbb P(y=0)+\mathbb P(\mathbf x|y=1)\mathbb P(y=1)} P(y=1∣x)=P(xy=0)P(y=0)+P(xy=1)P(y=1)P(xy=1)P(y=1)
令 [^cdot]
z = ln ⁡ P ( x ∣ y = 1 ) P ( y = 1 ) P ( x ∣ y = 0 ) P ( y = 0 ) = − 1 2 ( x − μ 1 ) T Σ − 1 ( x − μ 1 ) + 1 2 ( x − μ 0 ) T Σ − 1 ( x − μ 0 ) + ln ⁡ P ( y = 1 ) P ( y = 0 ) = ( μ 1 − μ 0 ) T Σ − 1 x − 1 2 μ 1 T Σ − 1 μ 1 + 1 2 μ 0 T Σ − 1 μ 0 + ln ⁡ P ( y = 1 ) P ( y = 0 ) \begin{aligned} z&=\ln\frac{\mathbb P(\mathbf x|y=1)\mathbb P(y=1)}{\mathbb P(\mathbf x|y=0)\mathbb P(y=0)} \\ &=-\frac{1}{2}(\mathbf x-\mathbf \mu_1)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf \mu_1)+\frac{1}{2}(\mathbf x-\mathbf \mu_0)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf \mu_0)+\ln\frac{\mathbb P(y=1)}{\mathbb P(y=0)} \\ &=(\mathbf \mu_1-\mathbf \mu_0)^T\mathbf\Sigma^{-1}\mathbf x-\frac{1}{2}\mu_1^T\mathbf\Sigma^{-1}\mu_1+\frac{1}{2}\mu_0^T\mathbf\Sigma^{-1}\mu_0+\ln\frac{\mathbb P(y=1)}{\mathbb P(y=0)} \\ \end{aligned} z=lnP(xy=0)P(y=0)P(xy=1)P(y=1)=21(xμ1)TΣ1(xμ1)+21(xμ0)TΣ1(xμ0)+lnP(y=0)P(y=1)=(μ1μ0)TΣ1x21μ1TΣ1μ1+21μ0TΣ1μ0+lnP(y=0)P(y=1)
其中先验概率 P ( y = 1 ) \mathbb P(y=1) P(y=1) P ( y = 0 ) \mathbb P(y=0) P(y=0) 是常数,上式可简化为
z = w T x + b z=\mathbf w^T\mathbf x+b z=wTx+b
于是
P ( y = 1 ∣ x ) = 1 1 + e − z \mathbb P(y=1|\mathbf x)=\frac{1}{1+e^{-z}} P(y=1∣x)=1+ez1
上式称为 Sigmoid 函数(S型曲线),也称 logistic 函数。

Model: 逻辑回归 (logistic regression, logit regression) 通过引入Sigmod 函数将输入值映射到 [ 0 , 1 ] [0,1] [0,1] 来实现分类功能。
f w , b ( x ) = g ( w T x + b ) f_{\mathbf{w},b}(\mathbf{x}) = g(\mathbf{w}^T \mathbf{x}+b) fw,b(x)=g(wTx+b)
其中
g ( z ) = 1 1 + e − z g(z) = \frac{1}{1+e^{-z}} g(z)=1+ez1
式中特征向量 x = ( x 1 , x 2 , ⋯   , x p ) T \mathbf x=(x_1,x_2,\cdots,x_p)^T x=(x1,x2,,xp)T,参数 w = ( w 1 , w 2 , ⋯   , w p ) T \mathbf{w}=(w_1,w_2,\cdots,w_p)^T w=(w1,w2,,wp)T 称为系数 (coefficients) 或权重 (weights),标量 b b b 称为偏置项(bias) 。

为计算方便,模型简写为
f w ( x ) = 1 1 + exp ⁡ ( − w T x ) f_{\mathbf{w}}(\mathbf{x}) = \frac{1}{1+\exp(-\mathbf{w}^T\mathbf{x})} fw(x)=1+exp(wTx)1
其中,特征向量 x = ( 1 , x 1 , x 2 , ⋯   , x p ) T \mathbf x=(1,x_1,x_2,\cdots,x_p)^T x=(1,x1,x2,,xp)T,权重向量 w = ( b , w 1 , w 2 , ⋯   , w p ) T \mathbf{w}=(b,w_1,w_2,\cdots,w_p)^T w=(b,w1,w2,,wp)T

可以通过引入阈值(默认0.5)实现分类预测
y ^ = { 1 if  f w ( x ) ⩾ 0.5 0 if  f w ( x ) < 0.5 \hat y=\begin{cases} 1 &\text{if } f_{\mathbf{w}}(\mathbf{x})\geqslant 0.5 \\ 0 &\text{if } f_{\mathbf{w}}(\mathbf{x})<0.5 \end{cases} y^={10if fw(x)0.5if fw(x)<0.5
模型的输出为正样本的概率
{ P ( y = 1 ∣ x ) = f w ( x ) P ( y = 0 ∣ x ) = 1 − f w ( x ) \begin{cases} \mathbb P(y=1|\mathbf x)=f_{\mathbf{w}}(\mathbf{x}) \\ \mathbb P(y=0|\mathbf x)=1-f_{\mathbf{w}}(\mathbf{x}) \end{cases} {P(y=1∣x)=fw(x)P(y=0∣x)=1fw(x)

可简记为
P ( y ∣ x ) = [ f w ( x ) ] y [ 1 − f w ( x ) ] 1 − y \mathbb P(y|\mathbf x)=[f_{\mathbf{w}}(\mathbf{x})]^{y}[1-f_{\mathbf{w}}(\mathbf{x})]^{1-y} P(yx)=[fw(x)]y[1fw(x)]1y

极大似然估计

logistic 回归若采用均方误差作为 cost function,是一个非凸函数(non-convex),会存在许多局部极小值,因此我们尝试极大似然估计。

极大似然估计:(maximum likelihood estimate, MLE) 使得观测样本出现的概率最大,也即使得样本联合概率(也称似然函数)取得最大值。

为求解方便,对样本联合概率取对数似然函数
log ⁡ L ( w ) = log ⁡ ∏ i = 1 N P ( y i ∣ x i ) = ∑ i = 1 N log ⁡ P ( y i ∣ x i ) = ∑ i = 1 N [ y i log ⁡ f w ( x i ) + ( 1 − y i ) log ⁡ ( 1 − f w ( x i ) ) ] \begin{aligned} \log L(\mathbf w) & =\log\prod_{i=1}^{N} \mathbb P(y_i|\mathbf x_i)=\sum_{i=1}^N\log \mathbb P(y_i|\mathbf x_i) \\ &=\sum_{i=1}^{N}[y_i\log f_{\mathbf{w}}(\mathbf{x}_i)+(1-y_i)\log(1-f_{\mathbf{w}}(\mathbf{x}_i))] \end{aligned} logL(w)=logi=1NP(yixi)=i=1NlogP(yixi)=i=1N[yilogfw(xi)+(1yi)log(1fw(xi))]
因此,可定义 loss function
L ( f w ( x ) , y ) = − y log ⁡ f w ( x ) − ( 1 − y ) log ⁡ ( 1 − f w ( x ) ) = − y w T x + log ⁡ ( 1 + e w T x ) \begin{aligned} L(f_{\mathbf{w}}(\mathbf{x}),y)&=-y\log f_{\mathbf{w}}(\mathbf{x})-(1-y)\log(1-f_{\mathbf{w}}(\mathbf{x})) \\ &=-y\mathbf{w}^T\mathbf{x}+\log(1+e^{\mathbf{w}^T\mathbf{x}}) \end{aligned} L(fw(x),y)=ylogfw(x)(1y)log(1fw(x))=ywTx+log(1+ewTx)

最大化似然函数等价于最小化 cost function
J ( w ) = 1 N ∑ i = 1 N ( − y i w T x + log ⁡ ( 1 + e w T x ) ) J(\mathbf w)=\frac{1}{N}\sum_{i=1}^{N}(-y_i\mathbf{w}^T\mathbf{x}+\log(1+e^{\mathbf{w}^T\mathbf{x}})) J(w)=N1i=1N(yiwTx+log(1+ewTx))
参数估计 :(parameter estimation) J ( w ) J(\mathbf w) J(w) 是关于参数 w \mathbf w w 的高阶可导连续凸函数,经典的数值优化算法如梯度下降法 (gradient descent method) 、牛顿法 (Newton method) 等都可求得其最优解
arg ⁡ min ⁡ w J ( w ) \arg\min\limits_{\mathbf w} J(\mathbf{w}) argwminJ(w)

最大期望算法

最大期望算法:(Expectation-Maximization algorithm, EM)与真实分布最接近的模拟分布即为最优分布,因此可以通过最小化交叉熵来求出最优分布。

对任意样本 ( x i , y i ) (\mathbf x_i,y_i) (xi,yi),真实分布可写为(真实分布当然完美预测)
P ( y i ∣ x i ) = 1 \mathbb P(y_i|\mathbf x_i)=1 P(yixi)=1
模拟分布可写为
Q ( y i ∣ x i ) = [ f w ( x i ) ] y [ 1 − f w ( x i ) ] 1 − y \mathbb Q(y_i|\mathbf x_i)=[f_{\mathbf{w}}(\mathbf{x}_i)]^{y}[1-f_{\mathbf{w}}(\mathbf{x}_i)]^{1-y} Q(yixi)=[fw(xi)]y[1fw(xi)]1y
交叉熵为
H ( P , Q ) = − ∑ i = 1 N P ( y i ∣ x i ) log ⁡ Q ( y i ∣ x i ) = ∑ i = 1 N ( − y i w T x + log ⁡ ( 1 + e w T x ) ) \begin{aligned} H(\mathbb P,\mathbb Q) &=-\sum_{i=1}^N \mathbb P(y_i|\mathbf x_i)\log \mathbb Q(y_i|\mathbf x_i) \\ &=\sum_{i=1}^{N}(-y_i\mathbf{w}^T\mathbf{x}+\log(1+e^{\mathbf{w}^T\mathbf{x}})) \end{aligned} H(P,Q)=i=1NP(yixi)logQ(yixi)=i=1N(yiwTx+log(1+ewTx))
cost function
J ( w ) = 1 N ∑ i = 1 N ( − y i w T x + log ⁡ ( 1 + e w T x ) ) J(\mathbf w)=\frac{1}{N}\sum_{i=1}^{N}(-y_i\mathbf{w}^T\mathbf{x}+\log(1+e^{\mathbf{w}^T\mathbf{x}})) J(w)=N1i=1N(yiwTx+log(1+ewTx))
与极大似然估计相同。

决策边界

决策边界:逻辑回归模型 f w , b ( x ) = g ( z ) = g ( w T x + b ) f_{\mathbf{w},b}(\mathbf{x})=g(z)= g(\mathbf{w}^T \mathbf{x}+b) fw,b(x)=g(z)=g(wTx+b)

在 logistic 回归模型中, z = w T x + b z=\mathbf{w}^T\mathbf{x}+b z=wTx+b 。对于 sigmoid 函数(如上图), g ( z ) ⩾ 0.5  for  z ⩾ 0 g(z)\geqslant 0.5 \text{ for } z\geqslant 0 g(z)0.5 for z0 。因此,模型预测
y ^ = { 1 if  w T x + b ⩾ 0 0 if  w T x + b < 0 \hat y=\begin{cases} 1 &\text{if } \mathbf{w}^T\mathbf{x}+b\geqslant 0 \\ 0 &\text{if } \mathbf{w}^T\mathbf{x}+b<0 \end{cases} y^={10if wTx+b0if wTx+b<0
由此可见,logistic 回归输出一个线性决策边界 (linear decision boundary)
w T x + b = 0 \mathbf{w}^T\mathbf{x}+b=0 wTx+b=0
我们也可以创建多项式特征拟合一个非线性边界。例如,模型
f ( x 1 , x 2 ) = g ( x 1 2 + x 2 2 − 36 )  where  g ( z ) = 1 1 + e − z f(x_1,x_2) = g(x_1^2+x_2^2-36)\text{ where } g(z) = \cfrac{1}{1+e^{-z}} f(x1,x2)=g(x12+x2236) where g(z)=1+ez1
决策边界方程为 x 1 2 + x 2 2 − 36 = 0 x_1^2+x_2^2-36=0 x12+x2236=0

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Softmax 回归

基本形式

Softmax 回归是 Logistic 回归在多分类(Multi-Class)问题上的推广。给定的数据集
D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N } D=\{(\mathbf x_1,y_1),(\mathbf x_2,y_2),\cdots,(\mathbf x_N,y_N\} D={(x1,y1),(x2,y2),,(xN,yN}
包含 N N N 个样本, p p p 个特征。其中,第 i i i 个样本的特征向量为 x i = ( x i 1 , x i 2 , ⋯   , x i p ) T \mathbf x_i=(x_{i1},x_{i2},\cdots,x_{ip})^T xi=(xi1,xi2,,xip)T 。目标变量 y i ∈ { c 1 , c 2 , ⋯   , c K } y_i\in \{c_1,c_2,\cdots,c_K\} yi{c1,c2,,cK}​ 。假设 K K K个类的数据集服从均值不同、方差相同的正态分布
P ( x ∣ y = c k ) = 1 ( 2 π ) p det ⁡ Σ exp ⁡ ( − 1 2 ( x − μ k ) T Σ − 1 ( x − μ k ) ) , k = 1 , 2 , ⋯   , K \mathbb P(\mathbf x|y=c_k)=\frac{1}{\sqrt{(2\pi)^p\det\mathbf\Sigma}}\exp\left(-\frac{1}{2}(\mathbf x-\mathbf\mu_k)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf\mu_k)\right), \quad k=1,2,\cdots,K P(xy=ck)=(2π)pdetΣ 1exp(21(xμk)TΣ1(xμk)),k=1,2,,K
其中,协方差矩阵 Σ \mathbf\Sigma Σ 为对称阵。利用贝叶斯定理,于类别 c k c_k ck 的条件概率为
P ( y = c k ∣ x ) = P ( x ∣ y = c k ) P ( y = c k ) ∑ s = 1 K P ( x ∣ y = c s ) P ( y = c s ) \mathbb P(y=c_k|\mathbf x)=\frac{\mathbb P(\mathbf x|y=c_k)\mathbb P(y=c_k)}{\sum_{s=1}^K\mathbb P(\mathbf x|y=c_s)\mathbb P(y=c_s)} P(y=ckx)=s=1KP(xy=cs)P(y=cs)P(xy=ck)P(y=ck)
参考Logistic 回归,计算[^cdot]
ϕ = ln ⁡ P ( x ∣ y = c s ) P ( y = c s ) P ( x ∣ y = c t ) P ( y = c t ) = − 1 2 ( x − μ s ) T Σ − 1 ( x − μ s ) + 1 2 ( x − μ t ) T Σ − 1 ( x − μ t ) + ln ⁡ P ( y = c s ) P ( y = c t ) = ( μ s − μ t ) T Σ − 1 x − 1 2 ( μ s T Σ − 1 μ s − μ t T Σ − 1 μ t ) + ln ⁡ P ( y = c s ) − ln ⁡ P ( y = c t ) = ( w s T x + b s ) − ( w t T x + b t ) \begin{aligned} \phi&=\ln\frac{\mathbb P(\mathbf x|y=c_s)\mathbb P(y=c_s)}{\mathbb P(\mathbf x|y=c_t)\mathbb P(y=c_t)} \\ &=-\frac{1}{2}(\mathbf x-\mathbf \mu_s)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf \mu_s)+\frac{1}{2}(\mathbf x-\mathbf \mu_t)^T\mathbf\Sigma^{-1}(\mathbf x-\mathbf \mu_t)+\ln\frac{\mathbb P(y=c_s)}{\mathbb P(y=c_t)} \\ &=(\mathbf \mu_s-\mathbf \mu_t)^T\mathbf\Sigma^{-1}\mathbf x-\frac{1}{2}(\mu_s^T\mathbf\Sigma^{-1}\mu_s-\mu_t^T\mathbf\Sigma^{-1}\mu_t)+\ln\mathbb P(y=c_s)-\ln\mathbb P(y=c_t) \\ &=(\mathbf w_s^T\mathbf x+b_s)-(\mathbf w_t^T\mathbf x+b_t) \end{aligned} ϕ=lnP(xy=ct)P(y=ct)P(xy=cs)P(y=cs)=21(xμs)TΣ1(xμs)+21(xμt)TΣ1(xμt)+lnP(y=ct)P(y=cs)=(μsμt)TΣ1x21(μsTΣ1μsμtTΣ1μt)+lnP(y=cs)lnP(y=ct)=(wsTx+bs)(wtTx+bt)
其中
w k T = μ k T Σ − 1 , b k = − 1 2 μ k T Σ − 1 μ k + ln ⁡ P ( y = c k ) \mathbf w_k^T =\mu_k^T\mathbf\Sigma^{-1},\quad b_k =-\frac{1}{2}\mu_k^T\mathbf\Sigma^{-1}\mu_k+\ln\mathbb P(y=c_k) wkT=μkTΣ1,bk=21μkTΣ1μk+lnP(y=ck)
z k = w k T x + b k z_k=\mathbf w_k^T\mathbf x+b_k zk=wkTx+bk,则后验概率
P ( y = c k ∣ x ) = 1 ∑ s = 1 K P ( x ∣ y = c s ) P ( y = c s ) P ( x ∣ y = c k ) P ( y = c k ) = 1 ∑ s = 1 K exp ⁡ ( z s − z k ) = exp ⁡ ( z k ) ∑ s = 1 K exp ⁡ ( z s ) \begin{aligned} \mathbb P(y=c_k|\mathbf x)&=\frac{1}{\sum\limits_{s=1}^K\dfrac{\mathbb P(\mathbf x|y=c_s)\mathbb P(y=c_s)}{\mathbb P(\mathbf x|y=c_k)\mathbb P(y=c_k)}} \\ &=\frac{1}{\sum_{s=1}^K\exp(z_s-z_k)} \\ &=\frac{\exp(z_k)}{\sum_{s=1}^K\exp(z_s)} \end{aligned} P(y=ckx)=s=1KP(xy=ck)P(y=ck)P(xy=cs)P(y=cs)1=s=1Kexp(zszk)1=s=1Kexp(zs)exp(zk)
类别 c k c_k ck 的条件概率可化简为
P ( y = c k ∣ x ) = softmax ( w k T x ) = exp ⁡ ( w k T x ) ∑ k = 1 K exp ⁡ ( w k T x ) \mathbb P(y=c_k|\mathbf x)=\text{softmax}(\mathbf w_k^T\mathbf x)=\frac{\exp(\mathbf w_k^T\mathbf x)}{\sum_{k=1}^{K}\exp(\mathbf w_k^T\mathbf x)} P(y=ckx)=softmax(wkTx)=k=1Kexp(wkTx)exp(wkTx)
其中,参数 w k = ( b k , w k 1 , w k 2 , ⋯   , w k p ) T \mathbf{w_k}=(b_k,w_{k1},w_{k2},\cdots,w_{kp})^T wk=(bk,wk1,wk2,,wkp)T 是类别 c k c_k ck 的权重向量,特征向量 x = ( 1 , x 1 , x 2 , ⋯   , x p ) T \mathbf x=(1,x_1,x_2,\cdots,x_p)^T x=(1,x1,x2,,xp)T

Model: Softmax 回归输出每个类别的概率
f ( x ; W ) = 1 ∑ k = 1 K exp ⁡ ( w k T x ) ( exp ⁡ ( w 1 T x ) exp ⁡ ( w 2 T x ) ⋮ exp ⁡ ( w K T x ) ) \mathbf f(\mathbf{x};\mathbf W) = \frac{1}{\sum_{k=1}^{K}\exp(\mathbf w_k^T\mathbf x)}\begin{pmatrix} \exp(\mathbf w_1^T\mathbf x) \\ \exp(\mathbf w_2^T\mathbf x) \\ \vdots \\ \exp(\mathbf w_K^T\mathbf x) \\ \end{pmatrix} f(x;W)=k=1Kexp(wkTx)1 exp(w1Tx)exp(w2Tx)exp(wKTx)
上式结果向量中最大值的对应类别为最终类别
y ^ = arg ⁡ max ⁡ c k w k T x \hat y=\arg\max_{c_k}\mathbf w_k^T\mathbf x y^=argckmaxwkTx

极大似然估计

为了方便起见,我们用 K K K 维的 one-hot 向量来表示类别标签。若第 i i i 个样本类别为 c c c,则向量表示为
y i = ( y i 1 , y i 2 , ⋯   , y i K ) T = ( I ( c 1 = c ) , I ( c 2 = c ) , ⋯   , I ( c K = c ) ) T \begin{aligned} \mathbf y_i&=(y_{i1},y_{i2},\cdots,y_{iK})^T \\ &=(\mathbb I(c_1=c),\mathbb I(c_2=c),\cdots,\mathbb I(c_K=c))^T \\ \end{aligned} yi=(yi1,yi2,,yiK)T=(I(c1=c),I(c2=c),,I(cK=c))T
对样本联合概率取对数似然函数
log ⁡ L ( W ) = log ⁡ ∏ i = 1 N P ( y i ∣ x i ) = ∑ i = 1 N log ⁡ P ( y i ∣ x i ) = ∑ i = 1 N log ⁡ y i T f ( x i ; W ) \begin{aligned} \log L(\mathbf W) & =\log\prod_{i=1}^{N} \mathbb P(y_i|\mathbf x_i)=\sum_{i=1}^N\log \mathbb P(y_i|\mathbf x_i) \\ &=\sum_{i=1}^{N}\log\mathbf y_i^T\mathbf f(\mathbf x_i;\mathbf W) \end{aligned} logL(W)=logi=1NP(yixi)=i=1NlogP(yixi)=i=1NlogyiTf(xi;W)
参数估计:可通过梯度下降法、牛顿法等求解 K × ( p + 1 ) K\times(p+1) K×(p+1)权重矩阵 W \mathbf W W
W ^ = arg ⁡ max ⁡ W ∑ i = 1 N log ⁡ y i T f ( x i ; W ) \hat{\mathbf W}=\arg\max_{\mathbf W}\sum_{i=1}^{N}\log\mathbf y_i^T\mathbf f(\mathbf x_i;\mathbf W) W^=argWmaxi=1NlogyiTf(xi;W)
对数似然函数 log ⁡ L ( W ) \log L(\mathbf W) logL(W) 关于 W \mathbf W W 的梯度为
∂ log ⁡ L ( W ) ∂ W = ∑ i = 1 N x i ( y i − f ( x i ; W ) ) T \frac{\partial \log L(\mathbf W)}{\partial\mathbf W}=\sum_{i=1}^{N}\mathbf x_i(\mathbf y_i-\mathbf f(\mathbf x_i;\mathbf W))^T WlogL(W)=i=1Nxi(yif(xi;W))T

感知机

感知机(Perceptron)是线性二分类模型,适用于线性可分的数据集。

Model:感知机选取符号函数为激活函数
f w , b ( x ) = sign ( w T x + b ) f_{\mathbf{w},b}(\mathbf{x})=\text{sign}(\mathbf{w}^T\mathbf{x}+b) fw,b(x)=sign(wTx+b)
这样就可以将线性回归的结果映射到两分类的结果上了。符号函数
sign ( z ) = { + 1 if  z ⩾ 0 − 1 if  z < 0 \text{sign}(z)=\begin{cases}+1 & \text{if }z\geqslant 0\\ -1 & \text{if }z<0\end{cases} sign(z)={+11if z0if z<0
为计算方便,引入 x 0 = 1 , w 0 = b x_0=1,w_0=b x0=1,w0=b 。模型简写为
f w ( x ) = sign ( w T x ) f_{\mathbf{w}}(\mathbf{x}) = \text{sign}(\mathbf{w}^T\mathbf{x}) fw(x)=sign(wTx)
其中,特征向量 x = ( x 0 , x 1 , x 2 , ⋯   , x p ) T \mathbf x=(x_0,x_1,x_2,\cdots,x_p)^T x=(x0,x1,x2,,xp)T,权重向量 w = ( w 0 , w 1 , w 2 , ⋯   , w p ) T \mathbf{w}=(w_0,w_1,w_2,\cdots,w_p)^T w=(w0,w1,w2,,wp)T

cost function:误分类点到分离超平面的总距离
J ( w ) = − ∑ x i ∈ M y i w T x i J(\mathbf w)=-\sum_{\mathbf x_i\in M}y_i\mathbf{w}^T\mathbf{x}_i J(w)=xiMyiwTxi
其中, M M M 是错误分类集合。

基于梯度下降法对代价函数的最优化算法,有原始形式和对偶形式。算法简单且易于实现。

损失函数的梯度
∇ J ( w ) = − ∑ x i ∈ M y i x i \nabla J(\mathbf w)=-\sum_{\mathbf x_i\in M}y_i\mathbf{x}_i J(w)=xiMyixi

感知机有无穷多个解,其解由于不同的初始值或不同的迭代顺序而有所不同。

Perceptron 是另一种适用于大规模学习的简单分类算法。

  • 它不需要设置学习率
  • 它不需要正则项
  • 它只用错误样本更新模型

最后一个特点意味着Perceptron的训练速度略快于带有合页损失(hinge loss)的SGD,因此得到的模型更稀疏。

被动感知算法 (Passive Aggressive Algorithms) 是一种大规模学习的算法。和感知机相似,因为它们不需要设置学习率。然而,与感知器不同的是,它们包含正则化参数。

多类别分类

Multi-class classification:目标变量包含两个以上离散值的分类任务 y ∈ { c 1 , c 2 , ⋯   , c K } y\in\{c_1,c_2,\cdots,c_K\} y{c1,c2,,cK}。每个样本只能标记为一个类。例如,使用从一组水果图像中提取的特征进行分类,其中每一幅图像都可能是一个橙子、一个苹果或一个梨。每个图像就是一个样本,并被标记为三个可能的类之一。

  • One-Vs-Rest (OVR) 也称为one-vs-all,为每个类分别拟合一个二分类模型,这是最常用的策略,对每个类都是公平的。这种方法的一个优点是它的可解释性,每个类都可以查看自己模型的相关信息。

  • One-Vs-One (OVO) 是对每一对类分别拟合一个二分类模型。在预测时,选择得票最多的类别。在票数相等的两个类别中,它选择具有最高总分类置信度的类别,方法是对由底层二分类器计算的对分类置信度进行求和。

    由于它需要拟合 K ( K − 1 ) 2 \frac{K(K-1)}{2} 2K(K1) 个分类器,这种方法通常比one-vs-rest要慢,原因就在于其复杂度 O(K2) 。然而,这个方法也有优点,比如说是在没有很好的缩放样本数的核方法中。这是因为每个单独的学习问题只涉及一小部分数据,而对于一个 one-vs-rest,完整的数据集将会被使用 K 次。

One-Vs-Rest:为每个类分别拟合一个二分类模型
f w , b i ( x ) = P ( y = i ∣ x ; w , b ) f^i_{\mathbf{w},b}(\mathbf{x})=\mathbb P(y=i|\mathbf x;\mathbf w,b) fw,bi(x)=P(y=ix;w,b)
模型预测值,一种方法是选择概率最大的类别
y ^ = arg ⁡ max ⁡ i f w , b i ( x ) \hat y=\arg\max\limits_{i} f^i_{\mathbf{w},b}(\mathbf{x}) y^=argimaxfw,bi(x)
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

多标签分类

包含多个目标变量的分类任务称为 Multilabel classification

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/742178.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ADC + 数码管显示

REVIEW 前面已经学习过&#xff1a; ADC&#xff1a;ADC模-数转换原理与实现-CSDN博客 key&#xff1a;基于状态机的按键消抖实现-CSDN博客 数码管&#xff1a;SPI接口的74HC595驱动数码管实现_用spi和hc74595通信-CSDN博客 1. 今日摸鱼计划 按键启动ADC 将结果显示在数码管…

OnlyOffice-8.1版本深度测评

2024年6月19日&#xff0c;ONLYOFFICE 发布了最新版本 8.1&#xff0c;带来了超过30项新功能和432个 bug 修复。本文将详细评测该版本的新功能和改进&#xff0c;帮助用户全面了解这一升级带来的实际体验提升。 一、功能全面的 PDF 编辑器 PDF 是日常工作中不可或缺的文件格式…

汽车汽配图纸管理、产品研发管理解决方案

汽车汽配图纸管理、产品研发管理解决方案 随着全球汽车市场的快速发展&#xff0c;中国汽车汽配行业迎来了前所未有的发展机遇。然而&#xff0c;在这一过程中&#xff0c;企业也面临着诸多挑战&#xff0c;如研发能力的提升、技术资料管理的复杂性、以及跨部门协作的困难等。为…

【CPP】插入排序:直接插入排序、希尔排序

目录 1.插入排序1.1直接插入排序简介代码分析 1.2直接插入对比冒泡排序简介代码对比分析(直接插入排序与冒泡的复杂度效率区别) 1.3希尔排序简介代码分析 1.插入排序 基本思想&#xff1a;把一个待排数字按照关键码值插入到一个有序序列中&#xff0c;得到一个新的有序序列。 …

施耐德ATV310变频器参数设置

1、ATV610变频器参数设置请参考下面文章链接&#xff1a; 施耐德ATV610变频器MODBUS通信应用(SMART PLC)-CSDN博客文章浏览阅读131次。提升MODBUS-RTU通信数据刷新速度的常用方法_modbus rtu通讯慢-CSDN博客文章浏览阅读1k次。https://rxxw-control.blog.csdn.net/article/det…

03 Shell编程之循环语句与函数

目录 3.1 for 循环语句 3.1.1 for 语句的结构 3.1.2 for 语句应用示例 1. 根据姓名列表批量添加用户 2. 根据IP地址列表检查主机状态 3.2 使用while循环语句 3.2.1 while语句的结构 3.2.2 while语句应用示例 1. 批量添加规律编号的用户 2. 猜价格游戏 3.3 until 循环语句 3.…

IDEA集成Docker实现快捷部署

本文已收录于专栏 《运维》 目录 背景介绍优势特点操作步骤一、修改Docker配置二、配置Docker插件三、编写Maven插件四、构建Docker镜像五、创建Docker容器 总结提升 背景介绍 在我们手动通过Docker部署项目的时候&#xff0c;都是通过把打包好的jar包放到服务器上并且在服务器…

深圳比创达电子EMC|EMI电磁干扰行业:提升电子产品质量的关键

随着电子技术的飞速发展&#xff0c;电磁干扰&#xff08;EMI&#xff09;问题日益凸显&#xff0c;成为影响电子产品性能和市场竞争力的重要因素。 一、EMI电磁干扰行业的概述 电磁干扰&#xff0c;即电子设备在运行过程中产生的电磁波对其他设备或系统产生的干扰。这种干扰…

视频集市新增支持多格式流媒体拉流预览

流媒体除了常用实时流外还有大部分是以文件的形式存在&#xff0c;做融合预览必须要考虑多种兼容性能力&#xff0c;借用现有的ffmpeg生态可以迅速实现多种格式的支持&#xff0c;现在我们将按需拉流预览功能进行了拓展&#xff0c;正式支持了ffmpeg的功能&#xff0c;可快捷方…

Kotlin 中的数据类型有隐式转换吗?

在 Kotlin 中&#xff0c;数据类型不可隐式转换。在 Java 中&#xff0c;如果数据是从小到大&#xff0c;是可以隐式转换的&#xff0c;数据类型将自动提升。 下面以 int 类型的数据为例&#xff0c;在 Java 中这样写是可以的&#xff1a; int a 2312; long b a;但是在 Kot…

Python21 k-近邻算法

k-近邻算法&#xff08;k-Nearest Neighbors, k-NN&#xff09;是一种基本且广泛使用的分类与回归算法。它的工作原理非常直观&#xff1a;通过测量不同特征点之间的距离&#xff0c;来进行分类或回归分析。 1.K-NN算法 基本概念 1.基于实例的学习&#xff1a;k-NN是一种基于…

three.js - matcap材质(MeshMatcapMaterial)

说一下matcap纹理 先总结&#xff1a;MeshMatcapMaterial材质&#xff0c;通过采样含有光照信息的贴图来模拟光照效果。这种材质特别适用于模拟静态光源下的光照&#xff0c;并且&#xff0c;因其简单性和快速性而被广泛应用于各种场景。但是&#xff0c;由于其性能考虑&#x…

浅层神经网络

浅层神经网络 神经网络概述 一个完整的神经网络由N多个神经元之间形成的复杂连接&#xff0c;但对于每个神经元仅执行简单的线性计算。 神经网络的表示 &#x1d44e; ^ [0]可以用来表示输入层的激活值 &#x1d44e; ^ [1]可以用来表示隐藏层的激活值 &#x1d465;表示输…

一种502 bad gateway nginx/1.18.0的解决办法

背景:上线的服务突然挂掉了 step1&#xff0c;去后端日志查看&#xff0c;发现并无异常&#xff0c;就是请求无法被接收 step2&#xff0c;查看了nginx的错误日志&#xff0c;发现该文件为空 step3&#xff0c;查看了niginx的运行日志&#xff0c;发现了以下问题 [error] 38#…

JeecgFlow事件网关概念及案例

事件网关 通常网关基于连线条件决定后续路径&#xff0c;但事件网关有所不同&#xff0c;其基于事件决定后续路径。事件网关的每条外出顺序流都需要连接一个捕获中间事件。 事件网关只有分支行为&#xff0c;流程的走向完全由中间事件决定。可以从多条候选分支中选择事件最先达…

Struts2 S2-061 远程命令执行漏洞(CVE-2020-17530)

目录 Struts2介绍 漏洞介绍 环境搭建 漏洞探测 执行命令 反弹shell 这一篇还是参考大佬的好文章进行Struts2 S2-061远程命令执行漏洞的学习和练习 Struts2介绍 百度百科 Struts2框架是一个用于开发Java EE网络应用程序的开放源代码网页应用程序架构。它利用并延伸了Ja…

面试-java并发与多线程的部分函数

1.sleep和wait的区别 基本的差别&#xff1a; Sleep是Thread的方法。Wait是object方法。Wait不传参&#xff0c;最终也是调用wait(native)的传参方法。 Sleep方法可以在任何地方使用。 Wait方法只能在synchronized方法或synchronized方法块中使用。 最主要的本质区别&#xf…

web前端——CSS

目录 一、css概述 二、基本语法 1.行内样式表 2.内嵌样式表 3.外部样式表 4.三者对比 三、选择器 1.常用的选择器 2. 选择器优先级 3.由高到低优先级排序 四、文本,背景,列表,伪类,透明 1.文本 2.背景 3.列表 4.伪类 5.透明 五、块级,行级,行级块标签, dis…

OCR的有效数据增强

背景 我面临着需要尽可能准确识别手写金额的挑战。难点在于保持误判率低于0.01%。由于数据集中样本数量固定&#xff0c;因此数据增强是合乎逻辑的选择。快速搜索未发现针对光学字符识别&#xff08;OCR&#xff09;的现成方法。因此&#xff0c;我挽起袖子&#xff0c;亲自创建…

discuz插件之优雅草超级列表互动增强v1.2版本更新

https://doc.youyacao.com/9/2142 v1.2更新 discuz插件之优雅草超级列表互动增强v1.2版本更新 [title]20220617 v1.2发布[/title] 增加了对php8的支持 增加了 对discuz3.5的支持