目錄
- 單標簽二分類
- 單標簽多分類
- 多標簽算法
一、單標簽二分類
單標簽二分類這種問題是我們最常見的算法問題,主要是指label標簽的取值只有兩種,並且算法中只有一個需要預測的label標簽;直白來講就是每個實例的可能類別只有兩種(A or B);此時的分類算法其實是在構建一個分類線將數據划分為兩個類別。常見的算法:Logistic、SVM、KNN等
二、單標簽多分類
單標簽多分類問題其實是指待預測的label標簽只有一個,但是label標簽的取值可能有多種情況;直白來講就是每個實例的可能類別有K種(t1,t2,...tk,k≥3);常見算法:Softmax、KNN等;
在實際的工作中,如果是一個多分類的問題,我們可以將這個待求解的問題轉換為二分類算法的延伸,即將多分類任務拆分為若干個二分類任務求解,具體的策略如下:
2.1 One-Versus-One(ovo):一對一
原理:將K個類別中的兩兩類別數據進行組合,然后使用組合后的數據訓練出來一個模型,從而產生K(K-1)/2個分類器,將這些分類器的結果進行融合,並將分類器的預測結果使用多數投票的方式輸出最終的預測結果值。
2.2 One-Versus-All / One-Versus-the-Rest(ova/ovr): 一對多
原理:在一對多模型訓練中,不是兩兩類別的組合,而是將每一個類別作為正例,其它剩余的樣例作為反例分別來訓練K個模型;然后在預測的時候,如果在這K個模型中,只有一個模型輸出為正例,那么最終的預測結果就是屬於該分類器的這個類別;如果產生多個正例,那么則可以選擇根據分類器的置信度作為指標,來
選擇置信度最大的分類器作為最終結果,常見置信度:精確度、召回率
2.3 Error Correcting Output codes(糾錯碼機制):多對多
原理:將模型構建應用分為兩個階段:編碼階段和解碼階段;編碼階段中對K個類別中進行M次划分,每次划分將一部分數據分為正類,一部分數據分為反類,每次划分都構建出來一個模型,模型的結果是在空間中對於每個類別都定義了一個點;解碼階段中使用訓練出來的模型對測試樣例進行預測,將預測樣本對應的點和類別之間的點求距離,選擇距離最近的類別作為最終的預測類別。
2.4 OvO和OvR的區別
三、多標簽算法
Multi-Label Machine Learning(MLL算法)是指預測模型中存在多個y值,具體分為兩類不同情況:
- 多個待預測的y值;
- 在分類模型中,一個樣例可能存在多個不固定的類別。根據多標簽業務問題的復雜性,可以將問題分為兩大類:
- 待預測值之間存在相互的依賴關系;
- 待預測值之間是不存在依賴關系的。對於這類問題的解決方案可以分為兩大類:
- 轉換策略(Problem Transformation Methods);
- 算法適應(Algorithm Adaptation)
3.1 轉換策略(Problem Transformation Methods)
roblem Transformation Methods又叫做策略轉換或者問題轉換,是一種將多
標簽的分類問題轉換成為單標簽模型構造的問題,然后將模型合並的一種方式,
主要有以下幾種方式:
3.1.1 Binary Relevance(first-order)
Binary Relevance的核心思想是將多標簽分類問題進行分解,將其轉換為q個二元分類問題,其中每個二元分類器對應一個待預測的標簽。例如,讓我們考慮如下所示的一個案例。我們有這樣的數據集,X是獨立的特征,Y是目標變量。
優點:
- 實現方式簡單,容易理解;
- 當y值之間不存在相關的依賴關系的時候,模型的效果不錯
缺點:
- 如果y直接存在相互的依賴關系,那么最終構建的模型的泛化能力比較弱;
- 需要構建q個二分類器,q為待預測的y值數量,當q比較大的時候,需要構建的模型會比較多
3.1.2 Classifier Chains(high-order)
Classifier Chains的核心思想是將多標簽分類問題進行分解,將其轉換成為一個二元分類器鏈的形式,其中鏈后的二元分類器的構建式在前面分類器預測結果的基礎上的。在模型構建的時候,首先將標簽順序進行shuffle打亂排序操作,然后按照從頭到尾分別構建每個標簽對應的模型。
優點:
- 實現方式相對比較簡單,容易理解;
- 考慮標簽之間的依賴關系,最終模型的泛化能力相對於Binary Relevance方式構建的模型效果要好。
缺點:
很難找到一個比較適合的標簽依賴關系。
3.1.3 Calibrated Label Ranking(second-order)
Calibrated Label Ranking的核心思想是將多標簽分類問題進行分解,將其轉換為標簽的排序問題,最終的標簽就是排序后最大的幾個標簽值。
說明:我們發現x1和x4有相同的標簽。同樣的,x3和x6有相同的標簽。因此,標簽powerset將這個問題轉換為一個單一的多類問題
優點:考慮了標簽兩兩組合的情況,最終的模型相對來講泛化能力比較好。
缺點:只考慮兩兩標簽的組合,沒有考慮到標簽與標簽之間的所有依賴關系。
3.2 Algorithm Adaptation
Algorithm Adaptation又叫做算法適應性策略,是一種將現有的單標簽的算法直接應用到多標簽上的一種方式,主要有以下幾種方式:
- ML-kNN
- ML-DT
3.2.1 ML-kNN
k近鄰算法(k-Nearest Neighbour, KNN)的思想:如果一個樣本在特征空間中的k個最相似(即特征空間中距離最近)的樣本中的大多數屬於某一個類別,那么該樣本屬於這個類別。
ML-kNN的思想:對於每一個實例來講,先獲取距離它最近的k個實例,然后使用這些實例的標簽集合,通過最大后驗概率(MAP)來判斷這個實例的預測標簽集合的值。
最大后驗概率(MAP):其實就是在最大似然估計(MLE)中加入了這個要估計量的先驗概率分布。
3.2.2 ML-DT
ML-DT是使用決策樹處理多標簽內容,核心在於給予更細粒度的信息殤增益准則來構建這個決策樹模型