ARDL#

class ARDL(lags=None, order=None, fixed=None, causal=False, trend='c', seasonal=False, deterministic=None, hold_back=None, period=None, missing='none', cov_type='nonrobust', cov_kwds=None, use_t=True, auto_ardl=False, maxlag=None, maxorder=None, ic='bic', glob=False, fixed_oos=None, X_oos=None, dynamic=False)[source]#

自回归分布式滞后 (ARDL) 模型。

statsmodels.tsa.ardl.ARDL 的直接接口

参数:
lags{int, list[int]}, optional

仅在 auto_ardl 为 False 时考虑。如果为整数,则表示模型中包含的滞后数量;如果为整数列表,则表示要包含的滞后索引列表。例如,[1, 4] 将仅包含滞后 1 和 4,而 lags=4 将包含滞后 1, 2, 3 和 4。

order{int, sequence[int], dict}, optional

仅在 auto_ardl 为 False 时考虑。如果为 int,则对所有 exog 变量使用滞后 0, 1, …, order。如果为 sequence[int],则对所有变量使用 order 指定的滞后。如果为 dict,则按序列应用滞后。如果 exog 不是 DataFrame,则键是 exog 的列索引(例如,0, 1, …)。如果为 DataFrame,则键是列名。

fixedarray_like, optional

未滞后的附加固定回归变量。

causalbool, optional

是否包含 exog 变量的滞后 0。如果为 True,则仅包含滞后 1, 2, …

trend{‘n’, ‘c’, ‘t’, ‘ct’}, optional

模型中包含的趋势项

  • ‘n’ - 无趋势。

  • ‘c’ - 仅包含常数项。

  • ‘t’ - 仅包含时间趋势项。

  • ‘ct’ - 包含常数项和时间趋势项。

默认值为 ‘c’。

seasonalbool, optional

标志,指示是否在模型中包含季节虚拟变量。如果 seasonal 为 True 且 trend 包含 ‘c’,则第一个周期将被排除在季节项之外。

deterministicDeterministicProcess, optional

一个确定性过程。如果提供,则忽略 trend 和 seasonal。如果 trend 不是 “n” 且 seasonal 不是 False,则会发出警告。

hold_back{None, int}, optional

从估计样本中排除的初始观测值。如果为 None,则 hold_back 等于模型中的最大滞后。设置为非零值以生成具有不同滞后长度的可比模型。例如,为了比较 lags=3 和 lags=1 的模型的拟合度,设置 hold_back=3 可以确保两个模型都使用观测值 3,…,nobs 进行估计。hold_back 必须大于或等于模型中的最大滞后。

period{None, int}, optional

数据周期。仅在 seasonal 为 True 时使用。如果对 endog 使用包含已知频率的 pandas 对象,则可以省略此参数。

missing{“none”, “drop”, “raise”}, optional

可用选项有 ‘none’, ‘drop’, 和 ‘raise’。如果为 ‘none’,则不进行 nan 检查。如果为 ‘drop’,则删除任何包含 nan 的观测值。如果为 ‘raise’,则引发错误。默认值为 ‘none’。

cov_typestr, optional

要使用的协方差估计器。最常见的选项列于下方。支持 OLS.fit 中所有可用的协方差估计器。

  • ‘nonrobust’ - 假设同方差的 OLS 类协方差估计器。

  • ‘HC0’, ‘HC1’, ‘HC2’, ‘HC3’ - White(或 Eiker-Huber-White)协方差估计器的变体。HC0 是标准实现。其他变体进行了校正以改进异方差稳健协方差估计器的有限样本性能。

  • ‘HAC’ - 异方差自相关稳健协方差估计。支持 cov_kwds。

    • maxlags integer (必需) : 要使用的滞后数量。

    • kernel 可调用或 str (可选)核函数

      当前可用的核函数有 [‘bartlett’, ‘uniform’],默认值为 Bartlett。

    • use_correction bool (可选)如果为 True,则使用小样本校正。

      校正。

cov_kwdsdict, optional

一个字典,包含要传递给协方差估计器的关键字参数。nonrobustHC# 不支持 cov_kwds。

use_tbool, optional

一个标志,指示推理是否应使用考虑模型自由度的学生 t 分布。如果为 False,则使用正态分布。如果为 None,则将选择权留给 cov_type。当 cov_type 为 ‘nonrobust’ 时,它还会从协方差估计器中移除自由度校正。

auto_ardlbool, optional

一个标志,指示是否应自动确定滞后数量。

maxlagint, optional

仅在 auto_ardl 为 True 时考虑。内生变量要考虑的最大滞后。

maxorder{int, dict}

仅在 auto_ardl 为 True 时考虑。如果为 int,则为所有 exog 变量设置一个共同的最大滞后长度。如果为 dict,则设置单独的滞后长度。如果 exog 为 DataFrame,则键是列名;否则是列索引。

ic{“aic”, “bic”, “hqic”}, optional

仅在 auto_ardl 为 True 时考虑。模型选择中使用的信息准则。

globbool, optional

仅在 auto_ardl 为 True 时考虑。是考虑最大模型的所有可能子模型,还是仅在包含较大阶滞后时才必须包含较小阶滞后。如果为 True,则考虑的模型数量级为 2**(maxlag + k * maxorder)(假设 maxorder 为 int)。除非 k 和 maxorder 都相对较小,否则这可能非常大。如果为 False,则考虑的模型数量级为 maxlag*maxorder**k,当 k 和 maxorder 较大时,这也可能相当大。

X_oosarray_like, optional

一个数组,包含外生变量的样本外值。必须与 X 具有相同数量的列,并且行数至少与样本外预测的数量相同。

fixed_oosarray_like, optional

一个数组,包含固定变量的样本外值。必须与固定数组具有相同数量的列,并且行数至少与样本外预测的数量相同。

dynamic{bool, int, str, datetime, Timestamp}, optional

相对于 start 的整数偏移量,表示开始动态预测的位置。在此观测值之前,将使用真实的内生变量值进行预测;从该观测值开始并持续到预测结束,将改用预测的内生变量值。类似 Datetime 的对象不被解释为偏移量。它们被用于查找 dynamic 的索引位置,然后用于计算偏移量。

属性:
cutoff

截止点 = 预测器的“当前时间”状态。

fh

传递的预测范围。

is_fitted

是否已调用 fit

另请参阅

statsmodels.tsa.ar_model.AutoReg

带有可选外生回归变量的自回归模型估计

statsmodels.tsa.ardl.UECM

无约束误差修正模型估计

statsmodels.tsa.statespace.sarimax.SARIMAX

