其它 - 序列化
Published on
简介
Qlib支持将DataHandler
、DataSet
、Processor
、Model
等对象的状态转存至硬盘以及重新载入它们。
序列化类
Qlib提供了基类Serializable
,它的状态可以以pickle格式转存至硬盘或从硬盘载入。当转存一个Serializable
类的实例时,该实例的所有不以下划线开头的属性将被保存至硬盘。然而,用户可以通过使用config
方法或覆盖default_dump_all
属性阻止这一特性。
用户也可以覆盖pickle_backend
属性以选择pickle后端,支持的值有pickle
(默认、常用)与dill
(转存更多东西,比如函数)。
例子
可以使用如下代码序列化DatasetH
:
##=============转存数据集=============
dataset.to_pickle(path="dataset.pkl") # dataset是qlib.data.dataset.DatasetH类的实例
##=============载入数据集=============
with open("dataset.pkl", "rb") as file_dataset:
dataset = pickle.load(file_dataset)