M1-026M1: Mathematics & Statistics FundamentalsConvex Optimization & KKTEasy
Mastery:

Convex Optimization & KKT: 定义凸集、凸函数,并说明凸性为什么重要。

📐 Mathematical Definition
f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y)f(\theta x+(1-\theta)y)\le\theta f(x)+(1-\theta)f(y)
⚡ Executive Summary
Core Concept: 凸集内任两点连线仍在集合内;凸函数在两点连线之上。凸问题的局部最优即全局最优。

📌 Key Takeaways

  • •
    判定:海森半正定
  • •
    常见凸函数:范数、hinge、log-sum-exp、负熵
  • •
    逻辑回归、SVM、LASSO 都是凸问题

📐 Mathematical Derivations

凸集的定义是'对任意两点,连线上的点仍在集合内'(对加法与正数乘封闭);凸函数定义为 f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y)——几何上是'函数图像在任意割线之下'。等价的一阶条件:f(y)≥f(x)+∇f(x)ᵀ(y−x),即<strong>一阶泰勒展开是全局下界</strong>(凸函数没有'隐藏的下降方向');二阶条件是海森半正定。凸性之所以重要,是因为它消除了优化中最大的不确定性:<strong>局部最优即全局最优</strong>,且最优解集是凸集,任何收敛到驻点的算法都收敛到全局最优。这使收敛性、复杂度、对偶性都有严格保证。

🏭 Production Trade-offs

在 ML 中的分布:<strong>凸问题</strong>——线性/逻辑回归(负对数似然凸)、SVM(hinge + L2 凸)、LASSO/岭回归、最大熵模型、部分矩阵补全(核范数);<strong>非凸问题</strong>——神经网络(参数空间非凸)、K-means(离散分配)、高斯混合(EM 只保证局部最优)、矩阵分解、深度强化学习。非凸问题的实用策略是:① 依赖良好的初始化(K-means++、Xavier/Kaiming)与多次重启;② 接受局部最优但用验证集选择;③ 利用'所有局部最优值接近'的实证规律(过参数化网络的损失景观相对良性)。此外,凸函数族(范数、log-sum-exp、负熵、指数、仿射函数的复合规则)可组合出大量实用目标,掌握凸性判定规则(保凸运算)能快速判断一个新损失是否可全局求解。
⚠️ Common Interview Pitfalls
  • ✕
    认为凸性只是理论性质(它直接决定算法能否保证全局最优)
  • ✕
    忽略非凸问题中初始化的重要性
🎯 Interviewer Follow-ups
  • ?
    哪些常见 ML 问题是非凸的?(神经网络、K-means、矩阵分解)
  • ?
    如何判断一个函数是否凸?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM1-025: Calculus & Taylor Expansion: 解释二阶充分条件与鞍点,以及深度学习为何不怕鞍点。📋Back to BankNext →M1-027: Convex Optimization & KKT: 写出 KKT 条件,并说明互补松弛的含义。