holt_linear_smoothing

holt_linear_smoothing(obs: Tensor, level: Tensor | None, trend: Tensor | None, *, alpha: float | int | complex | Tensor, beta: float | int | complex | Tensor) tuple[Tensor, Tensor | None][source]

Performs Holt linear smoothing for a time step.

\[\begin{split}\begin{align*} s_0 &= x_0 \\ b_0 &= x_1 - x_0 \\ s_{t + 1} &= \alpha x_{t + 1} + (1 - \alpha) s_t \\ b_{t + 1} &= \beta (s_{t + 1} - s_t) + (1 - \beta) b_t \end{align*}\end{split}\]
Parameters:
Returns:

tuple containing output/updated state:

level: revised exponentially smoothed level.

trend: revised exponentially smoothed trend.

Return type:

tuple[torch.Tensor, torch.Tensor | None]