
深度学习遇到的问题③: Can‘t call numpy() on Tensor that requires grad. Use tensor.detach().numpy() instead.
Can't call numpy() on Tensor that requires grad. Use tensor.detach().numpy() instead.
·
问题描述:
在模型训练过程的可视化中:
运行出现以下错误:Can't call numpy() on Tensor that requires grad. Use tensor.detach().numpy() instead.
问题分析:
张量Train_loss_all本身带有梯度,
直接将其转换为numpy数据将破坏计算图,因此numpy拒绝进行数据转换.、故在变量转换之前添加detach()
调用。
解决办法:
将张量Train_loss_all,Test_loss_all自行转化为numpy数组。代码:
train_loss_all_np=[]
test_loss_all_np=[]
for i in range(30):
train_loss_all_np.append(train_loss_all[i].detach().numpy())
test_loss_all_np.append(test_loss_all[i].detach().numpy())
并将标注那两行修改为
plt.plot(train_loss_all_np,"ro-",label="Train loss")
plt.plot(test_loss_all_np,"bs-",label="Test loss")
即可实现模型训练过程的可视化
点击阅读全文
更多推荐
活动日历
查看更多
直播时间 2025-02-26 16:00:00


直播时间 2025-01-08 16:30:00


直播时间 2024-12-11 16:30:00


直播时间 2024-11-27 16:30:00


直播时间 2024-11-21 16:30:00


所有评论(0)