Package edu.cmu.tetrad.search.score
Class PoissonPriorScore
java.lang.Object
edu.cmu.tetrad.search.score.PoissonPriorScore
- All Implemented Interfaces:
Score
Implements Poisson prior score, a novel (unpubished) score that replaces the penalty term in BIC by the log of the Poisson distribution. The Poisson distribution has a lambda parameter, which is made a parameter of this score and acts like a structure prior for the score.
Here is the Wikipedia page for the Poisson distribution, for reference:
https://en.wikipedia.org/wiki/Poisson_distribution
As for all scores in Tetrad, higher scores mean more dependence, and negative scores indicate independence.
- Author:
- bryanandrews, josephramsey
-
Constructor Summary
ConstructorsConstructorDescriptionPoissonPriorScore(DataSet dataSet, boolean precomputeCovariances) Constructs the score using a covariance matrix.PoissonPriorScore(ICovarianceMatrix covariances) Constructs the score using a covariance matrix. -
Method Summary
Modifier and TypeMethodDescriptionbooleandetermines(List<Node> z, Node y) Returns true iff the score determines the edge between x and y.getData()intReturns the max degree, by default 1000.intThe sample size of the data.The variables of the score.booleanisEffectEdge(double bump) Returns true iff the edge between x and y is an effect edge.doublelocalScore(int i, int... parents) The score of a node given its parents.doublelocalScoreDiff(int x, int y, int[] z) Returns the score difference of the graph.voidsetLambda(double lambda) voidsetVerbose(boolean verbose) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface edu.cmu.tetrad.search.score.Score
append, getVariable, localScore, localScore, localScoreDiff, toString
-
Constructor Details
-
PoissonPriorScore
Constructs the score using a covariance matrix. -
PoissonPriorScore
Constructs the score using a covariance matrix.
-
-
Method Details
-
localScoreDiff
public double localScoreDiff(int x, int y, int[] z) Description copied from interface:ScoreReturns the score difference of the graph.- Specified by:
localScoreDiffin interfaceScore- Parameters:
x- A node.y- TAhe node.z- A set of nodes.- Returns:
- The score difference.
-
localScore
Description copied from interface:ScoreThe score of a node given its parents.- Specified by:
localScorein interfaceScore- Parameters:
i- The index of the node.parents- The indices of the node's parents.- Returns:
- The score, or NaN if the score cannot be calculated.
- Throws:
RuntimeException
-
getCovariances
-
getSampleSize
public int getSampleSize()Description copied from interface:ScoreThe sample size of the data.- Specified by:
getSampleSizein interfaceScore- Returns:
- This size.
-
isEffectEdge
public boolean isEffectEdge(double bump) Description copied from interface:ScoreReturns true iff the edge between x and y is an effect edge.- Specified by:
isEffectEdgein interfaceScore- Parameters:
bump- The bump.- Returns:
- True iff the edge between x and y is an effect edge.
-
setVerbose
public void setVerbose(boolean verbose) -
getVariables
Description copied from interface:ScoreThe variables of the score.- Specified by:
getVariablesin interfaceScore- Returns:
- This list.
-
getMaxDegree
public int getMaxDegree()Description copied from interface:ScoreReturns the max degree, by default 1000.- Specified by:
getMaxDegreein interfaceScore- Returns:
- The max degree.
-
determines
Description copied from interface:ScoreReturns true iff the score determines the edge between x and y.- Specified by:
determinesin interfaceScore- Parameters:
z- The set of nodes.y- The node.- Returns:
- True iff the score determines the edge between x and y.
-
getData
-
setLambda
public void setLambda(double lambda)
-