【发布时间】:2018-08-09 21:42:13
【问题描述】:
我正在构建神经网络,应该在 modified CIFAR-10 上进行测试。我使用keras.datasets.cifar10.load_data() 检索数据集,然后使用pickle.load(datafile, encoding='bytes') 在字典中解析它。经过一些修改后,我使用 pickle.dump() 以类似 keras 的格式编写了图像。
我注意到pickle.dump() 之后的结果文件比源文件大53 个字节。即使我不做任何修改并在load() 之后立即使用dump(),结果文件也有额外的53 个字节。看起来结果文件的结构没有被违反,因为我能够从中恢复图像、标签、文件名并且它们是正确的。但是,如果我正在学习和测试神经网络(即使是 example 中最简单的 NN!),我的分数也会非常差(~0.5)。
- 请帮我弄清楚如果总体结构没有改变,加载-倾倒如何影响 NN 的结果?
- 如何加载和转储以保持文件结构和大小不变? 如何避免load-dump操作的不一致?
附:看起来dump() 将一些标头写入文件并且如果标头已经存在则不写入(我尝试两次应用加载转储,但大小仅在第一次应用时发生变化)。但是我怎样才能避免写这个标题呢?
【问题讨论】:
标签: image-processing neural-network keras pickle