关闭

凸优化

标签: 凸优化机器学习
673人阅读 评论(0) 收藏 举报
分类:

1.背景:

机器学习问题都是优化问题,而优化问题中凸优化是很大类且解法丰富,如果问题能转化为凸优化问题,则必能解,比如说:最小二乘,逻辑回归以及SVM等等。凸优化哪里好了,因为凸优化局部最优解就是全局最优解而且凸优化理论有个强大的工具就是Lagrange对偶。

2.凸集定义:


一个集C,对于任何属于C的x和y,都有ax+(1-a)y属于C,其中a为0~1。


喏,这个左边就是凸集,右边就是非凸集。

实数空间,范数约束形式的集合,仿射子空间和凸集的交集这些都是凸集。

3 凸函数
3.1凸函数定义:


什么意思,不等式左边是函数值,右边则是一条直线,意思就是函数上任意两个点连线值肯定是大于对应自变量处的值。如下图:


3.2凸函数两个等价的充要条件:

1)一阶充要条件:


这个比较好理解,想象成开口向上的抛物线,切线在它下方。

2)二阶充要条件:


要求嘛~各自一阶二阶函数都要是存在的,都要是可导的。其中{\nabla ^2}f\left( {\bf{x}_0} \right)f(\bf{x})\bf{x_0}点处的Hessian矩阵,可以理解成梯度向量的二阶形式。

下面证明凸函数的Hessian矩阵是半正定的,也就是为啥{\nabla ^2}f\left( {\bf{x}_0} \right)大于等于0.

首先,将f(x)在x_0处进行二阶泰勒展开


显然只要成立,那么条件一就成立。也就是只要X_{0}处的Hessian矩阵为正半定就行了。

3.3 Jension不等式

首先,我们不是得到典型的凸函数定义不等式了吗?


然后,上述的式子只是两个点哦,我们进行拓展,如果对于K个点是什么样的呢?


是的,就变成这样了,再夸张一下,这个式子是离散的,如果再扩展成连续的呢?


就变成了这样。等等这不就是大名鼎鼎的Jension不等式了吗

恩,指数函数,非负对数函数,仿射函数,二次函数,范数函数等等都是凸函数哟!

3.4 为什么凸函数局部最优就是全局最优(证明)

目标函数是 minf(x),而f(x)是凸函数假设 x1是一个局部最优,也就意味着在x1周围存在一个邻域,而这个邻域内的点都比f(x1)大。
对于任意一个点 y 利用凸组合构造一个点 (1-t)x1+ty,把t 取得足够小,那么一定能够让 (1-t)x1+ty出现在 x1的邻域内,那么有 f(x1)<=f((1-t)x1+ty)

利用f(x)是凸函数这个性质,有 f(x1)<=f((1-t)x1+ty)<=(1-t)f(x1)+tf(y),对f(x1)<=(1-t)f(x1)+tf(y)两边消去一项f(x1)于是得出f(x1)<=f(y) 

由于y是任意的又有f(x1)<=f(y) ,所以也就说明了x1是全局最优点

3.5 分段集(sublevel set)

其定义如下:

也就是说,给定一个凸函数f,所有的x都满足f(x)<=a。而怎么证明这也是一个凸集呢。如下所示

这个就相当于把凸函数和凸集互相串了起来


4.凸优化问题

首先,凸优化问题的英文定义如下:


以上便是凸优化问题的形式,f便是上文提出的凸函数,C便是凸集。x就是优化的变量。而也可以写成下面这个形式,g也是凸函数,h则为仿射函数。至于上下两个形式的关联,x不是属于凸集么~根据3.5。gi(x)<=0,那么这里面的x也是属于凸集,然后m个这些凸集的交集也是属于凸集。后面为啥h为仿射函数呢。因为h(x)=0,可以看成h(x)>=0且h(x)<=0这要求h即是凸的也是凹的,那么就只有仿射函数满足这样的性质,也只有仿射函数是取等于0,仿射变换是线性函数加常数的形式也就是f(x)=ax+b,多说一句,为啥要成为凸集,因为我们需要保证求得全局最优,所以一定要在凸集当中求得。



1
0
查看评论