带有可选外生回归变量的季节性 ARIMA 模型估计

statsmodels.tsa.arima.model.ARIMA

ARIMA 模型估计

注意

ARDL 的完整规范为

\[Y_t = delta_0 + delta_1 t + delta_2 t^2 + sum_{i=1}^{s-1} gamma_i I_{[(mod(t,s) + 1) = i]} + sum_{j=1}^p phi_j Y_{t-j} + sum_{l=1}^k sum_{m=0}^{o_l} beta_{l,m} X_{l, t-m} + Z_t lambda + epsilon_t\]

其中 \(delta_bullet\) 捕获趋势,\(gamma_bullet\) 捕获季节性变化,s 是季节性周期,p 是内生变量的滞后长度,k 是外生变量 \(X_{l}\) 的数量,\(o_l\)\(X_{l}\) 的滞后长度,\(Z_t\)r 个包含的固定回归变量,\(epsilon_t\) 是白噪声冲击。如果 causalTrue,则不包含外生变量的第 0 阶滞后,求和从 m=1 开始。

示例

在宏观经济数据上使用 ARDL >>> from sktime.datasets import load_macroeconomic >>> from sktime.forecasting.ardl import ARDL >>> from sktime.forecasting.base import ForecastingHorizon >>> data = load_macroeconomic() # doctest: +SKIP >>> oos = data.iloc[-5:, :] # doctest: +SKIP >>> data = data.iloc[:-5, :] # doctest: +SKIP >>> y = data.realgdp # doctest: +SKIP >>> X = data[[“realcons”, “realinv”]] # doctest: +SKIP >>> X_oos = oos[[“realcons”, “realinv”]] # doctest: +SKIP >>> ardl = ARDL(lags=2, order={“realcons”: 1, “realinv”: 2}, trend=”c”) # doctest: +SKIP >>> ardl.fit(y=y, X=X) # doctest: +SKIP ARDL(lags=2, order={‘realcons’: 1, ‘realinv’: 2}) >>> fh = ForecastingHorizon([1, 2, 3]) # doctest: +SKIP >>> y_pred = ardl.predict(fh=fh, X=X_oos) # doctest: +SKIP

方法

check_is_fitted([method_name])

检查估计器是否已拟合。

check_param_validity(X)

检查输入的参数组合的有效性。

clone()

获取具有相同超参数和配置的对象的克隆。

clone_tags(estimator[, tag_names])

将标签从另一个对象克隆为动态覆盖。

create_test_instance([parameter_set])

使用第一个测试参数集构建类的一个实例。

create_test_instances_and_names([parameter_set])

创建所有测试实例的列表及其名称列表。

fit(y[, X, fh])

将预测器拟合到训练数据。

fit_predict(y[, X, fh, X_pred])

拟合并预测未来范围的时间序列。

get_class_tag(tag_name[, tag_value_default])

从类中获取类标签值,具有来自父类的标签级继承。

get_class_tags()

从类中获取类标签,具有来自父类的标签级继承。

get_config()

获取 self 的配置标志。

get_fitted_params([deep])

获取已拟合的参数。

get_param_defaults()

获取对象的参数默认值。

get_param_names([sort])

获取对象的参数名称。

get_params([deep])

获取此对象的参数值字典。

get_tag(tag_name[, tag_value_default, ...])

从实例中获取标签值,具有标签级继承和覆盖。

get_tags()

从实例中获取标签,具有标签级继承和覆盖。

get_test_params([parameter_set])

返回估计器的测试参数设置。

is_composite()

检查对象是否由其他 BaseObjects 组成。

load_from_path(serial)

从文件位置加载对象。

load_from_serial(serial)

从序列化内存容器加载对象。

predict([fh, X])

预测未来范围的时间序列。

predict_interval([fh, X, coverage])

计算/返回预测区间预测值。

predict_proba([fh, X, marginal])

计算/返回完全概率预测值。

predict_quantiles([fh, X, alpha])

计算/返回分位数预测值。

predict_residuals([y, X])

返回时间序列预测的残差。

predict_var([fh, X, cov])

计算/返回方差预测值。

reset()

将对象重置为干净的初始化后状态。

save([path, serialization_format])

将序列化的 self 保存为字节类对象或 (.zip) 文件。

score(y[, X, fh])

使用 MAPE(非对称)评估预测值与真实值。

set_config(**config_dict)

将配置标志设置为给定值。

set_params(**params)

设置此对象的参数。

set_random_state([random_state, deep, ...])

为 self 设置 random_state 伪随机种子参数。

set_tags(**tag_dict)

将实例级标签覆盖设置为给定值。

summary()

获取拟合预测器的摘要。

update(y[, X, update_params])

更新截止值,并可选地更新已拟合的参数。

update_predict(y[, cv, X, update_params, ...])

在测试集上迭代地进行预测并更新模型。

update_predict_single([y, fh, X, update_params])

使用新数据更新模型并进行预测。

check_param_validity(X)[source]#

检查输入的参数组合的有效性。

summary()[source]#

获取拟合预测器的摘要。

summary()[source]#

返回估计器的测试参数设置。

参数:
classmethod get_test_params(parameter_set='default')[source]#

parameter_setstr, default=”default”

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
返回:

paramsdict or list of dict, default = {}

用于创建类的测试实例的参数。每个 dict 都是构建一个“有趣的”测试实例的参数,例如,MyClass(**params)MyClass(**params[i]) 创建一个有效的测试实例。create_test_instance 使用 params 中的第一个(或唯一一个)字典。

检查估计器是否已拟合。

check_is_fitted(method_name=None)[source]#

检查 _is_fitted 属性是否存在且为 Trueis_fitted 属性应在调用对象的 fit 方法时设置为 True

参数:
如果未拟合,则引发 NotFittedError

method_namestr, optional

调用此函数的方法的名称。如果提供,错误消息将包含此信息。
NotFittedError

引发:

如果估计器尚未拟合。

获取具有相同超参数和配置的对象的克隆。

clone()[source]#

克隆是另一个没有共享引用、处于初始化后状态的对象。此函数等同于返回 selfsklearn.clone

等同于构造一个 type(self) 的新实例,使用 self 的参数,即 type(self)(**self.get_params(deep=False))

如果在 self 上设置了配置,则克隆也将具有与原始对象相同的配置,等同于调用 cloned_self.set_config(**self.get_config())

调用此函数的方法的名称。如果提供,错误消息将包含此信息。
其值也等同于调用 self.reset,不同之处在于 clone 返回一个新对象,而不是像 reset 那样修改 self
如果由于存在错误的 __init__ 导致克隆不符合规范,则会引发 RuntimeError。

