线性模型是机器学习中应用最广泛的模型,指通过样本特征的线性组合来进行预测的模型。给定一个D维样本xxx=[x1,...,xD]T ,其线下你给组合函数为:
f(x;w)=w1x1+w2x2+...+wDxD+b=wTxwTxwTx+b
其中www=[w1,...wD]T为为D维的权重向量。直接用f(x;w)来预测输出目标y=f(x;w)。在分类问题中,由于输出目标y是一些离散的标签,而f(x;w)的置于为实数,因此无法直接用f(x;w)来进行预测,需要引入一个非线性的决策函数g(.)来预测输出目标
y=g(f(x;w))
其中f(x;w)也称为判别函数。典型的二分类问题的结构图如下:
3.1线性判别函数和决策边界
一个线性分类模型是由一个(或多个)线性的判别函数f(x;wx;wx;w)=wTxwTxwTx+b和非线性的决策函数g(.)构成。
3.1.1二分类
二分类问题的类别标签y只有两种取值,通常可以设为{+1,-1}。在二分类问题中,我们只需要一个线性判别函数f(x;wx;wx;w)=wTxwTxwTx+b。特征空间KaTeX parse error: Undefined control sequence: \cal at position 1: \̲c̲a̲l̲{R}中满足f(x;wx;wx;w)=0的点组成一个分割超平面,称为决策边界。决策边界将特征空间一分为二,划成两个区域,每一个区域对应一个类别。
给定N个样本的训练集KaTeX parse error: Undefined control sequence: \cal at position 1: \̲c̲a̲l̲{D}={(x^{(n)},y….其中yn∈(+1,−1).线性模型视图学习到参数w∗w∗w∗,使得对于每个样本(xn,yn)尽量满足
f(xxx(n);www∗)>0ify(n)=1f(xxx(n);www∗)>0ify(n)=1
3.1.2多分类
多分类问题是指分类的类别数C大于2.多分类一般需要多个线性判别函数,但是设计这些判别函数有很多种形式。
假设一个多分类的问题的类别是{1,2,...C}。常用的方式有以下三种:
(1)“一对其余”方式:把多分类问题转换为???? 个“一对其余”的二分类问
题.这种方式共需要???? 个判别函数,其中第???? 个判别函数fc 是将类别???? 的样本和
不属于类别???? 的样本分开.
(2)“一对一方式”::把多分类问题转换为????(???? − 1)/2 个“一对一”的二分
类问题.这种方式共需要????(???? − 1)/2 个判别函数,其中第(????, ????) 个判别函数是把类
别???? 和类别???? 的样本分开.
(3)“argmax”方式:这是一种改进的“一对其余"方式,共需要C个判别函数
fc(x,wcx,wcx,wc)=wcTxwcTxwcTx+bcc∈{1,...C}
对于样本????,如果存在一个类别????,相对于所有的其他类别????(̃ ???? ̃ ≠ ????)有????????(????;????????) >
????????̃(????,????????̃),那么????属于类别????.“argmax”方式的预测函数定义为
y=argmaxc=1Cfc(x;wx;wx;wc)
3.2 logistic回归
对于二分类问题,假定y∈{0,+1},给定一个输入向量xxx,它可能对应一张图片(假设包含猫),比如你可能想要识别这张图片是否包含一只猫,你想要一个算法能够输出预测y^,也就是对实际值y的估计。也就是说你想要让y^表示y等于1的可能性,前提条件是给定了输入特征xxx。我们引入非线性函数sigmoid函数:g(.)=σ来预测后验概率p(y=1∣xxx)。
lety≈y^=p(y=1∣xxx)=g(f(x;wx;wx;w))=g(wTxwTxwTx+b)=σ(wTxwTxwTx+b)
其中sigmoid函数(也称为logistics函数)的图像为:
sigmoid函数函数表达式为:σ(z)=1+e−z1.由表达式可知,如果z很大的话σ(z)≈1。相反的,如果z很小,那么σ(z)≈0。因此此时我们的工作就是让机器学习参数www,b使得z=wTxwTxwTx+b较大,这样才能使y^成为对y=1这一情况的一个很好的估计。
3.2.1 参数学习
logistics回归采用交叉熵作为损失函数,并使用梯度下降法来对参数进行更新(优化)。
损失函数为(最小化损失函数):
ℜ(www,b)=−N1n=1∑N(y(n)log(y^(n))+(1−yn)log(1−y^(n)))
直观的理解:当y=1时损失函数为−log(y^),如果想要损失函数尽可能的小,那么y^就要尽可能的大,又因为sigmiod函数的取值范围为[0,1],所以y^会尽可能的接近1。同理当y=0时损失函数为−log(1−y^),如果想要损失函数尽可能的小,就要使y^尽可能接近0。
3.3 softmax回归
https://note.youdao.com/ynoteshare1/index.html?id=a15461dfbaf9b46fe22a75dc0ef34b46&type=note
Softmax 回归(Softmax Regression),也称为多项Multinomial)或多类(Multi-Class)的Logistic 回归,是Logistic 回归在多分类问题上的推广。
对于多分类问题,类别标签y∈{1,2,...C}可以有C个可能取值。给定一个样本xxx,softmax回归预测的属于类别c的概率为
KaTeX parse error: Got function '\tilde' with no arguments as subscript at position 70: …w_c^Tx})}{\sum_\̲t̲i̲l̲d̲e̲{c}^{C}exp(\pmb…
其中wcwcwc为第第c类的权重向量。
3.3.1参数学习
采用交叉熵损失函数,softmax的损失函数为:
ℜ(www,b)=−N1n=1∑Ny(n)log(y^(n))
学习
采用交叉熵损失函数,softmax的损失函数为:
ℜ(www,b)=−N1n=1∑Ny(n)log(y^(n))