CrossEntropyLoss没有backward属性
错误代码如下,调用封装函数直接会返回CrossEntropyLoss函数相当于直接调用了CrossEntropyLoss的backward,所以报错,应该对CrossEntropyLoss的返回值使用backward
def CrossEntropyLoss_func(output, target):
return nn.CrossEntropyLoss()
loss = CrossEntropyLoss_func(output, target)
loss.backward()
正确代码如下,
def CrossEntropyLoss_func():
return nn.CrossEntropyLoss()
my_loss = CrossEntropyLoss_func()
loss = my_loss(output,target)
loss.backward()
#也就是
my_loss = nn.CrossEntropyLoss()
loss = my_loss(output,target)
loss.backward()
版权声明:本文为L888666Q原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。