この記事は NIPS 2010 読み会 用の資料です。
今回読む論文
- Ding and Vishwanathan. t-Logistic Regression. NIPS 2010
- http://books.nips.cc/papers/files/nips23/NIPS2010_0177.pdf
- http://www.cs.purdue.edu/homes/ding10/DinVis10.pdf
- nips.cc にある paper は Appendix と Tables が削られている。でも本文中には「 Table 1 によると」とか書いてある(苦笑)
- ロジスティック回帰をラベルノイズに対して頑健にしたい
- 拡張された指数型分布族を用いる
- Student's t-distribution を事前分布とする
- キーワード: Tsallis エントロピー, 非示量性推定量, エスコート分布, Convex Multiplicative Programming
参照論文
- [Naudts 2004] Estimators, escort proabilities, and Φ-exponential families in statistical physics.
- [ABE 2003] Geometry of escort distributions.
- [Sears 2008] Generalized Maximum Entropy, Convexity, and Machine Learning.
- [Kuno+ 1993] An outer approximation method for minimizing the product of several convex functions on a convex set.
2. Logistic Regression
- x_i: samples, y_i ∈ {-1, +1}: labels, φ:feature map
- とおく
- : i.i.d. dataset
-
- θでパラメータ付けされた条件付分布
- where
- 対数分配(log-partition)関数
-
- 事後分布
3. t-Exponential family of Distribution
-
- where
- パラメータ t (0<t<2) を入れて指数関数を拡張したもの
- 通常の exp と異なり、
- とおくと、
-
- exp_t の逆関数
- 擬加法性 :
exp_t のグラフ
- 1<t<2 のとき、exp_t は exp よりゆっくり 0 に向かう
- heavy tail distribution やベキ分布の表現に使える
- 今後、1<t<2 、特に t=1.9 を主に想定
t-指数型分部族
指数型分部族のアナロジーから t-指数型分部族を定義
-
- where : 対数分配関数(log-partition, 確率分布を正規化する、θによって決まる定数)
- 一般に g_t(θ) の closed form を exact に求めることは出来ない
Student の t-分布は t-指数型分部族
- St(x|μ,Σ,v): 平均μ, 共分散Σ, 自由度 v の Student t-分布
- t, φ, θ, g_t を適切に定めると、St(x|μ,Σ,v) は次のように書き直すことができる
-
- where ,
- ,
- ,
- ΨはΣ,v,次元で決まる定数
- 詳しくは論文の Appendix A 参照
エスコート分布 [Naudts][Abe][Sears]
4. Binary Classification with the t-exponential family
t-ロジスティック回帰を定式化する。
-
- 条件付き分布を t-指数関数によってモデル化
- ここでは 1<t<2 を考える
- g_t はこれを正規化するので、 を満たす
- closed form は求められない! → 実験では、いくつかの点について数値解を求め、その間はスプライン補完によって計算
Student's t-prior
θの事前分布にt-分布を入れる
- t を を満たすように選ぶ
- 自由度
- このとき v>1 ⇔ 1<t<2
- Student t-分布は t-指数型分布族
- したがって と書き直せる
- は適切に定義(詳細は論文参照)
- これを使って、等方性の事前分布を次のように設定する
likelihood
- LR と同様に log-likelihood を考えても、凸損失関数は得られない
- Student t-事前分布に対する -log p(θ)、つまり正則化項も凸ではない
- ↓↓↓
- log_t は単調増加関数ゆえ、log_t-likelihood を最小化すればよい
- (C>0)
- ただし
- r_j, l_j ともに凸ゆえ、凸関数の積を最小化する問題に帰着できることがわかる
t-Logistic Regression の損失関数
- t=1.9 での損失関数は normal LR のものよりペナルティが小さい
- 頑健性
5. Convex Multiplicative Programming
- P(θ) の最小化には、以下の定理を用いる[Kuno+ Theorem 2.1]
を という制約下で最小化したときの最適解 で、 が P(θ) の最適解であるようなものが存在する。
- [Kuno+] では exact algorithm が紹介されているが、次元>4 あたりから厳しい(指数オーダー)
- →ξとθについて交互に最小化していく
- 以下のξstep とθステップを繰り返すことで、勾配が0になる点に収束する(Appendix C)
ξstep
- θを固定。 と書くと、
- という制約条件の下で を最小化すればよい
- これは凸集合に対する線形計画法ゆえ解け、
- を得る。
- z_n が大きくなれば、 influence たる ξ_n は小さくなる。つまり大きい損失を持つサンプルは影響が少ない(robust)
θstep
- ξを固定して、- をθについて最小化。
- 凸関数の正係数線形結合ゆえ、これも凸関数。つまり制約無しの凸関数最適化問題なので、適当な手法で解ける
- 本論文の実験では L-BFGS を用いているが、それには z_n (つまり r_j と l_i)の勾配が必要。
-
- ただし e_j は j 番目の要素のみ 1、それ以外は 0 のベクトル
-
- 途中 ∇g_t が現れるが、定理 1 により E_q に置き換わる
- の bias が現れている
6. 実験
- 6つのデータセット(Long-Servedio, Mease-Wyner, Mushroom, USPS-N, Adult, Web)
- 次元:21〜300、サンプル数:2000〜60000
- ランダムに選んだ 30% を validation set に
- t-Logistic Regression(t=1.3, 1.6, 1.9) で 10-fold CV
- 大きいほど頑健であることを期待
- baselines:
- normal Logistic Regression
- probit loss in BrownBoost/RobustBoost
- linear SVM
- label noise なし(青)、10% の label noise(赤)
- ノイズなしでは LR, SVM, t=1.3 あたりが良い感じ
- ノイズありでは、左下(USPS-N)の probit が若干勝っている以外は、全て t=1.9 がエラー最少
- データ件数が多ければ、linear SVM でもそんなに悪くない……?
- ノイズが増えると安定しない?
- label noise が 30% もあるってどんな状況?
- 計算量のオーダーは LR くらい?
- probit はええ。
- RampSVM (Collobert+ 2006) も使いたかったが、うまく動かせなかったらしい。