%\documentclass{uai2022} % for initial submission
\documentclass[accepted]{uai2022} % after acceptance, for a revised
                                    % version; also before submission to
                                    % see how the non-anonymous paper
                                    % would look like
%% There is a class option to choose the math font
% \documentclass[mathfont=ptmx]{uai2022} % ptmx math instead of Computer
                                         % Modern (has noticable issues)
% \documentclass[mathfont=newtx]{uai2022} % newtx fonts (improves upon
                                          % ptmx; less tested, no support)
% NOTE: Only keep *one* line above as appropriate, as it will be replaced
%       automatically for papers to be published. Do not make any other
%       change above this note for an accepted version.

%% Choose your variant of English; be consistent
\usepackage[american]{babel}
% \usepackage[british]{babel}

%% Some suggested packages, as needed:
\usepackage[square]{natbib} % has a nice set of citation styles and commands
    \bibliographystyle{plainnat}
    \renewcommand{\bibsection}{\subsubsection*{References}}
\usepackage{mathtools} % amsmath with fixes and additions
% \usepackage{siunitx} % for proper typesetting of numbers and units
\usepackage{booktabs} % commands to create good-looking tables
\usepackage{tikz} % nice language for creating drawings and diagrams


%Additional packages
\usepackage{setspace}
\usepackage{algorithm}% http://ctan.org/pkg/algorithms
\usepackage{algpseudocode}% http://ctan.org/pkg/algorithmicx
\usepackage{amsmath}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\usepackage{graphicx}
\usepackage{float}
\usepackage{subfig}
\usepackage{lscape}
\usepackage{hyperref}

\usepackage{url}
\usepackage{listings}
%\usepackage{minted}

\usepackage{caption}
%\usepackage{subcaption}
%\usepackage{subfigure}

\setlength{\abovedisplayskip}{0pt}
\setlength{\belowdisplayskip}{0pt}


%\usepackage{nameref,zref-xr}
%\zxrsetup{toltxlabel}
%\zexternaldocument*{deng_594-supp}

