机器学习基础(二)

简介: 1. 学习Gluon基础语法2. 学习如何使用MXNet提供的Gluon接口更方便地实现线性回归的训练3. 学习通过使用训练集图像训练多层神经网络模型,并利用该模型在测试集上预测手写数字类别,输出分类准确率,给出分类结果练习一:查阅MXNet文档,看看 gluon.loss 和 mxnet.init 模块里提供了哪些损失函数和初始化方法练习二:如果将 l = loss(net(X), y) 替换成 l = loss(net(X), y).mean() ,我们需要将trainer.step(b

 机器学习基础实验报告

实验二:

一、实验目的

    1. 学习Gluon基础语法
    2. 学习如何使用MXNet提供的Gluon接口更方便地实现线性回归的训练
    3. 学习通过使用训练集图像训练多层神经网络模型,并利用该模型在测试集上预测手写数字类别,输出分类准确率,给出分类结果

    二、实验内容和步骤

    练习一:

    查阅MXNet文档,看看 gluon.loss 和 mxnet.init 模块里提供了哪些损失函数和初始化方法

    练习二:

    如果将 l = loss(net(X), y) 替换成 l = loss(net(X), y).mean() ,我们需要将

    trainer.step(batch_size) 相应地改成 trainer.step(1) 。这是为什么呢?

    如何访问 dense.weight 的梯度?

    尝试使用不同的学习率和batch_size(批量大小),观察损失函数值的下降快慢。

    练习三:

    查阅MXNet文档, mxnet.gluon.data.vision 里还提供了哪些别的数据集?

    查阅MXNet文档, mxnet.gluon.data.vision.transforms 还提供了哪些别的变换方法?

    绘制误差loss,训练准确率train acc和测试准确率test acc随迭代次数变化的曲线。

    尝试使用其他激活函数,并多加入几个隐藏层,调节每个隐藏层的神经元数量,看看对预测结果

    准确率的影响。

    尝试调一调超参数,如批量大小,迭代周期和学习率,看看结果会怎样。

    基于服饰图像数据集FashionMNIST,采用本节代码方法训练至少含一个隐藏层的神经网络模型,

    从而实现对服饰图像的分类(要求输出测试集前20幅图像的模型分类),单独建一个工程文件(下

    面给出两点提示)

    (1) 采用如下方式下载数据集: Fashionmnist_train =

    gdata.vision.FashionMNIST(root='data/FashionMNIST',train=True) Fashionmnist_test =

    gdata.vision.FashionMNIST(root='data/FashionMNIST',train=False)

    (2) Fashion-MNIST中一共包括了10个类别,分别为t-shirt(T恤)、trouser(裤子)、pullover

    (套衫)、dress(连衣裙)、coat(外套)、sandal(凉鞋)、shirt(衬衫)、sneaker(运动

    鞋)、bag(包)和ankle boot(短靴)

    三、代码及运行结果分析

    练习一:

    image.gif编辑

    练习二:

    image.gif编辑

    练习三:

    image.gif编辑image.gif编辑

    四、心得体会

    本次实验学习了Gluon基础语法,和线性回归的简洁实现,从而实现基于神经网络实现的手写数字识别,该实验相对复杂。通过本次实验,收获颇多,对神经网络有了进一步的学习与探究。

    注释:练习题答案全在实验截图当中

    相关文章
    |
    机器学习/深度学习 算法 Python
    机器学习基础:用 Lasso 做特征选择
    机器学习基础:用 Lasso 做特征选择
    机器学习基础:用 Lasso 做特征选择
    |
    机器学习/深度学习 数据采集 算法
    机器学习基础:令你事半功倍的pipeline处理机制
    机器学习基础:令你事半功倍的pipeline处理机制
    机器学习基础:令你事半功倍的pipeline处理机制
    |
    机器学习/深度学习 数据采集 人工智能
    机器学习基础:大数据与深度学习的关系
    机器学习基础:大数据与深度学习的关系
    383 0
    机器学习基础:大数据与深度学习的关系
    |
    机器学习/深度学习 人工智能 算法
    💗机器学习基础知识点总结
    💗机器学习基础知识点总结
    296 20
    |
    机器学习/深度学习 人工智能 算法
    人工智能基础:机器学习常见的算法介绍
    机器学习的算法主要包括监督学习、无监督学习、半监督学习、迁移学习、强化学习
    人工智能基础:机器学习常见的算法介绍
    |
    机器学习/深度学习 数据采集 存储
    机器学习基础
    机器学习基础
    129 0
    |
    机器学习/深度学习 自然语言处理 算法
    机器学习基础:奇异值分解(SVD)
    机器学习基础:奇异值分解(SVD)
    机器学习基础:奇异值分解(SVD)
    |
    机器学习/深度学习 数据可视化 算法
    机器学习基础:可视化方式理解决策树剪枝
    机器学习基础:可视化方式理解决策树剪枝
    机器学习基础:可视化方式理解决策树剪枝
    |
    机器学习/深度学习 数据可视化 Python
    |
    机器学习/深度学习
    机器学习基础:极大似然估计
    机器学习基础:极大似然估计
    72 0
    机器学习基础:极大似然估计