k*-Nearest Neighbors (NIPS & ICDM輪読会発表資料)

256 views

Published on

紹介する文献:
Anava, O. and Levy, K. (2016). k*-nearest neighbors: from global to local, Advances in Neural Information Processing Systems 4916--4924.

Published in: Engineering
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
256
On SlideShare
0
From Embeds
0
Number of Embeds
46
Actions
Shares
0
Downloads
8
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

k*-Nearest Neighbors (NIPS & ICDM輪読会発表資料)

  1. 1. k*-Nearest Neighbors: From Global to Local Anava, O. and Levy, K. (NIPS 2016) 17/02/11@NIPS & ICDM 2016論⽂輪読会 (株)リクルートコミュニケーションズ 中⾕宙央 1
  2. 2. 概要 2 1. 導⼊:k-NNとk*-NN 2. 問題定義と最適化問題 3. アルゴリズム 4. 数値実験
  3. 3. k最近傍法(k-NN) 3 ˆf(x0) = 1 k i∈Nk(x0) yi x0 学習データ 1. 2. D = {(x1, y1), ..., (xn, yn)}学習データ k 推定 (xi ∈ Rp , yi ∈ R) 近傍点の数
  4. 4. k-NNの疑問点 4 常に同じ を使ってよいか?k 平均値を推定値としてよいか? 分布が偏った学習データの例
  5. 5. 提案⼿法: k*-NN 5 各⼊⼒ に対してx データ点の重み 近接点の数 を求めて推定 α1, ..., αn k ü 緩い仮定から最適化問題を導く ü 計算量 のアルゴリズム ü 代表的なメモリベース⼿法より⾼い精度 O(n log n)
  6. 6. 6 1. 導⼊:k-NNとk*-NN 2. 問題定義と最適化問題 3. アルゴリズム 4. 数値実験
  7. 7. モデルの仮定(1) 7 yi = f(xi) + ϵi 1. はLipschitz連続f |f(x) − f(x′)| ≤ Ld(x, x′) ※ は距離関数d(·, ·) 2. は独⽴なノイズϵi E[ϵi | xi] = 0, |ϵi| ≤ b ⼀般的な回帰モデルを仮定:
  8. 8. モデルの仮定(2) 8 ˆf(x0) = 1 k i∈Nk(x0) yi ˆf(x0) = n i=1 αiyi k-NN ⎛ ⎝ n i=1 αi = 1, αi ≥ 0 ⎞ ⎠ 解きたい問題 min α n i=1 αiyi − f(x0) ⼀般化 は未知なので,⽬的関数を不等式で評価f k*-NN
  9. 9. 損失の評価 9 n i=1 αiyi − f(x0) = n i=1 αiϵi + n i=1 αi(f(xi) − f(x0)) ≤ n i=1 αiϵi + L n i=1 αid(xi, x0) ノイズ項 推定値の偏り ※ はLipschitz定数Lさらに不等式で評価
  10. 10. Hoeffding の不等式による評価 10 Hoeffdingの不等式 X1, ..., Xn (Xi ∈ [ai, bi]) Sn = n i=1 Xi P (|Sn − E [Sn]| ≥ t) ≤ 2 exp − 2t2 n i=1(bi − ai)2 E[ϵi | xi] = 0 |ϵi| ≤ b 1 − δ 独⽴な確率変数 モデルの仮定 と上の不等式より, 以上の確率で n i=1 αiϵi ≤ b 2 log 2 δ ∥α∥2 Cとおく =⇒
  11. 11. 最適化問題 11 βi = L C d(xi, x0) d(x1, x0) ≤ · · · ≤ d(xn, x0) d(·, ·)※ は距離関数 min α ∥α∥2 + αTβ s.t. n i=1 αi = 0, αi ≥ 0 以上まとめると, 以上の確率で n i=1 αiyi − f(x0) ≤ C ∥α∥2+L n i=1 αid(xi, x0). 1 − δ 次の凸最適化問題を解く データのインデックスを取り直し,新たな変数を導⼊
  12. 12. 12 1. 導⼊:k-NNとk*-NN 2. 問題定義と最適化問題 3. アルゴリズム 4. 数値実験
  13. 13. 解き⽅ 13 L = ∥a∥2+αT β+λ 1 − n i=1 αi − n i=1 θiαi ∂L ∂αi = 0 θiαi = 0 1. ラグランジアンを求める 2. 最適解は以下の条件を満たす (相補性条件) ※ は新たな変数λ, θi⽬的関数 連⽴して解く
  14. 14. 重み を求める 14 λ0 α∗ i ∝ λ − βi if λ > βi = 0 if λ ≤ βi α∗ i α∗ i n i=1 α∗ i = 1 βi 距離 に⽐例して減少d(xi, x0) ※制約条件 に注意
  15. 15. ただし, は を満たす最⼤の を求める 15 λ∗ 1 = n i=1 (α∗ i )2 ∥α∗∥2 2 = α∗ i >0 (λ − βi)2 λ∗ = 1 k∗ ⎛ ⎜ ⎝ k∗ i=1 βi + k∗ + k∗ i=1 βi 2 − k∗ k∗ i=1 β2 i ⎞ ⎟ ⎠ k∗ α∗ i > 0 i の解より,次の2次⽅程式が求まるα∗ i この⽅程式を解き考察すると,解が求まる 推定に使う近傍点の数
  16. 16. 学習データ , 推定したい点 アルゴリズム 16 ⼊⼒: 出⼒: を求めるβ1 ≤ β2 ≤ ... ≤ βn While λk > βk+1 ∧ k < n k ← k + 1 λk ← 1 k ⎛ ⎜ ⎝ k i=1 βi + k + k i=1 βi 2 − k k i=1 β2 i ⎞ ⎟ ⎠ λ0 = β1 + 1, k = 0 ˆf(x0) = n i=1 αiyi αi ∝ λk − βi if i ≤ k = 0 if i > k D x0 1. 2.
  17. 17. 17 1. 導⼊:k-NNとk*-NN 2. 問題定義と最適化問題 3. アルゴリズム 4. 数値実験
  18. 18. パラメータ による違い 18 L/C L C = 5 k*-NNによって推定した曲線の⽐較 → ⼩で滑らかに L C = 0.5 L/C
  19. 19. 実データによる⽐較 19 k−NN Nadaraya- Watson k*-NN データセット1 コンクリート軟度 3.4944 2.9154 2.8057 データセット2 ヨットの抵抗 6.4643 5.2577 5.0418 ※論⽂より抜粋 平均絶対誤差の⽐較 • NW推定量は (KはRBFカーネル) • パラメータはCVで選ぶ • 8個のデータセットのうち,7個でk*-NNが誤差最⼩ ˆf(x0) = n i=1 K(xi,x0)yi n i=1 K(xi,x0)
  20. 20. まとめ 20 k*-NNでは, 緩い仮定から損失の上界を求め,最適化問題に帰着 各⼊⼒に対し,適切なデータの重みを求めて推定

×