基本形式
𝐷 维样本
x
=
[
x
1
,
x
2
,
.
.
.
,
x
D
]
T
x=[x_1,x_2,...,x_D]^T
x=[x1,x2,...,xD]T
数学表达:
f
(
x
;
w
)
=
w
1
x
1
+
w
2
x
2
+
.
.
.
+
w
D
x
D
+
b
=
w
T
x
+
b
f(x;w)=w_1x_1+w_2x_2+...+w_Dx_D+b \\ =w^Tx+b
f(x;w)=w1x1+w2x2+...+wDxD+b=wTx+b
其中
w
=
[
w
1
,
⋯
,
w
D
]
T
w= [w_1, ⋯ , w_D]^T
w=[w1,⋯,wD]T 为 𝐷 维的权重向量
,𝑏 为偏置
。
四种不同线性分类模型:Logistic回归
、Softmax回归
、感知器
和支持向量机
,这些模型的区别主要在于使用了不同的损失函数.
线性模型 | 概述 | 损失函数 |
---|---|---|
对数几率回归(Logistic) | y = w T x + b ln y = w T x + b y=w^Tx+b \\ \ln y =w^Tx+b y=wTx+blny=wTx+b | 交叉熵 |
SoftMax回归 | 多项(Multinomial)或多类(Multi-Class)的Logistic回归,是Logistic回归在多分类问题上的推广. | 交叉熵损失函数 |
感知器 | ||
SVM(支持向量机) |
此处命名为回归,but实际处理为分类问题
线性判别函数和决策边界
两类线性可分:对于训练集
D
=
{
(
x
(
n
)
,
y
(
n
)
)
}
n
=
1
N
D= {\lbrace(x^{(n)}, y^{(n)})\rbrace}_{n=1}^N
D={(x(n),y(n))}n=1N,如果存在权重向量𝒘∗,对所有样本都满足
y
f
(
x
;
w
∗
)
>
0
yf(x; w^∗) > 0
yf(x;w∗)>0,那么训练集𝒟 是线性可分的.
w
x
+
b
≥
0
y
=
+
1
w
T
x
+
b
<
0
y
=
−
1
\begin{aligned} w^x+b \ge 0 && y=+1\\w^Tx+b < 0 && y=-1 \end{aligned}
wx+b≥0wTx+b<0y=+1y=−1
为了学习参数𝒘,我们需要定义合适的损失函数以及优化方法.对于二分类问题,最直接的损失函数为0-1损失函数,即
L
01
(
y
,
f
(
x
;
w
)
)
=
I
(
y
f
(
x
;
w
)
>
0
)
L_{01}(y,f(x;w))=I(yf(x;w)>0)
L01(y,f(x;w))=I(yf(x;w)>0)
多分类
二分类问题的拓展应用
多分类(Multi-class Classification)问题是指分类的类别数 𝐶 大于 2.多分类一般需要多个线性判别函数,但设计这些判别函数有很多种方式.
假设一个多分类问题的类别为{1, 2, ⋯ , 𝐶},常用的方式有以下三种:
- “一对其余” 方式:把多分类问题
转换为
𝐶 个“一对其余”的二分类问题
.这种方式共需要𝐶 个判别函数
,其中第 𝑐 个判别函数 f c f_c fc 是将类别 𝑐 的样本和不属于类别𝑐的样本分开. - “一对一” 方式:把多分类问题转换为 C ( C − 1 ) 2 \frac {C(C-1)} 2 2C(C−1) 个“一对一”的二分类问题.这种方式共需要𝐶(𝐶 − 1)/2个判别函数,其中第(𝑖, 𝑗)个判别函数是把类别𝑖 和类别𝑗 的样本分开. 规定 1 ≤ i < j ≤ C 1\le i<j \le C 1≤i<j≤C
- “argmax” 方式:这是一种改进的“一对其余”方式,共需要 𝐶 个判别函数 f c ( x ; w c ) = w c T x + b c , c ∈ { 1 , ⋯ , C } f_c(x; w_c) = {w}_c^Tx +b_c, c \in \lbrace1, ⋯ , C\rbrace fc(x;wc)=wcTx+bc,c∈{1,⋯,C}对于样本𝒙,如果存在一个类别𝑐,相对于所有的其他类别 ̃𝑐( ̃𝑐 ≠ 𝑐)有𝑓𝑐(𝒙; 𝒘𝑐) >𝑓𝑐̃(𝒙, 𝒘𝑐̃),那么𝒙属于类别𝑐.“argmax”方式的预测函数定义为 y = a r g m a x c = 1 C f c ( x ; w c ) y={argmax}_{c=1}^{C} {f_c(x;w_c)} y=argmaxc=1Cfc(x;wc)
argmax是一种函数,是对函数求参数(集合)的函数. x 0 = a r g m a x ( f ( x ) ) x_0=argmax(f(x)) x0=argmax(f(x))当 x = x 0 x=x_0 x=x0时 f ( x ) f(x) f(x)取得最大值。
“一对其余”方式和“一对一”方式都存在一个缺陷:特征空间中会存在一 些难以确定类别的区域 ,而“argmax”方式很好地解决了这个问题.
红色直线表示判别函数 𝑓(⋅) = 0 的直线,不同颜色的区域表示预测的三个类别的区域(𝜔1、𝜔2 和 𝜔3)和难以确定类别的区域(‘?’).
在“argmax”方式中,相邻两类 𝑖 和 𝑗 的决策边界实际上是由
f
i
(
x
;
w
i
)
−
f
j
(
x
;
w
j
)
=
0
f_i(x;w_i)-f_j(x;w_j)=0
fi(x;wi)−fj(x;wj)=0决定,其法向量为
w
i
−
w
j
w_i-w_j
wi−wj.
Logistic回归
Logistic 回归(Logistic Regression,LR)是一种常用的处理二分类问题的线性模型
应对线性回归问题 ( x , y ) (x,y) (x,y)采用 y = w T x + b y=w^Tx+b y=wTx+b ok
当y非线性变化时,y指数时方式增长时,可否利用
ln
y
=
w
T
x
+
b
\ln y=w^Tx+b
lny=wTx+b来预测标签y 对数线性回归(log-linear regression)
在让
e
w
T
x
+
b
e^{w^Tx+b}
ewTx+b来逼近
y
y
y
实质上已经在求去输入空间到输出空间的非线性函数映射。
更一般地考虑单调可微函数
g
(
.
)
g(.)
g(.),令
y
=
g
−
1
(
w
T
x
+
b
)
y=g^{-1}(w^Tx+b)
y=g−1(wTx+b)
这样就得到了“广义线性模型”(generalized linear model),其中函数
g
(
.
)
g(.)
g(.)称为联系函数(link function).
如何将回归用于分类问题? 广义线性模型
找一个单调可微的函数将真实的标记与线性回归模型预测值联系起来
针对二分类问题讨论 y ∈ { − 1 , 1 } y \in \lbrace -1,1 \rbrace y∈{−1,1}
回归模型的预测值 z = w T x + b z=w^Tx+b z=wTx+b是实值,问题转化为 g ( z ) = y g(z)=y g(z)=y ,找出这样的 g ( . ) g(.) g(.)函数
- 单位阶跃函数(unit-step function)
y
=
{
0
,
z
<
0
;
0.5
,
z
=
0
;
1
,
z
>
0
y=\left\{ \begin{aligned} 0,&&{z<0;} \\ 0.5, && {z=0;} \\ 1, && {z>0} \end{aligned} \right.
y=⎩⎪⎨⎪⎧0,0.5,1,z<0;z=0;z>0
但是由于单位阶跃函数不连续故而不能直接用作
g
(
.
)
g(.)
g(.)
- 对数几率函数(logistic function)
y = 1 1 + e − z y=\frac 1 {1+e^{-z}} y=1+e−z1
将z的值转化为一个接近于0或1的y值,并且在z=0附近变化很快(斜率)。 将对数几率函数作为 g ( . ) g(.) g(.)
y = 1 1 + e − ( w T x + b ) y=\frac 1 {1+e^{-(w^Tx+b)}} y=1+e−(wTx+b)1
亦即
ln
y
1
−
y
=
w
T
x
+
b
\ln{\frac y {1-y}}=w^Tx+b
ln1−yy=wTx+b
若将y视为样本x正例的可能性,则1-y是其反例的可能性,两者的比值为 y 1 − y \frac y {1-y} 1−yy 称为“几率”,即x作为正例的相对可能性。 ln y 1 − y \ln \frac y {1-y} ln1−yy称为对数几率
ok
思想:为了解决连续的线性函数不适合进行分类的问题,我们引入非线性函数
g
:
R
D
−
>
(
0
,
1
)
g: R^D -> (0,1)
g:RD−>(0,1)来预测类别标签的后验概率
p
(
y
=
1
∣
x
)
p(y=1|x)
p(y=1∣x).
p
(
y
=
1
∣
x
)
=
g
(
f
(
x
;
w
)
)
p(y=1|x)=g(f(x;w))
p(y=1∣x)=g(f(x;w))
其中 𝑔(⋅) 通常称为激活函数(Activation Function),其作用是 把线性函数的值域从实数区间“挤压”到了(0, 1)之间,可以用来表示概率
优点:
- 直接对分类的可能性进行建模,无需事先假设数据分布
- 不仅预测测出“分类”,而且得到了近似概率预测
- 得到的目标函数为 任意阶可导的凸函数
参数学习
- 损失函数:交叉熵
使用梯度下降法来对参数进行优化.
y
^
\hat y
y^为 Logistic 函 数,因 此 有
∂
y
^
∂
w
T
x
=
y
^
(
n
)
(
1
−
y
^
(
n
)
)
\frac {\partial {\hat y}} {\partial {w^T x}}= \hat y^{(n)}(1- \hat y^{(n)})
∂wTx∂y^=y^(n)(1−y^(n)) 另外此时的w,y,x为増广表示。
- 采用极大似然法来估计w,b
Softmax回归
Softmax 回归(Softmax Regression),也称为多项(Multinomial)或多类(Multi-Class)的Logistic回归,是Logistic回归在多分类问题上的推广.
起源
在介绍逻辑回归时我们说过,经过激活函数 g ( . ) g(.) g(.)作用后可以将原本取值为 ( − ∞ , + ∞ ) (-\infty,+\infty) (−∞,+∞)的输出映射到范围 [ 0 , 1 ] [0,1] [0,1]中,进而可以看作是输入样本被预测为正样本时的概率。
如果是通过图3所示的结构进行预测时,某个输入样本可能会得到这么一个结果 [ 0.8 , 0.7 , 0.9 ] [0.8,0.7,0.9] [0.8,0.7,0.9]。虽然根据前面的规则该样本应该被认为是属于第三个类别,但这样的 结果似乎看起来不那么友好。 如果能有一种方法将这三个置信值进行归一化,使得三者在大小的关系仍旧不变,但是三者相加等于1,
那么我们就可以将这个输出结果直接看作是该样本属于某一类的概率,然后依旧是选择最大的即可。 例如将上面的 [ 0.8 , 0.7 , 0.9 ] [0.8,0.7,0.9] [0.8,0.7,0.9]归一化成 [ 0.33 , 0.30 , 0.37 ] [0.33,0.30,0.37] [0.33,0.30,0.37]。
注:上面这一段其实并不算是要引入Softmax的主要原因,其真正原因待介绍完反向传播后再进行介绍。
定义
对于多类问题,类别标签𝑦 ∈ {1, 2, ⋯ , 𝐶}可以有𝐶 个取值.给定一个样本𝒙,
Softmax回归预测的属于类别𝑐的条件概率为
y
^
=
p
(
y
=
c
∣
x
)
=
s
o
f
t
m
a
x
(
w
c
T
x
)
=
e
w
c
T
x
∑
c
′
=
1
C
e
w
c
′
T
x
\begin{aligned} \hat y=p(y=c|x) &=softmax(w^T_cx)\\ &=\frac {e^{w^T_cx}} {\sum_{c'=1}^{C}{e^{w^T_{c'}x}}} \end{aligned}
y^=p(y=c∣x)=softmax(wcTx)=∑c′=1Cewc′TxewcTx
其中 w c w_c wc是c类的权重分量。
与Logistic回归的关系
当类别数𝐶 = 2时,Softmax回归的决策函数为
y
^
=
a
r
g
m
a
x
y
∈
{
0
,
1
}
w
y
T
x
=
I
(
w
1
T
x
−
w
0
T
x
>
0
)
=
I
(
(
w
1
−
w
0
)
T
x
>
0
)
\begin{aligned} \hat y &= argmax_{y\in \lbrace0,1\rbrace}{w^T_yx}\\ &=I(w_1^Tx-w_0^Tx>0)\\ &=I((w_1-w_0)^Tx>0) \end{aligned}
y^=argmaxy∈{0,1}wyTx=I(w1Tx−w0Tx>0)=I((w1−w0)Tx>0)
多分类 argmax方式: 边界函数 f 1 − f 0 = 0 f_1-f_0=0 f1−f0=0 法向量 w 1 − w 0 w_1-w_0 w1−w0
参数学习
采用交叉熵损失函数,Softmax回归模型的风险函数为
y: one-hot向量
R ( W ) = − 1 N ∑ n = 1 N ∑ c = 1 C y c ( n ) ln y ^ c ( n ) = − 1 N ∑ n = 1 N ( y ( n ) ) T ln y ^ ( n ) \begin{aligned} R(W)&= - \frac 1 N \sum_{n=1}^{N} {\sum_{c=1}^{C} {y_c^{(n)} \ln {\hat y}_{c}^{(n)} } }\\ &= - \frac 1 N \sum_{n=1}^{N} {{(y^{(n)})}^T \ln{\hat y^{(n)}}} \end{aligned} R(W)=−N1n=1∑Nc=1∑Cyc(n)lny^c(n)=−N1n=1∑N(y(n))Tlny^(n)
具体计算过程理解!!!
感知器(Perceptron)
线性分类器.
感知器可谓是最简单的人工神经网络,只有一个神经元
“神经元M-P模型” θ \theta θ即偏置b
y ^ = s g n ( w T x − θ ) = { + 1 i f w T x − θ > 0 − 1 i f w T x − θ < 0 \begin{aligned} \hat y&=sgn(w^Tx - \theta )\\ &=\left\{ \begin{aligned} +1 && if && w^Tx-\theta>0\\ -1 && if && w^Tx- \theta<0 \end{aligned} \right. \end{aligned} y^=sgn(wTx−θ)={+1−1ififwTx−θ>0wTx−θ<0
感知器的学习算法是一种错误驱动的在线学习算法.
先初始化一个权重向量 w ← 0 w \larr 0 w←0(通常是全零向量),然后每次分错一个样本 ( x , y ) (x,y) (x,y)时,即 y w T x < 0 yw^Tx<0 ywTx<0,就用这个样本来更新权重.
w ← w + y x w \larr w+yx w←w+yx
更一般地,给定训练集,权重 w i w_i wi(i=1,2,…,n)以及阈值 θ \theta θ 可以通过学习得到。
将阈值 θ \theta θ 的权重看做-1,并将其看做 w n + 1 w_{n+1} wn+1 . 简化为求 w w w 増广矩阵
对于训练集 ( x , y ) (x,y) (x,y) ,若当前感知机预测值为 y ^ \hat y y^
w i ← w i + Δ w i , Δ w i = η ( y − y ^ ) x i w_i \larr w_i + \Delta w_i,\\ \Delta w_i= \eta (y- \hat y) x_i wi←wi+Δwi,Δwi=η(y−y^)xi
其中 η ∈ ( 0 , 1 ) \eta \in (0,1) η∈(0,1) 为称为学习效率。
感知器算法
W
T
x
+
b
>
0
且
y
=
−
1
W^Tx+b>0 且 y=-1
WTx+b>0且y=−1 和
W
T
x
+
b
<
0
且
y
=
+
1
W^Tx+b<0 且 y=+1
WTx+b<0且y=+1为两种分类错误问题,前者减小w与b使其逐渐变小(
−
(
∥
X
∥
2
+
1
)
-(\Vert X \Vert^2 +1)
−(∥X∥2+1) )后者反之
SVM VS 感知器(线性可分的样本) :
SVM对全局训练集样本
(
x
i
,
y
i
)
i
∈
(
1
,
N
)
(x_i,y_i) i \in (1,N)
(xi,yi)i∈(1,N) 进行构造一个优化问题(间隔 ==> 对偶问题) 求解
α
与
b
\alpha 与 b
α与b
感知器对样本数据逐个加入进行调整以达到对全局样本的分割。
算法分析
正确分类:
w
k
T
x
>
0
;
y
=
1
o
r
w
k
T
x
<
0
;
y
=
−
1
w_k^Tx>0 ; y=1 \quad or\quad w_k^Tx<0;y=-1
wkTx>0;y=1orwkTx<0;y=−1
分类错误情形:
w
k
T
(
y
(
n
)
x
(
n
)
)
≤
0
w_k^T(y^{(n)}x^{(n)}) \le 0
wkT(y(n)x(n))≤0
操作: W k + 1 ← W k + y ( n ) x ( n ) W_{k+1} \larr W_k + y^{(n)}x^{(n)} Wk+1←Wk+y(n)x(n)
同之前分析,更加规整的数学表达。
感知器的收敛性
证明对于两类问题,如果训练集是线性可分的,那么感知器
算法可以在有限次迭代后收敛.
当数据集是两类线性可分时,对于训练集 D = { ( x ( n ) , y ( n ) ) } n = 1 N D=\lbrace(x^{(n)},y^{(n)})\rbrace_{n=1}^{N} D={(x(n),y(n))}n=1N,其中 x ( n ) x^{(n)} x(n) 为样本的增广特征向量, y ( n ) ∈ { − 1 , 1 } y^{(n)} \in \lbrace -1,1 \rbrace y(n)∈{−1,1},那么存在一个正的常数 γ ( γ > 0 ) \gamma (\gamma>0) γ(γ>0) 和权重向量 w ∗ w^* w∗ ,并且 ∥ w ∗ ∥ = 1 \Vert w^* \Vert=1 ∥w∗∥=1 ,对所有n满足 ( w ∗ ) ( y ( n ) x ( n ) ≥ γ ) (w^*)(y^{(n)}x^{(n)} \ge \gamma) (w∗)(y(n)x(n)≥γ).
简单分析:对于正确分类必有 ( w ∗ ) ( y ( n ) x ( n ) ) > 0 (w^*)(y^{(n)}x^{(n)})>0 (w∗)(y(n)x(n))>0 ,此处对条件进行限制。 γ \gamma γ 表示:特征向量的加权分量
感知器收敛性 :给定训练集
D
=
{
(
x
(
n
)
,
y
(
n
)
)
}
n
=
1
N
D=\lbrace(x^{(n)},y^{(n)})\rbrace_{n=1}^{N}
D={(x(n),y(n))}n=1N ,令𝑅是训练集中 最大的特征向量的模 ,即
R
=
m
a
x
n
∥
x
(
n
)
∥
R=max_{n} \Vert x^{(n)}\Vert
R=maxn∥x(n)∥ .
如果训练集
D
D
D 线性可分,两类感知器的参数学习算法3.1的 权重更新次数不超过
R
2
γ
2
\frac {R^2} {\gamma^2}
γ2R2 .
证明: 感知器的权重向量的更新方式为
w
K
=
w
K
−
1
+
y
(
K
)
x
(
K
)
w_K=w_{K-1}+y^{(K)}x{(K)}
wK=wK−1+y(K)x(K)
其中
x
(
K
)
,
y
(
K
)
x^{(K)},y^{(K)}
x(K),y(K) 表示第K个错误分类错误样本。
因为初始权重向量为0,在第K次更新时感知器的权重向量为
w
K
=
∑
k
=
1
K
y
(
k
)
x
(
k
)
w_K=\sum_{k=1}^{K}{y^{(k)}x^{(k)}}
wK=k=1∑Ky(k)x(k)
分别计算
∥
w
K
∥
2
\Vert w_K\Vert^2
∥wK∥2 的上下界:
上界:
∥
w
K
∥
2
=
∥
w
K
−
1
+
y
(
K
)
x
(
K
)
∥
2
=
∥
w
K
−
1
∥
2
+
∥
y
(
K
)
x
(
K
)
∥
2
+
2
y
(
K
)
w
K
−
1
T
x
(
K
)
≤
∥
w
K
−
1
∥
2
+
R
2
≤
∥
w
K
−
2
∥
2
+
2
R
2
≤
K
R
2
\begin{aligned} \Vert w_K\Vert^2 &= \Vert w_{K-1}+y^{(K)}x^{(K)}\Vert^2\\ &=\Vert w_{K-1}\Vert^2 + \Vert y^{(K)}x^{(K)}\Vert^2 + 2y^{(K)}w_{K-1}^Tx^{(K)}\\ &\le \Vert w_{K-1}\Vert^2 + R^2 \\ &\le \Vert w_{K-2}\Vert^2 + 2R^2 \\ &\le KR^2 \end{aligned}
∥wK∥2=∥wK−1+y(K)x(K)∥2=∥wK−1∥2+∥y(K)x(K)∥2+2y(K)wK−1Tx(K)≤∥wK−1∥2+R2≤∥wK−2∥2+2R2≤KR2
下界:
∥
w
K
∥
2
=
∥
w
∗
∥
2
∗
∥
w
K
∥
2
≥
∥
w
∗
T
w
K
∥
2
=
∥
w
∗
T
∑
k
=
1
K
(
y
(
k
)
x
(
k
)
)
∥
2
=
∥
∑
k
=
1
K
w
∗
T
(
y
(
k
)
x
(
k
)
)
∥
2
≥
K
2
γ
2
\begin{aligned} \Vert w_K\Vert^2 &= \Vert w^* \Vert ^2 *\Vert w_K\Vert^2 \\ &\ge \Vert {w^*}^T w_K\Vert^2 \\ &= \Vert {w^*}^T \sum_{k=1}^{K}{(y^{(k)}x^{(k)})} \Vert ^2\\ &= \Vert \sum_{k=1}^{K}{{w^*}^T(y^{(k)}x^{(k)})} \Vert ^2\\ &\ge K^2\gamma^2 \end{aligned}
∥wK∥2=∥w∗∥2∗∥wK∥2≥∥w∗TwK∥2=∥w∗Tk=1∑K(y(k)x(k))∥2=∥k=1∑Kw∗T(y(k)x(k))∥2≥K2γ2
即
K
2
γ
2
≤
∥
w
k
∥
2
≤
K
R
2
K^2\gamma^2 \le \Vert w_k \Vert^2 \le KR^2
K2γ2≤∥wk∥2≤KR2
亦即
K
≤
R
2
γ
2
K\le \frac {R^2} {\gamma^2}
K≤γ2R2
因此,在线性可分的条件下,算法会在
R
2
γ
2
\frac {R^2} {\gamma^2}
γ2R2 步内收敛.
感知器在线性可分的数据上可以保证收敛,但其存在以下不足:
- 在数据集线性可分时,感知器虽然可以找到一个超平面把两类数据分开,但并
不能保证其泛化能力
. - 感知器对
样本顺序
比较敏感.每次迭代的顺序不一致时,找到的分割超平面也往往不一致. - 如果训练集不是线性可分的,就永远不会收敛.
参数平均感知器
如果训练数据是线性可分的,那么感知器可以找到一个判别
函数来分割不同类的数据.如果间隔𝛾越大,收敛越快.
但是感知器并不能保证找到的判别函数是最优的(比如泛化能力高),这样可能导致 过拟合
.
感知器学习到的权重向量和训练样本的顺序相关. 在迭代次序上排在后面的错误样本比前面的错误样本,对最终的权重向量影响更大
比如有 1 000 个训练样本,在迭代 100 个样本后,感知器已经学习到一个很好的权重向量.
在接下来的899个样本上都预测正确,也没有更新权重向量.
但是,在最后第1 000个样本时预测错误,并更新了权重.这次更新可能反而使得权重向量变差
为了提高感知器的鲁棒性和泛化能力,我们可以将在感知器学习过程中的所有K个权重向量保存起来,并赋予每个权重向量
w
k
w_k
wk 一个置信系数
c
k
(
1
≤
k
≤
K
)
c_k (1\le k \le K)
ck(1≤k≤K)
最终的分类结果通过这 𝐾 个不同权重的感知器投票决定,这个模型也称为投票感知器
K为感知器在训练中权重向量的总更新次数
原理:令
τ
k
\tau_k
τk 为第 𝑘 次更新权重
w
k
w_k
wk 时的迭代次数(即训练过的样本数量),
τ
k
+
1
\tau_{k+1}
τk+1 为下次权重更新时的迭代次数,则权重
w
k
w_k
wk 的置信系数
c
k
c_k
ck 设置为从
τ
k
\tau_k
τk 到
τ
k
+
1
\tau_{k+1}
τk+1 之间间隔的迭代次数,
即
c
k
=
τ
k
+
1
−
τ
k
c_k=\tau_{k+1}-\tau_k
ck=τk+1−τk .置信系数
c
k
c_k
ck 越大,说明权重
w
k
w_k
wk 在之后的训练过程中正确分类样本的数量越多,越值得信赖.
这样,投票感知器的形式为
y
^
=
s
g
n
(
∑
k
=
1
K
c
k
s
g
n
(
w
k
T
x
)
)
\hat y=sgn(\sum_{k=1}^{K}{c_ksgn(w_k^Tx)})
y^=sgn(k=1∑Kcksgn(wkTx))
改进:投票感知器虽然提高了感知器的泛化能力,但是需要保存 K 个权重向量.
在实际操作中会带来额外的开销.因此,人们经常会使用一个简化的版本,
通过使用“参数平均”的策略来减少投票感知器的参数数量,也叫作平均感知器(Averaged Perceptron)
但这个方法需要在 处理每一个样本时都要更新𝒘̄.
因为𝒘和𝒘𝑡,𝑛 都是稠密向量,所以更新操作比较费时.
为了提高迭代速度,有很多改进的方法,让这个更新只需要在错误预测发生时才进行更新
扩展到多分类
未深入
为了使得感知器可以处理更复杂的输出,我们引入一个构建在输入输出联合空间上的特征函数𝜙(𝒙, 𝒚),将样本对(𝒙, 𝒚)映射到一个特征向量空间.
在联合特征空间中,我们可以建立一个广义的感知器模型,
y
^
=
a
r
g
m
a
x
y
∈
G
e
n
(
x
)
w
T
ϕ
(
x
,
y
)
\hat y = argmax_{y \in Gen(x)}{w^T \phi(x,y)}
y^=argmaxy∈Gen(x)wTϕ(x,y)
其中𝒘为权重向量,Gen(𝒙)表示输入𝒙所有的输出目标集合.