PA
- Passive aggressiveは,ヒンジ損失が0となるようなパラメータの中で,今のパラメータに一番ユークリッド距離が近いパラメータを探して,更新する
- 今のデータを十分なマージンで正しく分類できるように
- 今のパラメータで正しく分類できていたとしても自信がないときは更新する
- 間違って分類しているときは,間違い具合に応じて更新幅を調整する.また更新幅は入力のノルムで正規化されている
- また,これまでのパラメータを尊重するように
- つまり,PAは次の最適化問題を逐次的に解く
- w(t+1)=argminw21∣∣w−w(t)∣∣2
- subject to lhinge=max(0,1−y(t)w⋅x(t))=0
導出
- lhinge≥0であり,場合分けして考える
- lhinge=0のとき
- w(t)が最適値(更新しない)
- lhinge>0のとき
- ラグランジュの未定乗数法を使い,制約を式の中に埋め込む
- L(w,τ)=(21∣∣w−w(t)∣∣2)+τ(1−y(t)w⋅x(t)) (τ≥0)
- KKT条件を満たすので,最適値は
- まず∂w∂L(w,τ)=0を解いて,
- w=w(t)+τy(t)x(t)
- 代入してL(τ)=−21τ2∣∣x(t)∣∣2+τ(1−y(t)w⋅x(t))
- ∂τ∂L(τ)=0を解いて,
- τ=∣∣x(t)∣∣21−y(t)w⋅x(t)
- よって,
- w(t+1)=w(t)+∣∣x(t)∣∣21−y(t)w⋅x(t)y(t)x(t)=w(t)+∣∣x(t)∣∣2lhingey(t)x(t)
PA-I, PA-II
- ノイズや線形分離不可能な場合のため,ある程度の誤りは許容するように変更
- スラック変数ξ,と,アグレッシブさを表す定数Cを導入する
- PA-I
- w(t+1)=argminw21∣∣w−w(t)∣∣2+Cξ
- subject to lhinge=max(0,1−y(t)w⋅x(t))≤ξ,ξ≥0
- PA-II
- w(t+1)=argminw21∣∣w−w(t)∣∣2+Cξ2
- subject to lhinge=max(0,1−y(t)w⋅x(t))≤ξ2
- これを解くと更新式はそれぞれ次のようになる
- PA-I
- w(t+1)=w(t)+min(C,∣∣x(t)∣∣2lhinge)y(t)x(t)
- PA-II
- w(t+1)=w(t)+∣∣x(t)∣∣2+2C1lhingey(t)x(t)