导言
凸优化(convex optimization)是最优化问题中非常重要的一类,也是被研究的很透彻的一类。对于机器学习来说,如果要优化的问题被证明是凸优化问题,则说明此问题可以被比较好的解决。
在本文中,SIGAI将为大家深入浅出的介绍凸优化的概念以及在机器学习中的应用。
凸优化简介
在SIGAI之前的公众号文章“理解梯度下降法”中我们介绍了最优化的基本概念以及梯度下降法。
下面是实际问题中一些常见的凸集例子,记住它们对理解后面的算法非常有帮助:
n维实向量空间Rn。显然如果x,y∈Rn,则有:
?
如果一个最优化问题的可行域是凸集,并且目标函数是凸函数,则该问题为凸优化问题。凸优化问题可以形式化的写成:
?
其中x为优化变量;f为凸目标函数;C是优化变量的可行域,是一个凸集。
支持向量机
在SIGAI之前的公众号文章“通过一张图理解SVM的脉络”中我们介绍了支持向量机的推导过程,如果读者对支持向量机没有基本的概念,请先阅读那篇文章。支持向量机训练时求解的原问题为:
?
?