Class BlockDiscoverers

java.lang.Object
edu.cmu.tetrad.search.blocks.BlockDiscoverers

public final class BlockDiscoverers extends Object
A utility class providing static factory methods for creating instances of various BlockDiscoverer implementations. Each implementation represents a specific algorithm for discovering clusters or "blocks" of indices in a dataset, based on provided data, statistical criteria, and algorithm-specific parameters.

This class is immutable and cannot be instantiated.

  • Method Summary

    Modifier and Type
    Method
    Description
    bpc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
    Constructs a BpcBlockDiscoverer instance, which implements the BPC algorithm for discovering clusters or "blocks" of indices in a dataset.
    fofc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
    Creates a new instance of a FofcBlockDiscoverer, which is an implementation of the BlockDiscoverer interface.
    ftfc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
    Constructs a FtfcBlockDiscoverer instance, which implements the FTFC algorithm for discovering clusters or "blocks" of indices in a dataset.
    gffc(DataSet data, double alpha, int ess, int rMax, SingleClusterPolicy policy, boolean verbose)
    Constructs a GffcBlockDiscoverer instance, which implements the GFFC algorithm for discovering clusters or "blocks" of indices in a dataset.
    tsc(DataSet data, double alpha, int ess, double ridge, int rMax, SingleClusterPolicy policy, int minRedundancy, boolean verbose)
    Creates a new instance of a TscTestBlockDiscoverer, which is an implementation of the BlockDiscoverer interface.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • bpc

      public static BlockDiscoverer bpc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
      Constructs a BpcBlockDiscoverer instance, which implements the BPC algorithm for discovering clusters or "blocks" of indices in a dataset. The BPC algorithm utilizes statistical criteria and configurable parameters to identify meaningful groupings of variables within the data.
      Parameters:
      data - the dataset on which the block discovery algorithm will operate
      alpha - the significance level for the statistical tests, typically a value between 0 and 1
      ess - the equivalent sample size, determining the strength of prior information in scoring
      policy - the single-cluster policy applied to manage how individual clusters or blocks are processed
      verbose - a flag indicating whether verbose output is enabled for debugging or detailed logs
      Returns:
      a BpcBlockDiscoverer instance configured with the specified parameters
    • fofc

      public static BlockDiscoverer fofc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
      Creates a new instance of a FofcBlockDiscoverer, which is an implementation of the BlockDiscoverer interface. This method utilizes the FOFC algorithm to discover clusters or "blocks" of indices in a dataset based on statistical criteria and additional configurable parameters. The FOFC algorithm is designed to identify meaningful groupings of variables or features in the data, using parameters such as statistical significance level, equivalent sample size, and a policy for managing single-cluster constraints.
      Parameters:
      data - the dataset on which the block discovery algorithm will operate
      alpha - the significance level used in the statistical tests, typically a value between 0 and 1
      ess - the equivalent sample size, controlling the strength of prior information in scoring
      policy - the single-cluster policy applied to manage how individual clusters or blocks are processed
      verbose - a flag indicating whether verbose output is enabled for debugging or detailed logs
      Returns:
      a FofcBlockDiscoverer instance configured with the specified parameters
    • ftfc

      public static BlockDiscoverer ftfc(DataSet data, double alpha, int ess, SingleClusterPolicy policy, boolean verbose)
      Constructs a FtfcBlockDiscoverer instance, which implements the FTFC algorithm for discovering clusters or "blocks" of indices in a dataset. The FTFC algorithm uses statistical measures and configurable parameters to identify meaningful groupings of variables within the data.
      Parameters:
      data - the dataset on which the block discovery algorithm will operate
      alpha - the significance level for the statistical tests, typically a value between 0 and 1
      ess - the equivalent sample size, which determines the strength of prior information used in scoring
      policy - the single-cluster policy applied to manage how individual clusters or blocks are processed
      verbose - a flag indicating whether verbose output is enabled for debugging or detailed logs
      Returns:
      a FtfcBlockDiscoverer instance configured with the specified parameters
    • gffc

      public static BlockDiscoverer gffc(DataSet data, double alpha, int ess, int rMax, SingleClusterPolicy policy, boolean verbose)
      Constructs a GffcBlockDiscoverer instance, which implements the GFFC algorithm for discovering clusters or "blocks" of indices in a dataset. The GFFC algorithm utilizes statistical measures, configurable parameters, and constraints to identify meaningful groupings of variables within the data.
      Parameters:
      data - the dataset on which the block discovery algorithm will operate
      alpha - the significance level for the statistical tests, typically a value between 0 and 1
      ess - the equivalent sample size, determining the strength of prior information in scoring
      rMax - the maximum size of the clusters or blocks to consider during the discovery process
      policy - the single-cluster policy applied to manage clusters or blocks during the process
      verbose - a flag indicating whether verbose output is enabled for debugging or detailed logs
      Returns:
      a GffcBlockDiscoverer instance configured with the specified parameters
    • tsc

      public static BlockDiscoverer tsc(DataSet data, double alpha, int ess, double ridge, int rMax, SingleClusterPolicy policy, int minRedundancy, boolean verbose)
      Creates a new instance of a TscTestBlockDiscoverer, which is an implementation of the BlockDiscoverer interface. This method utilizes the TSC algorithm to discover clusters or "blocks" of indices based on the provided dataset and statistical criteria.

      The TSC algorithm is designed to perform block discovery using specific parameters such as statistical significance level, equivalent sample size, a ridge regularization value, redundancy constraints, and a maximum block size.

      Parameters:
      data - the dataset on which the block discovery algorithm will operate
      alpha - the significance level used in statistical tests, typically between 0 and 1
      ess - the equivalent sample size, controlling the strength of prior information in scoring
      ridge - the ridge regularization parameter used to stabilize covariance matrix calculations
      rMax - the maximum size of the blocks to consider during the discovery process
      policy - the single-cluster policy applied to manage how clusters or blocks are processed
      minRedundancy - the minimum redundancy threshold to ensure the quality of the discovered blocks
      verbose - a flag indicating whether verbose output is enabled for debugging or detailed logs
      Returns:
      a TscTestBlockDiscoverer instance configured with the specified parameters