Class IcaLingD

java.lang.Object
edu.cmu.tetrad.search.IcaLingD

public class IcaLingD extends Object
Implements the ICA-LiNG-D algorithm as well as a some auxiliary methods for ICA-LiNG-D and ICA-LiNGAM. The reference is here:

Lacerda, G., Spirtes, P. L., Ramsey, J., & Hoyer, P. O. (2012). Discovering cyclic causal models by independent components analysis. arXiv preprint arXiv:1206.3273.

ICA-LING-D is a method for estimating a possible cyclic linear models graph from a dataset. It is based on the assumption that the data are generated by a linear model with non-Gaussian noise. The method is based on the following assumptions: (1) The data are generated by a linear model with non-Gaussian noise. (2) The noise is independent across variables. (3) The noises for all but possibly one variable are non-Gaussian. (4) There is no unobserved confounding.

Under these assumptions, the method estimates matrices W such that WX = e, where X is the data matrix, e is a matrix of noise, and W is a matrix of coefficients. The matrix W is then used to estimate a matrix B Hat, where B Hat is the matrix of coefficients in the linear model that generated the data. The graph is then estimated by finding edges in B Hat.

We use the N Rooks algorithm to find alternative diagonals for permutations of the W matrix. The parameter that N Rooks requires is a threshold for entries in W to be sent to zero; the implied permutations is the permutations that permutes rows so that these combinations lie along their respective diagonals in W, which are then scaled, and the separate satisfactory B Hat matrices reported. These B Hat matrices are then thresholded as well, using a separate threshold for B matrices. Unlike ICA-LiNGAM, an acyclic model is not assumed.

If the verbose flag is set to true ('Yes'), all stable and unstable models are printed to the console with both their B Hat matrices and graphs. If a stable model is found, it is returned; otherwise, an empty graph is returned.

This class does not use knowledge of forbidden and required edges.

Version:
$Id: $Id
Author:
peterspirtes, gustavolacerda, patrickhoyer, josephramsey
See Also: