An object of class ebdbNet
.
This function infers the parameters of a network, based on the state space model
$$x_t = Ax_{t-1} + Bu_t + w_t$$
$$y_t = Cx_t + Du_t + z_t$$
where \(x_t\) represents the expression of K hidden states at time \(t\),
\(y_t\) represents the expression of P observed states (e.g., genes) at time
\(t\), \(u_t\) represents the values of M inputs at time \(t\),
\(w_t \sim MVN(0,I)\), and \(z_t \sim MVN(0,V^{-1})\),
with \(V = diag(v_1, \ldots, v_P)\). Note that the
dimensions of the matrices \(A\), \(B\), \(C\), and \(D\) are (KxK),
(KxM), (PxK), and (PxM), respectively. When a network is estimated with
feedback rather than inputs (input
= "feedback"), the state
space model is
$$x_t = Ax_{t-1} + By_{t-1} + w_t$$
$$y_t = Cx_t + Dy_{t-1} + z_t$$
The parameters of greatest interest are typically
contained in the matrix \(D\), which encodes the direct interactions among
observed variables from one time to the next (in the case of feedback loops),
or the direct interactions between inputs and observed variables at each time point
(in the case of inputs).
The value of K is chosen prior to running the algorithm by using hankel
.
The hidden states are estimated using the classic Kalman filter. Posterior distributions
of \(A\), \(B\), \(C\), and \(D\) are estimated using an empirical
Bayes procedure based on a hierarchical Bayesian structure defined over the
parameter set. Namely, if \(a_{(j)}\), \(b_{(j)}\),
\(c_{(j)}\), \(d_{(j)}\), denote vectors made up of the
rows of matrices \(A\), \(B\), \(C\), and \(D\) respectively, then
$$a_{(j)} \vert \alpha \sim N(0, diag(\alpha)^{-1})$$
$$b_{(j)} \vert \beta \sim N(0, diag(\beta)^{-1})$$
$$c_{(j)} \vert \gamma \sim N(0, diag(\gamma)^{-1})$$
$$d_{(j)} \vert \delta \sim N(0, diag(\delta)^{-1})$$
where \(\alpha = (\alpha_1, ..., \alpha_K)\),
\(\beta = (\beta_1, ..., \beta_M)\),
\(\gamma = (\gamma_1, ..., \gamma_K)\),
and \(\delta = (\delta_1, ..., \delta_M)\). An EM-like algorithm
is used to estimate the hyperparameters in an iterative
procedure conditioned on current estimates of the hidden states.
conv.1
, conv.2
, and conv.3
correspond to convergence
criteria \(\Delta_1\), \(\Delta_2\), and
\(\Delta_3\) in the reference below, respectively. After
terminating the algorithm, the z-scores of the \(D\) matrix is
calculated, which in turn determines the presence or absence of edges in the network.
See the reference below for additional details about the implementation of the
algorithm.