在使用nn.CrossEntropyLoss损失函数时,它要求传入的target必须是1D,像这样:[1,2,3,4,5],这样[[1],[2],[3]]是不行的!!
解决方法:
loss = self.loss_func(pred, y.squeeze(1).long())
同时,使用CrossEntropyLoss时,要求第一个参数为网络输出值,FloatTensor类型,第二个参数为目标值,LongTensor类型。
在使用nn.CrossEntropyLoss损失函数时,它要求传入的target必须是1D,像这样:[1,2,3,4,5],这样[[1],[2],[3]]是不行的!!
解决方法:
loss = self.loss_func(pred, y.squeeze(1).long())
同时,使用CrossEntropyLoss时,要求第一个参数为网络输出值,FloatTensor类型,第二个参数为目标值,LongTensor类型。