\usepackage{xr}
\makeatletter
\newcommand*{\addFileDependency}[1]{% argument=file name and extension
  \typeout{(#1)}
  \@addtofilelist{#1}
  \IfFileExists{#1}{}{\typeout{No file #1.}}
}
\makeatother

\newcommand*{\myexternaldocument}[1]{%
    \externaldocument{#1}%
    \addFileDependency{#1.tex}%
    \addFileDependency{#1.aux}%
}

\myexternaldocument{deng_594-supp}
%% Provided macros
% \smaller: Because the class footnote size is essentially LaTeX's \small,
%           redefining \footnotesize, we provide the original \footnotesize
%           using this macro.
%           (Use only sparingly, e.g., in drawings, as it is quite small.)
%% Self-defined macros
%\newcommand{\swap}[3][-]{#3#1#2} % just an example

\title{Bayesian Spillover Graphs for Dynamic Networks}

% The standard author block has changed for UAI 2022 to provide
% more space for long author lists and allow for complex affiliations
%
% All author information is authomatically removed by the class for the
% anonymous submission version of your paper, so you can already add your
% information below.
%
% Add authors
\author[1]{{Grace Deng}}
\author[1]{{David S.\ Matteson}}
\affil[1]{%
    Department of Statistics \& Data Science\\
    Cornell University\\
    Ithaca, NY, USA
}

\begin{document}
\maketitle

\begin{abstract}
 We present Bayesian Spillover Graphs (BSG), a novel method for learning temporal relationships, identifying critical nodes, and quantifying uncertainty for multi-horizon spillover effects in a dynamic system. BSG leverages both an interpretable framework via forecast error variance decompositions (FEVD) and comprehensive uncertainty quantification via Bayesian time series models to contextualize temporal relationships in terms of systemic risk and prediction variability. Forecast horizon hyperparameter $h$ allows for learning both short-term and equilibrium state network behaviors. Experiments for identifying source and sink nodes under various graph and error specifications show significant performance gains against state-of-the-art Bayesian Networks and deep-learning baselines. Applications to real-world systems also showcase BSG as an exploratory analysis tool for uncovering indirect spillovers and quantifying systemic risk.
\end{abstract}


\section{Introduction}
%Whats the problem
We consider the task of learning temporal interactions and important components over time in a dynamic network. Many real-world systems can be described by a multivariate time series (MTS) and a natural framework for analyzing temporal relationships is Granger causality \citep{granger1969investigating}, which tests for whether one time series is useful for forecasting another one. Network Granger causality (NGC) \citep{basu2015network} extends this concept into the multivariate setting. NGC is useful for identifying one-step ahead predictive relationships within a system, and may be considered causal under very specific conditions \citep{pearl2000models}.

%What's been done
Many methods have been developed to estimate NGC. Vector Autoregression (VAR) \citep{sims1980} and its variants \citep{lutkepohl2005new} remain a standard-bearer for macroeconomics and financial forecasting. Bayesian networks \citep{pearl2011bayesian, ben2008bayesian} are also a powerful collection of probabilistic graph models for learning NGC, usually via a directed acyclic graph (DAG). Dynamic Bayesian Networks (DBN) \citep{murphy2002dynamic} are particularly useful for modeling state changes and temporal structure learning, although it is restricted by acyclic representations. Alternative methods for estimating NGC adjacency matrices use deep learning variants, e.g., attention networks \citep{nauta2019causal}, Statistical Recurrent Units (SRU) \citep{khanna2019economy}, and sparse RNNs \citep{tank2018neural}.  Recently, Generalized Vector Autoregression (GVAR) \citep{marcinkevics2021interpretable}, which utilizes Self-explaining Neural Nets (SENN), also proposed aggregating model coefficients over lagged time series to estimate signs of NGC in addition to edge detection.

%Why it doesn't work
However, NGC has several drawbacks. First, it is not designed to capture cumulative interactions or multi-step ahead effects that evolve over longer forecast horizons \citep{marcinkevics2021interpretable}, which may be particularly important in forecasting or inference for real-world systems \citep{diebold2014network, billio2012econometric}. Spillovers, in particular, is an interesting subset of temporal relationships (graph edges) that can materialize beyond 1-step ahead forecasts \citep{diebold2015financial} in the context of forecast variability and network connectivity. Furthermore, indirect spillovers between components can also manifest via intermediary nodes despite having no direct link via NGC.  Estimating NGC via DAG constraints are hence not representative of true network interactions, which can be self-directed, bi-directional, or cyclic over time. Prior NGC methods also do not quantify strengths of temporal relationships \citep{marcinkevics2021interpretable} nor provide ample interpretation for related graph measures. Identification of important
nodes relies on standard graph theory metrics \citep{PhysRevE.79.061916, yusoff2016identifying} such as eigen-centrality \citep{bonacich1987power} or in/out degrees \citep{freeman1978centrality}. These metrics are also static point estimates based on NGC graphs. And although methods such as GVAR offer sign estimation for temporal relationships, the actual coefficient values (edge weights) are not necessarily meaningful.



\begin{figure}[h]
    \centering
    \includegraphics[width=0.49\textwidth]{images/mbsg_overview_v2.png}
    \caption{Comparison of BSG vs. Prior NGC Methods. BSG combines Bayesian VAR estimation with interpretable FEVD framework over forecast horizons $h$ to quantify strength of temporal interactions (BSG edge weights) and systemically important nodes over time.}
    \label{fig:mbsg_overview}
\end{figure}

%What we're gonna do
To summarize, the major drawbacks of current methods are (1) lack of flexibility for observing network interactions over multiple forecast horizons, (2) lack of interpretable network measures that are contextualized, (3) and lack of uncertainty quantification for strength of temporal relationships and node influence. To this end, a promising solution is to leverage forecast error variance decomposition (FEVD) from classic time series forecasting, which estimates the temporal effect of shocks to individual nodes in the system \citep{barbaglia2020volatility, tsay2013multivariate, diebold2015financial}, and Bayesian VAR models \citep{rossi2012bayesian, koop2010bayesian} which provide comprehensive uncertainty quantification.

In particular, the formulae behind FEVD is a cornerstone of classic multivariate time series analysis when we are interested in relationships between time series components. It is commonly cited as (generalized) impulse response functions in statistical literature and multiplier analysis in economic literature \citep{tsay2013multivariate}, and key applications include quantifying the effect of one time series component over forecast horizons, a key advantage over NGC. Under careful assumptions and conditions, it can also be a viable causal inference tool to analyze impact of specific policies \citep{swanson1997impulse}. The idea of standardizing FEVD as a measure of risk and connectivity has been motivated by macroeconomic and financial applications \citep{diebold2015financial, barbaglia2020volatility}.

Formally, we define spillovers as the predicted impact of one component on all other components in a dynamic network with respect to forecast variability and forecast horizon $h$. Intuitively, we are learning how unexpected shocks in one component cascades throughout the network to all other components, as well as examining how this impact evolves over time. Statistically, we can estimate $h$-step ahead spillovers based on normalized FEVD for one-step ahead forecasts and beyond after parameter estimation via Bayesian VAR; interpretation of resulting spillover effects is then contextualized by the input time series while also accounting for parameter estimation variability.

\noindent \textbf{Motivation.}
We present Bayesian Spillover Graph (BSG) for analyzing temporal interactions over multiple forecast horizons, identification of systemic influential and at-risk nodes, and uncertainty quantification for novel network measures with interpretation beyond simple NGC. BSG is both a powerful exploratory data analysis and inference tool; key contributions include:

\begin{enumerate}[topsep=0pt,itemsep=0ex,partopsep=1ex,parsep=0ex]
    \item We model temporal relationships in a dynamic system based on a single observed MTS; forecast horizon hyperparameter $h$ allows for flexibility in learning short-term vs. long-term spillover effects.
    \item We propose interpretable network measures for contextualizing spillovers with respect to prediction variability and identifying sink and source nodes within a dynamic network. We demonstrate the robustness of these measures across various graph and error dependency specifications. 
    \item We provide uncertainty quantification for BSG measures through functionals of model parameter posterior distributions via Bayesian estimation, compared to point-estimates from baseline VAR and NGC retrieval methods. We showcase how BSG can quantify strengths of temporal interactions (including spillovers) and identify systemically vulnerable nodes in a wildfire risk application.
    %due to known shocks via simple Bayesian hypothesis testing. 
    %\item We demonstrate how BSG can uncover latent node interactions in real-world systems using a single observed time series, and quantify before-after effects in networks in response to structural shocks via Bayesian hypothesis testing. 
\end{enumerate}

We emphasize the distinction between Bayesian DAGs versus BSG, which models temporal, bi-directional relationships that can potentially amplify spillovers over multi-step horizons. DAG structure is a popular assumption in causal inference and can be viewed as a special case of BSG. BSG learns important edges (temporal interactions) and nodes (time series components) directly from estimated statistical network metrics. It also accounts for various dependencies in error terms that deviate from standard Gaussian noises, which are more descriptive of real-world systems. A brief overview of BSG vs. prior methods is shown in Figure \ref{fig:mbsg_overview}.


\section{Methodology}

\subsection{Vector Autoregression (VAR)}
Let $\mathbf{z}_{t}$ be a stationary $d$-dimensional multivariate time series, and $\{z_{jt}\}$ be the $j$-th component of this time series at time $t$. A VAR(p) model with order $p$ is defined as: \begin{equation}
\mathbf{z}_{t} = \phi_{0} + \sum^{p}_{i=1}\phi_{i}\mathbf{z}_{t-i} + \mathbf{a}_{t}
\end{equation} 
where $\phi_{0}$ is a $d$-dimensional constant, $\phi_{i}$ is the $d \times d$ lag $i$ coefficient matrix for $i \geq 0$, and $\mathbf{a}_{t}$ is a sequence of i.i.d random vectors with mean 0 and covariance matrix $\mathbf{\Sigma_{a}}$. 

\textbf{Bayesian Estimation.}
We utilize a Bayesian approach \citep{tsay2013multivariate} for estimating unknown model parameters $[\boldsymbol{\beta}', \mathbf{\Sigma_a}]$ for a VAR(p) time series with length $T$, where $\boldsymbol{\beta}' = [\phi_{0}, \phi_{1}, ..., \phi_{p}]$: 
\begin{equation}
    \textbf{Z} = \textbf{X}\boldsymbol{\beta} + \textbf{A}
\end{equation}
where $\mathbf{Z}$ and $\mathbf{A}$ are $(T-p) \times d$ matrices, and the $i$th row is $\mathbf{z'}_{p+i}$ and $\mathbf{a'}_{p+i}$. $\mathbf{\beta'}$ is a $d \times (dp+1)$ matrix, and $\mathbf{X}$ is a $(T-p) \times (dp+1)$ design matrix with $i$th row as $(1, \mathbf{z'}_{p+i-1}, \mathbf{z'}_{i})$. The likelihood function for the data is
\begin{equation}
\resizebox{0.5\textwidth}{!}{%
$\begin{aligned}
f(\mathbf{Z}|\boldsymbol{\beta}, \mathbf{\Sigma_a}) & \propto |\mathbf{\Sigma_a}|^{-n/2} \ \exp[-\frac{1}{2}tr(\{(\mathbf{Z}-\mathbf{X}\boldsymbol{\beta})'(\mathbf{Z}-\mathbf{X}\boldsymbol{\beta})\mathbf{\Sigma_{a}^{-1}} \})]
\end{aligned}$
}
\end{equation} 
where $n = T-p$ is the effective sample size. We utilize Normal-inverse-Wishart conjugate priors $f(\boldsymbol{\beta}, \mathbf{\Sigma_a}) = f(\mathbf{\Sigma_a})f(\boldsymbol{\beta}| \mathbf{\Sigma_a})$ :
\begin{align}
f(\mathbf{\Sigma_a}) & \sim W^{-1}(\mathbf{V_0}, n_0)\\
f(vec(\boldsymbol{\beta}) | \mathbf{\Sigma_a}) & \sim N(vec(\boldsymbol{\beta}_0), \mathbf{\Sigma_a} \otimes \mathbf{C}^{-1})
\label{eq:conjugate_priors}
\end{align}
where hyperparameters $V_0$ is a $d \times d$ matrix, $n_0$ is some real number, $C$ is a $(dp+1) \times (dp+1)$ matrix, and $\beta_0$ is a $(dp+1) \times d$ matrix. The posterior distribution is then:
\begin{align}
f(\mathbf{\Sigma_a} | \mathbf{Z}, \mathbf{X}) & \sim W^{-1}(\mathbf{V_0 + \widetilde{S}}, n_0 + n) \\
f(vec(\boldsymbol{\beta}) | \mathbf{Z}, \mathbf{X}, \mathbf{\Sigma_a}) & \sim N(vec(\boldsymbol{\widetilde{\beta}}), \mathbf{\Sigma_a} \otimes (\mathbf{X}'\mathbf{X} + \mathbf{C})^{-1})
\label{eq:posterior_dist}
\end{align}
where $\boldsymbol{\widetilde{\beta}} = (\mathbf{(X'X + C)}^{-1} (\mathbf{X'X}\boldsymbol{\widehat{\beta}} + \mathbf{C} \boldsymbol{\beta}_0))$ and $\mathbf{\widetilde{S}} = (\mathbf{Z} - \mathbf{X} \widetilde{\boldsymbol{\beta}})'(\mathbf{Z} - \mathbf{X} \widetilde{\boldsymbol{\beta}}) + (\widetilde{\boldsymbol{\beta}} - \boldsymbol{\beta_0})'\mathbf{C}(\widetilde{\boldsymbol{\beta}} - \boldsymbol{\beta}_0)$ based on hyperparameter choices from the prior; $\boldsymbol{\widehat{\beta}}$ is the least-squares estimate of $\boldsymbol{\beta}$. Usually, $V_0$ is set to identity $\mathbf{I}_{d}$ and $n_{0}$ is a small number; as sample size $n$ increases, the choice of $n_{0}$ has very little effect on the final posterior. Similarly, we can choose vague priors for $vec(\boldsymbol{\beta})$ by letting $vec(\boldsymbol{\beta}_{0}) = 0$ and $\mathbf{C}^{-1} = c_{0}I_{dp+1}$, where $c_{0}$ is some large real number, and hence the posterior distribution $f(vec(\boldsymbol{\beta}) | \mathbf{Z}, \mathbf{X}, \mathbf{\Sigma_a})$ is also mainly updated via the data $\mathbf{X}$. 

Although $\mathbf{\Sigma_{a}}$ is unknown, we can sample $M$ i.i.d samples from the joint posterior distribution by iterative sampling from $f(\mathbf{\Sigma_a} | \mathbf{Z}, \mathbf{X})$ and $f(vec(\boldsymbol{\beta}) | \mathbf{Z}, \mathbf{X}, \mathbf{\Sigma_a})$, replacing $\mathbf{\Sigma_{a}}$ with posterior estimate $\mathbf{\Sigma_{a}}^{(m)}$. 

\subsection{Bayesian Spillover Graphs}

In brief, we adopt Bayesian estimation for Vector Autoregressions (VAR) to estimate posterior distribution for model parameters $[\boldsymbol{\beta}', \mathbf{\Sigma_a}]$ from a single realized MTS. We then construct $G_{h}(\boldsymbol{\beta}, \mathbf{\Sigma_{a}} | \mathbf{Z})$, the BSG for forecast horizon $h$, with components of MTS as nodes and temporal interactions as directed, weighted edges. Specifically, we can estimate BSG edge weights by computing $h$-step ahead normalized spillovers between two nodes via FEVD for $M$ posterior samples of $\{\boldsymbol{\beta}', \mathbf{\Sigma_a}\}$, and taking averages over $M$. Consequentially, BSG is an interpretable graph where both magnitude and specific values of edges are meaningful.

We also introduce three network measures based on functionals of BSG: the spillover index, vulnerability score, and influence score. These measures describe systemic-wide behavior over time and are useful for monitoring influential and at-risk nodes for a dynamic network. With a Bayesian framework, we can quantify uncertainty for both BSG edges and network measures. Under stationarity assumptions, estimated normalized spillovers are finite after some fixed forecast horizon $h$.


\textbf{Interpretable BSG Edges from Forcast Error Variance Decomposition.}
We adapt generalized FEVD for analyzing $h$-step ahead spillover effects \citep{diebold2014network, diebold2015financial}; the accuracy of a forecast can be measured by its forecast error. 
Let $\sigma_{kk}$ be the k-th diagonal of $\mathbf{\Sigma_{a}}$, and $\psi_{i}$ be the coefficient matrix for a non-orthogonalized VAR under an infinite moving-average representation. 
The $jk$-th entry of the $h$-step ahead forecast error variance is

\begin{equation}
    w_{h, jk} = \frac{\sigma_{kk}^{-1}\Sigma_{i=0}^{h-1}[\psi_{i}\boldsymbol{\Sigma_{a}}]_{jk}^{2}}{\Sigma_{i=0}^{h-1}[\psi_{i}\boldsymbol{\Sigma_{a}}\psi_{i}']_{jj}}
\end{equation}

which measures the amount of information of the $h$-step ahead forecast error variance for variable $j$ accounted for by innovations/exogenous shocks to variable $k$. The \textbf{$h$-step ahead normalized spillover} from component $k$ to $j$ is:
\begin{equation}
s_{h}^{k\xrightarrow{}j} = 100 * \tilde{w}_{h, jk}, \quad \tilde{w}_{h, jk} = \frac{w_{h, jk}}{\Sigma_{k=1}^{d}w_{h, jk}}
\end{equation}
where $\tilde{w}_{h, jk}$ is the normalized variance decomposition. $s_{h}^{k\xrightarrow{}j}$ is the proportion of the $h$-step ahead forecast error variance for node $j$ attributed to changes in node $k$, and becomes the weight for a directed edge from node $k$ to $j$ for BSG, $G_{h}(\beta, \mathbf{\Sigma_{a}} | \mathbf{Z})$. This definition makes BSG an interpretable graph with respect to forecast errors, with direct explanation of edge weight meaning. Prior methods such as GVAR would only estimate the sign of a temporal relationship \citep{marcinkevics2021interpretable}. See Algorithm \ref{alg: est_bsg} for details on estimating BSG edges from posterior distributions of Bayesian VAR parameters.


\textbf{BSG Network Measures as Systemic Risk Indicators.}
We propose novel BSG network measures based on functionals of BSG edges over forecast horizon $h$ that can describe system-wide behavior and node importance over time. The goal is to quantify cumulative temporal interactions and spillovers within a system, as well as identify strongly influential or vulnerable nodes. 

We define the $\boldsymbol{h}$\textbf{-spillover index} as the magnitude of $h$-step normalized spillovers across all components, which describes the total spillover effect experienced over the full graph. The $h$-spillover index can be viewed as a measure of cumulative risk within the system after $h$ time periods; the higher it is, the more fragile the system is to innovations in any individual node.
\begin{equation}
    S(\cdot)= S_{h} = \mathop{\sum_{j=1}^{d}\sum_{k=1}^{d}}_{j\neq k}  s_{h}^{k \rightarrow j}
\end{equation}
We may then be interested in identifying specific nodes at high risk over the full graph. For example, say we wanted to rank the individual nodes by the magnitude of spillovers experienced. We define $s_{h}^{* \rightarrow j}$ as the total spillover effect from all other components to a specific component $j$. 
\begin{equation}
    V(\cdot) = s_{h}^{* \rightarrow j} = \sum^{d}_{\forall k, k \neq j} s_{h}^{k \rightarrow j}
\end{equation}
$s_{h}^{* \rightarrow j}$ can be viewed as the \textbf{vulnerability score} for a specific node at $h$-steps ahead, and can theoretically take on values between $[0, 100]$. The vulnerability score for node $j$ can be interpreted as the proportion of FEVD \textit{not} attributed to innovations to $j$ itself. In particular, nodes with higher vulnerability are more susceptible to shocks and cascading effects from other components within the system. 

Alternatively, we may be interested in pinpointing the sources of risks to the system. We define the \textbf{influence score} for a specific node, $s_{h}^{k \rightarrow *}$, as: 
\begin{equation}
    I(\cdot) = s_{h}^{k \rightarrow *} = \frac{ \sum^{d}_{\forall j, j \neq k} s_{h}^{k \rightarrow j}}{S_{h}}
\end{equation}
Note that the numerator of this expression quantifies the total spillover effect on the graph originating from component $k$, which is then standardized by the $h$-spillover index. This allows us to interpret the influence score for node $k$ as the proportion of total spillover effect on the entire system attributed to innovations in $k$, which again takes on values between $[0, 100]$ and is comparable across different networks. In particular, nodes with higher influence leads to greater impact on the entire system if there is a shock or change to the node. Collectively, these BSG network measures have wide applicability for describing real-world systems and as systemic risk indicators (SRI), which captures holistic risk arising from overall network connectivity \citep{che2021critical, de2000systemic}. 

\begin{figure*}[ht]
     \centering
     \includegraphics[width=0.95\textwidth]{images/4panel.png}
     \caption{Normalized spillover evolution from Node 3 to 5 (red) over $h$. Arrow width is prop. to BSG edge strength.}
     \label{fig:dag_evolution}
 \end{figure*}
 
\begin{figure}[ht]
	\centering
    \includegraphics[width=0.35\textwidth]{images/DAG_true_final.png}
    \caption{Graph of temporal interactions $\phi_{1}$ for a VAR(1) model. Goal is to quantify spillover effect over time (red).}
    \label{fig:dag_true}

\end{figure}
\begin{figure}[ht]
    \centering
    \includegraphics[width=0.45\textwidth]{images/20step_to5_v2.jpeg}
    \caption{Edge strength (normalized spillover) into Node 5 over $h$. Direct impact via Node 4 (purple) declines over time while indirect spillover via Node 3 (turquoise) accumulates over time. BSG stabilizes at $h^{*}=17$.}
    \label{fig:spill_to5}
\end{figure}

\textbf{BSG Estimation \& Uncertainty Quantification.} 
Given a single realized MTS $\mathbf{Z_t}$, we can construct BSG $G_{h}(\boldsymbol{\boldsymbol{\beta}}, \mathbf{\Sigma_{a}} | \mathbf{Z})$ directly via Bayesian VAR estimation. We first draw $M$ samples, $\{\beta^{(m)}, \mathbf{\Sigma_{a}}^{(m)} \}$, from the posterior distribution of model parameters. For fixed forecast horizon $h$, we compute $w_{h, jk}^{(m)}$, the $h$-step ahead forecast error variance, for each sample. BSG edges are then constructed by averaging over $M$, where $\bar{s}_{h}^{k \rightarrow j}$ = $\frac{1}{M}\sum^{M} s_{h}^{(m), k \rightarrow j}$ is a weighted directed edge from node $k$ to node $j$. BSG nodes are the individual components of $\mathbf{Z_t}$. BSG network measures can also be computed directly by averaging over $M$ samples, e.g., the influence score for node $k$ would be estimated via  $ \bar{s}_{h}^{k \rightarrow *} = \frac{1}{M}\Sigma_{m=1}^{M} [ \sum^{d}_{\forall j, j \neq k} s_{h}^{(m), k \rightarrow j}/ S_{h}^{(m)}]$. See Algorithm ~\ref{alg: est_bsg}. This process also allows for uncertainty quantification for any BSG edge or network measure by constructing credible intervals over $M$ estimates. We can also leverage the simplicity of Highest Posterior Density Interval (HPDI) or Bayes Factor \citep{kass1995bayes}. See Section \ref{section:kincade_fire} for an example with California wildfire data.

\textbf{Stationarity and Optimal $h^{*}$ for Equilibrium BSG.}
A VAR(1) model can be written with an infinite sum as:
\begin{equation}
\mathbf{z}_{t} = \mathbf{\mu} + \sum^{\infty}_{i=0}\psi_{i}a_{t-i}
\end{equation}
where $\psi_{i} = \phi_{1}^{i}$ for $i \geq 0$ and $\mu$ is a $d$-dimensional constant. See Appendix A %\ref{appendix:moving_avg} 
for details. If the series is \textbf{stationary}, then the absolute value of the eigenvalues of $\phi_{1}$ will be strictly less than 1. Various transformations, including detrending, removing seasonality, or differencing the series \citep{granger2014forecasting} are recommended to ensure stationarity before parameter estimation. MTS with DAG temporal network structures can be viewed as a subset of VARs with restrictive assumptions on $\beta$. In the special case of a VAR(1) model where the temporal network structure of $z_{t}$ can be described by a DAG, $z_{t}$ is stationary; see Theorem 1 and proof in Appendix B. %\ref{appendix:dag_proof}.

\begin{theorem}
If $\phi_{1}$ is a DAG, then (1) no component-wise autocorrelation exists, (2) $\phi_{1}$ can be specified by a strictly triangular matrix, (3) all eigenvalues of $\phi_{1}$ are 0 and hence $z_{t}$ is stationary.
\end{theorem}

\begin{algorithm}[h]
\caption{Estimating Bayesian Spillover Graph with Optimal $h^{*}$} \label{alg: est_bsg}
\begin{algorithmic}[1]
\Statex Draw $M$ posterior samples for $\boldsymbol{\beta}=[\phi_{0}, \phi_{1}, ..., \phi_{p}]$, $\mathbf{\Sigma_{a}}$
\While{$m < M$} sample
    \State $\mathbf{\Sigma_{a}}^{(m)} \sim W^{-1}(\mathbf{V_0 + \widetilde{S}}, n_0 + n)$
    \State $vec(\boldsymbol{\beta}^{(m)}) \sim N(vec(\boldsymbol{\widetilde{\beta}}), \mathbf{\Sigma_{a}}^{(m)} \otimes (\mathbf{X'X + C})^{-1})$
\EndWhile
\Statex Iterate over $h$ until converge
\For{$h$ in 1, 2, ..., $H$ and $\epsilon > 0$}
\State Compute $w^{(m)}_{h, jk}$ from $\mathbf{\Sigma_{a}}^{(m)}, \boldsymbol{\beta}^{(m)}$
\State Compute $s_{h}^{(m), k \rightarrow j}$ from $w^{(m)}_{h, jk}$
\State Compute posterior mean $\bar{s}_{h}^{k \rightarrow j}$ = $\frac{1}{M}\sum^{M} s_{h}^{(m), k \rightarrow j}$
\If{$ |\bar{s}_{h}^{k \rightarrow j} - \bar{s}_{h-1}^{k \rightarrow j}| < \epsilon, \ \forall j, k$}
\State $h^{*} = h$
\EndIf
\EndFor
\Statex Construct BSG $G_{h}(\boldsymbol{\beta}, \mathbf{\Sigma_{a}} | \mathbf{Z})$ with edges $\bar{s}_{h*}^{k \rightarrow j}$
\end{algorithmic}
\end{algorithm}

Under stationarity, BSG can reliably model cumulative response functions if shocks are not persistent and the system will return to equilibrium. See Algorithm \ref{alg: est_bsg} for choosing the optimal $h^{*}$-step. The horizon $h$ can be interpreted as a tuning 
parameter that controls the trade-off between learning immediate versus cumulative effects for BSG.


\begin{table*}[ht] \centering 
  \caption{Average NDCG (Accuracy) for Identifying Sink \& Source Nodes by Network Specification, 5 Rep.} 
  \label{table:source_sink_ndcg} 
\resizebox{0.9\textwidth}{!}{%
\begin{tabular}{@{\extracolsep{0pt}} lcc|cc|cc} 
\\[-1.8ex]\hline 
\hline \\[-1.8ex] 
Stationary & \multicolumn{2}{c}{1. DAG, $d=20$} & \multicolumn{2}{c}{2. Directed Cyclic, $d=20$} & \multicolumn{2}{c}{3. Bipartite, $d=20$} \\ 
\hline \\[-1.8ex] 
 & NDCG@20 & NDCG@20  & NDCG@20 & NDCG@20 & NDCG@20 & NDCG@20 \\ 
Method & Source Nodes & Sink Nodes & Source Nodes & Sink Nodes & Source Nodes & Sink Nodes  \\
\hline \\[-1.8ex] 
BSG, $h=1$ & 0.901 $\pm$ 0.033 & 0.997 $\pm$ 0.004 & 0.828 $\pm$ 0.009 & 1 $\pm$ 0 & 0.892 $\pm$ 0.072 & 0.988 $\pm$ 0.009 \\ 
BSG, $h=5$ & 0.967 $\pm$ 0.041 & \textbf{0.998} $\pm$ 0.002 & \textbf{0.959} $\pm$ 0.039 & \textbf{0.999} $\pm$ 0.001 & \textbf{1} $\pm$ 0 & \textbf{1} $\pm$ 0 \\ 
BSG, $h=10$ & \textbf{0.966} $\pm$ 0.041 & \textbf{0.998} $\pm$ 0.002 & 0.962 $\pm$ 0.037 & 0.996 $\pm$ 0.002 & 1 $\pm$ 0 & 1 $\pm$ 0 \\ 
\hline \\[-1.8ex] 
VAR-Between & 0.876 $\pm$ 0.051 & 0.722 $\pm$ 0.051 & 0.872 $\pm$ 0.052 & 0.726 $\pm$ 0.052 & 0.847 $\pm$ 0.09 & 0.702 $\pm$ 0.09 \\ 
VAR-Closeness & 0.79 $\pm$ 0.042 & 0.808 $\pm$ 0.042 & 0.785 $\pm$ 0.069 & 0.813 $\pm$ 0.069 & 0.76 $\pm$ 0.08 & 0.789 $\pm$ 0.08 \\ 
VAR-Degree & 0.936 $\pm$ 0.034 & 0.976 $\pm$ 0.014 & 0.931 $\pm$ 0.037 & 0.946 $\pm$ 0.046 & 0.981 $\pm$ 0.033 & 0.974 $\pm$ 0.014 \\ 
VAR-Eigen & 0.715 $\pm$ 0.032 & 0.883 $\pm$ 0.032 & 0.720 $\pm$ 0.051 & 0.879 $\pm$ 0.051 & 0.642 $\pm$ 0.017 & 0.908 $\pm$ 0.017 \\ 
\hline \\[-1.8ex] 
DBN-Between & 0.766 $\pm$ 0.047 & 0.832 $\pm$ 0.047 & 0.766 $\pm$ 0.044 & 0.833 $\pm$ 0.044 & 0.674 $\pm$ 0.078 & 0.876 $\pm$ 0.078 \\ 
DBN-Closeness & 0.79 $\pm$ 0.044 & 0.809 $\pm$ 0.044 & 0.869 $\pm$ 0.041 & 0.729 $\pm$ 0.041 & 0.844 $\pm$ 0.108 & 0.705 $\pm$ 0.108 \\ 
DBN-Degree & 0.793 $\pm$ 0.058 & 0.827 $\pm$ 0.038 & 0.874 $\pm$ 0.056 & 0.855 $\pm$ 0.053 & 0.902 $\pm$ 0.031 & 0.858 $\pm$ 0.071 \\ 
DBN-Eigencentrality & 0.744 $\pm$ 0.02 & 0.854 $\pm$ 0.02 & 0.739 $\pm$ 0.05 & 0.859 $\pm$ 0.05 & 0.705 $\pm$ 0.109 & 0.845 $\pm$ 0.109 \\  
\hline \\[-1.8ex] 
GVAR-Between & 0.851 $\pm$ 0.036 & 0.747 $\pm$ 0.036  & 0.645 $\pm$ 0.041 & 0.954 $\pm$ 0.041 & 0.831 $\pm$ 0.119 & 0.719 $\pm$ 0.119 \\  
GVAR-Closeness & 0.712 $\pm$ 0.041 & 0.886 $\pm$ 0.041 & 0.643 $\pm$ 0.028 & 0.955 $\pm$ 0.028 & 0.663 $\pm$ 0.047 & 0.887 $\pm$ 0.047 \\ 
GVAR-Degree & $\dagger$ & $\dagger$ & $\dagger$ & $\dagger$  & $\dagger$ & $\dagger$  \\ 
GVAR-Eigencentrality & 0.718 $\pm$ 0.057 & 0.881 $\pm$ 0.057 & 0.953 $\pm$ 0.032 & 0.646 $\pm$ 0.032 & 0.642 $\pm$ 0.016 & 0.907 $\pm$ 0.016 \\ 
\hline \\[-1.8ex] 
\multicolumn{5}{l}{--- indicates retrieved NGC graph is degenerate, e.g., only edges are self-directed.} \\
\multicolumn{5}{l}{$\dagger$ indicates network measure cannot distinguish between nodes, e.g., all in/out degrees are equal.}\\
\end{tabular} 
}
\end{table*} 


%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%
\section{BSG for Quantifying Indirect Spillovers}

We showcase how BSG models temporal spillovers that materialize after multiple periods. Consider a 5-dimensional VAR(1) time series represented by the directed graph of temporal interactions ($\phi_{1}$) in Figure \ref{fig:dag_true}, with true parameters:
\begin{align}
    \phi_{1} &= \begin{bmatrix}
    0.8& 0.0& 0.0& 0.0& 0.0 \\
    \mathbf{0.5}& 0.8& 0.0& 0.0& 0.0 \\
    0.0& 0.0& 0.8& 0.0& 0.0 \\
    0.0& 0.0& \mathbf{0.7}& 0.8& 0.0 \\
    0.0& 0.0& 0.0& \mathbf{0.4}& 0.8 
    \end{bmatrix} \\
    \Sigma_{a} &= diag(5).
    \label{eq:dag_true_parameters}
\end{align}
Eigen-decomposition of $\phi_{1}$ indicates that all eigenvalues have magnitude $\leq 1$ and this network is stationary with standard independent error terms. Nodes 3 and 1 are analogous to source nodes with high out-degree centrality, and 5 and 3 to sink nodes with high in-degree centrality \citep{borgatti2005centrality, bollobas2012graph, goldberg1989network}. Node 5 will experience spillovers from Node 3 via Node 4 after multiple time periods, but this relationship is omitted in a simple NGC. This limitation is suitably addressed with a BSG with $h>1$; see Figure \ref{fig:dag_evolution} where indirect spillover (red arrow from 3 to 5) becomes stronger as $h$ increases. 

In Figure \ref{fig:spill_to5}, we plot average BSG directed edge weights ($h$-step ahead normalized spillover) from Nodes 1-4 into Node 5. The indirect spillover effect through intermediary Node 4 manifests after 2-steps ahead forecast and significantly amplifies as the forecast horizon increases (turquoise line) before flattening after $h=17$. We can directly interpret this edge: the posterior mean for $s_{20}^{3 \rightarrow 5}$ is 80.1\% with 95\% HPDI of (71.9\%, 87.7\%), which predicts that after 20 periods, roughly 80.1\% of forecast variability for node 5 can be attributed to changes in node 3. In contrast, the edge from Node 4 to Node 5 rapidly declines past $h=4$. With prior methods of only estimating static NGC, we would not be able to observe nor quantify these spillover effects that evolve over longer forecast horizons.


%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%

\section{BSG for Identifying Network Source \& Sink Nodes}


\begin{figure}[htb]
    \centering
    \includegraphics[width=0.49\textwidth]{images/h_vs_covariance.jpeg}
    \caption{BSG Accuracy for identifying source nodes via influence scores, w.r.t. $h$-step ahead forecast horizon and different $\sigma_{jk}$ strengths.}
    \label{fig:h_ablation_covariance}
\end{figure}


We illustrate how BSG network measures accurately ranks and identifies nodes of interest compared to baselines with simulated MTS. Since relative order matters, this is a ranking instead of prediction task. Performance is evaluated by Normalized Discounted Cumulative Gain (NDCG) \citep{valizadegan2009learning}. NDCG measures ranking quality of a node ordering by BSG network measures or other graph measures, e.g., source nodes are ranked highly influential. NDCG is between $[0, 1]$ and directly comparable across methods; see Appendix C. %\ref{appendix:ndcg}.


\textbf{Identifying Nodes Across Network Specifications.}
3 stationary network specifications ($\phi_{1}$) are used for simulating 5 MTS replicates: (1) a DAG, (2) a directed cyclic graph with autocorrelation = 0.5, and (3) a bi-partite graph. Networks (1) and (2) have 5 source and sink nodes and Network (3) has 10 source and sink nodes; all have independent Gaussian noise for $\Sigma_{a}$. Edge weights are sampled from a Unif(0,1) distribution; $T=500$ and $d=20$ for each network. We construct BSG\footnote{Example code at \href {https://github.com/gdeng96/bsg}{https://github.com/gdeng96/bsg}} SRIs for $h = \{1, 5, 10 \}$, and use influence and vulnerability scores for ranking source and sink nodes respectively. The first set of baselines are 4 standard graph measures on a NGC graph: in/out degree distributions, eigen-centrality, betweenness centrality, and closeness centrality. NGC is constructed from a VAR(1) model fitted via the \texttt{MTS} package, and significant edges are identified via multiple-testing with Benjamini-Hochberg procedure \citep{benjamini1995controlling}. Another set of baselines is DBN and GVAR\footnote{GVAR code available at \href {https://github.com/i6092467/GVAR}{https://github.com/i6092467/GVAR}} combined with the 4 graph measures above, because these methods are designed only to retrieve NGC graphs. For fairness of comparison, GVAR lag is restricted to 1 and run with default hidden units/layer (50), hyperparameters $\lambda = 0.1$ and $\gamma = 0.01$, and 500 epochs in PyTorch. DBN uses default settings with the \texttt{dbnR} package.

Average NDCG are reported in Table \ref{table:source_sink_ndcg} for each combination of baseline NGC graph-recovery method and network measure. Out- and in-degree centralities (Degree) are used for source and sink nodes respectively. BSG with $h=10$ yields the highest accuracy for both node types across all three networks specifications.

\textbf{Effect of Forecast Horizon $h$ and Error Covariance $\mathbf{\Sigma_{a}}$}
We perform an ablation experiment to answer two questions: (1) \textit{How does choice of hyper-parameter $h$ impact BSG quality and accuracy?} (2) \textit{How well does BSG perform across different error dependency structures?}

We utilize Network (2), which allows for bi-directional temporal relationships and cycles. Each component has unit variance ($\sigma_{kk}=1$), and pairwise covariance is $\{0.1, 0.3, 0.5, 0.7, 0.9\}$ corresponding to the strength of dependencies in $\mathbf{\Sigma_{a}}$. $d=24$ with 8 source and sink nodes; for each $\mathbf{\Sigma_{a}}$ specification, we generate 5 replicates and estimate corresponding BSG for 20 values of $h$, then compute accuracy (NDCG) for source node identification. Figure \ref{fig:h_ablation_covariance} shows that good choices of $h$ ranges between 5-10, and BSG performance quickly stabilizes after a few forecast periods while successfully identifying the proper source nodes. Good choices for $h$ depends mostly on $\phi_{1}$ and is influenced by the speed at which the system reaches equilibrium (mean-reverts), not necessarily the size of the network. Lower $h$ values yield higher accuracy for identifying sink nodes; a good BSG should select $h$ that maximizes both quantities. 

In Table 1 of Appendix D.1
%\ref{table:correlated_source_sink_ndcg}
, we report NDCG for identifying sink and source nodes in networks with weak, medium, and strongly correlated $\mathbf{\Sigma_{a}}$, using the same VAR, DBN, and GVAR specifications as previous experiments. Results show that BSG influence and vulnerability scores outperform all benchmarks even under strongly correlated error terms. When $\sigma_{jk}$ is moderately or strongly correlated, standard VAR breaks down and produces a degenerate graph (i.e., multiple testing results in zero significant edges); benchmark network measures collapse in this case. DBN performs mostly consistently, while for GVAR, corresponding in/out-degrees do not distinguish between influential nodes. BSG avoid these pitfalls since it inherently accounts for error dependencies and is more applicable for real-world dynamic networks with strong correlations.

\textbf{Non-Linear Dynamic Systems}
Recent works have also focused on dynamic systems with non-linear or higher-order temporal relationships. A prime example is the Lokta-Volterra predator-prey model \cite{bacaer2011lotka}. Four parameters $\{\alpha, \beta, \gamma, \delta \}$ correspond to prey $\rightarrow$ itself, predator $\rightarrow$ prey, predator $\rightarrow$ itself, and prey $\rightarrow$ predator interaction strengths. We generate 5 MTS replicates using the same parameter specifications ($\{1.2, 0.2, 1.1, 0.05\}$) as \cite{marcinkevics2021interpretable}, with $T = \{50, 200, 1000\}$. We compare BSG influence/vulnerability scores vs. benchmarks for correctly identifying nodes as predator (source) and prey (sink). Results and example MTS simulation is reported in Table 2 %\ref{table:nonlinear_source_sink_ndcg} 
and Figure 1 %\ref{fig:mlv_population_ts} 
in Appendix D.2%\ref{appendix:lotka_volterra}
; BSG at all forecast horizons outperforms baselines for $T=50$ and $T=200$. For $T=1000$, BSG performs consistently well for identifying source nodes, but has lower accuracy for identifying sink nodes, likely due to long-range dependence for a longer MTS. GVAR-Closeness has marginally higher accuracy (+0.014) for identifying predators compared to BSG ($h=1$) but very low accuracy (0.554) for identifying prey. Meanwhile, standard VAR after FDR adjustment produces degenerate graphs. On average, BSG still performs well on between both source and sink node identification; in practice, it may be useful to first difference MTS with higher-order autocorrelation.

\section{BSG for Understanding Real-world Systems} \label{section:kincade_fire}

\begin{figure}[ht]
    \centering
    \includegraphics[width=0.42\textwidth]{images/kincade_full_snorm_graph2.png}
    \caption{BSG for Kincade Fire, $h$=12 hours ahead. Red indicates source and blue indicates sink nodes. Arrow width is prop. to BSG edge weight. See Figure 4 %\ref{fig:kincade_bsg_hpdi} 
    in Appendix E %\ref{appendix:kincade} 
    for 95\% HPDI of spillovers.}
    \label{fig:kincade_snorm_graph}
\end{figure}

\begin{figure}[ht]
    \centering
    \includegraphics[width=0.35\textwidth]{images/county_spillover_pm25_v2.png}
    \caption{12-hour normalized spillover for Kincade Fire. Blue arrows indicate direct risk for adjacent counties, and orange arrows indicate spillovers for non-adjacent counties.}
    \label{fig:kincade_spillover}
\end{figure} 

\textbf{Inferring Spillovers from California Wildfires.} 
\noindent The Kincade Fire was the largest California wildfire in 2019, burning a total of 77,758 acres. It originated in Sonoma County and dangerous PM10/PM2.5 particles in the air posed a serious public health risk spillover for nearby counties with high population density. We use BSG to investigate spillovers and rank at-risk nodes (counties) as measured by hourly PM 2.5 particle concentrations from Oct 22-Nov 7. We have a reasonable ground-truth for underlying network structure with Sonoma County as the single source node. Therefore, any strong BSG edges detected between Sonoma and non-adjacent counties, or two counties that does not include Sonoma, can be considered indirect spillover effects.


\textbf{Data Description.}
Using public data from EPA (Environmental Protection Agency), hourly PM 2.5 concentrations are extracted for 10 counties within 50 miles of Sonoma County in Northern California; Yolo, Sutter, and Lake counties had no data available. See Figure 2 % \ref{fig:kincade_daily_ts} 
in Appendix E
%\ref{appendix:kincade} 
for MTS plot. No visible trend or seasonality effects are observed; autocorrelation plots show evidence of long memory for some counties and we also observe prominent spikes, particularly initially in Sonoma and later with time lag in other counties. To ensure stationarity, we proceed with the first order difference of the MTS. 

\textbf{Quantifying Spillover \& At-risk Nodes.}
In Figure \ref{fig:kincade_snorm_graph}, we illustrate all BSG edges ($h=12$) greater than the 80th percentile in magnitude for simplicity, with arrow width proportional to edge weights. The top source node Sonoma (by BSG influence score) is shaded in red, and top sink nodes (by vulnerability score) is shaded in blue. The BSG neatly captures the Kincade Fire in that Sonoma has the majority of all outgoing edges, while further away, non-adjacent counties (sink nodes) such as Colusa and Alameda have strong spillovers both directly from Sonoma and indirectly via other counties as well. In particular, note the cycle from Sonoma $\rightarrow$ Contra Costa $\leftrightarrow $ Alameda where sink nodes also interact and amplify spillover effects. We can further quantify downstream spillovers via BSG edge weights for counties to the southeast of Sonoma; see Figure \ref{fig:kincade_spillover} for county map with spillovers. Roughly 10\% of FEVD for each county can be attributed to changes in Sonoma's PM 2.5 concentration. One possible explanation is downsloping winds from the north \citep{mass2019northern}, which is particularly concerning due to the far higher population density of impacted counties. Two other notable indirect spillovers not involving Sonoma include those from San Mateo to Contra Costa (12.3\%) and Alameda (9.3\%).

BSG influence and vulnerability scores for each county are reported in Figure 3 %\ref{fig:kincade_ranking} 
in Appendix E.
%\ref{appendix:kincade}. 
Sonoma County is the most influential node, accounting for more than 40.9\% of total spillover effect across all 10 counties on average, with the 95\% HPDI as (17.9\%, 62.7\%). BSG accurately identifies the origin of the Kincade Fire while also showing Sonoma itself is the least vulnerable node. Locations most at risk to the fire, by vulnerability score, are Alameda and Contra Costa followed by San Francisco, Solano, and Colusa.
None of these 5 counties are adjacent to Sonoma; they incur higher risk via spillovers from intermediary Marin and Napa counties, accumulated over multiple time periods. These risk quantifications from BSG have practical implications for policies with respect to wildfire relief and public health. For example, although FEMA allocated nearly 60 million dollars in federal relief \citep{FEMA_Kincade}, the funds were strictly designated for Sonoma County. Meanwhile, BSG as an exploratory tool clearly identifies much broader spillovers and at-risk counties. 


\section{Discussion}
BSG is a novel framework for modeling temporal interactions and identifying important nodes within a dynamic system based on a single realized multivariate time series. BSG combines interpretable forecast error based network measures with uncertainty quantification via sampling from posterior graph distribution, and demonstrates robust performance across various graph specifications and error dependency structures. The hyperparameter $h$ allows for custom learning of both short and long-term temporal relationships, including indirect spillovers, which are better suited for understanding how real-world systems evolve over time. Careful choice of horizon $h$ can help model equilibrium state of systems and optimize proper ranking of sink and source nodes.

A key application of BSG could be for analyzing spillover impact in response to new regulations and economic policies. For example, consider when a significant event occurs in a particular city, e.g., a new tax policy is passed or a local manufacturer is shut-down and off-shored. Prior works have utilized impulse response functions to analyze policy interventions \citep{sims1980, ericsson1998exogeneity, lutkepohl2005new}; we propose leveraging BSG to examine and quantify both positive and negative externalities (spillover effects) in terms of employment statistics, traffic congestion, local rent, wages, etc., for neighboring cities or counties. Inference via BSG can be for both short-term and long-term impact based on forecast horizon, and used to inform both the public and policymakers.

Another potential BSG application is in time series analysis of fMRI data in healthcare and medicine \citep{penny2005bayesian}; for example, we can examine individual brain fMRI time series where each component are atlas based regions of interest, i.e. aggregated behavior from sets of voxels, which represent smaller unit regions in the brain. The time series could measure brain activity in response to some stimuli or treatment, and a BSG can illustrate cumulative effect of temporal interactions between different brain regions over time. The novel BSG network measures (influence score, vulnerability score) can also pinpoint critical components of brain connectivity, analogous to sink or source nodes.

Future work can dive deep into applying BSG for some of these datasets aforementioned, as well as extending the BSG framework for Bayesian networks with time-varying coefficients \citep{kowal2019dynamic} or latent state-space representations.


\begin{acknowledgements} 
The authors gratefully acknowledge financial support from the National Science Foundation Awards 1934985, 1940124, 1940276, and 2114143.
\end{acknowledgements}


\bibliography{deng_594}
%\input{deng_594-supp}

\end{document}
