我试图写一个简单的NN模块,有2层,第一层ReLU激活,输出softmax与3个类(一个热编码)。我使用softmax函数的方式似乎有问题,但我不确定发生了什么。在
X是178x13
Y是178x3
我使用的数据集相当简单,可以找到datasets/Wine" rel="nofollow noreferrer">here。在
我一直收到错误:
RuntimeError: dimension out of range (expected to be in range of [-2, 1], but got 3) .
一。在
^{pr2}$
Tags:
这是个问题,因为对于nlloss:
我试着给它一个热编码向量。我通过以下方式解决了我的问题:
^{pr2}$在哪里torch.max.最大找到了最大值及其各自的指数。在
在我看来你误解了
LogSoftmax
的dim
的论点。从文件上看现在,当你把你的输入通过你的两个线性层之后,你得到的张量是
LogSoftmax
的维数是178 x 3
。显然,dim = 3
不可用,因为张量只有两个维度。相反,请尝试dim=1
跨列求和。在相关问题 更多 >
编程相关推荐