将标签从另一个对象克隆为动态覆盖。

clone_tags(estimator, tag_names=None)[source]#

每个 scikit-base 兼容对象都带有一个标签字典。标签可用于存储关于对象的元数据或控制对象的行为。

标签是特定于实例 self 的键值对,它们是对象构造后不会改变的静态标志。

clone_tags 从另一个对象 estimator 设置动态标签覆盖。

clone_tags 方法只能在对象的 __init__ 方法中调用,在构造期间,或通过 __init__ 构造完成后直接调用。

动态标签被设置为 estimator 中标签的值,名称由 tag_names 指定。

tag_names 的默认行为是将 estimator 的所有标签写入 self

参数:
可以通过 get_tagsget_tag 检查当前标签值。
estimatorAn instance of :class:BaseObject or derived class

tag_namesstr or list of str, default = None

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
要克隆的标签名称。默认值 (None) 克隆 estimator 中的所有标签。

self

self 的引用。

使用第一个测试参数集构建类的一个实例。

参数:
classmethod get_test_params(parameter_set='default')[source]#

classmethod create_test_instance(parameter_set='default')[source]#

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,将返回 “default” 集。
instanceinstance of the class with default parameters

创建所有测试实例的列表及其名称列表。

参数:
classmethod get_test_params(parameter_set='default')[source]#

classmethod create_test_instance(parameter_set='default')[source]#

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
classmethod create_test_instances_and_names(parameter_set='default')[source]#

objslist of instances of cls

第 i 个实例是 cls(**cls.get_test_params()[i])

nameslist of str, same length as objs

第 i 个元素是测试中 obj 第 i 个实例的名称。如果实例多于一个,命名约定为 {cls.__name__}-{i},否则为 {cls.__name__}

截止点 = 预测器的“当前时间”状态。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
property cutoff[source]#

cutoffpandas compatible index element, or None

如果已设置 cutoff,则为 pandas 兼容索引元素;否则为 None。

传递的预测范围。

property fh[source]#

将预测器拟合到训练数据。

fit(y, X=None, fh=None)[source]#

状态变更

将状态更改为“已拟合”。

  • 写入 self

  • 设置以 “_” 结尾的拟合模型属性,拟合属性可通过 get_fitted_params 检查。

  • self.is_fitted 标志设置为 True

  • self.cutoff 设置为在 y 中看到的最后一个索引。

参数:
如果传递了 fh,则将 fh 存储到 self.fh

ysktime 兼容数据容器格式的时间序列。

要拟合预测器的时间序列。

  • sktime 中的独立数据格式是所谓的 mtype 规范,每种 mtype 都实现了一个抽象的 scitype

  • Series scitype = 独立时间序列,普通预测。pd.DataFrame`, pd.Series,或 np.ndarray (1D 或 2D)

  • Panel scitype = 时间序列集合,全局/面板预测。pd.DataFrame 带 2 级行 MultiIndex (实例, 时间), 3D np.ndarray (实例, 变量, 时间), list 类型的 Seriespd.DataFrame

Hierarchical scitype = 分层集合,用于分层预测。pd.DataFrame 带 3 级或更多级行 MultiIndex (层级_1, ..., 层级_n, 时间)

有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

fhint, list, pd.Index coercible, or ForecastingHorizon, default=None

编码要预测的时间戳的预测范围。如果 self.get_tag("requires-fh-in-fit")True,则必须在 fit 中传递,不是可选的。

Xsktime 兼容格式的时间序列,可选 (default=None)。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
用于拟合模型的外生时间序列。应与 y 具有相同的 scitypeSeries, PanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index"),则 X.index 必须包含 y.index
self对 self 的引用。

拟合并预测未来范围的时间序列。

fit_predict(y, X=None, fh=None, X_pred=None)[source]#

fit(y, X=None, fh=None)[source]#

状态变更

将状态更改为“已拟合”。

  • 写入 self

  • 设置以 “_” 结尾的拟合模型属性,拟合属性可通过 get_fitted_params 检查。

  • self.is_fitted 标志设置为 True

  • fit(y, X, fh).predict(X_pred) 相同。如果未传递 X_pred,则与 fit(y, fh, X).predict(X) 相同。

参数:
fh 存储到 self.fh

ysktime 兼容数据容器格式的时间序列。

要拟合预测器的时间序列。

  • sktime 中的独立数据格式是所谓的 mtype 规范,每种 mtype 都实现了一个抽象的 scitype

  • Series scitype = 独立时间序列,普通预测。pd.DataFrame`, pd.Series,或 np.ndarray (1D 或 2D)

  • Panel scitype = 时间序列集合,全局/面板预测。pd.DataFrame 带 2 级行 MultiIndex (实例, 时间), 3D np.ndarray (实例, 变量, 时间), list 类型的 Seriespd.DataFrame

Hierarchical scitype = 分层集合,用于分层预测。pd.DataFrame 带 3 级或更多级行 MultiIndex (层级_1, ..., 层级_n, 时间)

ysktime 兼容数据容器格式的时间序列

fhint, list, pd.Index coercible, or ForecastingHorizon (not optional)

编码要预测的时间戳的预测范围。

编码要预测的时间戳的预测范围。如果 self.get_tag("requires-fh-in-fit")True,则必须在 fit 中传递,不是可选的。

Xsktime 兼容格式的时间序列,可选 (default=None)。

如果 fh 非 None 且类型不是 ForecastingHorizon,则通过调用 _check_fh 将其强制转换为 ForecastingHorizon。特别是,如果 fh 类型为 pd.Index,则通过 ForecastingHorizon(fh, is_relative=False) 进行强制转换。

