From 244ff38c727633f8ab5a67ee24444461fc6d3954 Mon Sep 17 00:00:00 2001 From: Mohit Date: Thu, 5 Dec 2024 02:04:35 +0530 Subject: [PATCH] Add Bayesian VAR(2) example script #1658 (#1915) * Add Bayesian VAR(2) example script * Added index with thumbnail * Fix Linting issues * Apply ruff formatting to examples/var2.py * Added header * Added Header * Added Header * Added header * shape fixed and added event * Added dim and event --- docs/source/_static/img/examples/var2.png | Bin 0 -> 130970 bytes docs/source/index.rst | 1 + examples/var2.py | 216 ++++++++++++++++++++++ 3 files changed, 217 insertions(+) create mode 100644 docs/source/_static/img/examples/var2.png create mode 100644 examples/var2.py diff --git a/docs/source/_static/img/examples/var2.png b/docs/source/_static/img/examples/var2.png new file mode 100644 index 0000000000000000000000000000000000000000..3d56d03f464a1c92248e76e22cb0e9a8cb966fd4 GIT binary patch literal 130970 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
uKveR^CQYRoc`g5J2I&_jSL(g6DCyeCS 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 literal 0 HcmV?d00001 diff --git a/docs/source/index.rst b/docs/source/index.rst index 9dbe058e1..367cb45e0 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -83,6 +83,7 @@ NumPyro documentation examples/zero_inflated_poisson examples/cvae tutorials/tbip + examples/var2 .. nbgallery:: :maxdepth: 1 diff --git a/examples/var2.py b/examples/var2.py new file mode 100644 index 000000000..0e5e9864d --- /dev/null +++ b/examples/var2.py @@ -0,0 +1,216 @@ +# Copyright Contributors to the Pyro project. +# SPDX-License-Identifier: Apache-2.0 + +r""" +Example: VAR(2) process +======================= + +In this example, we demonstrate how to implement and perform Bayesian inference for a +Vector Autoregressive process of order 2 (VAR(2)). VAR models are widely used in +time series analysis, especially for capturing the dynamics between multiple variables. + +A VAR(2) process for a multivariate time series :math:`y_t` with :math:`K` variables is defined as: + +.. math:: + + y_t = c + \Phi_1 y_{t-1} + \Phi_2 y_{t-2} + \epsilon_t + +Here, :math:`c` is a constant vector, :math:`\Phi_1` and :math:`\Phi_2` are coefficient matrices for lag 1 +and lag 2, respectively, and :math:`\epsilon_t` is a Gaussian noise term with zero mean and a +covariance matrix :math:`\Sigma`. + +This example uses NumPyro's `scan` utility to efficiently model the temporal dependencies without +explicit Python loops. + +For more general time series forecasting techniques and examples, refer to the +`Time Series Forecasting` tutorial: +https://num.pyro.ai/en/stable/tutorials/time_series_forecasting.html#Forecasting + +Reference +--------- +For more information on Vector Autoregressive models, see: +https://otexts.com/fpp2/VAR.html + +.. image:: ../_static/img/examples/var2.png + :align: center +""" + +import argparse +import os +import time + +import matplotlib.pyplot as plt +import numpy as np + +from jax import random +import jax.numpy as jnp + +import numpyro +from numpyro.contrib.control_flow import scan +import numpyro.distributions as dist + + +def var2_scan(y): + T, K = y.shape # Number of time steps and number of variables + + # Priors for constants and coefficients + c = numpyro.sample("c", dist.Normal(0, 1).expand([K])) # Constants vector of size K + Phi1 = numpyro.sample( + "Phi1", dist.Normal(0, 1).expand([K, K]).to_event(2) + ) # Coefficients for lag 1 + Phi2 = numpyro.sample( + "Phi2", dist.Normal(0, 1).expand([K, K]).to_event(2) + ) # Coefficients for lag 2 + + # Priors for error terms + sigma = numpyro.sample("sigma", dist.HalfNormal(1.0).expand([K]).to_event(1)) + L_omega = numpyro.sample( + "L_omega", dist.LKJCholesky(dimension=K, concentration=1.0) + ) + L_Sigma = ( + sigma[..., None] * L_omega + ) # Alternative: jnp.einsum("...i,...ij->...ij", sigma, L_omega) + + def transition(carry, t): + y_prev1, y_prev2, y_obs = carry # Previous two observations and observed data + m_t = c + jnp.dot(Phi1, y_prev1) + jnp.dot(Phi2, y_prev2) # Mean prediction + # Conditioned on observed y + y_t = numpyro.sample( + f"y_{t}", + dist.MultivariateNormal(loc=m_t, scale_tril=L_Sigma), + obs=y_obs[t], + ) + new_carry = (y_t, y_prev1, y_obs) + return new_carry, m_t + + # Initial carry: observations at time steps 1 and 0 + init_carry = (y[1], y[0], y[2:]) + + # Time indices starting from time step 2 + time_indices = jnp.arange(T - 2) + + # Run the scan + _, mu = scan(transition, init_carry, time_indices) + + # Store the mean trajectory as a deterministic variable + numpyro.deterministic("mu", mu) + + +def generate_var2_data(T, K, c, Phi1, Phi2, sigma): + """ + Generate time series data from a VAR(2) process. + Args: + T (int): Number of time steps. + K (int): Number of variables in the time series. + c (array): Constants (shape: (K,)). + Phi1 (array): Coefficients for lag 1 (shape: (K, K)). + Phi2 (array): Coefficients for lag 2 (shape: (K, K)). + sigma (array): Covariance matrix for the noise (shape: (K, K)). + Returns: + np.ndarray: Generated time series data (shape: (T, K)). + """ + # Initialize time series with random values + y = np.zeros((T, K)) + y[:2] = np.random.multivariate_normal(mean=np.zeros(K), cov=sigma, size=2) + + # Generate the time series + for t in range(2, T): + y[t] = ( + c + + Phi1 @ y[t - 1] + + Phi2 @ y[t - 2] + + np.random.multivariate_normal(mean=np.zeros(K), cov=sigma) + ) + + return y + + +def run_inference(model, args, rng_key, y): + """ + Run MCMC inference for the given model. + Args: + model: The probabilistic model to infer. + args: Command-line arguments. + rng_key: PRNG key for randomness. + y: Observed time series data. + """ + start = time.time() + sampler = numpyro.infer.NUTS(model) + mcmc = numpyro.infer.MCMC( + sampler, + num_warmup=args.num_warmup, + num_samples=args.num_samples, + num_chains=args.num_chains, + progress_bar=False if "NUMPYRO_SPHINXBUILD" in os.environ else True, + ) + mcmc.run(rng_key, y=y) + mcmc.print_summary() + print("\nMCMC elapsed time:", time.time() - start) + return mcmc.get_samples() + + +def main(args): + # Generate artificial dataset + T = args.num_data # Number of time steps + K = 2 # Number of variables + c_true = jnp.array([0.5, -0.3]) # Constants + Phi1_true = jnp.array([[0.7, 0.1], [0.2, 0.5]]) # Coefficients for lag 1 + Phi2_true = jnp.array([[0.2, -0.1], [-0.1, 0.2]]) # Coefficients for lag 2 + sigma_true = jnp.array([[0.1, 0.02], [0.02, 0.1]]) # Covariance matrix + + rng_key = random.PRNGKey(0) + y = generate_var2_data(T, K, c_true, Phi1_true, Phi2_true, sigma_true) + + # Perform inference + samples = run_inference(var2_scan, args, rng_key, y) + + # Prediction + mean_prediction = samples["mu"].mean(axis=0) + lower_bound = jnp.percentile(samples["mu"], 2.5, axis=0) # 2.5th percentile + upper_bound = jnp.percentile(samples["mu"], 97.5, axis=0) # 97.5th percentile + + # Plot results + fig, axes = plt.subplots(K, 1, figsize=(10, 6), sharex=True) + time_steps = jnp.arange(T) + + for i in range(K): + # True values + axes[i].plot(time_steps, y[:, i], label=f"True Variable {i + 1}", color="blue") + # Posterior mean prediction + axes[i].plot( + time_steps[2:], + mean_prediction[:, i], + label=f"Predicted Mean Variable {i + 1}", + color="orange", + ) + # 95% confidence interval + axes[i].fill_between( + time_steps[2:], + lower_bound[:, i], + upper_bound[:, i], + color="orange", + alpha=0.2, + label="95% CI", + ) + axes[i].set_title(f"Variable {i + 1}") + axes[i].legend() + axes[i].grid(True) + + plt.xlabel("Time Steps") + plt.tight_layout() + plt.savefig("var2.png") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="VAR(2) example") + parser.add_argument("--num-data", nargs="?", default=100, type=int) + parser.add_argument("-n", "--num-samples", nargs="?", default=1000, type=int) + parser.add_argument("--num-warmup", nargs="?", default=1000, type=int) + parser.add_argument("--num-chains", nargs="?", default=1, type=int) + parser.add_argument("--device", default="cpu", type=str, help='use "cpu" or "gpu".') + args = parser.parse_args() + + numpyro.set_platform(args.device) + numpyro.set_host_device_count(args.num_chains) + + main(args)