机器学习—数据集(二)

1可用数据集

公司内部 eg:百度
数据接口 花钱
数据集
学习阶段可用的数据集:

  1. sklearn:数据量小,方便学习
  2. kaggle:80万科学数据,真实数据,数据量大
  3. UCI:收录了360个数据集,覆盖科学、生活、经济等领域,数据量几十万

Kaggle网址:http://www.kaggle.com/datasets
UCI网址:http://archive.ics.uci.edu/ml/
scikit-learn网址:http://scikit-learn.org/stable/datasets/index.html

2scikit-learn工具介绍

在这里插入图片描述

  • Python语言的机器学习工具
  • Scikit-learn包括许多知名的机器学习算法的实现
  • Scikit-learn文档完善,容易上手,丰富的API
  • 目前稳定版本0.19.1

2.1安装

pip3 install Scikit-learn==0.19.1

安装好之后可以通过以下命令查看是否安装成功

import sklearn

注:安装scikit-learn需要Numpy,Scipy等库

2.2sklearn数据集

scikit-learn数据集API介绍:

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

sklearn小数据集:

  • sklearn.datasets.load_iris()
    -加载并返回鸢尾花数据集
名称数量
类别3
特征4
样本数量150
每个类别数量50
  • sklearn.datasets.load_boston()
    -加载并返回波士顿房价数据集
名称数量
目标类别5-50
特征13
样本数量506

sklearn大数据集:

  • sklearn.datasets.fetch_20newsgroups(data_home=None,subset=‘train’)
    • subset: "train’或者’test’,"all’,可选,选择要加载的数据集。
    • 训练集的“训练”,测试集的“测试”,两者的“全部”

sklearn数据集的使用:

  • 以鸢尾花数据集为例:
    在这里插入图片描述
    sklearn数据集返回值介绍:
  • load和fetch返回的数据类型datasets.base.Bunch(字典格式)
    • data:特征数据数组,是[n_samples * n_features]的二维numpy.ndarray数组
    • target:标签数组,是n_samples的一维numpy.ndarray数组
    • DESCR:数据描述
    • feature_names:特征名,新闻数据,手写数字、回归数据集没有
    • otarget_names:标签名
from sklearn.datasets import load_iris
#获取鸢尾花数据集
iris = load_iris()
print("鸢尾花数据集的返回值:\n", iris)
#返回值是一个继承自字典的Bench
print("鸢尾花的特征值:\n", iris ["data""])
print("鸢尾花的目标值:\n",iris.target)
print("鸢尾花特征的名字:\n", iris.feature_names)
print("鸢尾花目标值的名字: \n",iris.target_names)
print("鸢尾花的描述:\in", iris.DESCR)

在这里插入图片描述
在这里插入图片描述

2.3数据集的划分

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

  • 训练数据:用于训练,构建模型
  • 测试数据:在模型检验时使用,用于评估模型是否有效

划分比例:
训练集:70% 80% 75%
测试集:30% 20% 30%

数据集划分api:

  • sklearn.model_selection.train_test_split(arrays, "options)
    • ×数据集的特征值
    • y数据集的标签值
    • test_size测试集的大小,一般为float
      • random_state 随机数种子,不同的种子会造成不同的随机采样结果。相同的种子采样结果相同。
      • return 训练集特征值,测试集特征值,训练集目标值,测试集目标值
        x_train,x_test, y_train,y_test
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

#数据集划分
x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=0.2,random_state=22)
print("训练集的特征值:\n", x_train,x_train.shape)
  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值