Class DegenerateGaussianScore

java.lang.Object
edu.cmu.tetrad.search.score.DegenerateGaussianScore
All Implemented Interfaces:
Score

public class DegenerateGaussianScore extends Object implements Score

This implements the degenerate Gaussian BIC score for FGES. The degenerate Gaussian score replaces each discrete variable in the data with a list of 0/1 continuous indicator columns for each of the categories but one (the last one implied). This data, now all continuous, is given to the SEM BIC score and methods used to help determine conditional independence for the mixed continuous/discrete case from this information. The references is as follows:

Andrews, B., Ramsey, J., & Cooper, G. F. (2019, July). Learning high-dimensional directed acyclic graphs with mixed data-types. In The 2019 ACM SIGKDD Workshop on Causal Discovery (pp. 4-21). PMLR.

As for all scores in Tetrad, higher scores mean more dependence, and negative scores indicate independence.

Author:
Bryan Andrews
  • Constructor Details

    • DegenerateGaussianScore

      public DegenerateGaussianScore(DataSet dataSet, boolean precomputeCovariances)
  • Method Details

    • localScore

      public double localScore(int i, int... parents)
      Calculates the sample likelihood and BIC score for i given its parents in a simple SEM model. s
      Specified by:
      localScore in interface Score
      Parameters:
      i - The child indes.
      parents - The indices of the parents.
      Returns:
      The score.
    • localScoreDiff

      public double localScoreDiff(int x, int y, int[] z)
      Specified by:
      localScoreDiff in interface Score
    • getVariables

      public List<Node> getVariables()
      Description copied from interface: Score
      The variables of the score.
      Specified by:
      getVariables in interface Score
      Returns:
      This list.
    • isEffectEdge

      public boolean isEffectEdge(double bump)
      Specified by:
      isEffectEdge in interface Score
    • getSampleSize

      public int getSampleSize()
      Description copied from interface: Score
      The sample size of the data.
      Specified by:
      getSampleSize in interface Score
      Returns:
      This size.
    • getMaxDegree

      public int getMaxDegree()
      Specified by:
      getMaxDegree in interface Score
    • toString

      public String toString()
      Description copied from interface: Score
      A string representation of the score.
      Specified by:
      toString in interface Score
      Overrides:
      toString in class Object
      Returns:
      This string.
    • getPenaltyDiscount

      public double getPenaltyDiscount()
    • setPenaltyDiscount

      public void setPenaltyDiscount(double penaltyDiscount)