美文网首页Artificial IntelligenceC算法&面试题机器学习与数据挖掘
关于凸优化的一些基本概率(2018京东算法岗)

关于凸优化的一些基本概率(2018京东算法岗)

作者: 3b899188980c | 来源:发表于2018-04-10 10:29 被阅读27次

    凸优化是很多机器学习算法的基础,绝大部分的优化算法都是适用在凸函数上的。18年的京东算法岗考的基本都是凸优化的基本概率,希望这篇博文能够帮助你对凸优化的基本问题有一个理性的认识

    凸集、凸函数、凸优化的基本概念

    1、数学模型与基本概念

    目标函数或约束函数至少有一个不是决策变量的线性函数。即


    约束函数

    2、梯度与海塞矩阵

    梯度和海塞矩阵是在非线性规划中用得较多的概念,其定义如下:


    梯度.png

    对于一元函数,其梯度就是其一阶导数。


    海塞矩阵的定义与梯度类似,但是求的是二阶偏导,并且结果是一个矩阵,如下所示


    3、凸函数

    凸函数的定义如下:



    凹函数的定义类似,只需要把上式的不等号方向改变即可。图像直观表示两者如下所示


    image.png

    凸函数的一个重要的性质是其局部极小值点为全局极小值点。

    根据凸函数的定义来判断一个函数是否为凸函数往往比较困难,这里分别通过一阶条件和二阶条件判断凸函数。

    一阶条件:基本就是从定义上来判断是不是凸函数

    一阶特征的几何意义

    一阶条件的意义是,对于函数在定义域的任意取值,函数的值都大于或者等于对函数在这点的一阶近似。用图来说明就是下方图:



    比如说,在下方的无论是A点还是B点,还是这个函数上的任意一点,函数的值都大于或者等于函数在这点的一阶近似(切线近似)



    这也就是凸函数的一阶特征的几何意义。
    通过图可以很清楚地理解这个充要条件,但是,具体在应用中,我们不可能对每一个点都去计算函数的一阶导数,因此后面会说道利用凸函数的二阶特征来进行判断一个函数是否是一个凸函数。

    二阶条件

    关于正定、半正定、负定的定义及判断方法如下所示



    而顺序主子式的定义如下


    通过海塞矩阵判断凸函数例子如下

    二阶特征的几何意义

    海瑟矩阵其实是多元函数的二阶梯度,海瑟矩阵半正定,也就是说多元函数的二阶梯度大于0.也就是一阶梯度是递增的。

    那么凸函数的二阶特征的意思是:当海瑟矩阵半正定的时候,也就是说该函数的导数也是递增的时候,该函数是凸函数。那么对应于图像解释如下(下图是凸函数):

    在凸函数中,随着x的增加,A,B,C点的梯度(导数)是依次增加的,这也就是海瑟矩阵为半正定的时候,对应的二阶梯度是大于0的,也就是函数中的各点的一阶导数是依次增大的。

    凸函数的一阶特征,二阶特征的作用

    我们最直接的用途就是判断一个函数是否为凸函数,因为如果能判断一个函数是凸函数,由于凸函数具有很多很好的性质,那么后面我们就能够很快的得到其它的一些结论,总而言之就是给判断一个函数是否为凸函数提供了数学方法。

    比如我们如果能够判断一个函数的海瑟矩阵是正定的,那么我们就可以说这个函数就是凸函数。判断完了凸函数,我们就可以利用凸函数的性质啦。

    4、凸规划

    凸规划指可行域为凸集,目标函数为凸函数的规划问题。其具体形式如下


    注意上面的gj(x)为凹函数,这样围起来的可行域才为凸集。因为凸函数和凸集的性质,凸规划有一条重要的性质:凸规划的任一局部极小点为全局极小点。

    ps:关于凸优化,后续持续更新

    相关文章

      网友评论

        本文标题:关于凸优化的一些基本概率(2018京东算法岗)

        本文链接:https://www.haomeiwen.com/subject/dfdghftx.html