点赞再看,养成习惯,您动动手指对原创作者意义非凡🤝 备战秋招面试 微信搜索公众号【TechGuide】关注更多新鲜好文和互联网大厂的笔经面经。 作者@TechGuide
当你的才华还撑不起你的野心时,你应该静下心去学习 。 前言之前两篇文章我们解释了SVM作为线性模型的相关问题(还不理解的朋友可以点击文末链接阅读),如果你已经十分熟悉,那么这篇文章将会有新的内容,是关于SVM如何处理非线性的分类问题。这里我们引入硬间隔(Hard Margin)和软间隔(Soft Margin)的概念,之前我们讨论的分类问题是不允许有任何一个样本点被分类错误的,即间隔内是不能有样本点的,称为硬间隔。而软间隔则与之对应,允许一定量的错误分类,即允许一些样本点在我们“定义”的间隔内分布。
看到这里如果你有疑惑,请继续读下去,以下会有详细的说明。。
何谓非线性问题前面我们讲到的都是线性可分的样本集,即可以用一条线(或超平面)将样本集划分成两类,但是在处理非线性问题,即不可用一条直线划分的样本集(如下图)时,如果我们想要严格的找到一个超平面分类下图中两种样本点,那么之前的优化问题将会无解,不存在这样的线性分类器。
source:https://blog.csdn.net/guoziqing506/article/details/81120354
但是,如果我们考虑上左图样本点分布会发现,仿佛把“另类”的那个白点分类错(也就是分到黑点样本那一类),得到的分类效果和分类器应该更优,所以在处理一些非线性问题时,我们将划分的标准放宽反而会得到更好的效果,同时也使优化问题有解.
损失函数Hinge Loss的定义如何放宽呢?我们引入一个损失函数loss,即把原优化问题的目标函数 Min 1 2 ω T ω \text{Min}\, \frac{1}{2} \omega^T\omega Min21ωTω改造为 Min 1 2 ω T ω + Loss (1) \text{Min}\, \frac{1}{2} \omega^T\omega + \text{Loss} \tag 1 Min21ωTω+Loss(1)。这样,我们允许在间隔内有一些样本点和一些错误分类的点,此之谓软间隔(Soft Margin)。 那么如何定义这个损失函数使其有解且能高效分类呢?这里我们有两点想法,最朴素的思想是从分错的点数来定义,分类错一个就增加一点loss,这样我们最小化这个loss就很合理。但是这样定义有一个问题,这样得到的loss函数是一个跳跃函数,非连续函数在优化问题中对求导会存在一些问题,为求简便,我们从距离的角度考虑,即点在间隔外loss为0,点在间隔内(分错的点)依据其与上图中的蓝线距离定义loss,最终得到如下定义: L o s s = { if y i ( ω T X + b ) ≥ 1 , = 0 ; if y i ( ω T X + b ) < 1 , = 1 − y i ( ω T X + b ) (2) Loss=\left\{ \begin{aligned} \text{if} \,y_i(\omega^TX+b) \geq 1,\,& = 0\,;\,\,\,\,\\ \text{if} \,y_i(\omega^TX+b) < 1\,,& = 1- y_i(\omega^TX+b)\, \end{aligned} \right.\tag 2 Loss={ifyi(ωTX+b)≥1,ifyi(ωTX+b)
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?