'MNIST' object has no attribute 'targets'解决方案
时间: 2023-06-22 09:26:45 浏览: 705
这个错误提示意味着 MNIST 数据集对象中没有名为 "targets" 的属性。
在 PyTorch 中,MNIST 数据集是通过 torchvision 库中的 datasets 模块加载的。默认情况下,它返回的是一个 torch.utils.data.Dataset 对象,该对象具有以下两个属性:
- `dataset.data`:包含 MNIST 图像的张量
- `dataset.targets`:包含 MNIST 图像的标签
因此,你可以检查你加载 MNIST 数据集的代码是否正确,并确保正确使用了这两个属性。如果你使用的是其他库加载 MNIST 数据集,请查看该库的文档以了解其属性。
以下是一个使用 torchvision 加载 MNIST 数据集并访问其属性的示例代码:
```
import torch
import torchvision
# 加载 MNIST 数据集
train_dataset = torchvision.datasets.MNIST(root='./data', train=True, download=True)
# 获取数据和标签
images = train_dataset.data
labels = train_dataset.targets
# 打印数据和标签的大小
print(images.size(), labels.size())
```
如果你按照上面的示例代码进行操作,但仍然遇到 "MNIST" object has no attribute 'targets' 错误,请确保你的 PyTorch 和 torchvision 版本正确,或者尝试重新安装它们。
阅读全文