我正在学习一个教程,但是当我使用它时 softmax 函数崩溃了。
newSignals = [0.5, 0., 0., -0.7911, 0.7911]
newState = torch.Tensor(newSignals).float().unsqueeze(0)
probs = F.softmax(self.model(newState), dim=1)
self.model
是一个神经网络(torch.nn.module
),它返回一个像
tensor([[ 0.2699, -0.2176, 0.0333]], grad_fn=<AddmmBackward>)
因此,probs = F.softmax(self.model(newState), dim=1)
行使程序崩溃,但是当dim=0
它有效,但效果不佳。
最佳答案
免责声明:很抱歉,这可能应该是评论,但我不能在评论中写下所有内容。
你确定这是问题所在吗?下面的代码片段对我有用。
import torch
a = torch.tensor([[ 0.2699, -0.2176, 0.0333]])
a.softmax(dim=1)
> tensor([[0.4161, 0.2555, 0.3284]])
a.softmax(dim=0)
> tensor([[1., 1., 1.]])
关于python - 深度 Q 学习 : torch. nn.functional.softmax 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53800842/