这个有可能求得出偏导数不存在方向导数一定不存在吗吗

一下是我自己的一些认知,如果有理解不到位的地方还请指正!!谢谢

我们下面主要是围绕这几个问题来展开叙述

  1. 我们在使用分类问题的时候,什么样的决策边界才是最好的
  2. 如果特征数据本身很难区分,怎么办才好
  3. 计算复杂度怎么样?能够实际应用吗

好,下面我们来进行第一个问题的解释:

就像上面这张图片,如果我们想要将其分开,我么有以上两种分开的方法,都可以比较好的分开图片,但是支持向量机寻找的就是最优的决策边界,如图所示,比较好的分割这一份数据的边界时LargeMargin 这条线, 由此我们选择决策边界的时候 我们的宗旨是:选择离我们最近的点的最大距离。

数据点到决策边界的距离

我们既然想要求出离我们最近的点的最大距离,第一步我们当然是要求出离我们最近的点,

如图所示,我们想要求出点X到我们决策边界面的最短距离,目的就是求出X到决策面的距离

  • 这时候我们就求出点到面之间的距离了:(1/法向量的长度)*(法向量与该点的乘积+D)

支持向量机,是一个有监督的学习算法,需要我们人为的给出X 和 y,我们的数据集定义为(X1,y1)(x2, y2)….(xn, yn),y为样本类别,这里我们定义: 当X为正例的时候y = +1, 当x为负例的时候 y = -1,这里这样定义是为了方便以后进行运算

这里是确保 yi*y(x) 始终是大于零的

我们上面提到我们在寻找最优边界的时候,是要寻找距离决策边界最近的点的最远距离,

这时候就出现了我们需要优化的目标函数:

这个函数的意义就是,寻找离我们最近的点i 然后找出w和b让这个点距离我们最远

  • 但是现在问题又来了,我们在优化这个式子的时候,未免不觉得这个式子有点长,所以我们可以进行放缩一下,上面提到我们 确保 yi * y(x) ≥ 0 这时候我们可以通过某一种特定的变化来让yi*y(x) 和大于1
  • 这时候我们可以把下面的式子最小值看作为1
  • 这时候我们优化的目标就变成了
  • 我们再进行机器学习的时候通常会把求最大值的问题转换成最小值的问题,既然我们要求1/|w| 的最大值, 相反我们就需要求 w的最小值, 这时候我们就要求w的最小值约束条件为
  • 我们还可以进行转换,就是为了方便以后进行运算,转换完之后的的式子为:

从上面可以知道我们想要求1/2 * W^2 的最大值,在 它的约束条件下,这时候就不得不提我们的拉格朗日乘子法了。

拉格朗日乘子法解决的问题是:在约束条件下求解最优值的问题

含义:这种方法可以将一个有 n 个变量 的与k 个约束条件 的最优化问题转换成一个有n+k个变量的方程组的极值的问题, 这种方法引入了一个新的标量未知数,让这几个变量都用这个未知量来替代,最后转换成求一个未知量极值的问题

然后分别对x,y,α的一阶偏导数等于零 ,最后得出x和y

当我们使用拉格朗日乘子法得出的公式为:

这里引入一个公式KKT 条件:

这里前面的式子为: 我们需要求一个中间变量α让这个式子为极值, 然后在使用之前的的方法求最小值

后面的式子就是先求最小值 在求最大值

  • 分别给w和b求偏导并且等于零最后的结果是:
  • 我们把结果带入原式子得出:
  • 我们需要求该式子的极大值

  • 和往常一样我们需要求出这个式子的最小值,就是在这前面加一个负号即可

    不要忘了这个式子的约束条件为 ,其中 αiyi == 0 是之前b求偏导得出的结果,αi≥0是拉个朗日乘子法中必须要求的

现在我们要求解这个分类函数的最优决策边界其中 x1(3,3),x2(4,3)为一类, x3(1,1)为另一类

这时候我们把式子带进去后得到的结果是

我们的决策边界求解,单纯依靠 离决策边界最近的点的影响(支持向量),剩下的点的a值都为零。就是这两个点 把这个 面支撑起来的,所以称为支持向量积

我们在处理数据的时候,数据不可能分布完全合理,可能存在一些”不规则”的点,例如我所标记的点, 如果我们还用我们之前的哪一种方法 yiy(x) > 0 放缩过后, 为 yiy(x) > 1 这样是确保能够完美分割,但是像右边这张图所示,如果我们把, 所有点都考虑在内的话 这样反而得不偿失,这时候我们要引入 “软间隔”,让我们的约束条件没有那么苛刻,

所以我们新的目标函数为:

我们加入C目的是为了 能够控制松弛因子的大小 我们的目的是让最终的结果整体偏小

当我们给定C比较大的时候 :意味着 分类严格不能够有错误

但我们给定C比较小的时候: 意味着 分类任务可以有更大的错误容忍

当我们遇到低维不可分的问题的时候 ,我们可以把它映射到较高的维度中来方便我们进行分类

如果我们出现右边这种情况的话,如果在二维空间中分类的话,可能出现过拟合的情况,这时候如果我们把它映射到高纬度中,也许可能会变得比较好区分一些

核变换:低纬度不好区分的时候我们可以通过非线性变化,将数据映射到高纬度中来方便我们进行区分

作用:可以是我们在低维空间中能够完成在高纬度中样本内积的运算

由于需要计算内积,所以在新的数据在9维空间,需要计算<f(x),f(y)>的内积,需要花费O (n^2) 。

似乎还能计算,但是如果将维数扩大到一个非常大数时候,计算起来可就不是一丁点问题了。

所以使用核函数的好处是:在低维度中去完成高纬度中样本内积的计算

我们在应用的时候直接照着这个公式往里面套即可。

我们在遇到上面这个图像的时候不能够在低维空间中较好的分割这两部分,于是我们可以映射到高维空间中这样就比较好运算

}

本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。

}

当为线性函数时,其中。可拆解为:

一阶梯度为jaccob矩阵
特别的,当时,一阶梯度为:

  • PyTorch之Checkpoint机制解析 本文已授权极市平台, 并首发于极市平台公众号. 未经允许不得二次转载...

  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...

  • 公元:2019年11月28日19时42分农历:二零一九年 十一月 初三日 戌时干支:己亥乙亥己巳甲戌当月节气:立冬...

  • 想要快速入门CAD,对于零基础的新手来说的确有一定的困难。不过只要你掌握了以下这些CAD快速入门技巧,你就跨进了C...

  • 昨天考过了阿里规范,心里舒坦了好多,敲代码也犹如神助。早早完成工作回家喽

  • }

    我要回帖

    更多关于 方向导数一定存在吗 的文章

    更多推荐

    版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

    点击添加站长微信