1. 程式人生 > >Machine Learning(機器學習)之三

Machine Learning(機器學習)之三

Machine Learning(機器學習)之二:juejin.im/post/5bd1d1…

分類問題

要嘗試分類,一種方法是使用線性迴歸並將大於0.5的所有預測對映為1,將所有小於0.5的預測對映為0.但是,此方法不能很好地工作,因為分類實際上不是線性函式。

分類問題就像迴歸問題一樣,除了我們現在想要預測的值只佔用少量離散值。現在,我們將重點關注二進位制分類 問題,其中y只能處理兩個值0和1.(我們在這裡所說的大多數也將推廣到多類情況。)例如,如果我們正在嘗試為電子郵件構建垃圾郵件分類器X (i ) ,如果是一封垃圾郵件,則y可能為1,否則為0。因此,y∈{0,1}。0也稱為負類,1表示正類,它們有時也用符號“ - ”和“+”表示。X(i ) ,相應的Y(i ) 也稱為訓練範例的標籤。

假設函式的表示式

我們可以忽略y是離散值的事實來處理分類問題,並使用我們的舊線性迴歸演算法來嘗試預測給定x。但是這種方法的效果非常差。

直觀地說,當y∈{0,1}時,h θ(x) 取大於1或小於0的值沒有什麼意義。要解決這個問題,讓我們改變假設函式的形式 hθ(x)讓它滿足

我們的新形式使用“Sigmoid函式”,也稱為“邏輯函式”:

下圖顯示了sigmoid函式的樣子:
此處所示的函式g(z)將任何實數對映到(0,1)區間,這使得將任意值函式轉換為更適合分類的函式非常有用。

hθ(x)會給出輸出為1的概率。例如:hθ(x) = 0.7,意思就是我們的輸出為1的概率是70%,我們的預測為0的概率只是我們概率為1的補充(例如,如果它是1的概率是70%,那麼它的概率是0 0是30%)。

決策邊界

為了得到離散的0或1分類,我們可以將假設函式的輸出轉換如下:

我們的邏輯函式g的行為方式是當其輸入大於或等於零時,其輸出大於或等於0.5:
注:

所以

從這些陳述我們現在可以說:

該決策邊界是其中y = 0且其中y = 1,這是由我們的假設函式建立分離區域的線條。

示例:

在這種情況下,我們的決策邊界是一條直線垂直線放置在圖形中X1=5,左邊的所有東西都表示y = 1,而右邊的所有東西都表示y = 0。

例項:

同樣,sigmoid函式g(z)的輸入(例如,θ^TX)不需要是線性的,並且可以是描述圓的函式(例如,

)或任何符合我們資料的形狀。