pymc.AR#
- class pymc.AR(name, rho, *args, steps=None, constant=False, ar_order=None, **kwargs)[源代码]#
具有 p 个滞后的自回归过程。
\[x_t = \rho_0 + \rho_1 x_{t-1} + \ldots + \rho_p x_{t-p} + \epsilon_t, \epsilon_t \sim N(0,\sigma^2)\]创新可以用精度或标准差来参数化。这两种参数化之间的联系由以下公式给出:
\[\tau = \dfrac{1}{\sigma^2}\]- 参数:
- rho : 类似张量 的
float
tensor_like offloat
自回归系数的张量。最后一个维度中的第 n 个条目是第 n 个滞后的系数。
- sigma : 类似张量 的
float
,默认值为 1tensor_like of python:float, 默认值为 1 创新的标准差(sigma > 0)。仅在未指定tau时需要。
- tau : 类似张量 的
float
, 可选tensor_like 的 python:float, 可选 创新的精确性(tau > 0)。
- 常量 : 布尔值,默认值
False
bool, 默认 python:False 是否在AR过程中使用rho的第一个元素作为常数项。
- init_dist : 未命名分布, 可选unnamed_distribution, 可选
标量或向量分布用于初始值。分布应具有形状 (*shape[:-1], ar_order)。如果不是,将自动调整大小。默认为 pm.Normal.dist(0, 100, shape=…)。
警告
init_dist 将被克隆,使其独立于作为输入传递的那个。
- ar_order :
int
, 可选python:int, 可选 AR 过程的顺序。如果可能,根据 rho 的最后一个维度的长度推断。ar_order = rho.shape[-1] if constant else rho.shape[-1] - 1
- 步数 :
int
, 可选python:int, 可选 AR 过程中的步骤数(步骤 > 0)。仅在未提供形状时需要。
- rho : 类似张量 的
注释
初始化分布将被克隆,使其与作为输入传递的分布不同。
示例
# Create an AR of order 3, with a constant term with pm.Model() as AR3: # The first coefficient will be the constant term coefs = pm.Normal("coefs", 0, size=4) # We need one init variable for each lag, hence size=3 init = pm.Normal.dist(5, size=3) ar3 = pm.AR("ar3", coefs, sigma=1.0, init_dist=init, constant=True, steps=500)
方法
AR.dist
(rho[, sigma, tau, init_dist, steps, ...])创建一个与 cls 分布相对应的张量变量。