An Ising model is an array of spins (atoms that can take states $$\pm 1$$) that are magnetically coupled to each other. If one spin is, say \$+1, is energetically favourable for its immediate neighbours to be in the same state.

Let the state $$\mathbb{x}$$ of an Ising model with $$N$$ spins be a vector in which each component $$x_n$$ takes values $$+1$$ and $$-1$$. If two spins $$m$$ and $$n$$ are neighbours, we say $$(m, n) \in \mathcal{N}$$. The coupling between neighbouring spins is $$J$$. We define $$J_{mn} = J$$ if $$m$$ and $$n$$ are neighbours, and $$J_{mn} = 0$$ otherwise. The energy of a state $$\mathbf{x}$$ is:

\begin{equation} E(\mathbb{x}| J, H) = - \left[ \frac{1}{2} \sum_{m,n} J_{mn}x_{m}x_{n} + \sum_{n} H x_{n} \right] \end{equation}

where $$H$$ is the applied field. The probability that the state is $$\mathbb{x}$$ is:

\begin{equation} P(\mathbb{x} | J, H) = \frac{1}{Z(\beta, J, H)} \textrm{exp} \left[ - -\beta E(\mathbb{x}; J, H) \right] \end{equation}

where $$\beta = \frac{1}{k_B T}$$, $$k_B$$ is the Boltzmann’s constant, and:

\begin{equation} Z(\beta, J, H) = \sum_{\mathbb{x}} \textrm{exp} \left[ - \beta E(\mathbb{x}; J,H) \right] \end{equation}

The Ising model is also an example of a Markov Random Field (MRF). We create a graph in the form of a 2D or 3D lattice, and connect neighbouring variables. We can define the following clique potential:

\begin{equation} \phi_{st} (y_s, y_t) = \begin{pmatrix} e^{w_{st}} & e^{-w_{st}} \\
e^{-w_{st}} & e^{w_{st}} \end{pmatrix} \end{equation}

Here $$w_{st}$$ is the coupling strength between nodes $$s$$ and $$t$$. If two nodes are not connected, $$w_{st} = 0$$. The weight matrix $$\mathbb{W}$$ is symmetric: $$w_{st} = w_{ts}$$. All edges have the same strength $$J$$, where $$w_{st} \ne 0$$.

The Ising model is analogous to the Gaussian graphical models. First, assuming $$y_t \in \{-1, +1\}$$, we can write the unnormalized log probability of an Ising model as follows:

\begin{equation} \log \tilde{p}(\mathbb{y}) = - \sum_{s \sim t} y_s w_{st} y_t + \sum_{s}b_s y_s = - \frac{1}{2}\mathbb{y}^T \mathbb{W} \mathbb{y} + \mathbb{b}^T \mathbb{y} \end{equation}

where $$\theta = (\mathbb{W}, \mathbb{b})$$, and $$\mathbb{b}$$ is the bias term, corresponding to the local fields. If we define:

\begin{equation} \mu = - \frac{1}{2}\mathbb{\Sigma}^{-1}\mathbb{b}, \mathbb{\Sigma}^{-1} = - \mathbb{W}, c = \frac{1}{2}\mathbb{\mu}^T \mathbb{\Sigma}^{-1}\mu \end{equation}

we can rewrite this in a form that looks similar to a Gaussian:

\begin{equation} \log \tilde{p}(\mathbb{y}) = - \frac{1}{2}(\mathbb{y} - \mathbb{\mu})^T \Sigma ^{-1} (\mathbb{y} - \mathbb{\mu}) + c \end{equation}