1、knn演算法:k最鄰近分類演算法
from sklearn.model_selection import train_test_split sklearn中引入訓練集測試集分割包
data_train, data_test, target_train, target_test = train_test_split(our_data, our_data_target, test_size=0.3) 將測試集資料集分割得到特徵資料的訓練集和測試集, 目標資料的訓練集和測試集 test_size=n n為測試資料佔比
from sklearn import neighbors 從sklearn中引入neighbors 類
knnmodel = neighbors.kneighborsclassifier(n_neighbors=n)建立knn模型,引數為資料的分類個數
knnmodel.fit(data_train, data_test) 使用訓練資料對模型進行訓練
knnmodel.score(target_train, target_test) 使用目標資料對模型進行評分
我們使用k折交叉驗證來得到模型的k折之後的平均分作為模型的最終得分
from sklearn.model_selection import cross_val_score
cross_val_score(knnmodel, our_data, our_data_target, cv=n) n為進行幾折交叉驗證
knnmodel.predict(data) 對未知資料進行分類**
2、貝葉斯演算法
gaussiannb 高斯貝葉斯 適用於符合正太分布的資料
bernoullinb 伯努利貝葉斯 適用於布林型別的資料
multinomialnb 多項式貝葉斯 以上兩種都不合適的時候使用 常用於文字分類
3、決策樹
from sklearn.tree import decisiontreeclassifier 匯入決策樹
treemodel = decisiontreeclassifier(max_leaf_nodes=n) 建立決策樹模型 引數為最大葉子節點個數
from sklearn.model_selection import cross_val_score
cross_val_score(treemodel, our_data, our_data_target, cv=5) 對決策樹模型進行交叉驗證評分
treemodel.predict(data)進行**
4、隨機森林
包含多個決策樹
適合離散型和連續型的屬性資料,適合分布式計算
from sklearn.ensemble import randomforestclassifier 引入隨機森林模型
forestmodel = decisiontreeclassifier(max_leaf_nodes=n) 進行引數調整
進行k折交叉驗證 得到評分
svm 支援向量機:
from sklearn import svm
svcmodel = svm.svc() 進行k折交叉驗證 得到評分
svcmodel = svm.nusvc() 進行k折交叉驗證 得到評分
svcmodel = svm.linearsvc() 進行k折交叉驗證 得到評分
最終得出評分最高的svm模型即可
聚類 分類演算法 聚類演算法和分類演算法總結
k means 是一種典型的劃分聚類演算法,它用乙個聚類的中心來代表乙個簇,即在迭代過程中選擇的聚點不一定是聚類中的乙個點,該演算法只能處理數值型資料 k modes k means演算法的擴充套件,採用簡單匹配方法來度量分型別資料的相似度 k prototypes 結合了k means和k mod...
聚類演算法資料探勘(五) 聚類
首先宣告,我是乙個菜鳥。一下文章中湧現技術誤導情況蓋不負責 聚類是資料探勘描述任務的乙個主要組成部分。資料探勘任務包括描述性任務和 性任務兩種。描述性任務包括聚類 關聯分析 序列 異常檢測等,性任務包括回歸和分類。聚類 將資料物件分別為若干類,同一類的物件具有較高的相似度,不同類的物件相似度較低。從...
資料探勘總結之分類與聚類的區別
乙個 classifier會從它得到的訓練集中進行 學習 從而具備對未知資料進行分類的能力,這種提供訓練資料的過程通常叫做 supervised learning 監督學習 所謂分類,簡單來說,就是根據文字的特徵或屬性,劃分到已有的類別中。常用的分類演算法包括 決策樹分類法,樸素的貝葉斯分類演算法 ...