凸问题与非凸问题

本文介绍了凸函数与非凸函数在机器学习中的概念,指出凸函数如y=x^2沿梯度下降可找到全局最优解,而非凸函数如y=sinx则可能导致局部最优,深度学习问题通常是非凸的。凸集和非凸集的概念通过图形对比进行解释。
部署运行你感兴趣的模型镜像

凸函数:曲线上任意两点连线上的点对应的函数值不大于该两点对应的函数值得连线上的值,例如y=x^2;
非凸函数:曲线上任意两点连线上的点对应的函数值既有大于该两点对应的函数值得连线上的值的部分也有小于的部分,例如:y=sinx。
机器学习中的凸与非凸:引用来源:【深度学习】凸/非凸区别

:沿着梯度下降的方向找到的一定是最优解,大部分传统机器学习问题是凸的。
非凸:沿着梯度下降方向找到的最优只能保证是局部最优,不能保证是全局最优,深度学习以及小部分传统机器学习问题是非凸的。
凸集:集合内任意两点的连线都在集合内。如下图:
左边为凸集,集合内任意两点的连线都仍在集合内,右边为非凸集,集合内两点连线会有在集合外的部分。
在这里插入图片描述
非凸集:不是凸集的就是非凸集。

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.9

TensorFlow-v2.9

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

### 优化与非优化的区别 优化优化的主要区别在于目标函数约束条件的形式以及求解难度的不同。对于优化问题,如果目标函数是一个函数,并且约束集合是集,则该问题优化问题[^1]。这种情况下,任何局部最优解都是全局最优解,因此可以通过高效的算法找到解决方案。 然而,在非优化问题中,目标函数可能不是函数或者约束集合是非的。这意味着可能存在多个局部极小值点,而这些局部最小值不一定等于全局最小值。寻找全局最优解通常更加困难甚至不可能实现,除非采用特定的方法或假设来简化问题。 ### 应用场景对比 #### 优化的应用 在许多实际工程技术领域中广泛存在各种各样的优化模型及其变体形式。例如在线性回归分析里使用的最小二乘法就是一个典型的二次规划例子;而在统计估计方面也有极大似然估计等问题可以用到优化技术解决[^2]。另外像支持向量机(Support Vector Machine, SVM),它通过最大化分类间隔构建超平面来进行数据划分的过程实际上也是一个标准意义上的QP(Quadratic Programming)问题实例之一。 #### 非优化的应用 尽管如此,仍有许多重要的现实世界挑战无法被建模成纯粹意义下的结构——比如神经网络训练过程中的权重调整就涉及到复杂的高维空间内的路径探索任务,这往往属于高度非线性的范畴因而难以直接套用传统意义上针对低复杂度系统的那些成熟套路去处理它们。此外还有图像恢复、信号重建等领域也经常遇到非情况下的参数寻优需求[^3]。 ### 代码示例:简单的优化问题求解 下面展示了一个利用Python库`cvxpy`解决的一个基本优化案例: ```python import cvxpy as cp # 定义变量 x = cp.Variable() # 构造目标函数 (这里选取的是一个简单的抛物线方程作为示范) objective = cp.Minimize((x - 1)**2) # 添加约束条件 constraints = [-0.5 <= x, x <= 2] # 创建并解决问题 prob = cp.Problem(objective, constraints) result = prob.solve() print("Optimal value", result) print("Optimal var", x.value) ``` 此脚本定义了一元一次多项式的平方误差项作为待最小化的目标表达式,并附加了一些边界范围限制之后交给CVXPY框架自动完成后续计算工作直至得出最终结论为止。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值