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 进程的几种创建方式详解

在新创建的子进程中,会把父进程的所有信息复制一份,它们之间的数据互不影响。 使用os.fork()创建 该方式只能用于Unix/Linux操作系统中,在windows不能用。 im...

Django模板变量如何传递给外部js调用的方法小结

前言 因为工作的需要,最近一直在思考如何更好的组织Django中的静态资源,比如JS、CSS一类,如何结合前端构建工具写出更好的代码以及结构呢?下面这篇文章就给大家详细介绍了实现的方法,...

Python实现找出数组中第2大数字的方法示例

本文实例讲述了Python实现找出数组中第2大数字的方法。分享给大家供大家参考,具体如下: 题目比较简单直接看实现即可,具体的注释在代码中都有: #!usr/bin/env pyth...

Python读取文件内容的三种常用方式及效率比较

Python读取文件内容的三种常用方式及效率比较

本文实例讲述了Python读取文件内容的三种常用方式。分享给大家供大家参考,具体如下: 本次实验的文件是一个60M的文件,共计392660行内容。 程序一: def one():...

在漏洞利用Python代码真的很爽

不知道怎么忽然想看这个,呵呵 小我的python的反shell的代码 #!/usr/bin/python # Python Connect-back Bac...