← ClaudeAtlas

ml-optimization-methodslisted

优化方法选型:拿到优化问题先问"凸不凸/有无约束/梯度贵不贵"。用户问"牛顿法还是梯度下降/ L-BFGS 用在哪/KKT 有什么用/SVM 为何转对偶"、纠结学习率收敛诊断、担心陷局部最优时激活。 动作: 凸性判定→一阶vs二阶→拉格朗日与KKT对偶→收敛曲线归因→高维鞍点重估。 不适用于: 训练排障(ml-deep-training-playbook)、横向选型(ml-task-matching)。 trigger: convex optimization 凸优化, L-BFGS, KKT conditions, duality 对偶, 鞍点
fieldlu/Machine-learning-skills · ★ 0 · AI & Automation · score 66
Install: claude install-skill fieldlu/Machine-learning-skills
# 优化方法选型 — 先问凸不凸,再谈用什么法 ## R — 原文 (Reading) > **来源说明**: 本 skill 属扩充批D——主题超出西瓜书覆盖范围(西瓜书附录 B 仅给出拉格朗日乘子法的最简形式),R 段改引优化领域公认文献并标注来源性质;凡无法保证逐字精确处一律标(转述)。 > If the objective and constraint functions are all convex, then any locally optimal point is (globally) optimal, and problems can be solved to high accuracy with efficient algorithms.(转述) > > — 转述自 Boyd & Vandenberghe《Convex Optimization》(Cambridge University Press, 2004), Ch.1(来源性质:教科书公认表述) > Newton's method uses second-order (curvature) information and converges rapidly near a solution, but each step requires forming and factoring the Hessian—prohibitive for very large problems. Quasi-Newton methods such as BFGS/L-BFGS approximate this curvature from gradient history at far lower cost.(转述) > > — 转述自 Nocedal & Wright《Numerical Optimization》(Springer, 2nd ed. 2006), Ch.3/6-7(来源性质:教科书公认表述) --- ## I — 方法论骨架 (Interpretation) 优化方法的选型不是背一张"算法清单",而是回答三个前置问题后的自然结果: - **第一问·凸性**: 目标函数和可行域是不是凸的?凸问题里局部最优就是全局最优,且有多项式时间的可靠求解器(内点法等);一旦非凸,一切全局保证作废,选型逻辑从"求精确解"变成"在预算内找足够好的点"。所以凸性判定永远是第一步。 - **第二问·约束**: 有没有约束?无约束直接上迭代法;有约束的标准语言是拉格朗日函数——把约束以乘子为代价并入目标,其驻点条件即 KKT 条件(可行、平稳、互补松弛)。KKT 既是最优性的必要条件(凸问题下充分),也是"哪个约束真正起作用"的诊断器。 - **第三问·导数成本**: 梯度多贵、维度多大?一阶方法只用梯度、每步便宜,适合超高维与随机场景(SGD 族是深度学习的默认);牛顿法用 Hessian 曲率信息、收敛快但每步 O(n³),只在中小规模划算;L-BFGS 用梯度历史隐式近似曲率,是"想要二阶收益又付不起二阶价格"的折中。 - **学习率与收敛诊断**: 步长太大震荡发散、太小龟速爬行;看 loss-迭代曲线的形态(单调降/锯齿/平台)就能反推病根。 - **高维的真实面貌**: 现代认识修正了"局部最优陷阱"直觉——高维非凸景观中严格局部极小很少,大量临界点是**鞍点**(某些方向向上、某些方向向下),沿负曲率方向即可逃逸;真正拖慢训练的是平坦区域(plateau)与病态曲率,