Cross-Scale Cost Aggregation for Stereo Matching

摘: 人类根据不同的尺度来处理立体匹配等问题。然而,这种灵感被现如今的成本聚合方法当中所忽视了。本篇论文,将会介绍一个在成本聚合中多尺度相互作用的多尺度成本聚合算法。我们首先从统一优化的角度来形式化成本聚合,表明了不同的成本聚合方法本质上是其核的不同。接着,一种尺度内的规范化将会用在优化上同时解决这...
  • lvhao92
  • lvhao92
  • 2017-05-22 14:18
  • 323

凸优化笔记

基本概念凸优化问题具有如下形式: minf0(x)subjecttofi(x)≤bi,i=1,...,mmin f_0(x) \\ subject to f_i(x) \le b_i,i=1,...,m其中,函数f0,...,fm:Rn→Rf_0,...,f_m:R^n \rightarrow R...
  • foolsnowman
  • foolsnowman
  • 2016-05-04 23:17
  • 1133

数学优化入门:凸优化

做科研时,曾花了段时间学习凸优化,后来发现ML中其应用也非常普遍,想来今后可能还会接触,干脆做个系统的总结,方便以后查询。 博文内容主要参考Boyd(Stanford)的Convex Optimization,配套的slides,以及部分网络材料,感兴趣的朋友可以一起学习探讨。
  • lipengcn
  • lipengcn
  • 2016-10-18 11:10
  • 10337

机器学习之凸优化

参考资料 概述 凸集和凸函数 凸优化及对偶问题参考资料参考视频:https://lagunita.stanford.edu/courses/Engineering/CVX101/Winter2014/about 貌似bilibili也有: http://www.bilibili.com/vide...
  • cqy_chen
  • cqy_chen
  • 2017-09-12 22:53
  • 356

(凸优化理论学习笔记2017/3/18)Theory of Convex Optimeization for Machine Learning(Sebatien Bubeck)

Section5.2: Smooth saddle-point representation of a non-smooth function Quite often the non-smoothness of a function f comes from a max operation. 5.2...
  • david8766
  • david8766
  • 2017-03-18 19:07
  • 356

数学优化与凸集2(斯坦福凸优化笔记2)

本节介绍了仿射集,凸集和锥的概念。本节给出了一些常见的凸集,为以后章节打下基础。
  • xingce_cs
  • xingce_cs
  • 2017-06-23 15:37
  • 824

学习《凸优化》笔记,基本摘抄自斯坦佛版凸优化教程(一)

凸优化
  • subtlefe
  • subtlefe
  • 2017-11-29 10:56
  • 86

凸优化初步

前言          这节课主要介绍凸优化的入门知识,程博士推荐阅读Boyd的《凸优化》,最经典的凸优化的书,这本书有600多页,细致讲解了凸优化相关的理论知识,可以作为一门学科来学习。因为硕士阶段学过《工程优化》,在这次学习过程中能容易的get到...
  • JoyceWYJ
  • JoyceWYJ
  • 2016-06-03 17:59
  • 3580

最优化理论与凸优化到底是干嘛的?

凸优化的定义 1.1 凸优化 1.2 全局最优化与局部最优化 Least-squares and linear programming(最小二乘与线性规划) 2.1 最小二乘 2.2 线性规划 最优化方法的一般结构 1.优化的定义 1.1 凸优化最优化问题目前在机器学习,数据挖掘等领域应用...
  • qq_39422642
  • qq_39422642
  • 2017-12-15 20:47
  • 316

凸优化学习笔记(一)之数学基础

范数 內积、角度 设x,y∈Rn\boldsymbol{x},\boldsymbol{y}\in \mathbb{R}^n,则x\boldsymbol{x}与y\boldsymbol{y}的內积定义为 ⟨x,y⟩=xTy=∑i=1nxiyi\begin{align} \left=\boldsy...
  • u012284960
  • u012284960
  • 2017-05-27 22:44
  • 483
    个人资料
    • 访问:37028次
    • 积分:931
    • 等级:
    • 排名:千里之外
    • 原创:54篇
    • 转载:5篇
    • 译文:0篇
    • 评论:50条
    最新评论