这一章节我们能学到SVC作为分类器的简单使用。

先来看看对数据进行标准化的方式
标准化的目的与归一化一样,都是为了避免某个特征的重要程度过大或过小。
标准化的优点:受异常点的影响较小。 适用于繁杂大数据。

from sklearn.preprocessing import StandardScaler# 标准化处理
std = StandardScaler()
# (fit_transform()等同于fit()填充数据 + tansform()转换数据)(tansform转换器转换数据时所依赖的均值、标准差等取决于fit()填充的数据)
data = std.fit_transform([[2., -2., 6.], [4., 8., 3.], [7., 8., -2.]])
print(std.mean_)print(data)

下面我们看看使用SVC来对鸢尾花数据集进行分类训练。

import numpy as np
from sklearn.svm import SVC
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import GridSearchCV, train_test_split
from sklearn.datasets import load_irisdef load_data(filename):iris = load_iris()print(iris.data[0:5])scaler = StandardScaler()  # 标准化的目的与归一化一样,都是为了避免某个特征的重要程度过大或过小。x_std = scaler.fit_transform(iris.data)  # 标准化print(scaler.mean_)  # 每列的平均值print(x_std[0:5])# 将数据划分为训练集和测试集,test_size=.3表示30%的测试集x_train, x_test, y_train, y_test = train_test_split(x_std, iris.target, test_size=0.3)return x_train, x_test, y_train, y_testdef svm_test(x_train, x_test, y_train, y_test):# rbf核函数,设置数据权重svc = SVC(kernel='rbf', class_weight='balanced', )  # 核函数是高斯核c_range = np.logspace(-5, 15, 11, base=2)gamma_range = np.logspace(-9, 3, 13, base=2)# 网格搜索交叉验证的参数范围,cv=3,3折交叉,C是在正则化参数的常量,param_grid = [{'kernel': ['rbf', 'linear'], 'C': c_range, 'gamma': gamma_range}]grid = GridSearchCV(svc, param_grid, cv=3, n_jobs=-1)# 训练模型print('开始训练...')grid.fit(x_train, y_train)# 计算测试集精度score = grid.score(x_test, y_test)print('精度为%s' % score)if __name__ == '__main__':svm_test(*load_data('example.csv'))

《scikit-learn》数据标准化与SVM之SVC相关推荐

  1. python笔迹识别_python_基于Scikit learn库中KNN,SVM算法的笔迹识别

    之前我们用自己写KNN算法[网址]识别了MNIST手写识别数据 [数据下载地址] 这里介绍,如何运用Scikit learn库中的KNN,SVM算法进行笔迹识别. 数据说明: 数据共有785列,第一列 ...

  2. python数据标准化1002无标题,Scikit标准化互信息学习给我错误的值

    我是Python新手,我试图看到两个不同信号之间的标准化互信息,不管我使用什么信号,我得到的结果总是1,我认为这是不可能的,因为信号是不同的,不是完全相关的. 我使用的是Normalized Mutu ...

  3. Scikit Learn: 在python中机器学习

    Warning 警告:有些没能理解的句子,我以自己的理解意译. 翻译自:Scikit Learn:Machine Learning in Python 作者: Fabian Pedregosa, Ga ...

  4. [转载]Scikit Learn: 在python中机器学习

    原址:http://my.oschina.net/u/175377/blog/84420 目录[-] Scikit Learn: 在python中机器学习 载入示例数据 一个改变数据集大小的示例:数码 ...

  5. scikit - learn 做文本分类

    文章来源: https://my.oschina.net/u/175377/blog/84420 Scikit Learn: 在python中机器学习 Warning 警告:有些没能理解的句子,我以自 ...

  6. python scikit learn 封装_python的scikit-learn的主要模块和基本使用

    在从事数据科学的人中,最常用的工具就是R和Python了,每个工具都有其利弊,但是Python在各方面都相对胜出一些,这是因为scikit-learn库实现了很多机器学习算法. 加载数据(Data L ...

  7. Sklearn——对数据标准化(Normalization)

    文章目录 1.前言 2.数据标准化 3.对比标准化前后 3.1.数据标准化前 3.2.数据标准化后 1.前言 由于数据的偏差与跨度会影响机器学习的成效,因此正规化(标准化)数据可以提升机器学习的成效 ...

  8. 【scikit-learn】如何用Python和SciKit Learn 0.18实现神经网络

    本教程的代码和数据来自于 Springboard 的博客教程.本文的作者为 Jose Portilla,他是网络教育平台 Udemy 一门数据科学类课程的讲师. GitHub 链接:https://g ...

  9. SVR,时间序列分析的评价指标,python数据标准化

    知识点 SVR 参考 支持向量机(SVM)是一种分类算法,但是也可以做回归,根据输入的数据不同可做不同的模型(若输入标签为连续值则做回归,若输入标签为分类值则用SVC做分类) 对于SVM算法,我们首先 ...

最新文章

  1. python pickle模块
  2. 中国锂电池行业运营态势分析与投资前景研究报告2022-2028年版
  3. html的属性与css的属性,HTML的属性和css基础
  4. GoLang学习笔记——data_type
  5. 介绍一款受欢迎的.NET 开源UI库
  6. 服务器具有挂起的重新启动_ESP8266与网络服务器实时通讯
  7. PHP两种redirect
  8. 华为路由器支持ftp服务器,如何配置华为路由器的FTP
  9. python自动抓取_python自动化之web抓取
  10. docker容器的时间问题
  11. QQ聊天记录删除了怎么恢复
  12. Java面试题目和答案
  13. 台式计算机无线接入,台式计算机有线连接路由器WiFi方法图步骤,可以详细设置无线内容(...
  14. 【项目管理】项目进度管理
  15. EOS 一周回顾(11.25-12.1)
  16. STC12C5A60S2自主适应时钟延时函数
  17. python往数据库批量插入多条数据
  18. 声音频段 声音剪辑_如何制作自己的门户式声音剪辑
  19. 2012届高三语文每日一练
  20. Android流媒体开发之路二:NDK C++开发Android端RTMP直播推流程序

热门文章

  1. java平台调试架构JPDA
  2. 微软“.Net社区虚拟大会”dotnetConf2015:关键词:.NET 创新、开源、跨平台
  3. Windows Server 2012 R2安装体验
  4. jQuery formValidator 表单校验插件4.1.1高仿网易邮箱注册页面(已发演示链接)
  5. nginx负载均衡的5种策略
  6. ETCD v3 restful api 使用详解
  7. VSCode 调试 Egg 完美版 - 进化史 #25
  8. Nest入门教程 - 模块
  9. Java内存泄漏的介绍
  10. 【JAVA 第四章 流程控制语句】课后习题 判断两个圆是否相交 圆和直线的位置关系