1. 程式人生 > >Andrew Ng 機器學習筆記 11 :支援向量機(Support Vector Machine)

Andrew Ng 機器學習筆記 11 :支援向量機(Support Vector Machine)

構建支援向量機

1.替換邏輯迴歸函式

在邏輯迴歸中使用的代價函式J(θ):

對於支援向量機而言,實際上,我們要將

  • 上面式子中的這一項:
    ( l o g h θ ( x ( i
    )
    ) )
    替換為: c o s t 1 ( z ) ,即: c o s t 1 ( θ T x ( i ) )
  • 同樣,這一項: ( ( l o g ( 1 h θ ( x ( i ) ) ) ) ) 替換為: c o s t 0 ( z ) ,即: c o s t 0 ( θ T x ( i ) )

所以對於支援向量機的最小化代價函式問題,代價函式的形式如下:

m i n θ 1 m [ i = 1 m y ( i ) c o s t 1 ( θ T x ( i ) ) + ( 1 y ( i ) ) c o s t 0 ( θ T x ( i ) ) ] + λ 2 m j = 1 n θ j 2

2.去除多餘的常數項 1/m

現在按照支援向量機的慣例,我們去除 1 m 這一項,因為這一項是個常數項,即使去掉我們也可以得出相同的θ最優值:

m i n θ i = 1 m [ y ( i ) c o s t 1 ( θ T x ( i ) ) + ( 1 y ( i ) ) c o s t 0 ( θ T x ( i ) ) ] + λ 2 j = 1 n θ j 2

3.正則化項係數的處理

在邏輯迴歸的目標函式中,正則化項優化形式:

A + λ B

在支援向量機的目標函式中,正則化項優化形式:

C A + B

因此,在邏輯迴歸中,如果給λ一個很大的值,那麼就意味著給與B了一個很大的權重,而在支援向量機中,就相當於對C設定了一個非常小的值,這樣一來就相當於對B給了比A更大的權重。

在支援向量機中的我們的整個優化目標函式: