3.1 基本形式
w直觀表達了各屬性在預測中的重要性,因此線性模型有很好的解釋性
3.2 線性迴歸
對離散屬性,若屬性值之間存在“序”關係,可通過連續化將其轉化爲連續值,如高矮可轉換爲{1,0},高中低可轉化爲{1,0.5,0};
若屬性之間不存在序關係,假設有K個屬性值,則通常轉化爲k維向量,如西瓜、 南瓜、黃瓜可轉化爲(0,0,1),(0,1,0),(1,0,0)
均方誤差應用了歐氏距離
基於均方誤差最小化來進行模型求解的方法成爲最小二乘法
多元線性迴歸,X.T*X往往不是滿秩矩陣,此時可解出多個w,都能使均方誤差最小化,常見的做法是引入正則化項
對數線性迴歸:ln(y) = w.T*x+b,實質上是在求輸入空間到輸出空間的非線性函數映射。
廣義線性模型
g(·)稱爲聯繫函數
3.3 對數機率迴歸
上面是使用線性模型進行迴歸學習,但是若要做的是分類任務,只需找一個單調可微函數將分類任務的真實標記y與線性迴歸模型的預測值聯繫起來
對二分類任務,最理想的是單位躍階函數。
等價於
y是樣本x是正例的可能性,1-y是反例的可能性,於是y/(1-y) 稱爲“機率”,取對數得到“對數機率”
名爲迴歸,實際上是一種分類方法,優點如下:
無須事先假設數據分佈;
不僅能預測出類別,還能得到近似概率預測;
對率函數是任意階可導函數,有很好的的數學性質。
極大似然法估計參數
3.4 線性判別分析LDA
亦稱Fisher判別
LDA思想非常樸素:給定訓練樣例集,設法將樣例投影到一條直線上,使得同類樣例的投影點儘可能接近、異類樣例的投影點儘可能遠離;在對新樣本進行分類時,將其投影到同樣的這條直線上,再根據投影點的位置來確定新樣本的類別。
3.5 多分類學習
有些二分類學習方法可直接推廣到多分類,但更多情形下,是基於一些基本策略,利用二分類學習器來解決多分類問題。
多分類學習的基本思路是“拆解法”,即將多分類任務拆爲若干個二分類任務求解。先對問題進行拆分,然後爲拆出的每個二分類任務訓練一個分類器;測試時,對這些分類器的預測結果進行集成以獲得最終的多分類結果
拆分策略:
一對一OvO: N個類別兩兩配對,產生N(N-1)/2個二分類任務
一對其餘OvR:
多對多:MvM:每次將若干個類作爲正類,若干個其他類作爲反類,OvO,OvR是MvM的特例
OvO的存儲開銷和測試時間開銷通常比OvR更大。類比很多時,OvO的訓練時間開銷通常比OvR更小。預測性能則取決於數據分佈,在多數情況下兩者差不多。
MvM正反類構造必須有特殊設計,不能隨意選取。常用MvM技術:“糾錯輸出碼”ECOC
3.6 類別不平衡問題
類別不平衡就是指在分類任務中不同類別的訓練樣例數目差別很大的情況
再縮放/再平衡:實際“訓練集是真實樣本總體的無偏採樣”這個假設往往不成立
欠採樣(下采樣):去除一些反例使正反例數目相近,再進行學習
代表算法:EasyEnsemble:利用集成學習機制,將反例劃分爲若干個集合供不同學習器使用
過採樣(上採樣):增加一些正例使正反例數目相近,再進行學習
代表算法:SMOTE通過對訓練集的正例進行插值來產生額外的正例
閾值移動:直接基於原始訓練集進行學習,預測時將再縮放嵌入到決策過程
再縮放是代價敏感學習的基礎