内容简介:开个新坑,总结下最近看的凸优化的东西,主要来自于CS229的讲义。前半部分介绍凸优化的问题定义,后半部分介绍对偶问题和KKT条件,并使用SVM作为例子,展示凸优化在机器学习中的应用。这部分也是SVM理论部分不太好理解的部分,希望我能把它梳理清楚明白。介绍凸函数之前,首先介绍凸集。函数必须定义在凸集上,才能有后续是否是凸函数的讨论。
开个新坑,总结下最近看的凸优化的东西,主要来自于CS229的讲义。前半部分介绍凸优化的问题定义,后半部分介绍对偶问题和KKT条件,并使用SVM作为例子,展示凸优化在机器学习中的应用。这部分也是SVM理论部分不太好理解的部分,希望我能把它梳理清楚明白。
凸函数
介绍凸函数之前,首先介绍凸集。函数必须定义在凸集上,才能有后续是否是凸函数的讨论。
凸集
若集合$C$中任取两个元素$x$和$y$,对于任意$\theta \in [0,1]$且$\theta \in \mathbb{R}$,都有下面的不等式成立,则集合$C$是凸集:
这句话翻译成不严谨的几何描述,就是在集合$C$中任取两点画一条线段,那么线段上的所有点都必须在$C$内,如下图所示。为何是这样呢?设$t = \theta x + (1-\theta) y$,稍作变形,可以得到,$t - y = \theta(x-y)$。这说明,$t-y$和$x-y$两个向量共线,也就是这三点共线。由$\theta$的取值范围,进一步知道,$t$在两点之间。这样,我们就把上面抽象的式子和下面直观的图建立了联系。
下面不加证明给出几个特殊的凸集:
- $\mathbb{R}^n$
- $\{ x; \Vert x\Vert_p \le 1\}$,可以用范数的三角不等式证明
- 凸集的交集
凸函数
与凸集的定义相类似,如果一个函数$f$定义在凸集上,而且对于其定义域上的任意两个变量取值$x$和$y$,对于任意$\theta \in [0,1]$且$\theta \in \mathbb{R}$,都有下式成立,则函数$f$是凸函数:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。