PyTorch 时尚-MNIST (ETL)
PyTorch Fashion-MNIST (ETL)
我是深度学习和 PyTorch 的新手,所以如果有些问题看起来很愚蠢或者我问的格式不正确,请多多包涵。
我正在观看这个视频作为 PyTorch 深度学习系列的一部分:https://www.youtube.com/watch?v=8n-TGaBZnk4。该视频专门介绍了 ETL(使用 Fashion-MNIST 数据集)。
我对 7:05.
上的视频有几个问题
问题 1:在 Fashion-MNIST 子类构造函数中,我们将参数传递给它:
‘root’
,其中讲师提到:这是磁盘中数据所在的位置。抱歉,这可能是一个愚蠢的问题,但这是数据位于源服务器(来自 URL)磁盘上的位置,还是您要在本地计算机上保存数据的路径位置?
问题 2:同样对于 Fashion-MNIST,'root'
总是相同的位置路径:即 './data/FashionMNIST'
?
问题3:如果'root'
定义了数据在源服务器上的位置路径,那么会下载到本地哪里呢?我检查了我的 'download'
文件夹(我使用的是 Windows 7 笔记本电脑),但在那里找不到文件?
问题 4:视频提到我们应该在后续调用中检查数据是否已经下载(即在参数中我们传递 download=true
)。
4(a):执行此操作的好方法是什么?我们是否放置 if
语句来检查这一点?或者是否有更智能的方法来检查下载的数据?
4(b):另外,"subsequent calls"
是什么意思?这是否意味着我们需要为 test_data 下载再次调用 'FashionMNIST'
构造函数?
问题 5:最后,我在 Spyder IDE (Python 3.5) 上尝试 运行 下面的代码(视频中的代码):
import torch
import torchvision
import torchvision.transforms as transforms
train_set = torchvision.datasets.FashionMNIST(
root='./data/FashionMNIST'
,train=True
,download=True
,transform=transforms.Compose([
transforms.ToTensor()
])
)
我得到了输出:
Traceback (most recent call last):
File "<ipython-input-3-3ac000b9e90a>", line 10, in <module>
transforms.ToTensor()
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\mnist.py", line 68, in __init__
self.download()
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\mnist.py", line 136, in download
makedir_exist_ok(self.raw_folder)
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\utils.py", line 41, in makedir_exist_ok
os.makedirs(dirpath)
File "C:\Program Files\Anaconda3\lib\os.py", line 241, in makedirs
mkdir(name, mode)
FileNotFoundError: [WinError 206] The filename or extension is too long: './data/FashionMNIST\FashionMNIST\raw'
不确定为什么最后会出现该错误。此外,根据视频,我 运行 Jupyter Notebook 上的代码运行良好。但我想知道为什么它会在 Spyder IDE.
中引发该错误
非常感谢。
没有真题就是傻问题,一一答题:
答案 1 和 2:
root
是本地磁盘上保存数据的路径,您可以根据自己的喜好指定任何路径,这不会造成问题。
答案 3:
url 等在文件中定义,数据的路径就是您需要做的所有事情:为了查看下载数据的 url here is a link.
Ans 4. : download = True
只是允许下载 如果数据不存在下载器会自动检查数据是否已经存在,如果存在仍然不会下载,即使下载设置为 true,它再次发生在后台,您不必担心它。
Ans5:这个问题不是 torch 问题,它更多地与它在 windows 中的编译方式有关,这个问题被详细讨论 here & here
我是深度学习和 PyTorch 的新手,所以如果有些问题看起来很愚蠢或者我问的格式不正确,请多多包涵。 我正在观看这个视频作为 PyTorch 深度学习系列的一部分:https://www.youtube.com/watch?v=8n-TGaBZnk4。该视频专门介绍了 ETL(使用 Fashion-MNIST 数据集)。 我对 7:05.
上的视频有几个问题问题 1:在 Fashion-MNIST 子类构造函数中,我们将参数传递给它:
‘root’
,其中讲师提到:这是磁盘中数据所在的位置。抱歉,这可能是一个愚蠢的问题,但这是数据位于源服务器(来自 URL)磁盘上的位置,还是您要在本地计算机上保存数据的路径位置?
问题 2:同样对于 Fashion-MNIST,'root'
总是相同的位置路径:即 './data/FashionMNIST'
?
问题3:如果'root'
定义了数据在源服务器上的位置路径,那么会下载到本地哪里呢?我检查了我的 'download'
文件夹(我使用的是 Windows 7 笔记本电脑),但在那里找不到文件?
问题 4:视频提到我们应该在后续调用中检查数据是否已经下载(即在参数中我们传递 download=true
)。
4(a):执行此操作的好方法是什么?我们是否放置 if
语句来检查这一点?或者是否有更智能的方法来检查下载的数据?
4(b):另外,"subsequent calls"
是什么意思?这是否意味着我们需要为 test_data 下载再次调用 'FashionMNIST'
构造函数?
问题 5:最后,我在 Spyder IDE (Python 3.5) 上尝试 运行 下面的代码(视频中的代码):
import torch
import torchvision
import torchvision.transforms as transforms
train_set = torchvision.datasets.FashionMNIST(
root='./data/FashionMNIST'
,train=True
,download=True
,transform=transforms.Compose([
transforms.ToTensor()
])
)
我得到了输出:
Traceback (most recent call last):
File "<ipython-input-3-3ac000b9e90a>", line 10, in <module>
transforms.ToTensor()
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\mnist.py", line 68, in __init__
self.download()
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\mnist.py", line 136, in download
makedir_exist_ok(self.raw_folder)
File "C:\Program Files\Anaconda3\lib\site-packages\torchvision\datasets\utils.py", line 41, in makedir_exist_ok
os.makedirs(dirpath)
File "C:\Program Files\Anaconda3\lib\os.py", line 241, in makedirs
mkdir(name, mode)
FileNotFoundError: [WinError 206] The filename or extension is too long: './data/FashionMNIST\FashionMNIST\raw'
不确定为什么最后会出现该错误。此外,根据视频,我 运行 Jupyter Notebook 上的代码运行良好。但我想知道为什么它会在 Spyder IDE.
中引发该错误非常感谢。
没有真题就是傻问题,一一答题:
答案 1 和 2:
root
是本地磁盘上保存数据的路径,您可以根据自己的喜好指定任何路径,这不会造成问题。
答案 3: url 等在文件中定义,数据的路径就是您需要做的所有事情:为了查看下载数据的 url here is a link.
Ans 4. : download = True
只是允许下载 如果数据不存在下载器会自动检查数据是否已经存在,如果存在仍然不会下载,即使下载设置为 true,它再次发生在后台,您不必担心它。
Ans5:这个问题不是 torch 问题,它更多地与它在 windows 中的编译方式有关,这个问题被详细讨论 here & here