pytorch 的交叉熵损失总是报错,同样的结构改成MSELoss就没有问题

  统计/机器学习 深度学习 Python 人工神经网络    浏览次数:1033        分享
0

pytorch 的交叉熵损失总是报错,同样的结构改成MSELoss就没有问题,谁能告诉我怎么回事呀

loss_function = torch.nn.CrossEntropyLoss()

TypeError: FloatClassNLLCriterion_updateOutput received an invalid combination of arguments


这是报错截图


 

大鱼   2017-11-23 22:29



   1个回答 
2

不知道你整个代码,但是也许是你的目标值的tensor type的问题吧

你试试把你的tensor转成longtensor的类型,比如

my_target = Variable(torch.LongTensor([1]))


SofaSofa数据科学社区 DS面经 问答 实战

曾经是科比   2017-11-24 01:09

没错是Tensor和LongTensor的问题,谢谢回答,已经解决。 - 大鱼   2017-11-27 12:40


  相关主题

cross entropy是什么意思?   1回答

Gini指数、Gini系数、Gini不纯是一回事吗?   2回答

最小描述长度和香农熵有什么关系?   0回答

softmax模型和最大熵模型是否是一回事?   1回答

python里怎么计算一个数组的熵(entropy)?   1回答

决策树的熵是什么?怎么用熵来选分叉?   1回答

求问:Cart分类树为什么是基尼指数最小化准则   1回答

为什么决策树中用熵而不是基尼不纯度来作为划分依据?   2回答

mac电脑怎么用ssh远程控制Linux服务器查看可视化结果   1回答

前馈神经网络如何选择隐藏层的数量   2回答

神经网络中的dense和sparse是什么意思?   2回答

deep learning中的pooling是什么意思?   6回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!