丁天牛 2021-07-05 18:01 采纳率: 100%
浏览 174
已采纳

具有多个值的张量的布尔值是不明确的

        for i, data in enumerate(divide.train_loader, 0):
            inputs, train_labels = data    #
            inputs, labels = Variable(inputs), Variable(train_labels)
            optimizer.zero_grad()
            outputs = Net(inputs)
            _, train_predicted = torch.max(outputs.data, 1)
            #train_correct += (train_predicted == labels.data).sum()
            if train_predicted == labels.data:
                train_correct += 1
Traceback (most recent call last):
  File "C:/Users/牛牛/Desktop/机器学习/dataset_kaggledogvscat/train.py", line 23, in <module>
    if train_predicted == labels.data:
RuntimeError: Boolean value of Tensor with more than one value is ambiguous

为什么train_correct += (train_predicted == labels.data).sum()就可以呢?这句话的意思就是如果train_predicted与labels.data相等的话,train_correct就加一么

  • 写回答

1条回答 默认 最新

  • python收藏家 2021-07-05 18:21
    关注

    建议打印看看这两个输出的值,看看数据和类型什么的,这样比较容易理解

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看