<!–
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 }
span.s1 { font: 12.0px "Helvetica Neue" }
span.s2 { font: 12.0px ".PingFang SC" }

注册了博客园一晃有3个月了,同时接触机器学习也断断续续的算是有1个月了。今天就用机器学习神器sklearn包的相关内容作为我的开篇文章吧。

本文将对sklearn包中的数据集做一个系统介绍,并简单说一下它们的使用。

道行尚浅,如正文描述有误还望小伙伴不吝赐教,不胜感激,即刻进入正文。

 

首先,一般机器学习的建模步骤是:数据收集 -> 特征工程 -> 模型选择 -> 模型训练 -> 模型评估 -> 超参数调整 -> 模型预测 -> 模型保存

由此可见,拥有大量优质的数据是建模的必要条件。

在此默认你已经下载并安装了sklearn,并对其有了简单的了解。接下来就说一说sklearn中的数据集。

 

sklearn.datasets模块中包含了大量优质数据集,官网地址:http://scikit-learn.org/stable/modules/classes.html#module-sklearn.datasets

该模块主要提供了直接导入、在线下载及本地计算机生成数据集的方法,可以通过dir(datasets)或help(datasets)命令查看该模块的详细信息。

不难发现,datasets主要为我们提供了三种方法来使用数据集:load_<dataset_name>、fetch_<dataset_name>及make_<dataset_name>

  • load系列,datasets.load_<dataset_name>:sklearn自带的可直接使用的小数据集(packaged dataset)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px “Helvetica Neue”; color: #454545 }
span.s1 { font: 12.0px “.PingFang SC” }

‘load_boston’, # 波士顿房价数据集,用于回归任务的数据集

‘load_breast_cancer’,  # 乳腺癌数据集,用于二分类任务的数据集

‘load_diabetes’,  # 糖尿病数据集,用于回归任务的数据集

‘load_digits’,  # 手写数字数据集,用于多分类任务的数据集

‘load_files’,  # 加载自己的原始数据

‘load_iris’,  # 鸢尾花数据集,用于多分类任务的数据集

‘load_lfw_pairs’,  # 人脸核实数据集(给定两张照片,用来预测这两幅图是否来自同一个人)

‘load_lfw_people’,  # 人脸鉴定数据集(给定一张照片,用来找到一个给定的训练集的人的名字)

‘load_linnerud’,  # 体能训练数据集,用于多变量回归任务的数据集,其中有两个小数据集:Excise是对3个训练变量的20次观测(体重,腰围,脉搏),physiological是对3个生理学变量的20次观测(引体向上,仰卧起坐,立定跳远)

‘load_mlcomp’,  # 从http://mlcomp.org下载的数据集

‘load_sample_image’,  # 一张图像(numpy数组格式)

‘load_sample_images’,  # 图像集,用于图像处理

‘load_svmlight_file’,  

‘load_svmlight_files’, 

  • fetch系列,datasets.fetch_<dataset_name>:支持在线下载的较大的数据集(Downloaded Dataset)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px “Helvetica Neue”; color: #454545 }
span.s1 { font: 12.0px “.PingFang SC” }

‘fetch_20newsgroups’, # 20个新闻组数据集,用于文本分类的数据集

‘fetch_20newsgroups_vectorized’, # 新闻分类数据集,其中包含train和test

‘fetch_california_housing’,

‘fetch_covtype’,

‘fetch_kddcup99’,

‘fetch_lfw_pairs’,

‘fetch_lfw_people’,

‘fetch_mldata’,

‘fetch_olivetti_faces’,

‘fetch_rcv1’,

‘fetch_species_distributions’,

  • make系列,datasets.make_<dataset_name>:计算机生成的数据集(Generated Dataset)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px “Helvetica Neue”; color: #454545 }
span.s1 { font: 12.0px “.PingFang SC” }

‘make_biclusters’,

‘make_blobs’,

‘make_checkerboard’,

‘make_circles’,

‘make_classification’,

‘make_friedman1’,

‘make_friedman2’,

‘make_friedman3’,

‘make_gaussian_quantiles’,

‘make_hastie_10_2’,

‘make_low_rank_matrix’,

‘make_moons’,

‘make_multilabel_classification’,

‘make_regression’,

‘make_s_curve’,

‘make_sparse_coded_signal’,

‘make_sparse_spd_matrix’,

‘make_sparse_uncorrelated’,

‘make_spd_matrix’,

‘make_swiss_roll’

 

现在我们已经大致了解了这些数据集,如果想要使用它们,只需要三个小步骤(此处以小数据集iris为例):

  1. 引入sklearn.datasets模块

    from sklearn import datasets
  2. 导入数据集并实例化一个对象iris

    iris = datasets.load_iris()
  3. 使用shape方法查看数据集

    n_samples, n_features = iris.data.shape
    print("Number of sample:", n_samples)
    print("Number of feature:", n_features)
  4. 运行结果如下,数据集的标准形状(shape)为二维数组(samples, features),其中n_samples表示数据集大小,n_features表示其中特征向量的维数

        

     这个结果表示iris数据集含有150个数据样本,每个数据样本是一个4维的特征向量。

接下来我们就可以使用这个数据集了,一般情况下,将iris.data作为样本特征向量,将iris.target作为样本label

版权声明:本文为RinaGarden原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/RinaGarden/p/8635302.html