joblib库的dump用法
时间: 2024-10-16 13:07:43 浏览: 28
`joblib`是一个Python的高效通用并行计算库,它提供了用于序列化和存储大型数据结构以及并行计算结果的功能。其中,`dump()`函数是`joblib`中的核心函数之一,用于将对象序列化并保存到磁盘上。
`joblib.dump(obj, filename, compress=9, protocol=None, cache_size=2**20)`
- `obj`: 需要保存的对象,可以是任意类型的Python对象,如数组、DataFrame、模型等。
- `filename`: 要保存文件的路径,通常是一个`.pkl`格式的二进制文件。
- `compress`(可选): 设置压缩级别,默认为9,范围从0(无压缩)到9(最高压缩)。较高值能节省空间但会增加加载时间。
- `protocol`(可选): 序列化协议版本,如果省略则默认选择最新版本。旧版本的兼容性可能会更好。
- `cache_size`(可选): 缓存大小,设置内存映射I/O的最大块大小,适用于大文件。
例如,如果你想保存一个训练好的scikit-learn模型:
```python
from sklearn.linear_model import LogisticRegression
import joblib
# 训练模型
model = LogisticRegression()
model.fit(X_train, y_train)
# 使用joblib.dump保存模型
joblib.dump(model, 'model.pkl', compress=5)
```
当你需要加载这个模型时,可以使用`load()`函数:
```python
loaded_model = joblib.load('model.pkl')
```
阅读全文