mxnet record 扩展

两场比赛下来,发现总是在迭代器的地方卡住,对数据编码问题印象深刻,recordio只能支持引索号读写(虽然源程序中有type的接口,然而并不能支持str),也不支持append操作。
对其进行了扩展。
主要思路:

  1. 用一个dict记录stridx的转换,用cPickle保存dict,其文件与.idx文件类似
  2. 跟踪现有的数据条数,作为idx
  3. 执行append操作时,先建立一个临时.rec,将原有数据拷贝,再删除原有文件,最终的写操作结束后再将临时文件重命名回去

程序在此

Note

  1. __del__是折构函数
  2. 自带例子。
posted @ 2017-08-20 18:14  rotxin  阅读(245)  评论(0编辑  收藏  举报