Content:
2 Logistic Regression.
2.1 Classification.
2.2 Hypothesis representation.
2.2.1 Interpreting hypothesis output.
2.3 Decision boundary.
2.3.1 Non-linear decision boundaries.
2.4 Cost function for logistic regression.
2.4.1 A convex logistic regression cost function.
2.5 Simplified cost function and gradient descent.
2.5.1 Probabilistic interpretation for cost function.
2.5.2 Gradient Descent for logistic regression.
2.6 Multiclass classification problem
key words: logistic regression, classification, decision boundary, convex function, One-vs-all
2.6 Multiclass classification problem
現實中也常遇到多分類問題(multiclass classification problem),如判斷手寫的數字是0~9中的哪一個就是一個有10類的問題。多分類學習的基本思路是“拆解法”,即將多分類任務拆為若干個二分類任務求解。具體來說,先對問題進行拆分,然后為拆分出的每個二分類任務訓練一個分類器(也就是h(x));在預測時,對這些分類器的預測結果進行集成。
下面介紹一個常用的拆分策略-“One-vs-all”.
One-vs-all每次將一個類的樣例作為正例(“1”),所有其他類作為反例(“0”)來訓練n個分類器。在預測時,有兩種情況看
- 情況1:若僅有一個分類器預測為正例,則對應的類別標記作為最終分類結果;
- 情況2:若有多個分類器預測為正例,則選擇分類器的預測置信度最大的類別標記為分類結果,也就是
。
例如對於圖2-10所示的多分類問題,我們先將三角形,正方形,叉分別標記為類別1,2,3,然后做如下划分:
- 先將三角形看作正例“1”,正方形和叉看作反例“0”,訓練出hθ1(x)
- 再將正方形看作正例“1”,三角形和叉看作反例“0”,訓練出hθ2(x)
- 最后將叉看作正例“1”,三角形和正方形看作反例“0”,訓練出hθ3(x)
預測時每一個預測值都是一個形如[hθ1(x), hθ2(x), hθ3(x)]的向量。選出最大的h(x),它的上標就是對應的類別標記。例如若預測值為[0.13, 0.24, 0.79],對應的就是上文所說的情況1,即只有hθ3(x) > 0.5表現為正例,所以應該認為是屬於3標記類,即為叉。若預測值為[0.12, 0.83, 0.56], 對應的就是上文所說的情況2,hθ2(x) 和hθ3(x)都大於0.5,都預測為正例,但hθ2(x)> hθ3(x),所以應該預測是屬於2標記類,即為正方形。
圖2-10