分布式
分布式预测
分布式管道封装
来源
DistributedMLForecast
多后端分布式管道
来源
DistributedMLForecast.fit
应用特征工程并训练模型。
类型 | 默认 | 详情 | |
---|---|---|---|
df | AnyDataFrame | 长格式序列数据。 | |
id_col | str | unique_id | 标识每个序列的列。 |
time_col | str | ds | 标识每个时间步的列,其值可以是时间戳或整数。 |
target_col | str | y | 包含目标的列。 |
static_features | 可选 | None | 静态特征的名称,在预测时会重复使用。 |
dropna | bool | True | 删除由变换产生的带有缺失值的行。 |
keep_last_n | 可选 | None | 对于预测步骤,仅保留每个序列中的这些记录数量。如果你的特征允许,可以节省时间和内存。 |
返回值 | DistributedMLForecast | 包含序列值和训练模型的预测对象。 |
来源
DistributedMLForecast.predict
计算未来 horizon
步的预测。
类型 | 默认 | 详情 | |
---|---|---|---|
h | int | 预测范围。 | |
before_predict_callback | 可选 | None | 在计算预测之前对特征调用的函数。 此函数将接收传递给模型进行预测的输入数据框,并应返回具有相同结构的数据框。 序列标识符在索引中。 |
after_predict_callback | 可选 | None | 在更新目标之前对预测调用的函数。 此函数将接收包含预测的 pandas Series,并应返回具有相同结构的另一个 Series。 序列标识符在索引中。 |
X_df | 可选 | None | 包含未来外部特征的数据框。应包含 id 列和时间列。 |
new_df | 可选 | None | 要生成预测的新观测值的序列数据。 此数据框应与用于拟合模型的数据框结构相同,包括任何特征和时间序列数据。 如果 new_df 不为 None,方法将为新观测值生成预测。 |
ids | 可选 | None | 在训练期间见过的一组子集 ID 列表,应为其计算预测。 |
返回值 | AnyDataFrame | 每个序列和时间步的预测,每个模型一列。 |
来源
DistributedMLForecast.save
保存预测对象
类型 | 详情 | |
---|---|---|
path | str | 存储工件的目录。 |
返回值 | None |
来源
DistributedMLForecast.load
加载预测对象
类型 | 详情 | |
---|---|---|
path | str | 包含已保存工件的目录。 |
engine | Fugue 执行引擎 | 用于分布式计算的 Dask Client、Spark Session 等。 |
返回值 | DistributedMLForecast |
来源
DistributedMLForecast.update
更新存储序列的值。
类型 | 详情 | |
---|---|---|
df | DataFrame | 包含新观测值的数据框。 |
返回值 | None |
来源
DistributedMLForecast.to_local
将此分布式预测对象转换为本地对象
这会从远程机器拉取所有数据,因此必须确保它适合调度器/驱动程序。如果不确定,请改用保存方法。
来源
DistributedMLForecast.preprocess
将特征添加到 data
。
类型 | 默认 | 详情 | |
---|---|---|---|
df | AnyDataFrame | 长格式序列数据。 | |
id_col | str | unique_id | 标识每个序列的列。 |
time_col | str | ds | 标识每个时间步的列,其值可以是时间戳或整数。 |
target_col | str | y | 包含目标的列。 |
static_features | 可选 | None | 静态特征的名称,在预测时会重复使用。 |
dropna | bool | True | 删除由变换产生的带有缺失值的行。 |
keep_last_n | 可选 | None | 对于预测步骤,仅保留每个序列中的这些记录数量。如果你的特征允许,可以节省时间和内存。 |
返回值 | AnyDataFrame | 添加了特征的 df 。 |
来源
DistributedMLForecast.cross_validation
执行时间序列交叉验证。创建 n_windows
个分割,每个窗口有 h
个测试周期,训练模型,计算预测并合并实际值。
类型 | 默认 | 详情 | |
---|---|---|---|
df | AnyDataFrame | 长格式序列数据。 | |
n_windows | int | 要评估的窗口数。 | |
h | int | 每个窗口中的测试周期数。 | |
id_col | str | unique_id | 标识每个序列的列。 |
time_col | str | ds | 标识每个时间步的列,其值可以是时间戳或整数。 |
target_col | str | y | 包含目标的列。 |
step_size | 可选 | None | 每个交叉验证窗口之间的步长。如果为 None,则等于 h 。 |
static_features | 可选 | None | 静态特征的名称,在预测时会重复使用。 |
dropna | bool | True | 删除由变换产生的带有缺失值的行。 |
keep_last_n | 可选 | None | 对于预测步骤,仅保留每个序列中的这些记录数量。如果你的特征允许,可以节省时间和内存。 |
refit | bool | True | 为每个交叉验证窗口重新训练模型。 如果为 False,模型在开始时训练一次,然后用于预测每个窗口。 |
before_predict_callback | 可选 | None | 在计算预测之前对特征调用的函数。 此函数将接收传递给模型进行预测的输入数据框,并应返回具有相同结构的数据框。 序列标识符在索引中。 |
after_predict_callback | 可选 | None | 在更新目标之前对预测调用的函数。 此函数将接收包含预测的 pandas Series,并应返回具有相同结构的另一个 Series。 序列标识符在索引中。 |
input_size | 可选 | None | 每个窗口中每个序列的最大训练样本数。如果为 None,将使用扩展窗口。 |
返回值 | AnyDataFrame | 每个窗口的预测,包含序列 ID、时间戳、目标值和来自每个模型的预测。 |