本文实例讲述了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