只是為了幫助自己理解經(jīng)典算法轴猎,
常見的分類算法模型
KNN
- 找出距離目標點最近的幾個樣本點钉迷,用樣本點的標注投票,視作目標點的標注。
- 距離:
- 歐氏距離 p=2
- (|x1 - x2|^2 + |y1 - y2|^2) ^(1/2)
- 平方和 再 開根號 - 曼哈頓距離 p=1
- 各個特征的絕對差的和 - 閔可夫斯基距離
- 各個特征的絕對差的N次方 求和 再開N次根
- 歐氏距離 p=2
- KNeighborsClassifier() 常用參數(shù)
- n_neighbors 選擇幾個樣本點
- p 幾階距離
樸素貝葉斯
- 樸素:即認為特征之間是相互獨立的
- 基于聯(lián)合概率分布
- AB同時發(fā)生:P(A)* P(B|A) = P(B)*P(A|B)
- P(B|A) = P(B)*P(A|B)/P(A)
- 高斯貝葉斯 GaussianNB
- 特征是高斯分布 (正態(tài)分布)
- 伯努利貝葉斯 BernoulliNB
- 特征是伯努利分布 (0-1分布)
決策樹
- 在每次決策時,都優(yōu)先找出最能區(qū)分這些樣本點的要素熬词,用這個要素進行樣本的區(qū)分,并重復此步驟,直到所有點都決策完成笤妙,或者在決策最大深度,進行樣本點投票噪裕,多數(shù)點的標注即為此樣本類別的標注蹲盘。
- 怎么找:
- Gini系數(shù)
- 信息熵增益
- 信息熵增益率
- DecisionTreeClassifier 常用參數(shù)
- criterion 怎么找:Gini/entropy
- max_depth 最大深度
- min_samples_split 最小樣本拆分
- min_samples_leaf 最小葉節(jié)點樣本數(shù)
支持向量機
- 試圖用一條線將樣本點分為兩類, 如果不能分膳音,可以通過核函數(shù)向高維空間映射召衔,或者找到最優(yōu)的解,求錯誤歸類的程度最小祭陷。
- SVC 參數(shù)
- C 錯誤歸類點的懲罰值 用來調(diào)整精度
- kernel 核函數(shù)
- max_iter 最大迭代次數(shù)
- tol 運算終止的閾值
- decision_function_shape 分類比較方法
- ovo one vs one
- ovr one vs rest
集成方法
- 隨機森林
- 用多棵樹進行并聯(lián)的決策模型苍凛,每棵樹選取若干特征, 然后均值投票兵志。
- 默認 10*squart(n)模型 即 10棵樹每一棵根號n個特征醇蝴,然后投票。
- 參數(shù)
- n_estimators 決策樹個數(shù)
- criterion 分叉判別方式
- max_feature 每棵樹最大特征(12個/ 80% /函數(shù)個/全部)
- max_depth min_samples_split
- min_samples_leaf 葉節(jié)點的最小樣本數(shù)想罕,
- bootstrap=True 放回采樣 oob_score 在放回采樣中 用未采樣點進行決策樹評估
- Adaboost
- 用多個若分類器的串聯(lián)進行模擬悠栓,這一次模擬中分類錯的點在下一次模擬中會增加權(quán)重,滿足閾值要求后按价,將各個模擬器進行分權(quán)投票惭适,得到最終的模型結(jié)果。
- 參數(shù)
- base_estimator 規(guī)則 默認決策樹
- n_estimators 分類器個數(shù)
- learning_rate (0-1) 分類器權(quán)值的衰減
- algorithm
- SAMME.R:用對樣本集分類的預測概率大小作為弱學習器權(quán)重 (默認)
- SAMME:用對樣本集分類效果作為弱學習器權(quán)重
邏輯回歸
- 廣義的線性回歸 在線性可分時 表現(xiàn)較好
- LogisticRegression 參數(shù)
- penalty "l1" 一范式均值 或者 "L2"二范式 均方差 正則化
- tol 算法停止的閾值
- C c越大 正則化就越弱
- solver
- 小數(shù)據(jù)集 libliner
- sag 隨機梯度下降
- max_iter 最大迭代次數(shù)
梯度提升樹
- 對連續(xù)數(shù)值的決策分類楼镐,依據(jù)不再是Gini系數(shù)癞志,而是“方差最小化”
- 用一階差分值作為下一棵樹的分類樣本
常見的聚類算法
Kmeans
基于切割的聚類
-
算法
- 1.隨機選擇 n 個樣本點作為聚類中心,求各個點到這些聚類中心的距離鸠蚪,按照距離遠近分類今阳。
- 2.此時將樣本分成n類,求這n個聚類的聚類中心茅信,然后按照這三個聚類中心再一次將樣本點分成n類盾舌,會得到新的n個聚類和聚類中心,循環(huán)往復蘸鲸,直到某兩次聚類的聚類中心變化不大妖谴。認為聚類完成。
受異常點的影響較為明顯。
DBSCAN
- 基于密度的聚類
- 1.指定的E鄰域內(nèi)膝舅,樣本點書大于等于閾值的點 稱為核心對象嗡载,這些E鄰域內(nèi)的點與核心對象直接密度可達。
- 2.核心點- 核心點 - 核心點 - 點 仍稀,樣本點與核心點 密度可達洼滚。
- 3.點- 核心點- 核心點 - 點 點與點之間密度相連
- 所有密度相連的點歸為一類。
- 離群點不明顯
- 參數(shù)
- min_samples 最小點數(shù)
- eps E鄰域范圍
層次聚類
- 1.先把距離很近的點歸為一類
- 2.再向上靠攏技潘,把新生成的樣本類視作分類對象遥巴,逐層減少分類的個數(shù)。
- 簇間距離的算法:
- 最短聚類
- 最長距離
- 平均距離
- Ward 平方殘差和享幽, 在簇合并前后铲掐,平方殘差和增加的越小,證明簇與簇之間越應該合并值桩。
- 聚類靈活 但是容易受離群點影響摆霉。
模型評價
模型泛化結(jié)果
-
混淆矩陣
繪制 預測結(jié)果與實際分類的矩陣
- 混淆矩陣.png
TP 正確地 識別為正 圖中共104個樣本
TN 正確地 識別為負 圖中共881個樣本
FP 錯誤地 識別為正(樣本點實際屬于負類)圖中共12個樣本
FN 錯誤地 識別為負 圖中共3個樣本
-
指標
- 正確率 Accuracy
- 所有識別正確的比例
- 召回率 Recall
- 所有實際為正類的樣本中,識別為正類的比例奔坟。
- 精準率 Precision 也叫TPR
- 所有識別為正類的樣本中携栋,識別正確的比例。
- 錯誤接收率 FPR
- 所有識別為負類的樣本中咳秉,識別錯誤的比例刻两。
- F分數(shù)
- F分數(shù).png
β=1 時 即F1分數(shù),precision 和 Recall 同樣重要滴某,無論哪個數(shù)值很小都會使得F1分數(shù)變小。F分數(shù)評價避免了樣本不均滋迈,即樣本中正類負類比例相差很大時霎奢,準確率高,但模型泛化能力依然較差的情況饼灿。
- 正確率 Accuracy
-
ROC曲線 受試者工作模式曲線幕侠。
- 橫軸為TPR,縱軸為FPR碍彭。
- 曲線越接近左上角晤硕,曲線下方的面積 AUC 越大, 模型的泛化能力越好庇忌。
- 虛線為完全隨機的二分類預測舞箍,虛線附近、虛線右下側(cè)對應的模型沒有實際應用意義皆疹。
- ROC曲線.png