[原]从结构化风险最小化角度理解SVM
2013-12-7阅读425 评论0
最近在讨论班上,LXH同学讲到Structural SVM with latent variables,最后大家提出了一个问题:他讲的怎么没体现出SVM的思想啊??
刚开始我也是这么想的,后来想了一下,也许可以换个角度理解SVM。
统计学习方法由模型、策略和算法构成。模型是选择一个概率分布模型或者决策函数空间来模拟样本空间。策略是优化模型所用到的目标函数。算法是解决最优化问题的方法。(具体可参见李航《统计学习方法》)
而SVM的主要思想是“统计学习方法由模型、策略、算法组成,建立一个最优决策超平面,使得分类正负样本距离这个超平面距离最大化。”
在这样的思路下,问题就转化成学习求解超平面的问题。即求解如下问题:
MAX(1)
对于非线性可分问题为:
MAX(2)
最优化问题第二项和约束项可以放到一起,用拉格拉日乘子表示为:
(3)
非线性可分问题同样可以表示成这样的形式。
从SVM的发展可以知道,这种模型选择的策略是结构化风险最小化,这就要先说到经验风险。经验风险是指所有样本的损失函数之和,可表示为:
(4)
如果单纯考虑最小化经验风险(4),会导致过拟合问题(特别是样本容量很小时),所以需要加上一个惩罚项,约束模型复杂度,即得到结构化风险:
(5)
采用最小化结构风险(5)可得到经验风险和置信范围最小化的模型。贝叶斯最大后验概率就是结构化风险最小化的一个例子。
从结构风险最小化的角度看SVM,显然,(3)就是最小化结构风险函数,其中第一项是最小化模型复杂性,第二项是经验风险。
然后再看Latent Structural SVM问题,其模型为:
策略是最小化结构风险,最优化问题表达为:
(6)
公式(6)中第二项是经验风险的上界,第一项是与常规SVM相同,是为了最小化模型复杂度,提高模型的泛化能力,防止过拟合。
SVM其实是统计学习方法中的一种,并不仅限于某一种表达形式,它是线性判别中的结构化风险最小化模型。
参考资料见:July博客及其References