1. 程式人生 > >Machine Learning (4) Classification and Representation

Machine Learning (4) Classification and Representation

1. Classification and Representation [分類和表達]:

1.1 Classification [分類]:

1.1.1 為了達到分類的目的,一種方法是使用線性迴歸,並將所有大於某值的預測對映為1,而所有預測小於該值的都對映為0。然而,這種方法並不總是適用的,因為分類問題實際上並不能用一個線性函式來描述。

1.1.2 事實上絕大多數分類問題都不應該使用線性函式進行描述,即使部分線性函式可以對分類問題進行正確描述,這只是極少數情況。一個非常有代表性的例子是,當訓練樣本y值全是0和1時,用線性函式預測出的結果並不是只有0和1,這顯然是與事實不符的。

1.1.3 對於二值問題中的0和1項有時也被稱為負項和正項。

1.2 Hypothesis Representation [假設函式的表示法]:

1.2.1 針對前述問題,線性函式中會出現大於二值問題範圍的情況,這樣將預測函式變為只在二值問題範圍中的函式會更加合理。於是,將θTx放入某the Logistic Function [邏輯函式]中會是一個更合理的處理方式,在這裡我們選用了“the Sigmoid Function”[S形函式](且相應S形函式影象如下右):

                                                         

1.2.2 關於二值問題,不如假設兩個值就用0和1來代指,如下公式是用條件概率的方式對這個二值問題進行了描述。其含義是,對於引數theta為θ

時,當觀測資料為x時,y為1的概率是多少。(條件概率在工程領域的應用非常廣泛,例如我在SLAM問題以及隨後我將更新的關於Robotics控制等的問題中都被廣泛應用。)

1.3 Decision Boundary [決策邊界]:

1.3.1 為了得到離散的0和1分類,可以將假設函式的輸出轉換為如上二形式(可以理解為為假設函式設定一個閾值,這裡我們就簡單的使用0.5來方便討論了)。由上一式可見,當假設函式大於0.5時,即邏輯函式g(z)大於0.5時,相應的z值是大於0的。而相應z值是一個θ轉置與x的矩陣乘積。

1.3.2 關於由g(z)z的變化,即正負函式性的判斷可參照如下過程:

而對於相應z是由θTx決定的,於是將上一進一步推導得到上二。

1.3.3 在有了θx的關係之後,回到最根本的對y的判斷上,於是得到θTxy之間的關係如上三。

1.3.4 這時假設x[x0, x1, x2]T組成,於是得到一個θ1*x1 +θ2*x2 > x0的關係,如果在x1Ox2座標系中畫出可以得到相應的決策邊界

1.3.5 注意,如上的決策邊界是由相應的θ決定的,即當θ確定了之後,相應的決策邊界就確定了。而上一節中的下降梯度演算法和正規函式解決的目標是找到相應的θ,關於這個問題會在後續討論中給出方法。

2. Logistic Regression Model [邏輯迴歸模型]:

2.1.1 在邏輯迴歸問題中,很難直接使用線性迴歸模型中的代價函式,因為如在上一點中提到的邏輯函式的複雜形式,相應的代價函式的輸出會是上下波動的,這會導致大量的區域性最優值,由此這種函式不是一個凸函式。

2.1.2 為了解決4.1中提到的問題,對於分類問題(這裡我們以二值分類為例),將邏輯迴歸的成本函式設定為如下形式:

2.1.3 當y = 1時,我們將得到如下左影象,其中縱軸是J(θ),橫軸是hθ(x)。類似地,當y = 0時,我們會得到如下中的函式影象。相應數學表達如下三。

2.1.4 對於如上敘述可以這麼理解,y的值是樣本的真實值,如前所述,當觀測到x時,經過假設函式h(x)得到的預測值,如果與真實的y值相差很遠,則所謂的成本函式J(θ)應該很大,如果h(x)的預測值與真實值完全相同,相應的成本函式J(θ)的值應該為0。(從前述關於成本函式cost function的討論,可以被推廣到很多基於概率的問題上。)

2.2 Simplified Cost Function and Gradient Descent [簡化的成本函式和梯度下降]:

2.2.1 可以將之前的成本函式組整合成一個函式:

如果將成本函式展開寫成完整形態則會如下形態:

將其向量化後:

2.2.2 梯度下降的形式與線性模型類似,如下圖一。將其展開後,得到的結果與線性模型相應結果驚人的相似,如下圖中。注意,相應的θ也是全部同步更新。相應的向量化表達如下圖三。