k-近鄰演算法
優點:精度高、對異常值不敏感、無資料輸入假定、簡單有效
缺點:計算複雜度高、空間複雜度高、非常耗時
關鍵:對訓練集到資料向量的距離進行排序,選出到資料向量最近的k個訓練集向量,然後對k個向量標籤出現的次數進行排序,出現次數最多的就是資料向量的**標籤
備註:需要對各特徵進行歸一化
決策樹優點:計算複雜度不高、輸出結果易於理解、對中間值缺失不敏感、可將分類器儲存在硬碟上
缺點:可能產生過度匹配問題,只支援標稱型
關鍵:
1.計算資訊熵
2.利用字典儲存結點
3.當特徵用完或當前資料集中僅剩一種標籤時結束遞迴
樸素貝葉斯
優點:在資料較少時依舊有效、可處理多類別問題
缺點:對於輸入資料的準備方式較為敏感、只適用於標稱型資料
關鍵:利用log函式解決下溢問題
logistic回歸
優點:計算代價不高、易於理解和實現
缺點:容易欠擬合、分類精度可能不高
關鍵:
1.啟用函式sigmoid
2.隨機梯度上公升、alpha可隨迭代次數增大而減小
3.缺失值可用0代替,既可保留現有資料,也不需要對優化演算法進行修改
支援向量機
優點:泛化錯誤率低,計算開銷不大、結果易解釋
缺點:對引數調節和核函式的選擇敏感,原始分類器不加修改僅適用於處理二類問題
關鍵:
1.kkt條件
2.smo演算法,選擇具有最大步長的j
3.c用於控制最大化間隔和保證大部分點的函式間隔小於1.0兩個目標,c過大容易過擬合,過小容易欠擬合
4.高斯核函式:可將資料從其特徵空間對映到無窮維空間,sigma的選擇
5.訓練結束後僅保留支援向量作為分類器
adaboost演算法
bagging:資料重抽樣得到s個資料集,選擇s個分類器,選擇頻率最高的作為最終結果,各分類器權重相等
boosting:幾種關注被已有分類器分錯的那些資料來獲得新的分類器,分類器的權重取決於其在上一輪的準確率
adaboost:利用每輪迭代後計算出錯誤率,通過錯誤率計算出本輪分類器的權重alpha,利用alpha對資料集權重向量d進行更新,分類錯誤的權重增大,正確的權重減小,然後進入下一輪迭代。弱分類器過多時易出現過擬合。
非均衡分類問題
其他分類效能度量指標:正確率、召回率和roc曲線
正確率和召回率:很難平衡,可計算2pr/(p+r)等類似公式衡量分類效能
roc曲線:自變數為判定分類時的閾值,兩個因變數為偽正例/(偽正例+真反例)、真正例/(真正例+偽反例),以真陽率為橫軸、假陽率為豎軸繪出曲線,曲線與橫軸所圍面積可用於衡量分類器的優劣。選擇最有閾值時,選擇最靠近左上的點。
基於代價函式的分類器決策:給較小類給多的權重,既只允許較小類更少的錯誤
改變偽正例和偽反例的代價以控制正確率和召回率。
adaboost演算法中基於代價函式調整權重矩陣d
樸素貝葉斯分類中依據最小期望代價分類而不是單純的最大概率分類
svm中,對於不同的類別選擇不同大小的c
處理非均衡問題的資料抽樣方法:欠抽樣、過抽樣或兩者相結合 機器學習筆記 分類決策樹
剪枝處理 三種典型的決策樹學習演算法的比較 決策樹作為一種基本的分類與回歸方法,它由結點和有向邊組成。結點有兩種型別 決策樹是一種基於規則的方法,在樹的每個決策節點處,根據判斷結果進入乙個分支,反覆執行這項操作直至到達葉子結點,得到 結果。而規則是通過訓練得到的,而不是人工制定的。決策樹學習的關鍵是...
《機器學習實戰》學習筆記
很久沒寫過部落格了,一重開就給自己挖了這麼乙個大坑 最近一段時間看了 機器學習實戰 這本書,感覺寫得不錯,認真看了看。關於這本書的書評及購買事宜請移步豆瓣 京東 亞馬遜等 這裡不多說。不過有一點,感覺這本書有個很好的地方是給出了各個演算法的python實現 和講解,要求不高的話可以拿來用了 懶 在這...
《機器學習實戰》學習筆記
目錄 第2章 k 近鄰演算法 第3章 決策樹 第4章 基於概率論的分類方法 樸素貝葉斯 第5章 logistic回歸 第7章 利用adaboost元演算法提高分類效能 第8章 數值型資料 回歸 1.python console匯入knn.py檔案 import knn1.reload的使用方法 fr...