pytorch做二分类问题,最后用做好的模型预测,为什么概率出现大于1或者小于0的情况

net=Net(in_dim=8,n_hidden1=4,n_hidden2=6,out_dim=2)

optimizer=torch.optim.SGD(net.parameters(),lr=0.02)
loss_fun=torch.nn.CrossEntropyLoss()
losses=[]



epoches=1000
for i in range(epoches):
    out=net.forward(datalL_train)
    new_out=out.squeeze()
    loss=loss_fun(new_out,lableL_train.long())
    losses.append(loss.item())
    optimizer.zero_grad()  # 清除一下上次梯度计算的数值
    loss.backward()  # 进行反向传播
    optimizer.step()  # 最优化迭代

predict=net.forward(datalL_test)
print(predict)
print(lableL_test)


‘’‘
tensor([[-0.1968,  0.9195],
        [-0.3286,  0.9704],
        [-0.4561,  1.1754],
        [-0.8294,  1.5649]], grad_fn=<AddmmBackward>)
tensor([0., 1., 1., 1.])
’‘’

 

你好,我是问答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答

本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。

​​​​​因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。