Class Bpc
The reference for BPC is this:
Silva, R., Scheines, R., Glymour, C., Spirtes, P., & Chickering, D. M. (2006). Learning the Structure of Linear Latent Variable Models. Journal of Machine Learning Research, 7(2).
For a more detailed description of the algorithm, see the paper above. The algorithm is based on the idea of finding cliques in the graph of the covariance matrix. The algorithm is initialized by finding all maximal cliques in the graph of the covariance matrix. Then, the algorithm iterates over the cliques, and for each clique, it tests whether the clique is explained by a single latent. If so, the clique is added to the set of clusters. If not, the clique is partitioned into smaller cliques, and the process is repeated for each of the smaller cliques. The algorithm stops when all cliques have been tested.
Some more References:
Silva, R.; Scheines, R.; Spirtes, P.; Glymour, C. (2003). "Learning measurement models". Technical report CMU-CALD-03-100, Center for Automated Learning and Discovery, Carnegie Mellon University.
Bollen, K. (1990). "Outlier screening and distribution-free test for vanishing tetrads." Sociological Methods and Research 19, 80-92.
Wishart, J. (1928). "Sampling errors in the theory of two factors". British Journal of Psychology 19, 180-187.
Bron, C. and Kerbosch, J. (1973) "Algorithm 457: Finding all cliques of an undirected graph". Communications of ACM 16, 575-577.
This class is not configured to respect knowledge of forbidden and required edges.
- Version:
- $Id: $Id
- Author:
- Ricardo Silva
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionBpc
(DataSet dataSet, double alpha, BpcTestType sigTestType) Constructor.Bpc
(ICovarianceMatrix covarianceMatrix, double alpha, BpcTestType sigTestType) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionReturns the wrapped covariance matrix.search()
Runs the search and returns the graph, or null if there is no model.void
setCheckType
(ClusterSignificance.CheckType checkType) Sets the cluster significance type.
-
Constructor Details
-
Bpc
Constructor.- Parameters:
covarianceMatrix
- The covariance matrix to analyze.alpha
- The significance cutoff to use.sigTestType
- The type of the significance test to use.- See Also:
-
Bpc
Constructor.- Parameters:
dataSet
- The dataset to analyze.alpha
- The significance cutoff to use.sigTestType
- The type of the significance test to use.- See Also:
-
-
Method Details
-
search
Runs the search and returns the graph, or null if there is no model. This will be a graph with clusters having their latents as parents.- Returns:
- This graph.
- Throws:
InterruptedException
-
getCovarianceMatrix
Returns the wrapped covariance matrix.- Returns:
- This.
-
setCheckType
Sets the cluster significance type.- Parameters:
checkType
- This type- See Also:
-