机器学习——sklearn数据集与估计器

目录

数据集划分

sklearn数据获取

scikit-learn数据集API介绍

获取数据集返回的类型

sklearn分类数据集

鸢尾花(iris)数据集

手写数字数据集

20年新闻数据集——大数据集

sklearn回归数据集

波士顿房价数据集

糖尿病数据集

sklearn数据集划分API

转换器与预估器

转换器

估计器

用于分类的估计器

用于回归的估计器


数据集划分

机器学习一般的数据集会划分为两个部分:

训练数据:用于训练,构建模型——75%——构建模型

测试数据:在模型检验时使用,用于评估模型是否有效——25%——测试模型

sklearn数据获取

scikit-learn数据集API介绍

sklearn.datasets——加载获取流行数据集

  • datasets.load_*()
  • 获取小规模数据集,数据包含在datasets
  • datasets.fetch_*(data_home=None)
  • 获取大规模数据集,需要从网络上下载,函数的第一个参数是data_home,表示数据集下载的目录,默认是 ~/scikit_learn_data/

获取数据集返回的类型

  • load*fetch*返回的数据类型datasets.base.Bunch(字典格式)
  • data:特征数据数组,是 [n_samples * n_features] 的二维 numpy.ndarray 数组
  • target:标签数组,是 n_samples 的一维 numpy.ndarray 数组
  • DESCR:数据描述
  • feature_names:特征名,新闻数据,手写数字、回归数据集没有
  • target_names:标签名,回归数据集没有

 

sklearn分类数据集

鸢尾花(iris)数据集

sklearn.datasets.load_iris()——加载并返回鸢尾花数据集

数据集内包含 3 类共 150 条记录,每类各 50 个数据,每条记录都有 4 项特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度,可以通过这4个特征预测鸢尾花卉属于(iris-setosa, iris-versicolour, iris-virginica)中的哪一品种。

from sklearn.datasets import load_iris

lr = load_iris()

print('获取特征值')
print(lr.data)
print('目标值')
print(lr.target)
print(lr.DESCR)

手写数字数据集

sklearn.datasets.load_digits()——加载并返回数字数据集

手写数字数据集包括1797个0-9的手写数字数据,每个数字由8*8大小的矩阵构成,矩阵中值的范围是0-16,代表颜色的深度。

20年新闻数据集——大数据集

sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’) 

subset: 'train'或者'test','all',可选,选择要加载的数据集.训练集的“训练”,测试集的“测试”,两者的“全部”

datasets.clear_data_home(data_home=None)——清除目录下的数据​​​​​​​

sklearn回归数据集

波士顿房价数据集

sklearn.datasets.load_boston()——加载并返回波士顿房价数据集

糖尿病数据集

sklearn.datasets.load_diabetes()——加载和返回糖尿病数据集

sklearn数据集划分API

sklearn.model_selection.train_test_split(*arrays**options)

  •   数据集的特征值
  • y    数据集的标签值
  • test_size   测试集的大小,一般为float
  • random_state    随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。
  • return  训练集特征值,测试集特征值,训练标签,测试标签(默认随机取
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
lr = load_iris()
x_train,x_test,y_train,y_test = train_test_split(lr.data,lr.target,test_size=0.25)
print('训练集的特征值和目标值',x_train,y_train)
print('测试集的特征值和目标值',x_test,y_test)

转换器与预估器

想一下之前做的特征工程的步骤?

1、实例化 (实例化的是一个转换器类(Transformer))

2、调用fit_transform(对于文档建立分类词频矩阵,不能同时调用)

  

转换器

实现特征工程API

fit_transform()——输入数据直接转换 == fit() + transform()

fit()——输入数据,但不做事情,计算平均值,方差等等

transform()——进行数据的转换

再次调用fit会改变转换标准

s2 = ss.fit([[1,2,3],[4,5,6]])
s2 = ss.transform([[1,2,3],[4,5,6]])
print(s2)
s2 = ss.fit([[3,7,8],[4,5,6]])
s2 = ss.transform([[1,2,3],[4,5,6]])
print(s2)
[[-1. -1. -1.]
 [ 1.  1.  1.]]
[[-5. -4. -4.]
 [ 1. -1. -1.]]

估计器

sklearn中,估计器(estimator)是一个重要的角色,分类器和回归器都属于estimator是一类实现了算法的API

  

用于分类的估计器

sklearn.neighbors  k-近邻算法

sklearn.naive_bayes      贝叶斯

sklearn.linear_model.LogisticRegression     逻辑回归

用于回归的估计器

sklearn.linear_model.LinearRegression     线性回归

sklearn.linear_model.Ridge      岭回归

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

非零因子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值