TalentMe
How To
🗺️
AI Industry Map
NEW
Knowledge ▾
Intro & Usage
Machine Learning Repo
Data Science Repo
Resources ▾
Intro & Usage
AI Tech Vault (Tech Wiki)
Industry News
Tech Blogs
Research Papers
Open Source Projects
Tools Hub ▾
🛠️ Tools & Skills Overview
🌐 Interactive Web Tools
🗺️ AI Industry & Career Map
🧭 AI Career Transition Navigator & Roadmap
📚 AI Multi-Module Practice Hub
🎯 AI Skill Assessment
🧠 AI Skills Library
AI Skills & Prompts Overview
Local Agent Guide
Cloud Skills Templates
⚡ MCP Tools Suite
TalentMe MCP Guide
CLI Tools & Commands
Services ▾
🚀 Services & Plans Suite
🧭 1v1 Coaching & Services
💎 Plans & Pricing
💬 Contact & Consultation
Contact Us
💬 Discord
🌐
中
☀️
🔑
Login / Register
☰
技术知识库
›
复习路线图
›
数理基础 思维导图
›
凸优化与 KKT
← 返回 数理基础 思维导图
中文
·
English
📐 数理基础
ID:
convex-kkt
凸优化与 KKT
Convex Optimization & KKT
🎯
核心定义
凸优化研究目标函数与可行域均为凸的问题(
f
(
θ
x
1
+
(
1
−
θ
)
x
2
)
≤
θ
f
(
x
1
)
+
(
1
−
θ
)
f
(
x
2
)
f(\theta x_1 + (1-\theta)x_2) \le \theta f(x_1) + (1-\theta)f(x_2)
f
(
θ
x
1
+
(
1
−
θ
)
x
2
)
≤
θ
f
(
x
1
)
+
(
1
−
θ
)
f
(
x
2
)
对任意
θ
∈
[
0
,
1
]
\theta \in [0,1]
θ
∈
[
0
,
1
]
成立,局部最优 = 全局最优)。带约束问题
min
x
f
(
x
)
\min_x f(x)
min
x
f
(
x
)
s.t.
h
i
(
x
)
=
0
,
g
j
(
x
)
≤
0
h_i(x) = 0,\ g_j(x) \le 0
h
i
(
x
)
=
0
,
g
j
(
x
)
≤
0
通过拉格朗日乘子转化为无约束形式:
L
(
x
,
λ
,
μ
)
=
f
(
x
)
+
∑
i
λ
i
h
i
(
x
)
+
∑
j
μ
j
g
j
(
x
)
L(x, \lambda, \mu) = f(x) + \sum_i \lambda_i h_i(x) + \sum_j \mu_j g_j(x)
L
(
x
,
λ
,
μ
)
=
f
(
x
)
+
∑
i
λ
i
h
i
(
x
)
+
∑
j
μ
j
g
j
(
x
)
,其中不等式约束乘子要求
μ
j
≥
0
\mu_j \ge 0
μ
j
≥
0
(对偶可行性)——只有这样才能保证对可行域外的方向“惩罚”而非“奖励”。KKT 条件给出最优解的必要条件(凸问题 + Slater 条件时为充要条件)四条: ① 平稳性
∇
x
L
=
∇
f
+
∑
i
λ
i
∇
h
i
+
∑
j
μ
j
∇
g
j
=
0
\nabla_x L = \nabla f + \sum_i \lambda_i\nabla h_i + \sum_j \mu_j\nabla g_j = 0
∇
x
L
=
∇
f
+
∑
i
λ
i
∇
h
i
+
∑
j
μ
j
∇
g
j
=
0
;② 原始可行性
h
i
(
x
)
=
0
,
g
j
(
x
)
≤
0
h_i(x) = 0,\ g_j(x) \le 0
h
i
(
x
)
=
0
,
g
j
(
x
)
≤
0
;③ 对偶可行性
μ
j
≥
0
\mu_j \ge 0
μ
j
≥
0
;④ 互补松弛
μ
j
g
j
(
x
)
=
0
\mu_j g_j(x) = 0
μ
j
g
j
(
x
)
=
0
。互补松弛的几何含义: 若约束不起作用(
g
j
<
0
g_j < 0
g
j
<
0
,解在可行域内部),则
μ
j
\mu_j
μ
j
必须为 0;若
μ
j
>
0
\mu_j > 0
μ
j
>
0
,则约束必须取等(
g
j
=
0
g_j = 0
g
j
=
0
,解被约束“钉”在边界上)。
💡
使用场景
SVM 对偶推导、带约束正则(如 L1 的带球约束形式)、策略优化中的约束强化学习,以及“带约束优化怎么解”的面试追问。经典例子:
min
1
2
(
x
−
2
)
2
\min \frac{1}{2}(x-2)^2
min
2
1
(
x
−
2
)
2
s.t.
x
≤
1
x \le 1
x
≤
1
。KKT 方程组:
x
−
2
+
μ
=
0
x - 2 + \mu = 0
x
−
2
+
μ
=
0
(平稳性)、
x
≤
1
x \le 1
x
≤
1
(原始)、
μ
≥
0
\mu \ge 0
μ
≥
0
(对偶)、
μ
(
x
−
1
)
=
0
\mu(x-1) = 0
μ
(
x
−
1
)
=
0
(互补松弛)。若
μ
=
0
\mu = 0
μ
=
0
则
x
=
2
x = 2
x
=
2
违反约束,故只能
x
=
1
,
μ
=
1
x = 1,\ \mu = 1
x
=
1
,
μ
=
1
——无约束最优点 2 在可行域外,解被推到边界。
⚡
解决的核心痛点
把约束最优化转化为代数方程组求解,无需显式遍历可行域边界;对偶理论给出弱对偶
min
x
max
μ
≥
0
L
≥
max
μ
≥
0
min
x
L
\min_x \max_{\mu\ge0} L \ge \max_{\mu\ge0} \min_x L
min
x
max
μ
≥
0
L
≥
max
μ
≥
0
min
x
L
(后者的解
d
∗
d^*
d
∗
恒
≤
f
∗
\le f^*
≤
f
∗
),在 Slater 条件(存在严格可行点)下强对偶成立
f
∗
=
d
∗
f^* = d^*
f
∗
=
d
∗
,使得 SVM 等模型可以转向对偶问题求解,并让 KKT 条件同时成为最优性的充要判据。
🎯
5 个高频面试考点 (Exam Points)
1
写出拉格朗日函数
L
=
f
+
∑
i
λ
i
h
i
+
∑
j
μ
j
g
j
L = f + \sum_i\lambda_i h_i + \sum_j\mu_j g_j
L
=
f
+
∑
i
λ
i
h
i
+
∑
j
μ
j
g
j
与四条 KKT 条件(平稳性/原始可行/对偶可行/互补松弛),并解释每条的含义。
2
互补松弛
μ
j
g
j
=
0
\mu_j g_j = 0
μ
j
g
j
=
0
的几何含义: 为什么约束不起作用时乘子必须为 0?举一个约束在边界上起作用的例子。
3
用 KKT 求解
min
1
2
(
x
−
2
)
2
\min \frac{1}{2}(x-2)^2
min
2
1
(
x
−
2
)
2
s.t.
x
≤
1
x \le 1
x
≤
1
:写出全部 KKT 方程、讨论
μ
=
0
\mu = 0
μ
=
0
分支并求解。
4
KKT 在什么条件下是充要条件?Slater 条件与强对偶
f
∗
=
d
∗
f^* = d^*
f
∗
=
d
∗
的关系是什么?
5
硬间隔 SVM 的对偶推导中,哪些约束是“起作用”的?支持向量与互补松弛
μ
j
g
j
=
0
\mu_j g_j = 0
μ
j
g
j
=
0
如何联系?
📖 关联深度指南:
📄 optimization-and-matrix-calculus →
更新于 2026-08-12
🎯
检验攻克程度:针对「凸优化与 KKT」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题 ➔
← 上一个知识点
Adam/AdamW 偏差修正推导
下一个知识点 →
牛顿法 vs 梯度下降
🔗 更多 数理基础 知识点卡片
贝叶斯推断
偏差方差分解
Bootstrap
因果推断与 Rubin 框架