python - 我们可以用python生成器读取pickle文件中的数据吗
问题描述
我有一个大的泡菜文件,我想从泡菜文件加载数据来训练深度学习模型。如果我可以使用生成器为每个键加载数据,有什么办法吗?数据在 pickle 文件中以字典的形式出现。我正在使用pickle.load(filename)
,但我担心它在运行模型时会占用太多内存。我pickle.HIGHEST_PROTOCOL
最初将数据转储到泡菜文件中。
解决方案
没有。pickle 文件格式不像 JSON 或其他格式,您可以只读取其中的一部分并逐步解码。泡菜文件是构建 Python 对象的指令列表,就像按照一半的指令烤蛋糕不会烤出半块蛋糕一样,阅读半个泡菜不会给你一半的泡菜对象。
推荐阅读
- node.js - 如何在 Node 中限制 HTTP 请求的带宽?
- c - 获取城市的平均温度
- ios - 无法在 Android Studio 中为 Flutter 选择 iOS 手机模拟器
- angular - 使用异步管道和主题时的 ObjectUnsunscriberError 实现
- c - 如何在C中的双向链表中搜索名称和删除节点?
- android - 片段中的自定义列表适配器
- sql - 如何在 Oracle Application Express 中生成数据库图表?
- swift - 如何在 Sprite 套件中隐藏返回键上的键盘?
- rstudio - 为什么我不能在 R studio 上导入?
- python - 在 python3 'TypeError: 描述符 '__subclasses__' of 'type' object 中导入 pandas 时出错,需要一个参数'