2025年判断目标函数的凹凸性

判断目标函数的凹凸性1 梯度法 就是直接对目标函数进行计算 然后判断其是否凸 具体地 就是计算目标函数的一阶导数和二阶导数 然后作出判断 凸函数的一阶充要条件 等号右边是对函数在 x 点的一阶近似 这个条件的意义是 对于函数在定义域的任意取值 函数的值都大于或者等于对函数在这点的一阶近似 用图来说明就是

大家好,我是讯享网,很高兴认识大家。

1 梯度法

就是直接对目标函数进行计算,然后判断其是否凸。具体地,就是计算目标函数的一阶导数和二阶导数。然后作出判断。

凸函数的一阶充要条件

这里写图片描述
讯享网

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

这里写图片描述

通过图可以很清楚地理解这个充要条件,但是,具体在应用中,我们不可能对每一个点都去计算函数的一阶导数吧,因此下面这个充要条件更加实用。

凸函数的二阶充要条件

这里写图片描述

很简单,如果一个函数的二阶导数大于等于零,那么这个函数就是凸函数。图就不上了,很好理解,函数的一阶导数具有递增性,那么函数本身就是凸函数。

通过暴力计算法,可以很快地判断函数是不是凸函数。凹函数同理。

2 结构分析法

有时候我们不必通过暴力计算,可以通过分析目标函数的结构,就能在一些情况下判断函数是否是凸函数。下面给出一些结论:

  1. 指数函数是凸函数;
  2. 对数函数是凹函数,然后负对数函数就是凸函数;
  3. 对于一个凸函数进行仿射变换,可以理解为线性变换,结果还是凸函数;
  4. 二次函数是凸函数(二次项系数为正);
  5. 高斯分布函数是凹函数;
  6. 多个凸函数的线性加权,如果权值是大于等于零的,那么整个加权结果函数是凸函数。

下面出一道题目:如何判断最大似然函数一定有最大值?

思路:最大似然函数是求最大值,那么函数必须是凹函数。就拿我们常用的对数似然函数,是多个对数函数的线性加权而且权值为1,而对数函数是凹函数,然后每个对数内部有没有嵌套其他函数再分析一下,最后就能判断整个对数似然函数是凹函数,因此一定有最大值。

机器学习中的最优化问题

很多机器学习算法都设计最优化问题,判断目标函数是凸是凹是第一步,这只是可以最优化的前提,那么,有哪些最优化的问题呢?

  • 线性规划
  • 二次规划
  • 二次约束的二次规划
  • 半正定规划

有哪些最优化的手段呢?常见的有:

  • 梯度上升(下降)法
  • 牛顿法 / 拟牛顿法
  • 坐标下降法

 

 

参考资料:

http://blog.csdn.net/xmu_jupiter/article/details/

http://www.cnblogs.com/tornadomeet/p/3300132.html

转载地址:https://www.cnblogs.com/Allen-rg/p/6637181.html

小讯
上一篇 2025-03-01 12:18
下一篇 2025-03-16 22:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/25195.html