感知机Perceptron

感知机学习策略

数据假设和学习目标

假设训练数据是线性可分的,感知机学习的目标是求得一个能够将训练集正实例点和负实例点完全正确分开的分离超平面

损失函数

损失函数的一个自然选择是误分类点的总和。但这样的损失函数不是参数w,b的连续可导函数,不易优化。
另一个选择是误分类点到超平面S的总距离。
假设超平面S的误分类点集合为M,那么所有误分类点到超平面的总距离为
<nobr> 1||w||xiMyi(wxi+b) </nobr>
不考虑 <nobr> 1||w|| </nobr>,就得到感知机学习的损失函数。

感知机学习算法

原始形式primal

<nobr> minw,bL(w,b)=xiMyi(wxi+b)(2.5) </nobr>,其中M为误分类点的集合。
感知机学习算法是误分类驱动的,具体采用随机梯度下降法(stochastic gradient descent)。首先,任意选取一个超平面 <nobr> w0,b0 </nobr>,然后用梯度下降法不断地极小化目标函数(2.5)。极小化过程中不是一次使M中所有误分类点的梯度下降,而是一次随机选取一个误分类点使其下降。
原始算法描述

给定感知机模型 <nobr> f(x)=sign(wx+b) </nobr>
1. 选取初值 <nobr> w0,b0 </nobr>
2. 在训练集中选取数据 <nobr> (xi,yi) </nobr>
3. 如果 <nobr> yi(wxi+b)0 </nobr>

<nobr> wbw+ηyixib+ηyi </nobr>

4. 转至2,直到训练集中没有误分类点。

直观解释:
当一个实例点被误分类,即位于分离超平面的错误一侧时,则调整 <nobr> w,b </nobr>的值,使分离超平面向该误分类点的一侧移动,以减少该误分类点与超平面间的距离,直至超平面越过该误分类点使其被正确分类。

感知机学习算法由于采用不同的初值或选取不同的误分类点,解可以不同。

算法的收敛性

对偶形式dual

对偶形式的基本想法是,将w和b表示为实例 <nobr> xi </nobr>和而标记 <nobr> yi </nobr>的线性组合的形式,通过求解其系数而求得w和b。
对误分类点 <nobr> (xi,yi) </nobr>通过

<nobr> wbw+ηyixib+ηyi </nobr>

逐步修改w,b。设修改n次,则w,b关于 <nobr> (xi,yi) </nobr> 的增量分别是 <nobr> aiyixi </nobr> <nobr> aiyi </nobr> ,这里 <nobr> ai=niη </nobr> 。这样,从学习过程不难看出,最后学习到的 <nobr> w,b </nobr> 可以分别而表示为
<nobr> wb=i=1Naiyixi=i=1Naiyi </nobr>

这里, <nobr> ai0,i=1,...,N </nobr> <nobr> η=1 </nobr>,表示第i个实例点由于误分类而进行更新的次数。实例点更新次数越多,意味着它距离分离超平面越近,也就越难正确分类。这样的实例对学习结果影响最大。

对偶算法描述

输出 <nobr> a,b </nobr>,给定感知机模型 <nobr> f(x)=sign(j=1Najyjxjx+b) </nobr>
其中 <nobr> a=(a1,a2,...,aN)T </nobr>
1. <nobr> a0,b0 </nobr>
2. 在训练集中选取数据 <nobr> (xi,yi) </nobr>
3. 如果 <nobr> yi(j=1Najyjxjx+b)0 </nobr>

<nobr> aibai+ηb+ηyi </nobr>

4. 转至2,直到训练集中没有误分类点。

对偶形式中训练实例仅以内积的形式出现,为了方便,可以预先将训练集中实例间的内积计算出来并以矩阵的形式存储,这个矩阵就是Gram矩阵。
<nobr> G=[xixj]N×N </nobr>

参考文献

《统计学习方法》第2章

全部评论

相关推荐

2025-12-12 19:01
南京航空航天大学 C++
秋招没咋投,准备&nbsp;wxg&nbsp;转正之后摆烂了。结果不堪字节&nbsp;HR&nbsp;的骚扰还是面了一下字节。之前想去字节的时候怎么面都挂。现在想着随便面一下结果三面技术面都意外顺利还有加面。十月中旬字节发了意向,wxg&nbsp;转正结果无响应。十月底字节拉了保温群,wxg&nbsp;口头通过,系统显示考核中。十一月初和字节&nbsp;ld&nbsp;交流之后得知&nbsp;base&nbsp;居然能选海外,甚至能小&nbsp;wlb&nbsp;一下,wxg&nbsp;无响应无人联系。十一月中旬把字节&nbsp;base&nbsp;转到了海外,wxg&nbsp;流程灰了,一问超时忘处理了,过两天又变考核中了。十一月下旬字节换了海外&nbsp;HR&nbsp;对接,问了期望薪资,wxg&nbsp;考核终于显示通过,无&nbsp;HR&nbsp;保温,无其他保温。十一月底给字节报了个天价,想吓吓他们,同时告诉微信字节要开了,微信无响应。同样十一月底字节&nbsp;HR&nbsp;告诉我确实给不到那么高,但是能拿期权补上,问能不能接受。微信无响应。同样十一月底字节&nbsp;HR&nbsp;告知了具体方案,符合预期。&nbsp;微信无响应。十二月上旬催&nbsp;wxg&nbsp;不开我就盲拒了,wxg&nbsp;HR&nbsp;火急火燎的打电话问情况,问期望。我给了一个不算夸张的总包数字,因为今年市场在涨,过了三天还不联系我,我再催,约时间下午打电话,非得在我给出的数字上压下去几万,微信又不差这点,为什么不能满足我,让我没有拒绝的理由呢?一番纠结抗争,求稳还是追求挑战,最终选择接受迎接新的挑战,因为堂吉诃德永远不会停下脚步!回想起来,在&nbsp;wxg&nbsp;谈薪的阶段,我认为并没有给予我一定的重视,即使&nbsp;HR&nbsp;表示我在实习期间的表现和之前的面评都很靠前。也没有感觉到想要争取我,虽然我表示拒了&nbsp;offer&nbsp;之后要给我加面委定&nbsp;t6&nbsp;再涨,但我三个月没面试让我面面委那就是白给,还是算了。有缘再见了我亲爱的&nbsp;wxg,再见了曾经的梦中情厂,再见亲爱的&nbsp;mt,再见亲爱的朋友们。也再见,北京的一切。我想润了。秋招结束,卸载牛客,下一个三年,下一个五年,下一个十年后再来看看。
面试中的大熊猫爱吃薯...:我嫉妒得狗眼通红
点赞 评论 收藏
分享
爱读书的小章鱼很爱吃:如果是算法工程师岗位,感觉没必要做agent项目吧,agent偏ai应用
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务