【西瓜書】周志華《機器學習》學習筆記與習題探討(三)③
【第3章 線性模型】
〖一、知識點歸納〗
五、多分類學習
多分類學習有兩個思路。
一種是將二分類學習方法推廣到多分類,比如上一節講到的LDA。
另一種則是利用二分類的學習器來解決多分類問題。
下面主要討論第二種。
1、拆解法與拆分策略
拆解法:將多分類任務拆解成為若干個二分類任務求解。
拆解法步驟:
1.通過拆分策略對問題進行【拆分】;
2.為拆分出的每個二分類任務【訓練】一個分類器;
3.對各個分類器的結果進行【集成】,以獲得多分類結果。
(牢記這三個關鍵詞。)
最經典的拆分策略有三種,即「一對一(OvO)」、「一對其餘(OvR)」、「多對多(MvM)」。
多分類學習有 個類別 ,給定數據集
1、OvO:
將 個分類分別兩兩配對,從而【拆分】成 個二分類任務;【訓練】時為了區分 和 這兩個分類,這 個分類器中的一個將 作為正例, 作為反例;測試時候將新樣本同時提交給所有分類器,將得到 個分類結果,【集成】的方法是通過投票在這些結果中選出最終結果。
2、OvR:
將 個分類中的1個類拿出來作為一個分類器的正例,其餘均設置為反例,從而【拆分】成 個分類任務;【訓練】得到 個分類結果;【集成】的方法是考慮各被判為正例的分類器的置信度,選擇置信度大的類別標記作為分類的結果。(如只有一個,直接選擇)
3、MvM:
MvM是OvO和OvR的一般形式,反過來說,OvO和OvR是MvM的特例。
MvM每次將若干個類作為正類,若干個其他類作為反類。但其構造必須有特殊的設計,不能隨意選取。常用的一種MvM技術是「糾錯輸出碼」(ECOC)技術。
2、「糾錯輸出碼」(ECOC)技術
ECOC過程主要分兩步:
編碼:對 個類進行 次劃分,產生 個分類器;
解碼: 個分類器對測試樣本進行預測,得到 個預測標記,將其組成編碼;這個編碼與 個類別各自的編碼進行比較,返回其中距離最小的類別作為最終預測的結果。
編碼形式又分為二元碼和三元碼,前者指定「正類」、「反類」,後者又多一個「停用類」。
以二元ECOC碼為例:如下圖,首先,將 ( )個類通過設計構造成 ( )個分類器( ),每個分類器為每個類分配了一個標記結果( 或 ),這樣一來,每一個類 都獲得了一個 位的編碼,這個編碼就是【各類所對應的編碼】。
當有一個測試例 的時,先將 依照次序放入 個分類器中,得到了 個分類標記結果(-1,-1,+1,-1,+1);再將這 個標記結果編成一個糾錯輸出碼(-1-1+1-1+1);最後去和【各類所對應的編碼】進行比較海明距離或歐式距離,距離最短的對應編碼對應的分類就是結果。(圖中結果為 )
糾錯輸出碼還有一個功能是為分類器的錯誤進行修正。比如正確的分類結果是(-1,-1,+1,-1,+1),但如果分類器 出了錯誤,得到的結果就是(-1,+1,+1,-1,+1)。但通過這一套編碼,可以讓最終的結果仍為 。
分類器越多,ECOC編碼越長,糾錯能力越強,但開銷越大;而且,如果分類有限,那麼可組合的數目也有限,碼長超過一定程度,也沒有意義了。
同等長度的編碼,【各類所對應的編碼】之間計算出的距離越遠,編碼的糾錯能力越強,但當碼長到達一定程度時,無法得出最優解。
六、類別不平衡問題
以二分類問題為例,該問題一般指的是訓練集中正負樣本數比例相差過大(比如正例9998個,負例2個),其一般會造成以下的一些情況:
1. 類別少的誤判懲罰過低,導致有所偏袒,當樣本不確定時傾向於把樣本分類為多數類。
2. 樣本數量分布很不平衡時,特徵的分布同樣會不平衡。
3. 傳統的評價指標變得不可靠,例如準確率。
而在多分類問題中,儘管原始訓練集中可能不同類別訓練樣本數目相當,通過OvR、MvM進行拆分時也有可能會造成上述情況,所以類別不平衡問題亟待解決。
解決類別不平衡問題一個基本思路是「再縮放」。
線性模型解決二分類問題中,我們通常將得到一個預測值 或 的衍生物,將其與某個固定值比較,來判斷其為正例還是反例。
如果說將 看做樣本 作為正例的可能性,那麼 就是其成為反例的可能性。
兩者的比值稱為「幾率」,反映了樣本作為正例的相對可能性。
正反例數目相同時,當其大於1時,可預測為正例,反之預測為反例;
但當正反例數目不同時, 代表正例數目, 代表反例數目,觀測幾率應是 ,而只要分類器的預測幾率 大於觀測幾率,就應判定為正例。
故,實際情況需對決策進行調整,變為:
專欄:
安立桐亂談編程
西瓜書系列合集:
【西瓜書】周志華《機器學習》學習筆記與習題探討(一)
【西瓜書】周志華《機器學習》學習筆記與習題探討(一)續
【西瓜書】周志華《機器學習》學習筆記與習題探討(二)①
【西瓜書】周志華《機器學習》學習筆記與習題探討(二)②
【西瓜書】周志華《機器學習》學習筆記與習題探討(二)③
【西瓜書】周志華《機器學習》學習筆記與習題探討(二)④
【西瓜書】周志華《機器學習》學習筆記與習題探討(三)①
【西瓜書】周志華《機器學習》學習筆記與習題探討(三)②
推薦閱讀:
※CNN 入門講解:什麼是卷積
※「人工智慧入門」為什麼大家都在談論 AI?
※演算法比數據和計算更重要,AlphaGo Zero自學3天100:0完爆舊狗