机器学习(四):感知机、感知机学习算法、学习算法的对偶形式

版权声明:欢迎转载,转载请注明出处! https://blog.csdn.net/weixin_40871455/article/details/88957980

感知机是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1二值。感知机学习旨在求出将训练数据进行线性划分的分离超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。它是神经网络与支持向量机的基础。

感知机模型

假设输入空间(特征空间)是x∈Rn,输出空间是y={+1,-1}。输入是实例的特征向量,对应于输入空间的点;输出是实例的类别。输入空间到输出空间的如下函数:

                                                                            f(x) = sign(w*x + b)

称为感知机。其中w和b为感知机模型参数,w叫做权值或权值向量,b叫做偏置,w·x表示w和x的内积,sign是符号函数,即:

感知机是一种线性分类模型,属于判别模型。感知机模型的假设空间是定义在特种空间中的所有线性分类模型或线性分类器,即函数集合{f | f(x)=w·x+b}

感知机模型:

感知机学习策略

显然,损失函数L(w,b)是非负的,如果没有误分类点,损失函数的值是0。而且,误分类点越少,误分类点离超平面越近,损失函数的值就越小。一个特定的样本点的损失函数:在误分类时是参数w,b的线性函数,在正确分类时是0。因此,给定训练集T,损失函数L(w,b)是w,b的连续可导函数。

感知机学习算法

  通过上面的损失函数,我们很容易得到目标函数

  感知机学习算法是误分类驱动的,具体采用随机梯度下降法( stochastic gradient descent )。

原始形式

我们用梯度下降的方法,对参数 w 和 b 进行不断的迭代更新。任意选取一个超平面 然后使用梯度下降法不断地极小化目标函数。随机梯度下降的效率要高于批量梯度下降

算法1 (感知机学习算法的原始形式)

这种学习算法直观上有如下解释:当一个样本被误分类时,就调整w和b的值,使超平面S向误分类点的一侧移动,以减少该误分类点到超平面的距离,直至超平面越过该点使之被正确分类。

解:构建最优化问题:

这里取初值  

算法的收敛性

对于线性可分数据集感知机学习算法原始形式收敛,即经过有限次迭代可以得到一个将训练数据集完全正确划分的分离超平面及感知机模型。

证明实在头大,略

感知机学习算法的对偶形式

算法2 (感知机学习算法的对偶形式)

还是上面那个例子

  与原始形式一样,感知机学习算法的对偶形式迭代是收敛的,存在多个解。

猜你喜欢

转载自blog.csdn.net/weixin_40871455/article/details/88957980