Python使用sklearn库实现的各种分类算法简单应用小结

yipeiwu_com6年前Python基础

本文实例讲述了Python使用sklearn库实现的各种分类算法简单应用。分享给大家供大家参考,具体如下:

KNN

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

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

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

from sklearn.linear_model import LogisticRegression
def LR(X,y,XX):
  model = LogisticRegression()
  model.fit(X,y)
  predicted = model.predict(XX)
  return predicted

决策树(CART)

from sklearn.tree import DecisionTreeClassifier
def CTRA(X,y,XX):
  model = DecisionTreeClassifier()
  model.fit(X,y)
  predicted = model.predict(XX)
  return predicted

随机森林

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)

from sklearn.ensemble import GradientBoostingClassifier
def CTRA(X,y,XX):
  model = GradientBoostingClassifier()
  model.fit(X,y)
  predicted = model.predict(XX)
  return predicted

朴素贝叶斯:一个是基于高斯分布求概率,一个是基于多项式分布求概率,一个是基于伯努利分布求概率。

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相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

插入排序_Python与PHP的实现版(推荐)

插入排序Python实现 import random a=[random.randint(1,999) for x in range(0,36)] # 直接插入排序算法 def...

Python ftp上传文件

以下代码比较简单,对python实现ftp上传文件相关知识感兴趣的朋友可以参考下 #encoding=utf8 from ftplib import FTP #加载ftp模块 IP...

django框架ModelForm组件用法详解

django框架ModelForm组件用法详解

本文实例讲述了django框架ModelForm组件用法。分享给大家供大家参考,具体如下: ModelForm组件是django中一个非常强大的组件,其功能主要有 一 校验字段 Mode...

python的mysql数据库建立表与插入数据操作示例

本文实例讲述了python的mysql数据库建立表与插入数据操作。分享给大家供大家参考,具体如下: mysql数据库建立表 一 代码 import pymysql # 打开数据库连接...

python中struct模块之字节型数据的处理方法

简介 这个模块处理python中常见类型数据和Python bytes之间转换。这可用于处理存储在文件或网络连接中的bytes数据以及其他来源。在python中没有专门处理字节的数据类型...