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

时间:2020-8-29 作者:admin

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可以节省他们的计算到磁盘和重新运行,只有在必要时:

>>> 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、令人尴尬的并行助手:使它容易编写可读并行代码和调试它迅

>>> 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。负载)。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。