3. 支持向量机(SVM)拉格朗日对偶性(KKT)

点点圈 提交于 2020-02-28 19:15:03

1. 感知机原理(Perceptron)

2. 感知机(Perceptron)基本形式和对偶形式实现

3. 支持向量机(SVM)拉格朗日对偶性(KKT)

4. 支持向量机(SVM)原理

5. 支持向量机(SVM)软间隔

6. 支持向量机(SVM)核函数

1. 前言

在约束最优化问题中,常常利用拉格朗日对偶性将原始问题转化为对偶问题,通过求解对偶问题获得原始问题的解。该方法应用在许多统计学方法中,如最大熵模型、支持向量机。

2. 原始问题

假设\(f(x),c_i(x),h_j(x)\)是定义在\(R^n\)上的连续可微函数。考虑如下最优化问题

\[ \min_{x\in R^n}f(x)\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;(1) \]

\[ s.t. \; c_i(x)\leq0, \; i=1,2,...,k \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (2) \]

\[ \;\;\;\;\;\;\; h_j(x)=0, \; j=1,2,...,l \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (3) \]
称此约束最优化问题为原始最优化问题或原始问题

引入广义拉格朗日函数

\[ L(x,\alpha,\beta)=f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (4) \]
这里, \(\alpha_i,\beta_j\)是拉格朗日乘子,\(\alpha_i≥0\). 考虑\(x\)的函数,这里下标\(P\)表示原始问题。

\[ \theta_P(x)=\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (5) \]

容易得到:当\(x\)满足原始问题约束时,\(\theta_P(x)=f(x)\),则可得到与原始优化问题想等价的极小化问题如下:

\[ \min_{x}\theta_P(x)=\min_{x}\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (6) \]
此问题称为广义拉格朗日函数的极小极大问题

定义原始问题的最优值

\[ p^*=\min_{x}\theta_P(x) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (7) \]

3. 对偶问题(dual problem)

关于对偶问题,我们首先定义:

\[ \theta_D(\alpha,\beta)=\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (8) \]

再考虑极大化上式:

\[ \max_{\alpha,\beta;\alpha_i\geq0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta;\alpha_i\geq0}\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (9) \]
问题\(\max_{\alpha,\beta;\alpha\geq0}\min_{x}L(x,\alpha,\beta)\)称为广义拉格朗日函数的极大极小问题。可将广义拉格朗日函数的极大极小问题表示为约束最优化问题:

\[ \max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\min_{x}L(x,\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (10) \]
\[ s.t.\;\alpha_i\geq0,\; i=1,2,...,k \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (11) \]

称为原使问题的对偶问题。定义对偶问题的最优值,称为对偶问题的值。

\[ d^*=\max_{\alpha,\beta;\alpha_i\geq0}\theta_D(\alpha,\beta) \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; (12) \]

4. 原始问题和对偶问题的关系

4.1 定理1

若原始问题和对偶问题都有最优值,则

\[ d^*=\max_{\alpha,\beta;\alpha_i\geq0}\min_{x}L(x,\alpha,\beta)\leq\min_{x}\max_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta)=p^* \]

4.2 推论1

\(x^*\)\(\alpha^*,\beta^*\)分别是原始问题(公式1~3)和对偶问题(公式10~11)的可行解,并且\(d^*=p^*\),则\(x^*\)\(\alpha^*,\beta^*\)分别是原始问题和对偶问题的最优解。

4.3 定理2

考虑原始问题(公式1~3)和对偶问题(公式10~11). 假设函数\(f(x)\)\(c_i(x)\)是凸函数,\(h_j(x)\)是仿射函数1; 并且假设不等式约束\(c_i(x)\)是严格可行的, 即存在\(x\), 对所有\(i\)\(c_i(x)<0\), 则存在\(x^*,\alpha^*,\beta^*\)使\(x^*\)是原始问题的解, \(\alpha^*,\beta^*\)是对偶问题的解,并且

\[ p^*=d^*=L(x^*,\alpha^*,\beta^*) \]

4.4 定理3

对原始问题(公式1~3)和对偶问题(公式10~11), 假设函数\(f(x)\)\(c_i(x)\)是凸函数,\(h_j(x)\)是仿射函数,并且不等式约束\(c_i(x)\)是严格可行的, 则\(x^*\)\(\alpha^*,\beta^*\)分别是原始问题和对偶问题的解的充分必要条件是\(x^*,\alpha^*,\beta^*\)满足KKT条件:
\[ \nabla_xL(x^*,\alpha^*,\beta^*)=0 \]

\[ \nabla_\alpha L(x^*,\alpha^*,\beta^*)=0 \]

\[ \nabla_\beta L(x^*,\alpha^*,\beta^*)=0 \]

\[ \alpha_i^*c_i(x^*)=0, \; i=1,2,...,k \]

\[ c_i(x^*)\leq0, \; i=1,2,...,k \]

\[ \alpha_i^*\geq0, \; i=1,2,...,k \]

\[ h_j(x^*)=0, \; j=1,2,...,l \]

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!