scikit-learn的基本用法(四)——数据归一化
2017-05-04 19:08
260 查看
文章作者:Tyan
博客:noahsnail.com | CSDN | 简书
本文主要介绍scikit-learn中的数据预处理之归一化。
Demo 1
结果
Demo 2
结果
备注:由于数据是随机生成的, 结果可能会不同,但进行归一化与不进行归一化的差异是一致的。
博客:noahsnail.com | CSDN | 简书
本文主要介绍scikit-learn中的数据预处理之归一化。
Demo 1
import numpy as np from sklearn import preprocessing # 定义array a = np.array([-10, 2.3, 13.7, 56, 108]) print a # 对array进行归一化(normalization) # scale进行的操作是按列减去均值, 除以方差, 因此数据的均值为0, 方差为1 print preprocessing.scale(a)
结果
[ -10. 2.3 13.7 56. 108. ] [-1.01951435 -0.73451375 -0.47036685 0.50975718 1.71463777]
Demo 2
import numpy as np import matplotlib.pyplot as plt from sklearn import preprocessing from sklearn.cross_validation import train_test_split from sklearn.datasets.samples_generator import make_classification from sklearn.svm import SVC # 生成数据集 X, y = make_classification(n_samples = 200, n_features = 2, n_redundant = 0, n_informative = 2, random_state = 22, n_clusters_per_class = 1, scale = 100) # 查看数据分布 plt.scatter(X[:, 0], X[:, 1], c = y) plt.show() # 数据归一化处理, 不进行处理时注释掉 X = preprocessing.scale(X) # 将数据分为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2) # 构建分类器 svm = SVC() # 训练分类器 svm.fit(X_train, y_train) # 测试 print svm.score(X_test, y_test)
结果
# 进行归一化的准确率 0.9 # 不进行归一化的准确率 0.65
备注:由于数据是随机生成的, 结果可能会不同,但进行归一化与不进行归一化的差异是一致的。
参考资料
https://www.youtube.com/user/MorvanZhou相关文章推荐
- scikit-learn的基本用法(一)——KNN算法的使用
- scikit-learn的基本用法(七)——交叉验证3
- scikit-learn的基本用法(二)——数据集的使用
- scikit-learn的基本用法(五)——交叉验证1
- [Scikit-Learn] - 数据预处理 - 归一化/标准化/正则化
- 0.python:scikit-learn基本用法
- scikit-learn的基本用法(六)——交叉验证2
- 利用scikit-learn实现数据归一化
- [Scikit-Learn] - 数据预处理 - 归一化/标准化/正则化
- scikit-learn的基本用法(八)——模型保存与加载
- scikit-learn的基本用法——模型保存与加载
- scikit-learn的基本用法(三)——model的介绍
- [Scikit-Learn] - 数据预处理 - 归一化/标准化/正则化
- [转]0.python:scikit-learn基本用法
- s标签显示后台数据的基本用法以及iterator遍历用法
- [Scikit-Learn] - 数据预处理 - 缺失值(Missing Value)处理
- 【机器学习实验】scikit-learn的主要模块和基本使用
- 你知道Objective-C中一个很重要的数据类型Block的基本用法吗???
- [C]基本数据类型:整型(int)用法详解
- scikit-learn:0.2. 加载自己的原始数据