凸函数 非凸函数
Intro
凸函数和非凸函数的区别
Definition
$$
f((x_1 + x_2)/2) \leq (f(x_1) + f(x_2))/2
$$
一般是指上方图是凸的.
机器学习中的凸与非凸
凸:
- 指的是顺着梯度方向走到底就 一定是 最优解 。
- 大部分 传统机器学习 问题 都是凸的。
非凸:
- 指的是顺着梯度方向走到底只能保证是局部最优,不能保证 是全局最优。
- 深度学习以及小部分传统机器学习问题都是非凸的。
为什么损失函数都是非凸的
一个高维凸函数可以等价于无数个一维凸函数的叠加。一个(高维)函数是凸的,当且仅当把这个函数限制到任意直线上它在定义域上仍然是凸的。那只要我们找到一点 ,和一个“方向” ,使得这个函数非凸就可以了!回顾一维凸函数的定义,这就是说在这个方向上找到两个点,他们平均的函数值比他们平均值上的函数值要低就行了。
References
https://baike.baidu.com/item/%E5%87%B8%E5%87%BD%E6%95%B0/3371735
https://blog.csdn.net/jningwei/article/details/78836920
https://zhuanlan.zhihu.com/p/141542614