前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >了解 Sklearn 的数据集

了解 Sklearn 的数据集

作者头像
杨熹
发布2018-04-02 17:28:03
9650
发布2018-04-02 17:28:03
举报
文章被收录于专栏:杨熹的专栏杨熹的专栏
学习资料:大家

今天来看 Sklearn 中的 data sets,很多而且有用,可以用来学习算法模型。

eg: boston 房价, 糖尿病, 数字, Iris 花。

也可以生成虚拟的数据,例如用来训练线性回归模型的数据,可以用函数来生成。

例如,点击进入 boston 房价的数据,可以看到 sample 的总数,属性,以及 label 等信息。

如果是自己生成数据,按照函数的形式,输入 sample,feature,target 的个数等等。

代码语言:javascript
复制
sklearn.datasets.make_regression(n_samples=100, n_features=100, n_informative=10, n_targets=1, bias=0.0, effective_rank=None, tail_strength=0.5, noise=0.0, shuffle=True, coef=False, random_state=None)[source]

接下来用代码练习一下。


本文结构:
  1. [导入模块]
  2. [导入数据-训练模型]
  3. [创建虚拟数据-可视化]

<h4 id="pkg">导入模块</h4>

导入 datasets 包,本文以 Linear Regression 为例。

代码语言:javascript
复制
from __future__ import print_function
from sklearn import datasets
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt

<h4 id="data">导入数据-训练模型</h4>

datasets.load_boston() 的形式加载数据,并给 Xy 赋值,这种形式在 Sklearn 中都是高度统一的。

代码语言:javascript
复制
loaded_data = datasets.load_boston()
data_X = loaded_data.data
data_y = loaded_data.target

定义模型。

可以直接用默认值去建立 model,默认值也不错,也可以自己改变参数使模型更好。 然后用 training data 去训练模型。

代码语言:javascript
复制
model = LinearRegression()
model.fit(data_X, data_y)

再打印出预测值,这里用 X 的前 4 个来预测,同时打印真实值,作为对比,可以看到是有些误差的。

代码语言:javascript
复制
print(model.predict(data_X[:4, :]))
print(data_y[:4])

“”“
[ 30.00821269  25.0298606   30.5702317   28.60814055]
[ 24.   21.6  34.7  33.4]
”“”

为了提高准确度,可以通过尝试不同的 model,不同的参数,不同的预处理等方法,入门的话可以直接用默认值。

<h4 id="vision">创建虚拟数据-可视化</h4>

下面是创造数据的例子。

用函数来建立 100 个 sample,有一个 feature,和一个 target,这样比较方便可视化。

代码语言:javascript
复制
X, y = datasets.make_regression(n_samples=100, n_features=1, n_targets=1, noise=10)

scatter 的形式来输出结果。

代码语言:javascript
复制
plt.scatter(X, y)
plt.show()

可以看到用函数生成的 Linear Regression 用的数据。

noise 越大的话,点就会越来越离散,例如 noise 由 10 变为 50.

代码语言:javascript
复制
X, y = datasets.make_regression(n_samples=100, n_features=1, n_targets=1, noise=50)
plt.scatter(X, y)
plt.show()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016.12.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本文结构:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档