treeple.experimental.mutual_info.cmi_gaussian#

treeple.experimental.mutual_info.cmi_gaussian(cov, x_index, y_index, z_index)[source]#

Compute the analytical CMI for a multivariate Gaussian distribution.

Parameters:
covarray_like of shape (d,d)

The covariance matrix of the distribution.

x_indexlist or int

List of indices in cov that are for the X variable.

y_indexlist or int

List of indices in cov that are for the Y variable.

z_indexlist or int

List of indices in cov that are for the Z variable.

Returns:
true_mifloat

The true analytical mutual information of the generated multivariate Gaussian distribution.

Notes

Analytical solution for conditional mutual information, \(I(X;Y|Z)\) of a multivariate Gaussian is given by:

I(X;Y | Z) = H(X, Z) + H(Y, Z) - H(Z) - H(X, Y, Z)

where we plug in the analytical solutions for entropy as shown in entropy_gaussian().