statsmodels.tsa.statespace.tools.constrain_stationary_multivariate

statsmodels.tsa.statespace.tools.constrain_stationary_multivariate(unconstrained, variance, transform_variance=False, prefix=None)[source]

将优化器使用的无约束参数转换为向量自回归似然评估中使用的约束参数。

Parameters:
unconstrainedarray or list

要转换为VAR的平稳系数矩阵的任意矩阵。如果是一个列表,应该是一个长度为order的列表,其中每个元素是一个大小为k_endog x k_endog的数组。如果是一个数组,应该是矩阵水平连接并大小为k_endog x k_endog * order

error_variancendarray

误差项的方差/协方差矩阵。应为k_endog x k_endog大小。即使不被算法转换(当transform_variance为False时),它也作为输入使用。当使用转换来强制自回归分量平稳或强制移动平均分量可逆时,误差项方差是必需的输入。

transform_variancebool, optional

是否转换误差方差项。此选项通常不使用,默认值为False。

prefix{‘s’,’d’,’c’,’z’}, optional

适用于传递数据类型的适当BLAS前缀。只有在绝对确定前缀正确的情况下才使用,否则会导致错误。

Returns:
constrainedarray or list

转换后的系数矩阵导致平稳的VAR表示。将匹配传递的无约束变量的类型(因此如果传递的是列表,则返回的也是列表)。

注释

[1]的表示法中,参数(方差, 无约束)被写为\((\Sigma, A_1, \dots, A_p)\),其中\(p\)是向量自回归的阶数,并且在这里由无约束参数的长度决定。

约束算法有两个步骤。

首先,\((A_1, \dots, A_p)\) 通过 [1] 的引理 2.2 转换为 \((P_1, \dots, P_p)\)

其次,\((\Sigma, P_1, \dots, P_p)\) 通过 [1] 的引理 2.1 和 2.3 转换为 \((\Sigma, \phi_1, \dots, \phi_p)\)

如果transform_variance=True,那么在第二步中仅应用引理2.1。

虽然此函数在单变量情况下也可以使用,但它会更慢,因此在那种情况下,首选constrain_stationary_univariate

参考文献

[1] (1,2,3)

安斯利, 克雷格·F., 和罗伯特·科恩. 1986. “关于重新参数化向量自回归移动平均模型以强制平稳性的注记.” 统计计算与模拟杂志 24 (2): 99-106.


Last update: Oct 16, 2024