统计学习方法---感知机

感知机是二类分类的线性分类模型

输入为实例的特征空间,输出为实例的类别,取+1,-1。

感知机对应于输入空间中将实例划分为正负两类的分离超平面,属于判别模型。

感知机旨在求出将训练数据进行线性划分的分离超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。

看到这依旧不知道感知机是个啥玩意。。。

 

感知机模型

输入一个x经过感知机函数的计算,得出输出类别。

感知机的假设空间是定义在所有线性分类模型或线性分类器,即函数集合

几何解释:w是超平面的法向量,b是超平面的截距。这个超平面将特征空间分为两个部分,位于两部分的点被分为正,负两类。

模型一开始已经知道了,其实模型就是那个函数,感知机的学习过程就是利用训练集给出实例的特征向量和输出的类别,根据策略来最终确定一个最好的参数w,b(策略就是告诉你咋样能选出一个最好的模型参数),算法就是告诉你咋求这个参数。这就算学习好了。之后去预测新的数据的类别就行了。

---------------------------------------------------------------------------------------------------------------------------------------------------------------

感知机给出训练集中实例的类别咋给出的?

事先给出来的,绝对是正确的,用这个来训练机器

带入模型后每次都是求大于0?为啥?因为符号函数的特性,x大于0 ,取正1,x小于0,取负1

 

感知机策略(就是咋选,用什么方法来选)

学习目标:求得一个能够将训练集正实例点和负实例点完全正确分开的分离超平面。

为了得到这样的超平面,那当然就要确定参数,确定参数,超平面就确定了呀!

定一个学习策略,定义一个损失函数并将损失函数极小化。这是句套话,具体到不同的模型上,损失函数也不相同,但是策略就是为了选出最好的。将问题转化为最优解问题。

这里有一个问题就是怎么设计这个损失函数,我不知道咋设计,有人知道。

感知机所采用的损失函数:误分类点到超平面S的总距离。

点到S的距离:

对于误分类的点来说

成立。为啥?啥意思,成立之后就可以去掉上面那个式子的绝对值然后进行化简求导计算。

这样损失函数就确定了

显然,损失函数是非负的。

如果没有误分类点,损失函数的值为0.

一个特定的样本点的损失函数:在误分类时参数w,b的线性函数,在正确分类时是0.所以你看看损失函数是个连续可导的函数呢!

感知机学习的策略是在假设空间中选取使损失函数式最小的模型参数。你看看,又变成数学问题了

---------------------------------------------------------------------------------------------------------------------------------------------------------------

感知机算法(求损失函数式的最小值,咋求?)

随机梯度下降法

感知机的算法:原始形式和对偶形式

证明感知机算法是可收敛的

 

求参数w,b使其成为损失函数极小化问题的解

随机梯度下降法:梯度就是求导,一次随机选取一个误分类点使其梯度下降,对w,b进行更新

通过迭代可以期待损失函数不断减小

 

感知机学习算法的原始形式:

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

为啥小于0了就要更新了?同号正确分类,异号说明分错了,就小于0了。

 

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

 

与原始形式的区别

 

 

收敛性

 

当训练数据集线性可分时,感知机学习算法是收敛的。感知机算法在训练数据集上的误分类次数k满足不等式:

当训练数据集线性可分时,感知机学习算法存在无穷多个解,其解由于不同的初值或不同的迭代顺序而可能有所不同。

证明书上有,不是那么重要,只是告诉你,按照这个式子一直算下去是可以算出来的。。

 

 

资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 在本文中,我们将探讨如何通过 Vue.js 实现一个带有动画效果的“回到顶部”功能。Vue.js 是一款用于构建用户界面的流行 JavaScript 框架,其组件化和响应式设计让实现这种交互功能变得十分便捷。 首先,我们来分析 HTML 代码。在这个示例中,存在一个 ID 为 back-to-top 的 div 元素,其中包含两个 span 标签,分别显示“回到”和“顶部”文字。该 div 元素绑定了 Vue.js 的 @click 事件处理器 backToTop,用于处理点击事件,同时还绑定了 v-show 指令来控制按钮的显示与隐藏。v-cloak 指令的作用是在 Vue 实例渲染完成之前隐藏该元素,避免出现闪烁现象。 CSS 部分(backTop.css)主要负责样式设计。它首先清除了一些默认的边距和填充,对 html 和 body 进行了全屏布局,并设置了相对定位。.back-to-top 类则定义了“回到顶部”按钮的样式,包括其位置、圆角、阴影、填充以及悬停时背景颜色的变化。此外,与 v-cloak 相关的 CSS 确保在 Vue 实例加载过程中隐藏该元素。每个 .page 类代表一个页面,每个页面的高度设置为 400px,用于模拟多页面的滚动效果。 接下来是 JavaScript 部分(backTop.js)。在这里,我们创建了一个 Vue 实例。实例的 el 属性指定 Vue 将挂载到的 DOM 元素(#back-to-top)。data 对象中包含三个属性:backTopShow 用于控制按钮的显示状态;backTopAllow 用于防止用户快速连续点击;backSeconds 定义了回到顶部所需的时间;showPx 则规定了滚动多少像素后显示“回到顶部”按钮。 在 V
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值