我一直试图在我的本地机器上加载NSynth数据集用于tensorflow。Google Collab非常强大,但据我所知,它并不能真正用于编写完整的python应用程序。
但是,当使用常规命令
时ds = tfds.load('nsynth', split='train', shuffle_files=False, download=True,
data_dir="data")
数据下载正常,但是脚本意外地静默结束,似乎是由于缺乏磁盘空间,尽管在运行脚本之前有超过250GB的可用空间,并且数据集不超过这个。
我不确定磁盘空间是问题,因为脚本在30分钟左右后静默失败,并且没有详细的加载功能选项。
如何在不释放更多空间的情况下在本地加载它?
如果通过tfds下载/提取文件有问题。我强烈建议你从本地下载:
https://magenta.tensorflow.org/datasets/nsynth文件你可以在这里选择你需要的包,然后自己在本地解压。
GCS有一个限制,如果我们想要超过1000个,它只返回每个请求的前1000个文件,我们已经通过NextMarker(最后一个文件的名称)并再次请求,直到我们获得所有文件。这样我们可以得到所有的文件,而不会丢失任何文件。
这个问题可以在#1938中找到。
作为一种解决方法,您可以尝试使用gsutil命令从GCS下载数据,如下所示。
!gsutil cp -r "gs://tfds-data/datasets/nsynth/full/2.3.3" "/content/data"
在本地安装gsutil: https://cloud.google.com/storage/docs/gsutil_install