怎么判断一个损失函数的凹凸性?

  统计/机器学习 最优化 损失函数    浏览次数:5696        分享
0

怎么判断一个损失函数的凹凸性?

 

zzzz   2018-10-18 11:37



   3个回答 
4

通常来说是很难判断的,不过有两个可行的办法。

    1. 画图。但是因为损失函数是多元的,所以可以一个切面一个切面的画。

    2. 求导。如果能够得到损失函数和模型参数的表达式,那么你就可以对这个表达式求二阶导,得到Hessian Matrix,然后再判断这个矩阵是否是正定的,如果正定,那么就是凸的。


以上两个办法在实际过程中都不一定可行。

SofaSofa数据科学社区DS面试题库 DS面经

u_u   2018-10-22 08:41

2

刚刚在西瓜书上看到相关的一段话,希望有帮助,在54页左下角:

“对实数集上的函数,可以通过求二阶导数来判别:若二阶导数在区间上非负,则称为凸函数;若二阶导数在区间上恒大于零,则称为严格凸函数。”

SofaSofa数据科学社区DS面试题库 DS面经

nlceyes   2018-10-23 14:37

这个应该只是针对于解析的一元函数,多元的函数就需要hessian矩阵,不解析的话那就只能摊手了 - chrisliang   2018-10-23 22:04
0

求导吧

SofaSofa数据科学社区DS面试题库 DS面经

robin_he   2019-05-29 12:29



  相关讨论

证明LogLoss是凸函数

凸优化问题一定存在最优解吗?

线性回归的目标函数是凸函数吗?

如果极小值就是最小值,那么这个函数就是凸函数吗?

逻辑回归的Log Loss是凸函数吗?

牛顿法是凸优化算法还是全局优化算法?

非凸的目标函数还可以用随机梯度下降吗?

什么样的优化问题算是凸优化?

凸优化中局部最优解就是全局最优解吗?

凸优化中的仿射是什么意思

  随便看看

关于方差膨胀因子(VIF)的问题

sklearn模型当中的verbose是什么意思?

dropout rate一般设置多大?

python(matplotlib)中如何把折线图和柱状图画在一起?

怎么对pandas dataframe的列求众数