读书笔记--神经网络与深度学习(二)线性模型

3 线性模型

线性模型:机器学习中应用最广泛的模型,指通过样本特征的线性组合来进行预测的模型。
主要介绍四种不同的线性分类模型:logistic回归,softmax回归,感知器和支持向量机,这些模型区别主要在于使用了不同的损失函数。

3.1 线性判别函数和决策边界

一个线性分类器是由一个或多个线性的判别函数和非线性的决策函数组成。

3.1.1 两类分类

两类分类:类别标签y只有两种取值。
我们只需要一个线性判别函数,特征空间中所有满足条件的点组成一个分割超平面,称为决策边界。将特征空间一分为二,划分为两个区域,每个区域对应一个类别。
在特征空间中,决策平面与权重向量w正交,样本点到决策平面的有向距离可以看做x在w方向上的投影。
为了学习参数w,需要定义合适的损失函数和优化方法。
两类分类问题,最直接的损失函数是0-1损失函数。但是由于关于w的导数为0,无法优化w。

3.1.2 多分类

如果数据集可以多类线性可分的,那么一定存在一个“argmax”方式的线性分类器可以将它们正确分开。
假设一个多类分类问题的类别为{1, 2, · · · , C},常用的方式有以下三种:

  1. “一对其余”方式:把多类分类问题转换为C 个“一对其余”的两类分类问题。这种方式共需要C 个判别函数,其中第c个判别函数fc 是将类c的样本和不属于类c的样本分开。
  2. “一对一”方式:把多类分类问题转换为C(C − 1)/2个“一对一”的两类分类问题。这种方式共需要C(C − 1)/2个判别函数,其中第(i, j)个判别函数1 ≤ i < j ≤ C 是把类i和类j 的样本分开。
  3. “argmax”方式:这是一种改进的“一对其余”方式,共需要C 个判别函数,如果存在类别c,对于所有的其他类别c˜(˜c ̸= c) 都满足fc(x; wc) > fc˜(x, wc˜),那么x属于类别c。

3.2 Logistic回归

Logistic回归是一种常用的处理两类分类问题的线性模型。
激活函数:作用是把线性函数的值域从实数区间“挤压”到了(0, 1)之间,可以用来表示概率。
在logistic回归中使用logistic函数作为激活函数。

3.2.1 参数学习

Logistic 回归采用交叉熵作为损失函数,并使用梯度下降法来对参数进行优化。训练过程为初始化w0,然后迭代更新参数。
风险函数是关于参数w的连续可导的凸函数。因此除了梯度下降法之外,Logistic回归还可以用高阶的优化方法,比如牛顿法,来进行优化。

3.3 Softmax回归

Softmax回归也称多项或多类的Logistic回归,是在多类分类问题上的推广。

3.3.1 参数学习

Softmax回归使用交叉熵损失函数来学习最优的参数矩阵W。
采用梯度下降法,Softmax回归的训练过程为:初始化W0 ,然后进行迭代更新。

3.4 感知器

感知器是最简单的人工神经网络,只有一个神经元,是一种简单的两类线性分类模型。

3.4.1 参数学习

感知器的学习算法是一种错误驱动的在线学习算法 。先初始化一个权重向量 w (通常是全零向量),然后每次分错一个样本 (x, y)时,即ywTx < 0,就用这个样本来更新权重。(随机梯度下降法更新)

3.4.2 感知器的收敛性

如果训练集线性可分,一定可以有限次迭代收敛。
如果训练集不是线性可分,不能确保收敛。
虽然感知器在线性可分的数据上可以保证收敛,但其存在以下不足之处:

  1. 在数据集线性可分时,感知器虽然可以找到一个超平面把两类数据分开,但并不能保证能其泛化能力。
  2. 感知器对样本顺序比较敏感。每次迭代的顺序不一致时,找到的分割超平面也往往不一致。
  3. 如果训练集不是线性可分的,就永远不会收敛。

3.4.3 参数平均感知器

感知器不能保证找到的判别函数是最优的,这样可能导致过拟合。
感知器学习到的权重和训练样本的顺序相关,排在后面的影响更大。
为了解决这个问题,可以使用“参数平均”的策略,也叫投票感知器。
投票感知器虽然提高了感知器的泛化能力,但是需要保存K 个权重向量。在实际操作中会带来额外的开销。因此,人们经常会使用一个简化的版本,也叫做平均感知器。

3.4.4 扩展到多类分类

引入一个构建输入输出联合空间上的特征函数,将样本映射到一个特征向量空间,定义广义的感知器模型。
广义感知器在满足广义线性可分条件时,也能够保证在有限步骤内收敛。

3.5 支持向量机

支持向量机SVM是一个经典两类分类算法,分割超平面具有更好的鲁棒性。
支持向量机的目标是寻找一个超平面(w∗, b∗)使得间隔最大。分割超平面有多个,但是间隔最大的是唯一的。
数据集中所有满足足y(n)(wTx(n) + b) = 1的样本点,都成为支持向量。

3.5.1 参数学习

这些在约束边界上样本点称为支持向量(Support Vector),即离决策平面距离最近的点。
支持向量机的目标函数可以通过SMO等优化方法得到全局最优解,因此比其它分类器的学习效率更高。此外,支持向量机的决策函数只依赖于支持向量,与训练样本总数无关,分类速度比较快。

3.5.2 核函数

支持向量机还有一个重要的优点是可以使用核函数,隐式地将样本映射到更高维空间,从而解决原始空间中的线性不可分问题。
通常我们不需要显式地给出ϕ(x)的具体形式,可以通过核技巧(Kernel Trick)来构造。

3.5.3 软间隔

软间隔支持向量机的参数学习和原始支持向量机类似,其最终决策函数也只和支持向量有关。
在支持向量机的优化问题中,约束条件比较严格。如果训练集中的样本在特征空间中不是线性可分的,就无法找到最优解。为了能够容忍部分不满足约束的样本,我们可以引入松弛变量ξ。引入松弛变量的间隔称为软间隔。

3.6 损失函数对比

Logistic回归、感知器和支持向量机。虽然它们的决策函数相同,但由于使用了不同的损失函数以及相应的优化方法,导致它们之间在实际任务上的表现存在一定的差异。

猜你喜欢

转载自blog.csdn.net/tianyouououou/article/details/95097348