感谢兄弟!对pytorch的方法不熟悉,哪里出问题了都不知道,现在总算能跑起来了
我也是这里报错,请问怎么修改num_workers ?

下面有个楼主好像mean()加错位置了,加在这个位置就解决了
我试了一下softmax和交叉熵结合在一起算log(y_hat)那个公式,用excel算的。不知怎么总是不对,只有output最大的那一项能够吻合。我是哪里理解错了吗?先谢过牛人啦!这里我假设有两个output,分别是1和2:
希望这个链接对你有用
把reduction=none去掉。。。。。。。。。。
yes, it’s very useful.
老师好!大佬们好!请问除了Softmax回归从零开始实现外,凡是碰到d2l.train_ch3或d2l.train_epoch_ch3的都会报以下错误,应该怎么办?
RuntimeError: grad can be implicitly created only for scalar outputs
爬楼翻到了:loss = nn.CrossEntropyLoss()
已解决
3.5 和 3.6 的代码要一起运行,3.7的代码要单独运行,这样就不会报错了
我也遇到了这个问题。建议作者改一下代码。谢谢。
后续代码net. Apply(init_weights);应该会遍历网络的每一层并执行init_weights。
我试了一下,确实是可以的,请问为什么要去掉呢?谢谢 ~
因为reduction=‘none’,它会将几个输出的loss组合为一个向量,而求梯度要求输出为标量
我也遇到同样的问题,但是将metric.add(float(l), accuracy(y_hat, y), y.numel())之后又出现新的问题。

3.7.2 说了 , softmax只是求概率的方法,实际中简化计算放到交叉熵损失中了。
在jupyter notebook中实现了 softmax回归的从零开始实现之后,在 Softmax回归的简洁实现中遇到如下问题,调用之前的train_ch3这个函数报错:AttributeError: module ‘d2l.torch’ has no attribute ‘train_ch3’ ,请问大家是什么原因,如何解决?
去colab试了一下,没有报错,能跑通。怀疑是否是d2l版本问题,colab中d2l版本2.0.0,本地d2l版本1.0.3,教材安装指导版本0.17.6,或者是其他的版本问题?欢迎大神指导回复。


