机器学习基础(一)

简介: 1. 熟悉AWS SageMaker平台2. 学习如何对内存中的数据进行操作,NDArray是一个类,也是存储和变换数据的主要工具更加适合深度学习。3. 学习如何使用MXNet提供的 autograd 模块来自动求梯度。4. 学习对有用到的MXNet函数和类如何查阅文档。5. 学习如何只利用 NDArray 和 autograd 来实现一个线性回归的训练。

机器学习基础实验报告

 

实验一:

一、实验目的

    1. 熟悉AWS SageMaker平台
    2. 学习如何对内存中的数据进行操作,NDArray是一个类,也是存储和变换数据的主要工具更加适合深度学习。
    3. 学习如何使用MXNet提供的 autograd 模块来自动求梯度。
    4. 学习对有用到的MXNet函数和类如何查阅文档。
    5. 学习如何只利用 NDArray 和 autograd 来实现一个线性回归的训练。

    二、实验内容和步骤

    练习一:

    运行本节中的代码,保存运行结果

    1. 构造两个100x100大小,类型为NDArray的矩阵A和B,其元素符合均值为0,标准差为1的随机正太分布

    2. 计算向量 (大小为100x1的向量),这里 ( 范数的平方,注意这里范数计算出来的 值需要转成标量才能取平方),其中下标i代表B矩阵第i列,向量d类型为NumPy格式

    3. 将第41行notebook中的条件判别式X==Y改为X<Y,看看能够得到什么样的NDArray

    练习二:

    运行本节代码,并保存结果到实验报告

    运行下列控制流求梯度的例子,并分析结果。

    import math

    def f(x):

       y = x # going to change y but still want to use x

       if x < 0.75: # variable num_loops because it depends on x

           num_loops = math.floor(1/(1-x.asscalar()))

           for i in range(num_loops):

               y = y * x # increase polynomial degree

       else: # otherwise flatline

           y = y * 0

       return y

    def get_grad(f, x):

       x.attach_grad()

       with autograd.record():

           y = f(x)

       y.backward()

       return x.grad

    xs = nd.arange(0.0, 1.0, step=0.1)

    grads = [get_grad(f, x).asscalar() for x in xs]

    print(grads)

    练习三:

    查阅 NDArray 支持的其他操作,截图放在实验报告里。

    练习四:

    为什么 squared_loss 函数中需要使用 reshape 函数?

    尝试使用不同的学习率和批量大小,观察损失函数值的下降趋势。

    三、代码及运行结果分析

    练习一:

    image.gif编辑

    练习二:

    image.gif编辑

    练习三:

    image.gif编辑

    练习四:

    image.gif编辑

    四、心得体会

    本次实验学习先了解python中的ndarray的相关知识,进而进行学习相关的深度学习如自动求梯度,以及线性回归的相关训练。本次实验还查阅了NDArray 支持的其他操作,从而能更加的了解NDArray并而学习相关知识。通过本次实验,收获颇多,对今后机器学习有了更大的帮助。

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

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