-Q:将训练样本分开的超平面可能有很多, 哪一个好呢?
-A:应选择”正中间”, 容忍性好, 鲁棒性高, 泛化能力最强.
2. Hard-margin SVM
****输入空间:****欧几里德空间或离散集(Euclidean space or discrete set)
****输出空间:****欧几里得空间或希尔伯特空间(Euclidean space or Hilbert space)内积空间
****假设:****输入空间的实例可以映射到特征空间中的特征向量。(一对一)。学习是在特征空间中进行的
训练数据集:
****目标:****找到一个超平面 wx + b = 0 (w,b为参数)
****思路:****间隔最大(maximum margin)
线性支持向量机SVM:
3. 函数间隔 VS 几何间隔
确信度(confidence):|w x + b|
****正确性(correctness):****w x + b与y符号相同时,表示预测正确,相反w x + b与y符号相反时,表示预测错误,则正确的可以写成 y ( w x + b )
因此结合确信度和正确性 可以得到:y ( w x + b )
(1)函数间隔
给定训练数据集T,平面(w,b)
目前可以得到这样的结果。
但是,如果将w变为2w,b变成2b,超平面不会发生变化,但是函数间隔变化了
因此:我们选择使用||w|| ( w的二范数)
从而引出几何间隔
(2)几何间隔
4. 最大间隔化
****基本思想:****求解能正确划分训练数据集,且geometric margin 最大的分离超平面(唯一)
间隔最大化又称硬间隔最大化(Maximum Hard-margin)
直观解释****:****对训练数据集找到几何间隔最大的超平面意味着以充分大的确信度对训练数据进行分类。也即,不仅将正负实例点分开,而且对最难分的实例点(离超平面最近的点)也有足够大的确信度将它们分开。这样的超平面应对未知的新实例有很好的分类预测能力。
****如何求该超平面?****几何间隔最大化(最优化)
(每个样本的几何间隔至少是r)
我们令 r=1
(实质是一个凸二次规划)
5. 硬间隔SVM的算法描述
输入:训练集T
输出:最大间隔超平面w* x + b
得到最大间隔超平面和决策函数
6. 支持向量
****支持向量:****离超平面最近的点,即满足不等式取等的时候
长带的宽度:H1和H2的距离叫间隔margin
H1和H2称作间隔的边界
H1和H2上的训练样本点叫支持向量
中间线上的叫支持向量机
在决定分离超平面时只有支持向量起作用;其他的点不影响求解
若移动支持向量将改变所求的解;但若在间隔边界以外移动其他实例点,甚至去掉这些点,则解释不好改变的。
由于支持向量在确定分离超平面中起决定性作用,故这种分类模型称支持向量机。
支持向量的个数一般很少,所有支持向量机由很少的“重要的”训练样本确定。
7. 硬间隔SVM例题
由于当训练集比较大时,手动解法很复杂,因此我们引入对偶问题
8. 对偶问题
原始问题—>对偶问题
****目的:****方便解决问题和方便引入核函数(非线性分类变为线性分类)
如何进行对偶理论不再此讲解
原始问题:
对于每一个约束,引入一个拉格朗日参数a,因此问题转化为:
对于求解对偶问题,我们调换min和max,因此得到了原始问题的对偶问题:
求解对偶问题
求解对偶问题,就是要解w,b,a
先求拉格朗日函数的最小问题----求导
求出对w和b的导数之后,可以解出w以及关系
将求出来的两项带入拉格朗日函数中,
因此问题进一步得到转化
(2)接下来求a,求最大
由于max中有一个负号,我们将其取出,就变成了min最小化问题,如下
至此我们就完成了原问题到对偶问题的转化
可以看出,原问题是对w,b求解,对偶问题是对a求解,求出a就可以算出w,但是b怎末求呢?给出如下定理,可以直接使用:
并且w* 和b*都是唯一的
Vue 面试题
1.Vue 双向绑定原理
2.描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?
3.你是如何理解 Vue 的响应式系统的?
4.虚拟 DOM 实现原理
5.既然 Vue 通过数据劫持可以精准探测数据变化,为什么还需要虚拟 DOM 进行 diff 检测差异?
6.Vue 中 key 值的作用?
7.Vue 的生命周期
8.Vue 组件间通信有哪些方式?
9.watch、methods 和 computed 的区别?
10.vue 中怎么重置 data?
11.组件中写 name 选项有什么作用?
12.vue-router 有哪些钩子函数?
13.route 和 router 的区别是什么?
14.说一下 Vue 和 React 的认识,做一个简单的对比
15.Vue 的 nextTick 的原理是什么?
16.Vuex 有哪几种属性?
17.vue 首屏加载优化
18.Vue 3.0 有没有过了解?
19.vue-cli 替我们做了哪些工作?
,为什么还需要虚拟 DOM 进行 diff 检测差异?
6.Vue 中 key 值的作用?
7.Vue 的生命周期
8.Vue 组件间通信有哪些方式?
9.watch、methods 和 computed 的区别?
10.vue 中怎么重置 data?
11.组件中写 name 选项有什么作用?
12.vue-router 有哪些钩子函数?
13.route 和 router 的区别是什么?
14.说一下 Vue 和 React 的认识,做一个简单的对比
15.Vue 的 nextTick 的原理是什么?
16.Vuex 有哪几种属性?
17.vue 首屏加载优化
18.Vue 3.0 有没有过了解?
19.vue-cli 替我们做了哪些工作?
[外链图片转存中…(img-QXTIZf2E-1714724347363)]