作者xxi511 (少北)
看板Python
标题[问题] 储存class(新增测试档)
时间Wed Nov 16 13:41:37 2016
*********新增测试档**********
下载网址:
https://goo.gl/B753B9
我的想法是先读取gzip压过的档案,再把这个档案存成无压缩的
这样就可以用debug mode来读取无压缩版的来看内容
小弟才刚学python,写的程式可能不太好看,请多包涵
拜托大家了<(_ _)>
原版的存档是使用matlab内建的方法,我不知道这样有没有参考价值
save(cache_file, 'roidb', '-v7.3');
https://www.mathworks.com/help/matlab/ref/save.html
*****************************
大家好
目前在把一个本来由matlab实现的专案改成用python 2.7 实现
在计算过程中需要把class存起来以後再用
上网找一下大家都推荐用cPickle
但我存出来的档案size太大了
matlab存出来的档案是6MB,但用python存出来是1.9G!!
如果只是单一档案的话还好
但过程中会存一万多个档,虽然不是每个都这麽大,但这种size还满困扰的
所以想问一下有没有那种存档速度快,出来的size又很小的方法
要存的东西roidb
https://i.stack.imgur.com/SskRS.png
boxes, classes,gt, oberlap 的长度都是 2005
# 时间大约10秒 size 1.9G, debug mode
with open(cache_file + '.pkl', 'wb') as f:
pickle.dump(roidb, f, protocol=pickle.HIGHEST_PROTOCOL)
# 时间大约5分钟 size 158MB, release mode
# debug mode没等到结果,跑了半小时还在跑
with gzip.open(cache_file + '.pgz', 'wb') as f:
pickle.dump(roidb, f, protocol=pickle.HIGHEST_PROTOCOL)
其他有试过
scipy.io.savemat(debug mode),速度大约10秒但档案size一样是1.9G
hickle 速度慢(debug mode),档案超过3G
有稍微爬一下类似的文章,会有需要提供测试档之类的吗?
有需要的话我再来想要怎麽做
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.124.73.62
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1479274899.A.4E7.html
※ 编辑: xxi511 (140.124.73.62), 11/16/2016 13:44:05
1F:推 kenduest: 搭配压缩处理方式才储存进去,应该可以减少占用空间 11/16 14:17
2F:→ kenduest: 不过你说压缩後一样大还真诡异 11/16 14:18
3F:→ kenduest: 看错了,有压缩结果有变小但是跑很久 11/16 14:19
没错跑超久的,无压缩写入的话在debug大约10秒,压缩写入的话跑了半小时还在跑
没办法等下去阿orz,虽然知道release和debug在速度上有差但这也差太多了
※ 编辑: xxi511 (140.124.73.62), 11/16/2016 14:39:16
※ 编辑: xxi511 (140.124.73.62), 11/16/2016 14:39:38
※ 编辑: xxi511 (140.124.73.62), 11/16/2016 14:40:18
4F:→ benson415: 如果都是ndarray的话,存hdf5呢?有考虑过吗~ 11/16 18:51
6F:→ s860134: 如果有测试档的话我也想测一下XD 11/16 21:38
7F:→ s860134: 关键字python serialize speed 11/16 21:39
8F:→ s860134: 其实比较想知道 matlab 存6MB,这代表你的资料很稀疏? 11/16 21:40
9F:→ s860134: 如果知道 matlab 怎麽读写,用python 实作就不用换格式? 11/16 21:46
10F:推 Sunal: 好奇+1 大小差距也太大 11/16 23:43
※ 编辑: xxi511 (140.124.73.62), 11/17/2016 12:07:24
※ 编辑: xxi511 (140.124.73.62), 11/17/2016 12:10:47
※ 编辑: xxi511 (140.124.73.62), 11/17/2016 12:13:54