原始问题对偶化
Posted demonhunter
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原始问题对偶化相关的知识,希望对你有一定的参考价值。
本篇假设已经了解Lagrange函数,对偶的基本原理,针对的问题是对没有约束的函数(f(w))如何变换为对偶,以及对参考资料[1][2]一些推到的补充。
问题
一般的统计机器学习目标函数可以通常为
其中(X)代表数据,(w)代表要学习的参数,(f(Xw))表示某种误差度量,(r(w))表示对(w)的正则项。
现在要对这个问题做对偶,为什么要做对偶在参考资料里也给出了几种情况,这里罗列如下:
- 参数(w)的维度小于数据维度,求解方便
- 可以分布式
公式(~ ef{eq:basic_form})没有约束信息,通过引入
来制造约束。引入约束后,更新如下
这样就可以构造Lagrange函数,
利用共轭函数,上式整理为
最后的目标是要极大化Lagrange函数,即公式(~ ef{eq:lagrange}),也就是最小化dual gap。
根据(-alpha X= abla r^(w))原始变量(w)和对偶变量间的关系如下
对于参考资料[1]中共轭函数的例子,
对Hinge和Square loss给出具体的推到
-
Hinge loss
[suplimits_z uz-max{0, 1-y_iz} ]分析(max{0, 1-y_iz})的取值情况(需要注意这时候的(vert y_ivert=1)),当(y_iz>1)时,即(vert zvert>frac{1}{vert yvert})时,上式变成(sup_z uz)而且此时(z)还是一个无界的,因此极限不存在。当(y_i zleq1)时,即(vert z vert leq frac{1}{vert yvert})时,上式变为(sup_z uz-1+y_iz),此时为了取极大值(y_iz=1),因此变成(sup_z uz),因为(z)的取值范围,最后变成(ufrac{1}{vert yvert}),注意(y=pm1),因此最终的结果是(u),这个和图片中的结果有点不符,我也不太确信。
-
Square loss
[sup_z uz-Vert y_i - zVert_2^2 ]对于Square loss直接展开,然后求极值就可以得到(y_i u+frac{u^2}{4})的结果。
例子
例子来源于[2],primal问题是
根据公式(~ ef{eq:lagrange})的变换,得到
上式中的花括号的地方添加的(frac{1}{n})是为了更方便合并(l_i(u_i),,alpha_iu_i)。对于正则项部分
从而(3)到(4)的变换使用的就是square loss的共轭函数,为了简便,可以令(A=frac{1}{lambda n}egin{bmatrix}frac{1}{n}x_iend{bmatrix}),最终化简为
关于(l_i)的部分就不进一步说明了。参数( m w)和(alpha)的关系,通过(3)到(4)中对( m w)求极值可以得到
参考资料
以上是关于原始问题对偶化的主要内容,如果未能解决你的问题,请参考以下文章