您的位置:首页 > 编程语言 > Python开发

Python之joblib:joblib库的简介、安装、使用方法之详细攻略

2020-08-28 20:42 3963 查看

Python之joblib:joblib库的简介、安装、使用方法之详细攻略

 

 

 

目录

joblib库的简介

joblib库的安装

joblib库的使用方法

1、输出值的透明快速磁盘缓存

2、令人尴尬的并行助手:使它容易编写可读并行代码和调试它迅

3、快速压缩持久化

 

 

joblib库的简介

        Joblib是一组在Python中提供轻量级管道的工具。特别是:

  • 函数的透明磁盘缓存和延迟重新计算(记忆模式)
  • 简单并行计算

        Joblib经过了优化,特别是在处理大型数据时速度更快、更健壮,并且对numpy数组进行了特定的优化。

文档说明https://joblib.readthedocs.io
下载地址https://pypi.python.org/pypi/joblib#downloads
源码地址: https://github.com/joblib/joblib
报告问题https://github.com/joblib/joblib/issues

 

joblib库的安装

pip install joblib

 

 

 

joblib库的使用方法

1、输出值的透明快速磁盘缓存

        Python函数的类似memoize或make的功能,适用于任意Python对象,包括非常大的numpy数组。通过将操作写成一组具有定义良好的输入和输出的步骤,将持久性和流执行逻辑与域逻辑或算法代码分离开来:Python函数。Joblib可以节省他们的计算到磁盘和重新运行,只有在必要时:

[code]>>> from joblib import Memory
>>> cachedir = 'your_cache_dir_goes_here'
>>> mem = Memory(cachedir)
>>> import numpy as np
>>> a = np.vander(np.arange(3)).astype(np.float)
>>> square = mem.cache(np.square)
>>> b = square(a)                                   # doctest: +ELLIPSIS
________________________________________________________________________________
[Memory] Calling square...
square(array([[0., 0., 1.],
       [1., 1., 1.],
       [4., 2., 1.]]))
___________________________________________________________square - 0...s, 0.0min
>>> c = square(a)
>>> # The above call did not trigger an evaluation


2、令人尴尬的并行助手:使它容易编写可读并行代码和调试它迅

[code]>>> from joblib import Parallel, delayed
>>> from math import sqrt
>>> Parallel(n_jobs=1)(delayed(sqrt)(i**2) for i in range(10))
[0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0]


3、快速压缩持久化

        替代pickle,有效地处理包含大数据的Python对象(joblib)。转储& joblib。负载)。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