优化理论——寻找最优解 兔狲教授的提示:优化是人工智能的核心。从神经网络的权重调整到强化学习的策略优化,从推荐系统的个性化到物流调度的路径规划,优化理论为我们提供了在约束条件下寻找最佳解决方案的数学工具。理解优化,就是理解AI如何'学习'和'决策'。 词条1:优化问题基础 官方解释 优化问题:最小化(或最大化)目标函数 $f(x)$,满足约束条件。 一般形式:$\min{x\in\mathbb{R}^n} f(x)$,s.t. $gi(x) \le 0$,$hj(x) = 0$。
兔狲教授的提示:优化是人工智能的核心。从神经网络的权重调整到强化学习的策略优化,从推荐系统的个性化到物流调度的路径规划,优化理论为我们提供了在约束条件下寻找最佳解决方案的数学工具。理解优化,就是理解AI如何'学习'和'决策'。
优化问题:最小化(或最大化)目标函数 f(x),满足约束条件。
一般形式:\min_{x\in\mathbb{R}^n} f(x),s.t. g_i(x) \le 0,h_j(x) = 0。
分类:
最优解类型:
优化是'在可能性中找最好'。
小小猪举了个例子:寻找最短路径:
机器学习中的优化:
优化视角:
问题:将以下问题形式化为优化问题:
问题:判断以下函数的凸性:
问题:为什么凸优化特别重要?凸性保证了什么?
思考方向:
梯度:\nabla f(x) = \left(\frac{\partial f}{\partial x_1}, \ldots, \frac{\partial f}{\partial x_n}\right)^T,指向函数增长最快的方向。
梯度下降:x_{k+1} = x_k - \eta \nabla f(x_k),其中 \eta > 0 是学习率。
收敛条件:
收敛速度:
梯度下降是'沿着最陡的下山方向走'。
小海豹打了个比喻:想象你在雾中下山:
学习率选择:
问题:用梯度下降法最小化 f(x) = x^2:
问题:证明:对 L-光滑函数,如果 \eta \le 1/L,则 f(x_{k+1}) \le f(x_k) - (\eta/2)\|\nabla f(x_k)\|^2。
问题:梯度下降法有哪些局限性?如何改进?
思考方向:
经验风险最小化:\min_\theta \frac{1}{n}\sum_{i=1}^n L(\theta; x_i, y_i)
批量梯度下降:用所有样本计算梯度,计算量大。
随机梯度下降:每次随机选一个样本计算梯度。
\theta_{k+1} = \theta_k - \eta_k \nabla L(\theta_k; x_{i_k}, y_{i_k})
小批量梯度下降:每次用一小批样本(如32、64、128个)。
收敛性:在凸情况下,期望意义下收敛到最优。
SGD是'用噪声换速度'。
兔狲教授举例说:训练神经网络:
SGD优势:
SGD变体:
问题:实现SGD训练逻辑回归:
问题:推导动量法更新公式:
v_{k+1} = \beta v_k + \nabla L(\theta_k)
\theta_{k+1} = \theta_k - \eta v_{k+1}
分析 \beta 的作用。
问题:为什么SGD的噪声有时是有益的?从优化和泛化两个角度分析。
思考方向:
凸集:集合 C 是凸的,如果对任意 x, y \in C,\lambda x + (1-\lambda)y \in C(0 \le \lambda \le 1)。
凸函数:f(\lambda x + (1-\lambda)y) \le \lambda f(x) + (1-\lambda)f(y)。
拉格朗日函数:L(x,\lambda,\nu) = f(x) + \sum_i \lambda_i g_i(x) + \sum_j \nu_j h_j(x),\lambda_i \ge 0。
对偶函数:g(\lambda,\nu) = \inf_x L(x,\lambda,\nu)。
对偶问题:\max_{\lambda \ge 0,\nu} g(\lambda,\nu)。
强对偶:原问题最优值 = 对偶问题最优值(凸问题通常成立)。
对偶是'换个角度看问题'。
小小猪举了个例子:资源分配问题:
KKT条件(最优性条件):
问题:求解以下凸优化问题:
\min x^2+y^2,s.t. x+y \ge 1
问题:证明:线性规划的原问题和对偶问题:
原:\min c^T x,s.t. Ax=b,x \ge 0
对偶:\max b^T y,s.t. A^T y \le c
问题:对偶理论为什么强大?它在优化和机器学习中有什么应用?
思考方向:
投影梯度下降:x_{k+1} = \text{Proj}_C(x_k - \eta\nabla f(x_k)),其中 \text{Proj}_C 是到凸集 C 的投影。
惩罚函数法:将约束问题转化为无约束问题:\min f(x) + \rho\cdot p(x),其中 p(x) 惩罚约束违反。
增广拉格朗日法:
内点法:在可行域内部寻优,用障碍函数处理约束。
处理约束是'在围栏内找最优'。
小海豹举了个例子:投资组合优化:
方法比较:
ADMM(交替方向乘子法):
问题:用投影梯度下降求解:
\min (x-2)^2+(y-3)^2,s.t. x^2+y^2 \le 1
问题:实现增广拉格朗日法求解等式约束问题:
\min x^2+y^2,s.t. x+y=1
问题:为什么内点法比单纯形法更适合大规模线性规划?从计算复杂度和数值稳定性分析。
思考方向:
神经网络训练:用(随机)梯度下降最小化损失函数。
支持向量机:凸优化问题,可用对偶方法求解。
矩阵分解:如推荐系统中的协同过滤。
稀疏优化:如LASSO、压缩感知。
贝叶斯优化:用于超参数调优。
元学习:学习如何优化(学习优化器)。
优化是AI的'学习引擎'。
兔狲教授举例说:深度学习训练:
优化挑战:
现代优化技巧:
问题:实现神经网络训练:
问题:用贝叶斯优化调超参数:
问题:优化理论和深度学习实践之间有什么差距?理论保证 vs 实践经验。
思考方向:
兔狲教授总结道:优化理论是连接数学和AI的桥梁:
在AI中,优化不仅是工具,更是思维:
掌握优化思维,你就掌握了:
小小猪的体会:原来AI的学习过程就是不断优化的过程!
小海豹的反思:优化理论让我理解了为什么有些算法有效,有些无效。
下一章预告:我们将学习信息论,这是度量信息、理解学习和通信的数学基础。