使用tfds加载gtzan_music_speech数据集时报错No examples were yielded
问题成因
tfds内置的gtzan_music_speech属于需要手动下载的数据集,平台没有授权自动分发该数据集的原始文件,因此不会自动拉取数据。当TFDS扫描不到匹配的原始数据集文件时,就会判定没有可加载的样本,触发AssertionError: No examples were yielded报错。
另外如果手动下载的数据集文件名不对、版本校验不匹配、存放路径错误,也会触发相同报错。
解决方法
- 第一步:下载gtzan_music_speech原始数据集压缩包,保持文件名为
music_speech.tar.gz,不要解压文件 - 第二步:找到TFDS本地缓存目录,默认路径为
~/tensorflow_datasets/downloads/manual/(Windows系统对应C:\Users\你的用户名\tensorflow_datasets\downloads\manual\),如果不确定路径可以执行代码print(tfds.core.get_tfds_data_dir())查看缓存根目录,路径下如果没有manual文件夹可以手动创建 - 第三步:将下载好的
music_speech.tar.gz移动到上述manual文件夹内 - 第四步:重新执行
tfds.load("gtzan_music_speech")即可正常加载,如果仍然报错,可以先删除~/tensorflow_datasets/gtzan_music_speech/目录下的所有缓存文件,再重新执行加载命令
内容的提问来源于stack exchange,提问作者Ayesha Khan
相关产品推荐
相关产品推荐