X_predsktime 兼容格式的时间序列,可选 (default=None)

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
用于预测的外生时间序列。如果传递,将用于预测而不是 X。应与 fit 中的 y 具有相同的 scitype(Series, PanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index"),则 X.index 必须包含 fh 索引引用。

y_predsktime 兼容数据容器格式的时间序列

fh 上的点预测,与 fh 具有相同的索引。y_pred 的类型与最近传递的 y 类型相同:Series, Panel, Hierarchical scitype,格式相同(见上文)。

从类中获取类标签值,具有来自父类的标签级继承。

classmethod get_class_tag(tag_name, tag_value_default=None)[source]#

每个 scikit-base 兼容对象都带有一个标签字典,用于存储关于对象的元数据。

get_class_tag 方法是一个类方法,仅考虑类级标签值和覆盖来检索标签值。

  1. 它从对象中返回名称为 tag_name 的标签值,考虑标签覆盖,优先级按以下降序排列:

  2. 在类的 _tags 属性中设置的标签。

在父类的 _tags 属性中设置的标签,

按继承顺序。

不考虑通过 set_tagsclone_tags 在实例上设置的动态标签覆盖。

参数:
要检索具有潜在实例覆盖的标签值,请改用 get_tag 方法。

tag_namestr

标签值的名称。

tag_value_defaultany type

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
如果未找到标签,则为默认/备用值。

tag_value

self 中 tag_name 标签的值。如果未找到,则返回 tag_value_default

从类中获取类标签,具有来自父类的标签级继承。

clone_tags(estimator, tag_names=None)[source]#

每个 scikit-base 兼容对象都带有一个标签字典。标签可用于存储关于对象的元数据或控制对象的行为。

classmethod get_class_tags()[source]#

get_class_tags 方法是一个类方法,仅考虑类级标签值和覆盖来检索标签值。

它返回一个字典,其键是类或其任何父类中设置的任何 _tags 属性的键。

  1. 它从对象中返回名称为 tag_name 的标签值,考虑标签覆盖,优先级按以下降序排列:

  2. 在类的 _tags 属性中设置的标签。

在父类的 _tags 属性中设置的标签,

值是相应的标签值,覆盖优先级按以下降序排列:

要检索可能包含实例覆盖的标签,请使用 get_tags 方法。

按继承顺序。

如需包含动态标签的覆盖项,请使用 get_tags

collected_tagsdict(字典)

标签名称 : 标签值 对的字典。通过嵌套继承从 _tags 类属性中收集。不会被通过 set_tagsclone_tags 设置的动态标签覆盖。

get_config()[source]#

获取 self 的配置标志。

配置是 self 的键值对,通常用作控制行为的瞬时标志。

get_config 返回动态配置,这些配置会覆盖默认配置。

默认配置在类或其父类的类属性 _config 中设置,并会被通过 set_config 设置的动态配置覆盖。

配置在 clonereset 调用下会保留。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
config_dictdict(字典)

配置名称 : 配置值 对的字典。通过嵌套继承从 _config 类属性中收集,然后包括来自 _onfig_dynamic 对象属性的任何覆盖和新标签。

get_fitted_params(deep=True)[source]#

获取已拟合的参数。

所需状态

要求状态为“fitted”(已拟合)。

参数:
deepbool(布尔值),默认值=True

是否返回组件的拟合参数。

  • 如果为 True,将返回此对象的参数名称 : 值 的字典,包括可拟合组件的拟合参数(= BaseEstimator 类型参数)。

  • 如果为 False,将返回此对象的参数名称 : 值 的字典,但不包括组件的拟合参数。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
fitted_paramsdict(字典),键为字符串类型

拟合参数的字典,paramname : paramvalue 键值对包括

  • 始终包含:此对象的所有拟合参数,通过 get_param_names 获取,值为此对象对应键的拟合参数值

  • 如果 deep=True,也包含组件参数的键/值对,组件参数的索引格式为 [componentname]__[paramname]componentname 的所有参数以 paramname 及其值的形式出现

  • 如果 deep=True,也包含任意级别的组件递归,例如 [componentname]__[componentcomponentname]__[paramname]

classmethod get_param_defaults()[source]#

获取对象的参数默认值。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
default_dictdict[str, Any](字典)

键是 cls 中所有在 __init__ 中定义了默认值的参数。值是默认值,与 __init__ 中定义的一致。

classmethod get_param_names(sort=True)[source]#

获取对象的参数名称。

参数:
sortbool(布尔值),默认值=True

是按字母顺序(True)返回参数名称,还是按它们在类 __init__ 中出现的顺序(False)返回。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
param_nameslist[str](字符串列表)

cls 的参数名称列表。如果 sort=False,则与它们在类 __init__ 中出现的顺序相同。如果 sort=True,则按字母顺序排列。

get_params(deep=True)[source]#

获取此对象的参数值字典。

参数:
deepbool(布尔值),默认值=True

是否返回组件的参数。

  • 如果为 True,将返回此对象的参数名称 : 值 的 dict(字典),包括组件的参数(= BaseObject 类型参数)。

  • 如果为 False,将返回此对象的参数名称 : 值 的 dict(字典),但不包括组件的参数。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
paramsdict(字典),键为字符串类型

参数字典,paramname : paramvalue 键值对包括

  • 始终包含:此对象的所有参数,通过 get_param_names 获取,值为此对象对应键的参数值。值总是与构造时传入的值相同。

  • 如果 deep=True,也包含组件参数的键/值对,组件参数的索引格式为 [componentname]__[paramname]componentname 的所有参数以 paramname 及其值的形式出现

  • 如果 deep=True,也包含任意级别的组件递归,例如 [componentname]__[componentcomponentname]__[paramname]

get_tag(tag_name, tag_value_default=None, raise_error=True)[source]#

从实例中获取标签值,具有标签级继承和覆盖。

clone_tags(estimator, tag_names=None)[source]#

每个 scikit-base 兼容对象都带有一个标签字典。标签可用于存储关于对象的元数据或控制对象的行为。

get_tag 方法从实例中检索名称为 tag_name 的单个标签的值,按以下降序优先级的顺序考虑标签覆盖:

  1. 通过实例上的 set_tagsclone_tags 设置的标签,

在实例构造时设置的标签。

  1. 它从对象中返回名称为 tag_name 的标签值,考虑标签覆盖,优先级按以下降序排列:

  2. 在类的 _tags 属性中设置的标签。

在父类的 _tags 属性中设置的标签,

参数:
要检索具有潜在实例覆盖的标签值,请改用 get_tag 方法。

要检索的标签名称

tag_value_default任意类型,可选;默认值=None

如果找不到标签时的默认/备用值

raise_errorbool(布尔值)

找不到标签时是否引发 ValueError

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
tag_valueAny(任意类型)

selftag_name 标签的值。如果找不到,且 raise_error 为 True,则引发错误,否则返回 tag_value_default

调用此函数的方法的名称。如果提供,错误消息将包含此信息。
ValueError,如果 raise_errorTrue

如果 tag_name 不在 self.get_tags().keys() 中,则引发 ValueError

get_tags()[source]#

从实例中获取标签,具有标签级继承和覆盖。

clone_tags(estimator, tag_names=None)[source]#

每个 scikit-base 兼容对象都带有一个标签字典。标签可用于存储关于对象的元数据或控制对象的行为。

get_tags 方法返回一个标签字典,其键是类或其任何父类中设置的 _tags 属性的任何键,或者通过 set_tagsclone_tags 设置的标签。

它返回一个字典,其键是类或其任何父类中设置的任何 _tags 属性的键。

  1. 通过实例上的 set_tagsclone_tags 设置的标签,

在实例构造时设置的标签。

  1. 它从对象中返回名称为 tag_name 的标签值,考虑标签覆盖,优先级按以下降序排列:

  2. 在类的 _tags 属性中设置的标签。

在父类的 _tags 属性中设置的标签,

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
collected_tagsdict(字典)

标签名称 : 标签值 对的字典。通过嵌套继承从 _tags 类属性中收集,然后包括来自 _tags_dynamic 对象属性的任何覆盖和新标签。

is_composite()[source]#

检查对象是否由其他 BaseObjects 组成。

复合对象是包含其他对象作为参数的对象。此方法在实例上调用,因为结果可能因实例而异。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
compositebool(布尔值)

对象是否具有其值是 BaseObject 后代实例的参数。

property is_fitted[source]#

是否已调用 fit

检查对象的 _is_fitted 属性,该属性在对象构造期间应初始化为 False,并在调用对象的 fit 方法时设置为 True。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
bool(布尔值)

评估器是否已 fit(拟合)。

classmethod load_from_path(serial)[source]#

从文件位置加载对象。

参数:
serialZipFile(path).open(“object”) 的结果
要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
反序列化的 self,其输出位于 path,来自 cls.save(path)
classmethod load_from_serial(serial)[source]#

从序列化内存容器加载对象。

参数:
serialcls.save(None) 输出的第一个元素
要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
反序列化的 self,其输出为 serial,来自 cls.save(None)
predict(fh=None, X=None)[source]#

预测未来范围的时间序列。

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

如果 fh 被传入且之前未传入过,则将其存储到 self.fh

参数:
有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

编码要预测的时间戳的预测范围。

Xsktime 兼容格式的时间序列,可选(默认值=None)

在预测中使用的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
用于预测的外生时间序列。如果传递,将用于预测而不是 X。应与 fit 中的 y 具有相同的 scitype(Series, PanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index"),则 X.index 必须包含 fh 索引引用。

y_predsktime 兼容数据容器格式的时间序列

predict_interval(fh=None, X=None, coverage=0.9)[source]#

计算/返回预测区间预测值。

如果 coverage 是可迭代的,则将计算多个区间。

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

如果 fh 被传入且之前未传入过,则将其存储到 self.fh

参数:
有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

如果 fh 不为 None 且不是 ForecastingHorizon 类型,则会在内部(通过 _check_fh)强制转换为 ForecastingHorizon 类型。

  • 如果 fh 是 int 或 int 的数组类型,则被解释为相对预测视野,并强制转换为相对的 ForecastingHorizon(fh, is_relative=True)

  • 如果 fhpd.Index 类型,则被解释为绝对预测视野,并强制转换为绝对的 ForecastingHorizon(fh, is_relative=False)

Xsktime 兼容格式的时间序列,可选(默认值=None)

在预测中使用的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

coveragefloat(浮点数)或唯一浮点数的列表,可选(默认值=0.90)

预测区间(s)的名义覆盖率

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
pred_intpd.DataFrame
列具有多级索引:第一级是 fity 的变量名,
第二级是计算区间的覆盖率。

顺序与输入 coverage 中的顺序相同。

第三级是字符串“lower”(下界)或“upper”(上界),表示区间的下界/上界。

行索引是 fh,具有与实例级别相同的额外(上层)级别,

来自 fit 中看到的 y,如果 fit 中看到的 y 是 Panel 或 Hierarchical 类型。

条目是区间下界/上界的预测值,

对于列索引中的变量,在第二级列索引中的名义覆盖率下,根据第三级列索引确定是下界还是上界,对应于行索引。区间上界/下界的预测值等价于对 coverage 中的 c,在 alpha = 0.5 - c/2 和 0.5 + c/2 处的分位数预测值。

predict_proba(fh=None, X=None, marginal=True)[source]#

计算/返回完全概率预测值。

注意

  • 目前仅针对 Series(非 Panel,非 Hierarchical)y 实现。

  • 返回的分布对象需要安装 skpro

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

如果 fh 被传入且之前未传入过,则将其存储到 self.fh

参数:
有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

如果 fh 不为 None 且不是 ForecastingHorizon 类型,则会在内部(通过 _check_fh)强制转换为 ForecastingHorizon 类型。

  • 如果 fh 是 int 或 int 的数组类型,则被解释为相对预测视野,并强制转换为相对的 ForecastingHorizon(fh, is_relative=True)

  • 如果 fhpd.Index 类型,则被解释为绝对预测视野,并强制转换为绝对的 ForecastingHorizon(fh, is_relative=False)

Xsktime 兼容格式的时间序列,可选(默认值=None)

在预测中使用的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

marginalbool(布尔值),可选(默认值=True)

返回的分布是否按时间索引是边际分布

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
pred_distskpro BaseDistribution

预测分布,如果 marginal=True,则按时间点是边际分布;如果 marginal=False 且方法已实现,则为联合分布。

predict_quantiles(fh=None, X=None, alpha=None)[source]#

计算/返回分位数预测值。

如果 alpha 是可迭代的,则将计算多个分位数。

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

如果 fh 被传入且之前未传入过,则将其存储到 self.fh

参数:
有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

如果 fh 不为 None 且不是 ForecastingHorizon 类型,则会在内部(通过 _check_fh)强制转换为 ForecastingHorizon 类型。

  • 如果 fh 是 int 或 int 的数组类型,则被解释为相对预测视野,并强制转换为相对的 ForecastingHorizon(fh, is_relative=True)

  • 如果 fhpd.Index 类型,则被解释为绝对预测视野,并强制转换为绝对的 ForecastingHorizon(fh, is_relative=False)

Xsktime 兼容格式的时间序列,可选(默认值=None)

在预测中使用的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

alphafloat(浮点数)或唯一浮点数的列表,可选(默认值=[0.05, 0.95])

计算分位数预测值的概率或概率列表。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
quantilespd.DataFrame
列具有多级索引:第一级是 fity 的变量名,

第二级是传递给函数的 alpha 值。

行索引是 fh,具有与实例级别相同的额外(上层)级别,

来自 fit 中看到的 y,如果 fit 中看到的 y 是 Panel 或 Hierarchical 类型。

条目是分位数预测值,对于列索引中的变量,

在第二级列索引中的分位数概率下,对应于行索引。

predict_residuals(y=None, X=None)[source]#

返回时间序列预测的残差。

将计算 y.index 处的预测残差。

如果在 fit 中必须传入 fh,则必须与 y.index 一致。如果 y 是一个 np.ndarray,并且在 fit 中没有传入 fh,则将在 range(len(y.shape[0]))fh 处计算残差。

所需状态

要求状态为“fitted”(已拟合)。如果已设置 fh,则必须与 y 的索引(pandas 或整数)对应。

访问 self 中的属性

以“_”结尾的拟合模型属性。 self.cutoff, self._is_fitted

将状态更改为“已拟合”。

无。

参数:
fh 存储到 self.fh

包含真实观测值的时间序列,用于计算残差。必须与 predict 的预期返回值具有相同的类型、维度和索引。

如果为 None,则使用目前为止看到的 y (self._y),特别是

  • 如果之前仅调用过一次 fit,则产生样本内残差

  • 如果 fit 需要 fh,则它必须指向 fity 的索引

Xsktime 兼容格式的时间序列,可选(默认值=None)

用于更新和预测的外生时间序列。应与 scitypeSeriesPanelHierarchical)与 fit 中的 y 相同。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须同时包含 fhy.index 的索引引用。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
y_ressktime 兼容数据容器格式的时间序列

fh 处的预测残差,与 fh 具有相同的索引。y_res 的类型与最近传入的 y 相同:SeriesPanelHierarchical scitype,格式相同(见上文)。

predict_var(fh=None, X=None, cov=False)[source]#

计算/返回方差预测值。

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

如果 fh 被传入且之前未传入过,则将其存储到 self.fh

参数:
有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

如果 fh 不为 None 且不是 ForecastingHorizon 类型,则会在内部(通过 _check_fh)强制转换为 ForecastingHorizon 类型。

  • 如果 fh 是 int 或 int 的数组类型,则被解释为相对预测视野,并强制转换为相对的 ForecastingHorizon(fh, is_relative=True)

  • 如果 fhpd.Index 类型,则被解释为绝对预测视野,并强制转换为绝对的 ForecastingHorizon(fh, is_relative=False)

Xsktime 兼容格式的时间序列,可选(默认值=None)

在预测中使用的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

covbool(布尔值),可选(默认值=False)

如果为 True,计算协方差矩阵预测。如果为 False,计算边际方差预测。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
pred_varpd.DataFrame,格式取决于 cov 变量
如果 cov=False
列名与在 fit/update 中传入的 y 的列名完全相同。

对于无名称格式,列索引将是 RangeIndex。

行索引是 fh,具有与实例级别相同的额外级别,

来自 fit 中看到的 y,如果 fit 中看到的 y 是 Panel 或 Hierarchical 类型。

条目是方差预测值,对于列索引中的变量。给定变量和 fh 索引的方差预测值是基于观测数据对该变量和索引的预测方差。

方差预测值,对于列索引中的变量。给定变量和 fh 索引的方差预测值是基于观测数据对该变量和索引的预测方差。

如果 cov=True
列索引是多级索引:第一级是变量名(同上)

第二级是 fh

行索引是 fh,具有与实例级别相同的额外级别,

来自 fit 中看到的 y,如果 fit 中看到的 y 是 Panel 或 Hierarchical 类型。

条目是(协)方差预测值,对于列索引中的变量,以及

行和列中的时间索引之间的协方差。

注意:不同变量之间不返回协方差预测值。

reset()[source]#

将对象重置为干净的初始化后状态。

self 设置为构造函数调用后的状态,保留相同的超参数。通过 set_config 设置的配置值也会保留。

reset 调用会删除任何对象属性,除了

  • 超参数 = 写入 self__init__ 参数,例如 self.paramname,其中 paramname__init__ 的参数

  • 包含双下划线的对象属性,即字符串“__”。例如,名为“__myattr”的属性会保留。

  • 配置属性,配置会保留不变。也就是说,reset 前后 get_config 的结果相同。

类方法、对象方法和类属性也不受影响。

等价于 clone,不同之处在于 reset 修改 self 而不是返回新对象。

调用 self.reset() 后,self 的值和状态与构造函数调用 type(self)(**self.get_params(deep=False)) 后获得的对象相同。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
要克隆的标签名称。默认值 (None) 克隆 estimator 中的所有标签。

类实例重置为干净的初始化后状态,但保留当前的超参数值。

save(path=None, serialization_format='pickle')[source]#

将序列化的 self 保存为字节类对象或 (.zip) 文件。

行为:如果 path 为 None,返回一个内存中的序列化 self;如果 path 是文件位置,则将 self 存储在该位置作为 zip 文件

保存的文件是 zip 文件,包含以下内容:_metadata - 包含 self 的类,即 type(self);_obj - 序列化的 self。此类使用默认序列化方法 (pickle)。

参数:
pathNone 或 文件位置 (str 或 Path)

如果为 None,则将 self 保存到内存对象中;如果是文件位置,则将 self 保存到该文件位置。例如,如果

  • path="estimator",则会在当前工作目录 (cwd) 创建一个 zip 文件 estimator.zip

  • path="/home/stored/estimator",则会在 /home/stored/ 目录下创建一个 zip 文件 estimator.zip

存储在 /home/stored/ 目录下。

serialization_formatstr(字符串),默认值 = “pickle”

用于序列化的模块。可用选项是“pickle”和“cloudpickle”。请注意,非默认格式可能需要安装其他软依赖项。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
如果 path 为 None - 内存中的序列化 self
如果 path 是文件位置 - 指向该文件的 ZipFile
score(y, X=None, fh=None)[source]#

使用 MAPE(非对称)评估预测值与真实值。

参数:
ypd.Series, pd.DataFrame, 或 np.ndarray (1D 或 2D)

要评分的时间序列

有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

fhint, list, pd.Index coercible, or ForecastingHorizon (not optional)

Xpd.DataFrame 或 2D np.array,可选(默认值=None)

用于评分的外生时间序列。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 y.index

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
scorefloat(浮点数)

self.predict(fh, X) 相对于 y_test 的 MAPE 损失。

set_config(**config_dict)[source]#

将配置标志设置为给定值。

参数:
config_dictdict(字典)

配置名称 : 配置值 对的字典。有效的配置项、值及其含义如下所列

displaystr(字符串),“diagram”(图示,默认值)或“text”(文本)

jupyter kernel 如何显示 self 的实例

  • “diagram” = html 盒子图表示

  • “text” = 字符串打印输出

print_changed_onlybool(布尔值),默认值=True

打印 self 时是仅列出与默认值不同的 self 参数 (False),还是列出所有参数名称和值 (False)。不嵌套,即仅影响 self,不影响组件评估器。

warningsstr(字符串),“on”(开启,默认值)或“off”(关闭)

是否引发警告,仅影响来自 sktime 的警告

  • “on” = 将引发来自 sktime 的警告

  • “off” = 将不引发来自 sktime 的警告

backend:parallelstr(字符串),可选,默认值=”None”

广播/向量化时使用的并行化后端,以下之一:

  • “None”:顺序执行循环,简单的列表推导式

  • “loky”、“multiprocessing” 和 “threading”:使用 joblib.Parallel

  • “joblib”:自定义和第三方 joblib 后端,例如 spark

  • “dask”:使用 dask,需要在环境中安装 dask

  • “ray”:使用 ray,需要在环境中安装 ray

backend:parallel:paramsdict(字典),可选,默认值={}(不传递参数)

作为配置传递给并行化后端的额外参数。有效键取决于 backend:parallel 的值

  • “None”:无额外参数,backend_params 被忽略

  • “loky”、“multiprocessing” 和 “threading”:默认的 joblib 后端,此处可以传递 joblib.Parallel 的任何有效键,例如 n_jobs,但 backend 除外,它直接由 backend 控制。如果未传递 n_jobs,它将默认为 -1,其他参数将使用 joblib 的默认值。

  • “joblib”:自定义和第三方 joblib 后端,例如 spark。此处可以传递 joblib.Parallel 的任何有效键,例如 n_jobs,在此情况下,backend 必须作为 backend_params 的一个键传入。如果未传递 n_jobs,它将默认为 -1,其他参数将使用 joblib 的默认值。

  • “dask”:可以传递 dask.compute 的任何有效键,例如 scheduler

  • “ray”:可以传递以下键

    • “ray_remote_args”:ray.init 的有效键字典

    • “shutdown_ray”:bool(布尔值),默认值=True;False 会阻止 ray 在并行化后关闭。

      关闭。

    • “logger_name”:str(字符串),默认值=”ray”;要使用的 logger 名称。

    • “mute_warnings”:bool(布尔值),默认值=False;如果为 True,则抑制警告。

remember_databool(布尔值),默认值=True

fit 中是否存储 self._Xself._y,并在 update 中更新。如果为 True,则存储并更新 self._Xself._y。如果为 False,则不存储和更新 self._Xself._y。这在使用 save 时减小序列化大小,但 update 将默认为“不执行任何操作”,而不是“重新拟合所有已见数据”。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
self对 self 的引用。

注意

改变对象状态,将 config_dict 中的配置复制到 self._config_dynamic

set_params(**params)[source]#

设置此对象的参数。

此方法适用于简单的 skbase 对象以及复合对象。对于复合对象(即包含其他对象的对象),可以使用参数键字符串 <component>__<parameter> 来访问组件 <component> 中的 <parameter>。如果引用明确,例如不存在两个具有相同名称 <parameter> 的组件参数,也可以使用不带 <component>__ 的字符串 <parameter>

参数:
**paramsdict(字典)

BaseObject 参数,键必须是 <component>__<parameter> 字符串。如果 get_params 键中是唯一的,“__” 后缀可以作为完整字符串的别名。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
self对 self 的引用(参数设置后)
set_random_state(random_state=None, deep=True, self_policy='copy')[source]#

为 self 设置 random_state 伪随机种子参数。

通过 self.get_params 查找名为 random_state 的参数,并使用通过 sample_dependent_seedrandom_state 派生出的整数来设置它们。这些整数通过链式哈希从 sample_dependent_seed 采样得到,保证了种子随机生成器的伪随机独立性。

适用于 self 中的 random_state 参数(取决于 self_policy),并且仅当 deep=True 时适用于其余组件对象。

注意:即使 self 没有 random_state 参数,或者任何组件都没有 random_state 参数,也会调用 set_params。因此,set_random_state 将重置任何 scikit-base 对象,即使是没有 random_state 参数的对象。

参数:
random_stateint(整数),RandomState 实例或 None,默认值=None

伪随机数生成器,用于控制随机整数的生成。传入整数可确保多次函数调用之间的输出可重现。

deepbool(布尔值),默认值=True

是否在 skbase 对象值参数(即组件评估器)中设置随机状态。

  • 如果为 False,则仅设置 self 的 random_state 参数(如果存在)。

  • 如果为 True,则也会设置组件对象中的 random_state 参数。

self_policystr(字符串),以下之一 {“copy”, “keep”, “new”},默认值=”copy”
  • “copy”:self.random_state 设置为输入的 random_state

  • “keep”:self.random_state 保持不变

  • “new”:self.random_state 设置为新的随机状态,

从输入的 random_state 派生,通常与它不同

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
self对 self 的引用
set_tags(**tag_dict)[source]#

将实例级标签覆盖设置为给定值。

classmethod get_class_tag(tag_name, tag_value_default=None)[source]#

标签是特定于实例 self 的键值对,它们是对象构造后不会改变的静态标志。它们可用于元数据检查或控制对象行为。

set_tags 将动态标签覆盖设置为 tag_dict 中指定的值,其中键是标签名称,字典值是要设置的标签值。

set_tags 方法应仅在对象的 __init__ 方法中(构造期间)或通过 __init__ 构造后直接调用。

tag_names 的默认行为是将 estimator 的所有标签写入 self

参数:
**tag_dictdict(字典)

标签名称 : 标签值 对的字典。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
Self

对 self 的引用。

update(y, X=None, update_params=True)[source]#

更新截止值,并可选地更新已拟合的参数。

如果未实现特定于评估器的 update 方法,则默认回退行为如下:

  • update_params=True:对目前为止的所有观测数据进行拟合

  • update_params=False:仅更新截止点并记住数据

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

将状态更改为“已拟合”。

  • self.cutoff 更新为 y 中看到的最新索引。

  • 如果 update_params=True,则更新以“_”结尾的拟合模型属性。

参数:
如果传递了 fh,则将 fh 存储到 self.fh

用于更新预测器的时间序列。

要拟合预测器的时间序列。

  • sktime 中的独立数据格式是所谓的 mtype 规范,每种 mtype 都实现了一个抽象的 scitype

  • Series scitype = 独立时间序列,普通预测。pd.DataFrame`, pd.Series,或 np.ndarray (1D 或 2D)

  • Panel scitype = 时间序列集合,全局/面板预测。pd.DataFrame 带 2 级行 MultiIndex (实例, 时间), 3D np.ndarray (实例, 变量, 时间), list 类型的 Seriespd.DataFrame

Hierarchical scitype = 分层集合,用于分层预测。pd.DataFrame 带 3 级或更多级行 MultiIndex (层级_1, ..., 层级_n, 时间)

编码要预测的时间戳的预测范围。如果 self.get_tag("requires-fh-in-fit")True,则必须在 fit 中传递,不是可选的。

用于更新模型拟合的外生时间序列。应与 scitypeSeriesPanelHierarchical)与 y 相同。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 y.index

update_paramsbool(布尔值),可选(默认值=True)

是否应更新模型参数。如果为 False,则仅更新截止点,模型参数(例如,系数)不更新。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
self对 self 的引用
update_predict(y, cv=None, X=None, update_params=True, reset_forecaster=True)[source]#

在测试集上迭代地进行预测并更新模型。

进行多次 update / predict 执行链的简写,数据回放基于时间分割器 cv

与以下操作相同(如果只有 ycv 非默认值)

  1. self.update(y=cv.split_series(y)[0][0])

  2. 记住 self.predict() 的结果(稍后在单个批次中返回)

  3. self.update(y=cv.split_series(y)[1][0])

  4. 记住 self.predict() 的结果(稍后在单个批次中返回)

  5. 等等

  6. 返回所有记住的预测值

如果未实现特定于评估器的 update 方法,则默认回退行为如下:

  • update_params=True:对目前为止的所有观测数据进行拟合

  • update_params=False:仅更新截止点并记住数据

所需状态

要求状态为“fitted”(已拟合),即 self.is_fitted=True

访问 self 中的属性

  • 以“_”结尾的拟合模型属性。

  • self.cutoff, self.is_fitted

写入 self(除非 reset_forecaster=True
  • self.cutoff 更新为 y 中看到的最新索引。

  • 如果 update_params=True,则更新以“_”结尾的拟合模型属性。

如果 reset_forecaster=True,则不更新状态。

参数:
如果传递了 fh,则将 fh 存储到 self.fh

用于更新预测器的时间序列。

要拟合预测器的时间序列。

  • sktime 中的独立数据格式是所谓的 mtype 规范,每种 mtype 都实现了一个抽象的 scitype

  • Series scitype = 独立时间序列,普通预测。pd.DataFrame`, pd.Series,或 np.ndarray (1D 或 2D)

  • Panel scitype = 时间序列集合,全局/面板预测。pd.DataFrame 带 2 级行 MultiIndex (实例, 时间), 3D np.ndarray (实例, 变量, 时间), list 类型的 Seriespd.DataFrame

Hierarchical scitype = 分层集合,用于分层预测。pd.DataFrame 带 3 级或更多级行 MultiIndex (层级_1, ..., 层级_n, 时间)

cv继承自 BaseSplitter 的时间交叉验证生成器,可选

例如,SlidingWindowSplitterExpandingWindowSplitter;默认值 = 带有 initial_window=1 的 ExpandingWindowSplitter 以及默认值 = y/X 中的单个数据点被逐个添加和预测,initial_window = 1step_length = 1fh = 1

Xsktime 兼容格式的时间序列,可选(默认值=None)

用于更新和预测的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

update_paramsbool(布尔值),可选(默认值=True)

是否应更新模型参数。如果为 False,则仅更新截止点,模型参数(例如,系数)不更新。

reset_forecasterbool(布尔值),可选(默认值=True)
  • 如果为 True,将不会改变预测器的状态,即 update/predict 序列使用副本运行,self 的截止点、模型参数、数据内存都不会改变

  • 如果为 False,当 update/predict 序列运行时,将更新 self,就像直接调用 update/predict 一样

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
y_pred汇总来自多个分割批次的点预测的对象

格式取决于整体预测的(截止点,绝对预测视野)对

  • 如果绝对预测视野点集合是唯一的:类型是 sktime 兼容数据容器格式的时间序列,输出中省略了截止点;类型与最近传入的 y 相同:Series, Panel, Hierarchical scitype, 格式相同(见上文)

  • 如果绝对预测视野点集合不唯一:类型是 pandas DataFrame,行和列索引都是时间戳;行索引对应于进行预测的截止点;列索引对应于预测的绝对预测视野;条目是根据行索引预测的列索引的点预测值;如果在该(截止点,预测视野)对处没有进行预测,则条目为 nan。

update_predict_single(y=None, fh=None, X=None, update_params=True)[source]#

使用新数据更新模型并进行预测。

此方法对于一步完成更新和预测很有用。

如果未实现特定于评估器的 update 方法,则默认回退行为是先 update,然后 predict。

所需状态

要求状态为“fitted”(已拟合)。

访问 self 中的属性

以“_”结尾的拟合模型属性。指向已见数据的指针,self._yself.X self.cutoff, self._is_fitted 如果 update_params=True,则更新以“_”结尾的模型属性。

将状态更改为“已拟合”。

通过附加行,使用 yX 更新 self._yself._X。将 self.cutoffself._cutoff 更新为在 y 中看到的最后一个索引。如果 update_params=True

更新以“_”结尾的拟合模型属性。

参数:
如果传递了 fh,则将 fh 存储到 self.fh

用于更新预测器的时间序列。

要拟合预测器的时间序列。

  • sktime 中的独立数据格式是所谓的 mtype 规范,每种 mtype 都实现了一个抽象的 scitype

  • Series scitype = 独立时间序列,普通预测。pd.DataFrame`, pd.Series,或 np.ndarray (1D 或 2D)

  • Panel scitype = 时间序列集合,全局/面板预测。pd.DataFrame 带 2 级行 MultiIndex (实例, 时间), 3D np.ndarray (实例, 变量, 时间), list 类型的 Seriespd.DataFrame

Hierarchical scitype = 分层集合,用于分层预测。pd.DataFrame 带 3 级或更多级行 MultiIndex (层级_1, ..., 层级_n, 时间)

有关数据格式的更多详细信息,请参阅 mtype 术语表。有关用法,请参阅预测教程 examples/01_forecasting.ipynb

编码要预测的时间戳的预测视野。如果在 fit 中已传入,则不应再次传入。如果在 fit 中未传入,则必须传入,不可选。

Xsktime 兼容格式的时间序列,可选(默认值=None)

用于更新和预测的外生时间序列。应与 fit 中的 y 具有相同的 scitype(SeriesPanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index") 为 True,则 X.index 必须包含 fh 的索引引用。

update_paramsbool(布尔值),可选(默认值=True)

是否应更新模型参数。如果为 False,则仅更新截止点,模型参数(例如,系数)不更新。

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则将返回 "default" 集。目前预测器没有保留值。
用于预测的外生时间序列。如果传递,将用于预测而不是 X。应与 fit 中的 y 具有相同的 scitype(Series, PanelHierarchical)。如果 self.get_tag("X-y-must-have-same-index"),则 X.index 必须包含 fh 索引引用。

y_predsktime 兼容数据容器格式的时间序列