首先咱们讨论如何使用拉格朗日乘数法对一个带不等式约束条件的优化问题进行改写,并给出其对偶问题。考虑带不等式约束的优化问题:app
引进广义拉格朗日函数ide
这里 是拉格朗日乘数,其中 。考虑x的函数函数
会发现 有以下形式优化
由于对于一个给定的 若是 违反约束条件, 即存在某个 或者存在某个 那么可让 或者 这会使得 相反若是 知足约束条件, 那么很显然有 和spa
因而在知足约束条件的状况下, 那么原始问题 能够写成以下的一个等价形式,称其为拉格朗日函数的绩效极大值问题:orm
而交换 和 两个符号, 获得问题 称其为拉格朗日函数的极大极小值问题:ci
将问题 表示为约束最优化问题的形式获得:it
式 就是原始问题 的对偶问题 form
下面咱们将上面讨论的结果用在支持向量机模型中,从而获得支持向量机模型中原始问题的对偶问题。考虑一个二分类的问题: 对于特征空间上的一个线性可分的训练数据集,
class
其中 为第i个实例的特征向量, 为 的类标记。当 时,称 为正例 ; 当 -1时,称 为负例。使用支持向量机对这个数据集进行二分类,则模型以下
即咱们但愿最大化超平面 和训练数据集T之间的距离 ,使得我 们找到的超平面\Omega能够将数据集“分得最开”。上面的模型是一个比较直观的初始的模型,咱们经常要对其进行一些简单的变形: 将(2)式中左边的 || ||乘到右边去,获得(2)式的等价形式
为何是“1”呢? 实际上1只是随便取的一个正常数,目的是固定|| 乘积的值,取其它的正常数也能够。为何要令 || 等于一个常数呢? 缘由是当咱们固定了 的值以后,咱们能够将最大化问题max 转化 成最小化问题min || , 这样模型中的 就不须要被讨论了,上面的模型会 变成一个单纯的优化问题。
有了(2) )的变形后,咱们能够将目标函数改写成min 但通常不直接取范数,由于式子会不具备二阶连续性,咱们取它的等价形式
这样最开始的模型就转化成
此时这是一个含有 个参数和 个不等式约束的优 化问题了。此时咱们能够由最开始的讨论给出问题 的对偶问题,令
问题 的对偶问题便是拉格朗日极大极小值问题:
对对偶问题的求解,须要先对 关于 , 求极小,再关于 求极 大。
(I) 求 将 分别对 求偏导数并令其为 0 ,有:
获得
将上式代入(*)式整理得:
(II) 对 关于 求极大值, 即:
这样咱们就获得支持向量机模型问题 的对偶问题事实上在支持向量机中讨论对偶问题不单单是使得求解容易,另外一方面是在线性不可分的状况下更天然地引进核函数。