本文实例讲述了Python使用sklearn库实现的各种分类算法简单应用。分享给大家供大家参考,具体如下:
KNN
1
2
3
4
5
6
7
|
from sklearn.neighbors import KNeighborsClassifier
import numpy as np
def KNN(X,y,XX): #X,y 分别为训练数据集的数据和标签,XX为测试数据
model = KNeighborsClassifier(n_neighbors = 10 ) #默认为5
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
SVM
1
2
3
4
5
6
|
from sklearn.svm import SVC
def SVM(X,y,XX):
model = SVC(c = 5.0 )
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
SVM Classifier using cross validation
1
2
3
4
5
6
7
8
9
10
11
12
13
|
def svm_cross_validation(train_x, train_y):
from sklearn.grid_search import GridSearchCV
from sklearn.svm import SVC
model = SVC(kernel = 'rbf' , probability = True )
param_grid = { 'C' : [ 1e - 3 , 1e - 2 , 1e - 1 , 1 , 10 , 100 , 1000 ], 'gamma' : [ 0.001 , 0.0001 ]}
grid_search = GridSearchCV(model, param_grid, n_jobs = 1 , verbose = 1 )
grid_search.fit(train_x, train_y)
best_parameters = grid_search.best_estimator_.get_params()
for para, val in list (best_parameters.items()):
print (para, val)
model = SVC(kernel = 'rbf' , C = best_parameters[ 'C' ], gamma = best_parameters[ 'gamma' ], probability = True )
model.fit(train_x, train_y)
return model
|
LR
1
2
3
4
5
6
|
from sklearn.linear_model import LogisticRegression
def LR(X,y,XX):
model = LogisticRegression()
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
决策树(CART)
1
2
3
4
5
6
|
from sklearn.tree import DecisionTreeClassifier
def CTRA(X,y,XX):
model = DecisionTreeClassifier()
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
随机森林
1
2
3
4
5
6
|
from sklearn.ensemble import RandomForestClassifier
def CTRA(X,y,XX):
model = RandomForestClassifier()
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
GBDT(Gradient Boosting Decision Tree)
1
2
3
4
5
6
|
from sklearn.ensemble import GradientBoostingClassifier
def CTRA(X,y,XX):
model = GradientBoostingClassifier()
model.fit(X,y)
predicted = model.predict(XX)
return predicted
|
朴素贝叶斯:一个是基于高斯分布求概率,一个是基于多项式分布求概率,一个是基于伯努利分布求概率。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
from sklearn.naive_bayes import GaussianNB
from sklearn.naive_bayes import MultinomialNB
from sklearn.naive_bayes import BernoulliNB
def GNB(X,y,XX):
model = GaussianNB()
model.fit(X,y)
predicted = model.predict(XX)
return predicted
def MNB(X,y,XX):
model = MultinomialNB()
model.fit(X,y)
predicted = model.predict(XX
return predicted
def BNB(X,y,XX):
model = BernoulliNB()
model.fit(X,y)
predicted = model.predict(XX
return predicted
|
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/Yeoman92/article/details/74942125