2024-04-18 00:30:30 发布
网友
我们为一些回归任务训练了一个额外的树模型。我们的模型由3棵额外的树组成,每棵树有200棵树,深度为30。在3棵额外的树上,我们使用岭回归。 我们对模型进行了几个小时的训练,并对训练过的模型(整个类对象)进行pickle处理,以备以后使用。但是,保存的训练模型太大了,大约140 GB! 有没有办法缩小保存模型的大小?pickle中是否有任何有用的配置,或者pickle的任何替代品?在
在最好的情况下(二叉树),您将拥有3 * 200 * (2^30 - 1) = 644245094400个节点或{}假设每个节点只需存储1个字节。相比之下,140GB是一个相当不错的尺寸。在
3 * 200 * (2^30 - 1) = 644245094400
编辑:数学不好。在
您可以尝试使用带有压缩参数的joblib。在
from sklearn.externals import joblib joblib.dump(your_algo, 'pickle_file_name.pkl',compress=3)
压缩-从0到9。较高的值意味着更多的压缩,但读写时间也较慢。使用值3通常是一个很好的折衷方案。在
您可以使用python标准压缩模块zlib、gzip、bz2、lzma和xz。要使用它,您只需指定具有特定扩展名的格式
示例
更多信息,请参见[链接]:(http://gael-varoquaux.info/programming/new_low-overhead_persistence_in_joblib_for_big_data.html)
在最好的情况下(二叉树),您将拥有}假设每个节点只需存储1个字节。相比之下,140GB是一个相当不错的尺寸。在
3 * 200 * (2^30 - 1) = 644245094400
个节点或{编辑:数学不好。在
您可以尝试使用带有压缩参数的joblib。在
压缩-从0到9。较高的值意味着更多的压缩,但读写时间也较慢。使用值3通常是一个很好的折衷方案。在
您可以使用python标准压缩模块zlib、gzip、bz2、lzma和xz。要使用它,您只需指定具有特定扩展名的格式
示例
^{pr2}$更多信息,请参见[链接]:(http://gael-varoquaux.info/programming/new_low-overhead_persistence_in_joblib_for_big_data.html)
相关问题 更多 >
编程相关推荐