Structured SVM

结构化学习

概念

Structured SVM_第1张图片

Structured SVM_第2张图片
Structured SVM_第3张图片

Structured Linear Model

主要解决上述三个问题:

  • what does F(x,y) look like?
  • How to solve the “arg max” problem
  • Given training data, how to find F(x,y)

1.问题1
F ( x , y ) = w 1 ∗ ϕ 1 ( x , y ) + w 2 ∗ ϕ 2 ( x , y ) + ⋯ F(x, y) = w_1*\phi_1(x,y) + w_2*\phi_2(x,y) + \cdots F(x,y)=w1ϕ1(x,y)+w2ϕ2(x,y)+
F ( x , y ) = w ∗ ϕ ( x , y ) F(x,y) = w * \phi(x,y) F(x,y)=wϕ(x,y)
其中 ϕ ( x , y ) \phi(x,y) ϕ(x,y)表示X内满足y的微特征,类似attribute,w为特征权重,有traindata训练得到。
Structured SVM_第4张图片
2. 问题2
Structured SVM_第5张图片
假设已经得到解决,那么问题三就成立
3. 问题三
Structured SVM_第6张图片

算法实现

Structured SVM_第7张图片

特别注意:因为得到的最大值 y ˉ r \bar{y}^r yˉr不等于准确值 y ^ r \hat{y}^r y^r,只能慢慢更新w,使得 y ˉ r \bar{y}^r yˉr无限接近于所以 y ^ r \hat{y}^r y^r w → w + ϕ ( x r , y ^ r ) − ϕ ( x r , y ˉ r ) w \to w + \phi(x^r,\hat{y}^r) - \phi(x^r,\bar{y}^r) ww+ϕ(xr,y^r)ϕ(xr,yˉr)

这个时候我们会有一个问题w是否收敛,且需要迭代多少次才能使其收敛。
Structured SVM_第8张图片
Structured SVM_第9张图片
Structured SVM_第10张图片
Structured SVM_第11张图片
Structured SVM_第12张图片

即:迭代 ( R δ ) 2 (\frac{\R}{\delta})^2 (δR)2。R = m a x F ( x , y ) , δ ≈ w ^ ∗ ϕ ( x r , y ^ r ) − w ^ ∗ ϕ ( x r , y ) max F(x,y),\delta \approx \hat w*\phi(x^r,\hat y^r)-\hat w*\phi(x^r,y) maxF(x,y),δw^ϕ(xr,y^r)w^ϕ(xr,y)

Structured SVM_第13张图片

structured svm

定义cost function

C n = max ⁡ y [ w ∗ ϕ ∗ ( x n , y ) ] − w ∗ ϕ ( x n , y ^ n ) C^n =\max_y[w*\phi*(x^n,y)]-w*\phi(x^n,\hat y^n) Cn=ymax[wϕ(xn,y)]wϕ(xn,y^n)
C = ∑ n = 1 N C n C =\sum^N_{n=1}C^n C=n=1NCn
Structured SVM_第14张图片

gradient descent

Structured SVM_第15张图片

considering error

Structured SVM_第16张图片
Structured SVM_第17张图片

因为每一个 y y y有比较接近KaTeX parse error: Expected group after '\hat' at end of input: \hat 也有比较原理的,所以error并不是都一样,应该考虑其的好坏,即 △ ( y ^ , y ) = m a r g i n \bigtriangleup(\hat y,y)=margin (y^,y)=margin

Structured SVM_第18张图片这时:
y ~ n = a r g max ⁡ y [ w ⋅ ϕ ( x n , y ) \tilde y^n =arg \max_y[w \cdot \phi(x^n,y) y~n=argymax[wϕ(xn,y)
变为
y ˉ n = a r g max ⁡ y [ △ ( y ^ , y ) + w ⋅ ϕ ( x n , y ) ] \bar y^n =arg \max_y[\vartriangle(\hat y,y) +w \cdot \phi(x^n,y)] yˉn=argymax[(y^,y)+wϕ(xn,y)]
▽ C n ( w ) = ϕ ( x n , y ~ n ) − ϕ ( x n , y ^ n ) \triangledown C^n (w)=\phi(x^n,\tilde y^n) - \phi(x^n,\hat y^n) Cn(w)=ϕ(xn,y~n)ϕ(xn,y^n)
变为
▽ C n ( w ) = ϕ ( x n , y ˉ n ) − ϕ ( x n , y ^ n ) \triangledown C^n (w)=\phi(x^n,\bar y^n) - \phi(x^n,\hat y^n) Cn(w)=ϕ(xn,yˉn)ϕ(xn,y^n)
因此: w = w − η ▽ C n w = w - \eta \triangledown C^n w=wηCn
Structured SVM_第19张图片
Structured SVM_第20张图片
Structured SVM_第21张图片
Structured SVM_第22张图片

Cutting Plane Algorithm

Structured SVM_第23张图片
最终算法:
Structured SVM_第24张图片

你可能感兴趣的:(机器学习)