Upgrade to Pro — share decks privately, control downloads, hide ads and more …

モデルの微分による非線形モデルの解釈

 モデルの微分による非線形モデルの解釈

モデルの微分による非線形モデルの解釈
線形モデルの解釈の検討
非線形モデルでは?
局所的に傾きを求めよう!→ 微分
非線形モデルの微分
非線形モデルの例
非線形モデルの式
SVMモデルの微分
カーネル関数の微分
SVMモデルの微分
SVMモデルの微分係数によって分かること
SVRモデルの微分
SVRモデルの微分係数によって分かること
OCSVMモデルの微分
OCSVMモデルの微分係数によって分かること

Avatar for Hiromasa Kaneko

Hiromasa Kaneko

June 30, 2018
Tweet

More Decks by Hiromasa Kaneko

Other Decks in Technology

Transcript

  1. モデルの微分による非線形モデルの解釈 線形モデル • 標準回帰係数などの重みを⾒ることで、 各説明変数 (記述⼦・特徴量) の重みを検討できる 非線形モデル • モデルを各説明変数で偏微分

    • 説明変数空間におけるある点 (たとえば、あるサンプル) における 微分係数を計算することで、その点における説明変数ごとの 傾きを計算できる • 傾きが大きいということは、その点において値を変化させることで、 目的変数の値の変化も大きい説明変数であるということ 1
  2. 線形モデルの解釈の検討 2 線形の2クラス分類モデルもしくは回帰モデル y = f(x) (2クラス分類モデルにおいて、目的変数 y は -1

    もしくは 1) f(x) = a1 x1 + a2 x2 + … + am xm + b (m : 説明変数の数) モデルにおける各説明変数 xi の重み ai を⾒ることで、 xi を 1 変化させたときに、f(x) がどれくらい変化するかわかる ただし、説明変数の間に相関があるときは xi だけ 1 変化させる ことは難しく、単純に ai を xi の y への寄与の大きさとすることは できないことに注意
  3. 非線形モデルの微分 5 f(x) を xi で偏微分すると、 ( ) i f

    x ∂ ∂ x f(x) が線形モデル、つまり f(x) = a1 x1 + a2 x2 + … + am xm + b (m : 説明変数の数) のとき、 ( ) i i f a x ∂ = ∂ x となり重みと一致 線形モデルでは定数になるが、非線形モデルでは x の関数になる
  4. 非線形モデルの例 6 今回は、サポートベクターマシン関係の3つの非線形モデルを 説明変数 xi で偏微分してみる 2クラス分類︓Support Vector Machine (SVM)

    詳細︓https://datachemeng.com/supportvectormachine/ 回帰分析︓Support Vector Regression (SVR) 詳細︓https://datachemeng.com/supportvectorregression/ モデルの適用範囲︓One-Class SVM (OCSVM) 詳細︓https://datachemeng.com/ocsvm/ カーネル関数は、ガウシアンカーネルとする
  5. 非線形モデルの式 7 SVM SVR OCSVM ( ) ( ) 2

    ( ) ( ) , exp j j K γ = − − x x x x ( ) ( ) ( ) 1 ( ) , n j j j j f y K b α = = +  x x x ( ) ( ) * ( ) 1 ( ) , n j j j j f K b α α = = − +  x x x ( ) ( ) 1 ( ) , n j j j f K b α = = +  x x x n : サンプル数 y(j) : j 番目のトレーニングサンプルの目的変数の値 x(j) : j 番目のトレーニングサンプルの説明変数ベクトル αj , αj *: SVM, SVR, OCSVMモデリングにより求められる値 b : 定数項
  6. SVMモデルの微分 8 ( ) ( ) ( ) ( )

    ( ) 1 ( ) ( ) 1 , , n j j j j i i n j j j j i f y K b x x y K x α α = =   ∂ ∂ = +   ∂ ∂   ∂ = ∂   x x x x x カーネル関数 ( ) ( ) 2 ( ) ( ) , exp j j K γ = − − x x x x SVMモデル f(x) を xi で偏微分すると、 を xi で偏微分する
  7. カーネル関数の微分 9 ( ) ( ) ( ) ( )

    2 2 2 2 2 ( ) ( ) ( ) ( ) ( ) 1 1 2 2 ... ... j j j j j i i m m x x x x x x x x − = − + − + + − + + − x x ( ) ( ) ( ) ( ) 2 ( ) ( ) 2 2 ( ) ( ) , exp exp j j i i j j i K x x x γ γ γ ∂ ∂ = − − ∂ ∂ ∂ = − − − − ∂ x x x x x x x x より、 ( ) ( ) 2 ( ) ( ) 2 j j i i i x x x ∂ − = − − ∂ x x ( ) ( ) ( ) 2 ( ) ( ) ( ) , 2 exp j j j i i i K x x x γ γ ∂ = − − − ∂ x x x x よって、
  8. SVMモデルの微分 10 p.8, p.9 より、 ( ) ( ) (

    ) 2 ( ) ( ) ( ) 1 2 exp n j j j j i i j i f y x x x γ α γ = ∂ = − − − ∂  x x x
  9. SVMモデルの微分係数によって分かること 11 ( ) ( ) 2 ( ) (

    ) ( ) 1 2 exp n j j j j i i j y x x γ α γ = − − −  x x の値が正 (もしくは負) のとき、 あるサンプル x から 説明変数 xi の値だけを大きくしたとき、 クラス 1 (もしくは-1) の方向に変化するということ ( ) ( ) 2 ( ) ( ) ( ) 1 2 exp n j j j j i i j y x x γ α γ = − − −  x x の絶対値が 大きいということは、その変化が大きいということ
  10. SVRモデルの微分 12 ( ) ( ) ( ) ( )

    ( ) * ( ) 1 * ( ) 1 , , n j j j j i i n j j j j i f K b x x K x α α α α = =   ∂ ∂ = − +   ∂ ∂   ∂ = − ∂   x x x x x SVRモデル f(x) を xi で偏微分すると、 p. 9 より、 ( ) ( )( ) ( ) 2 * ( ) ( ) 1 2 exp n j j j j i i j i f x x x γ α α γ = ∂ = − − − − ∂  x x x
  11. SVRモデルの微分係数によって分かること 13 ( )( ) ( ) 2 * (

    ) ( ) 1 2 exp n j j j j i i j x x γ α α γ = − − − −  x x の値が正 (もしくは負) のとき、あるサンプル x から 説明変数 xi の値だけを大きくしたとき、 目的変数の値が正 (もしくは負) の方向に変化するということ の絶対値が 大きいということは、その変化が大きいということ ( )( ) ( ) 2 * ( ) ( ) 1 2 exp n j j j j i i j x x γ α α γ = − − − −  x x
  12. OCSVMモデルの微分 14 OCSVMモデル f(x) を xi で偏微分すると、 p. 9 より、

    ( ) ( ) ( ) 2 ( ) ( ) 1 2 exp n j j j i i j i f x x x γ α γ = ∂ = − − − ∂  x x x ( ) ( ) ( ) ( ) 1 ( ) 1 , , n j j j i i n j j j i f K b x x K x α α = =   ∂ ∂ = +   ∂ ∂   ∂ = ∂   x x x x x
  13. OCSVMモデルの微分係数によって分かること 15 ( ) ( ) 2 ( ) (

    ) 1 2 exp n j j j i i j x x γ α γ = − − −  x x の値が正 (もしくは負) のとき、 あるサンプル x から 説明変数 xi の値だけを大きくしたとき、 f(x) が大きく (もしくは小さく) なり、モデルの適用範囲内 (もしくは適用範囲外) の方向に変化するということ ( ) ( ) 2 ( ) ( ) 1 2 exp n j j j i i j x x γ α γ = − − −  x x の絶対値が 大きいということは、その変化が大きいということ