李沐深度学习中代码出现:AttributeError: module ‘d2l.torch‘ has no attribute ‘train_epoch_ch3‘问题的解决方案

可能由于d2l版本原因,导致d2l中没有train_epoch_ch3()训练函数,具体情况如下:

e5e63f933ceb409194d8f42f36f62e18.png

为了检测softmax以及mlp训练效果,本人将前面知识整合,编写了一个python文件,以便进行训练检验,并与原先代码相比,增加了测试集损失函数曲线随训练轮数的变化曲线,具体操作如下:

1、 下载hrl.py文件,下载路径:

git clone git@github.com:HenryLiukkk/hrl.git

2、clone成功后,会对应出现一个文件夹,如下图所示:

e4a29d58edd740998017e0a37c5f2419.png

 3、将hrl.py放入李沐深度学习课程文件中,如下图所示:

5efc99f87cac469ba2ea530f67642f96.png

4、库导入时加一行import hrl:

876c95366b48472d87bfcdbb0ca6b10c.png

5、使用hrl(对照原先代码进行修改):

num_epochs, lr = 10, 0.1
updater = torch.optim.SGD(params, lr=lr)
hrl_1 = hrl.train_epoch_ch3_hrl(net, train_iter, test_iter, loss, num_epochs, updater)
hrl_1.main()
hrl.predict_ch3(net, test_iter,n=6)

6、效果展示:

60f0296dc1ef448d873c298c7db63a01.png

725a0d3480c94a0fa5fac701e14cab63.png

 

 

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
引用问题是关于使用TensorFlow时遇到的AttributeError: module 'tensorflow.compat.v1' has no attribute 'contrib'错误。这个错误是因为在TensorFlow 2.0版本,'tensorflow.compat.v1'模块的'contrib'子模块已经被移除了。 解决这个问题的方法是将代码的'tensorflow.compat.v1.contrib'替换为'tensorflow.contrib'。这样可以修复该错误并使代码能够正常运行。 引用问题是在学习李沐老师的《动手学习深度学习pytorch版》时,运行d2l.load_array()函数时出现错误。要解决这个问题,可以尝试检查以下几个方面: 1. 检查是否已经正确安装了d2l库。可以使用pip install命令来安装最新版本的d2l库。 2. 检查代码是否正确导入了d2l库。可以使用import语句来导入d2l库并确保没有拼写错误。 3. 检查d2l库的版本是否与代码要求的版本匹配。可以尝试使用pip show命令来查看已安装的d2l库的版本,并与代码要求的版本进行比较。 如果仍然无法解决问题,建议向相关论坛或社区寻求帮助,以获得更具体的解决方案。 引用问题是关于安装d2l库的错误和版本不匹配的问题。为了解决这个问题,可以按照以下步骤进行操作: 1. 找到适合版本的d2l库。可以根据书上要求的d2l版本为0.17.5,在合适的源找到对应版本的d2l库。 2. 下载对应版本的d2l库,并将其保存在任意文件夹。 3. 打开Anaconda Prompt(或其他终端工具)并使用cd命令导航到保存d2l库的文件夹。 4. 执行pip install命令来安装下载的d2l库。例如,执行pip install "d2l-0.17.5-py3-none-any.whl"命令来安装版本为0.17.5的d2l库。 如果在安装过程遇到权限问题,可以尝试使用管理员身份运行终端工具,或者添加--user选项来解决权限问题。 回答完问题后的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fantastic Henry.Liu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值