首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

机器学习100天-Day1401二分类训练

Day14,主要完成第三章分类的学习

熟悉mnist数据集调用

训练一个二分类器

说明:本文依据《Sklearn 与 TensorFlow 机器学习实用指南》完成,所有版权和解释权均归作者和翻译成员所有,我只是搬运和做注解。

在第一章我们提到过最常用的监督学习任务是回归(用于预测某个值)和分类(预测某个类别)。

在第二章我们探索了一个回归任务:预测房价。我们使用了多种算法,诸如线性回归,决策树,和随机森林(这个将会在后面的章节更详细地讨论)。

在第三章,作者将转到分类任务上。

MNIST

使用 MNIST 这个数据集,它有着 70000 张规格较小的手写数字图片,由美国的高中生和美国人口调查局的职员手写而成。

这相当于机器学习当中的“Hello World”,人们无论什么时候提出一个新的分类算法,都想知道该算法在这个数据集上的表现如何。

机器学习的初学者迟早也会处理 MNIST 这个数据集。

在之前的文字中,我们使用Tensorflow加载mnist数据,原文中代码如下,但是使用后会报500的错误。在这里仍使用tf的mnist数据。

sklearn数据集中包括三个结构,在anaconda中可以直接通过mnist调用查看,在pycharm中则通过名称调用

DESCR键描述数据集

data键存放一个数组,数组的一行表示一个样例,一列表示一个特征

target键存放一个标签数组

在tensorflow的mnist数据集中,包括train和test两类数据,类似接口调用的方式。

绘制相应图片

打乱训练集

使用numpy的random.permutation()打乱训练集。

这可以保证交叉验证的每一折都是相似(你不会期待某一折缺少某类数字)。

而且,一些学习算法对训练样例的顺序敏感,当它们在一行当中得到许多相似的样例,这些算法将会表现得非常差。打乱数据集将保证这种情况不会发生。

训练一个二分类器

在里面只对图片为5的进行分类,然后输出判断值和图片,预测X_test[500],实际值为9。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190103A0ZMIW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券