スキップしてメイン コンテンツに移動

Theorem of SVM part 1

Introduction  

I will explain theorem of SVM.
Please look at my implementation of SVM.
Implement linear SVM
Implement kernel SVM
Today, I will explain about SVM until deriving the objective function.


Overview  
  • Generalized linear model  
  • Explain SVM
  • hard margin  
  • soft margin  



Generalized linear model  

SVM is used generalized linear model. Generalized linear model is following function
$$f(x) = w^T\phi(x) + b$$
b is called bias.
$$0 = w^T\phi(x) + b$$is hyper plane. This hyper plane separate two class of $\phi(x)$.
hyper plance is n-dimensional plane. if n = 1, hyper plane is line. if n = 2, hyper plane is normal plane.
$\phi(x)$ have effect of converting x to data which can be separated by a line.
image of $\phi(x)$ is



the left image has nonlinear data.
right image has linear data.
$\phi(x)$ convert from left image to right image.
I will handle $w^T \phi(x) + b$ as line in feature space.

Next, I will explain the object of SVM

Explain SVM
    the label is 1 or -1 in SVM. Let label is y $\in \{1,-1\}$. Let dataset is X.
    We want to make decisions function which $\forall x \in X$

    $$f(x_i) > 0 \implies y_i = 1 $$
    $$f(x_i) < 0 \implies y_i = -1$$

    Let f(x) is $w^T \phi(x) + b$, I will optimize w and b of parametor.
    However, optimization needs a standard of a good boundary. Its standard is magin. Next, I will explain hard margin.

    Hard margin
      SVM decide a boundary line by a value called margin.
      What is margin? I will explain.

      pick up data which exist nearest from $w^T \phi(x) +b = 0$. Margin is the distance between the data and $w^T \phi(x) +b = 0$.
      Look at following image of margin in 2-dimensional.



      this distance of green line is margin. SVM decide $w^T \phi(x) + b= 0$ to depend on only data which exist nearest from $w^T \phi(x) + b = 0$. This data called sopport vector.

      We decide w and b of the parameter by a maximum margin.

      Let dataset is X, $\forall x_i \in X$, distance between x and $w^T \phi(x) + b = 0$ is
      $$\frac{|w^T \phi(x_i) + b|}{||W||}$$

      Now, Assume linear hyperplane is enabled to complicately classify.


      this image is data which complicately separated hyperplane.

      this image is else data.

      Thus,
      $$f(x_i) > 0 \implies y_i = 1 $$
      $$f(x_i) < 0 \implies y_i = -1$$
      is complitely practical.

      Therefore,
      $$\forall i \in N,~~~~~~~y_i(w^T \phi(x_i) + b) > 0$$

      Therefore
      $$\frac{|w^T \phi(x_i) + b|}{||W||} = \frac{y(w^T \phi(x_i) + b)}{||W||}$$
      Next, Let $i_0$ as follow.

      $$\forall i_0 \in \arg_{n \in N} \min_{x \in X} \frac{|w^T \phi(x_n) + b|}{||W||}$$,
      Let M is
      $$M = y_{i_0}(w^T \phi(x_{i_0}) + b)$$
      Because $\forall i \in N,~y_i(w^T \phi(x_i) + b) > 0$, $M > 0$ is practical.

      M is value of distance between $w^T \phi(x) + b = 0$ and data which exist nearest $w^T \phi(x) + b = 0$

      The objective function in SVM is expressed as follow.

      $$\max_{w,b,M} \frac{M}{||W||}$$ $$~~s.t~~ \forall i \in N ~, y_i(w^T \phi(x_i) + b) \geq M$$

      Here, when $w^{\star}  = \frac{w}{M}, b^{\star}  = \frac{b}{M}$, the objective function is expressed as follow.
      $$\max_{w^{\star},b^{\star}} \frac{1}{||W^{\star}||}$$
      $$~~s.t~~ \forall i \in N, y_i (w^{\star} \phi(x_i) + b^{\star}) \geq 1$$

      I convert this from. because $||W^{\star}|| > 0$,
      $$\max_{w^{\star},b^{\star}} \frac{1}{||W^{\star}||}$$
      $$\iff \min_{w^{\star},b^{\star}}  ||W^{\star}||$$
      $$\iff \min_{w^{\star},b^{\star}}  ||W^{\star}||^2$$

      therefore, the objectice function in SVM is
      $$\min_{w,b}  ||W||^2$$
      $$~~s.t~~ \forall i \in N, y_i (w^T \phi(x_i) + b) \geq 1$$

      I define $W^{\star} = W, b^{\star} = b$ again.

      We assume data is completely separated by a hyperplane. This method is called hard margin.

      However this assumption is strict in the real world, so the soft margin is invented.
      Next, I will explain soft margin.

      Soft margin
        I introduce $\epsilon_i \geq 0$ the objective function.

        I loosen $\forall i \in N, y_i (w^T \phi(x_i) + b) \geq 1$. This condition is rewrited as follow.

        $$ \forall i \in N, y_i (w^T \phi(x_i) + b) \geq 1 - \epsilon_i$$

        if $x_i$ is beyond $w^T \phi(x) + b = 0$, $\epsilon_i > 0$ is practical.

        $x_5$ and $x_8$ and $x_9$ is beyond $w^T \phi(x) + b = 0$.
        This distance of black line is $\epsilon_i$

        I rewrite the objective function.
        $$\min_{w,b}  \frac{1}{2}||W||^2 + C\sum_{i \in N} \epsilon_i$$
        $$~~s.t~~ \forall i \in N, y_i (w^T \phi(x_i) + b) \geq 1 - \epsilon_i ,~~~~\epsilon \geq 0 , \forall i \in N$$

        C is called regulation parameter.
        This parameter is a hyperparameter, so We decide before computing SVM algorithm.
        C has the role which adjusts degree of suppression of misclassification.
        The smaller C is, The smaller effect of $\sum_{i \in N}\epsilon_i$ is. Thus, it is easy to accept misclassification. On the other hand, the bigger C is, The bigger effect of $\sum_{i \in N}\epsilon_i$ is.
        When $C = \infty$, It become hard margin.

        Reference
          https://www.amazon.co.jp/%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%83%99%E3%82%AF%E3%83%88%E3%83%AB%E3%83%9E%E3%82%B7%E3%83%B3-%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%97%E3%83%AD%E3%83%95%E3%82%A7%E3%83%83%E3%82%B7%E3%83%A7%E3%83%8A%E3%83%AB%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E7%AB%B9%E5%86%85-%E4%B8%80%E9%83%8E/dp/4061529064

          コメント

          このブログの人気の投稿

          カーネルK-means 理論編

          Introduction English ver 今日は、カーネルK-meansの理論について書きます。カーネルK-meansは通常のK-meansの欠点を補うことができます。通常のK-meansの欠点とカーネルK-meansの強みも説明します。もし、まだ御覧になられていなければ、通常の K-means 理論編 の記事を見ていただけるとよいのではないかと思います。 カーネルK-meansの実装編 も併せてご覧ください。 概要 K-meansの弱点 カーネルトリック カーネルK-means アルゴリズム K-meansの弱点 例えば、次のようなデータを用意します。 このデータはK-meansによってうまく分類することはできません。なぜなら通常のK-meansでは、データとプロトタイプのユークリッド距離に依存しているからです。そのため、このような円状に分布しているデータはうまく分類することができません。 プロトタイプとはそれぞれのクラスにあり、そのクラスを代表するようなもののことです。K-meansでは各クラスの平均ベクトルとなります。それゆえ、以下のような分類になってしまいます。 このようなデータではK-meansはうまくいきません。 K-meansで分類できるデータセットは次のように各クラスで固まっている必要があります。 カーネルK-meansはK-meansの弱点を補います。 カーネルトリック 初めに、カーネルトリックを説明します。 線形分離できないようなデータ$X$を例えば次のように線形分離できるように$\phi(x)$に送る写像$\phi$を考えます。 カーネルは次のように定義されます。 $$K(x,y) = \phi(x)^T \phi(y)$$ $\phi$を具体的に計算することは難しいですが、$K(x,y)$を計算することなら簡単です。 この手法をカーネルトリックと呼ばれます。 カーネルK means K-meansの目的関数を復習しておきます。 $$J = \sum_{n=1}^{N} \sum_{k=1}^{K} r_{nk} ||x_n-\mu_k||^2$$ ここで、 プロトタイプは$\mu_i ~\forall k \in K$としま...

          dijkstra method

          Introduction 日本語 ver Today, I will write about the dijkstra method. This method is algorithm which find the shortest distance. The map is expressed by graph. If you never see  this page , look at its page. This page explain the heap structure and definition of graph. The dijkstra method used heap structure, Because heap structure reduce the amout of calculation of dijkstra method. I use  this slide  to explain dijkstra. Overview Algorithm Implementation Algorithm This algorithm is  Decide start node, and this node named A. Allocate $d=\infty$ for each node, but d=0 for start node. Adjacent node of A named adj_list.  For adj in adj_list:  If d of adj > d of A + weight to adj -> d = A + weight to adj. Remove A from graph network. Find node which have the smallest d and it named A, and if network have node, back to 4. I explain this algorithm by drawing.  I explain algorithm by using this graph.  Fis...

          Bayes' theorem

          Introduction sorry, this page is Japanese only.   今回はベイズの定理について書こうと思います。 ベイズの定理とは、イギリスのトーマス・ベイズによって発見された、条件付き確率に関する定理です。現在のベイズ推定で用いられる重要な定理です。どのような定理かを解説していこうと思います。 ベイズの定理 ベイズの定理とは 確率P(B|A):事象Aが起こった後での事象Bの確率(事後確率) 確率P(B):事象Aが起こる前の事象Bの確率(事前確率) とするとき以下が成り立つことを示しています。 $$P(B|A) = \frac{P(A|B) P(B)}{P(A)}$$ 例 例えば、次のように事象A、事象Bwo定義します。 事象A:あるYoutuberが動画を投稿したとき、再生回数が100万回を超える 事象B:あるYoutuberがお金を50万円以上使う動画を投稿する この時確率P(A|B)、つまり50万円以上を使った動画が再生回数100万回を超える確率は、youtube内の50万円以上使っている動画を根こそぎ集め、その再生回数を得ることによって推定できそうです。では確率P(A|B)がわかった時、確率P(B|A)もわかる。これがベイズの定理の強みです。(当然確率P(A)とP(B)がわかっている必要はあります。) 確率P(B|A)とはあるYoutuberの動画が再生回数100万回を超えたとき、その同がで50万円以上使っている確率となります。これがわかれば、100万回動画が再生される原因は本当に50万円以上お金を使うことなのかがわかります。 確率P(A|B)が低い時を考えてみましょう。 つまり、50万円以上使った動画は再生回数100万回を超える確率は高い。しかし、100万回再生回数を突破したとき、その動画が50万円以上使っている可能性は低い。この状況はベイズの定理の式を考えいると理解しやすいです。 ベイズの定理の式を見てみると、P(B|A)は低く、P(A|B)が高いということは、確率P(A)が著しく高い。もしくは、P(B)が著しく低い。この二つがあげられます。 つまり、あるYouruberが100万回再生を突破する確率がかなり、高い。もしくは、あるYoutuber...