当前位置:   article > 正文

李沐动手学习深度学习——3.2练习

李沐动手学习深度学习——3.2练习

以下是个人理解,希望进行讨论求解。

练习

1. 如果我们将权重初始化为零,会发生什么。算法仍然有效吗?

在这里插入图片描述
根据SGD算法公式如上,第一次迭代的值可知w只与b相关,而对于b的迭代更新,只是与b的初始值相关,x没有参与迭代的计算过程中,不能够达到收敛的目的。
进行运行可以如下结果:
在这里插入图片描述
在这里插入图片描述

2. 假设试图为电压和电流的关系建立一个模型。自动微分可以用来学习模型的参数吗?

显而易见可行,因为 UR=I,I和U的关系是线性关系。

3. 能基于普朗克定律使用光谱能量密度来确定物体的温度吗?

能基于普朗克定律使用光谱能量密度如下:
在这里插入图片描述
在这里插入图片描述
推导公式最后如下,可得其u与T之间是线性关系,是正比情况,所以可以利用SGD的方法通过数据进行拟合。

在这里插入图片描述

4. 计算二阶导数时可能会遇到什么问题?这些问题可以如何解决?

显而易见存在一阶导数光滑,但是二阶导数曲线不光滑的情况,类似于一阶导数驻点突变问题。利用阈值判断停止计算,或者调整学习率等,参考上一章的答案。以上是我能够想到的问题。显然不是足够,所以动用一下gpt帮忙:
在这里插入图片描述

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

要将真实值y的形状转换为和预测值y_hat的形状相同。根据函数矩阵计算可知,x是102大小,w是21,得出的y_hat是101,但是y是110,所以需要转置。

6. 尝试使用不同的学习率,观察损失函数值下降的快慢。

学习率0.01的时候
在这里插入图片描述
学习率0.02的时候
在这里插入图片描述
可知道收敛速度不同,收敛精度不同

7. 如果样本个数不能被批量大小整除,data_iter函数的行为会有什么变化?

修改代码batch_size设置为11,进行运行,发现可运行,说明了最后一个batch直接被运算抛弃了,不参与计算。
在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/165445
推荐阅读
相关标签
  

闽ICP备14008679号