Class ImagesScore
- All Implemented Interfaces:
Score
Implements a score to average results over multiple scores. This is used for the IMaGES algorithm. The idea is that one pick and algorithm that takes (only) a score as input, such as FGES or GRaSP or BOSS, and then constructs an ImagesScore (which class) with a list of datasets as input, using same object-identical variables, and feeds this Images score to this algorithm through the contructor. One then runs the algorithm to get an estimate of the structure.
Importantly, only the variables from the first score will be returned from the getVariables method, so it is up to the user to ensure that all of the scores share the same (object-identical) variables.
As for all scores in Tetrad, higher scores mean more dependence, and negative scores indicate independence.
-
Constructor Summary
ConstructorsConstructorDescriptionImagesScore
(List<Score> scores) Constructs an IMaGES score using the given list of individual scores. -
Method Summary
Modifier and TypeMethodDescriptionboolean
determines
(List<Node> z, Node y) Returns the 'determines' judgment from the first score.int
Returns the max degree from teh first score.int
Returns the sample size from the first score.Returns the variables.boolean
isEffectEdge
(double bump) Returns true iff the edge between x and y is an effect edge.double
localScore
(int i) Returns the (aggregate) local node score, which is obtained by averaging the local scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).double
localScore
(int i, int parent) Returns the (aggregate) local score for a variable given one of its parents, which is obtained by averaging the local such scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).double
localScore
(int i, int[] parents) Returns the (aggregate) local score for a variable given its parents, which is obtained by averaging the local such scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).double
localScore
(int i, int[] parents, int index) double
localScoreDiff
(int x, int y, int[] z) Returns the average of the individual scores returned from each component score from their localScoreDiff methods.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface edu.cmu.tetrad.search.score.Score
append, getVariable, localScoreDiff, toString
-
Constructor Details
-
ImagesScore
Constructs an IMaGES score using the given list of individual scores. These scores will be averaged to obtain the IMaGES score itself.- Parameters:
scores
- The list of scores.
-
-
Method Details
-
localScoreDiff
public double localScoreDiff(int x, int y, int[] z) Returns the average of the individual scores returned from each component score from their localScoreDiff methods. Score differences that are returned as undefined (NaN) are excluded from the average.- Specified by:
localScoreDiff
in interfaceScore
- Parameters:
x
- A node.y
- TAhe node.z
- A set of nodes.- Returns:
- This average score.
-
localScore
public double localScore(int i, int[] parents) Returns the (aggregate) local score for a variable given its parents, which is obtained by averaging the local such scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).- Specified by:
localScore
in interfaceScore
- Parameters:
i
- The variable whose score is needed.parents
- The parents.- Returns:
- This score.
-
localScore
public double localScore(int i, int[] parents, int index) -
localScore
public double localScore(int i, int parent) Returns the (aggregate) local score for a variable given one of its parents, which is obtained by averaging the local such scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).- Specified by:
localScore
in interfaceScore
- Parameters:
i
- The variable whose score is needed.parent
- A parent.- Returns:
- This score.
-
localScore
public double localScore(int i) Returns the (aggregate) local node score, which is obtained by averaging the local scores obtained from each individual score provided in the constructor, excluding scores that are returned as undefined (which are left out of the average).- Specified by:
localScore
in interfaceScore
- Parameters:
i
- The variable whose score is needed.- Returns:
- This score.
-
isEffectEdge
public boolean isEffectEdge(double bump) Description copied from interface:Score
Returns true iff the edge between x and y is an effect edge.- Specified by:
isEffectEdge
in interfaceScore
- Parameters:
bump
- The bump.- Returns:
- True iff the edge between x and y is an effect edge.
-
getVariables
Returns the variables.- Specified by:
getVariables
in interfaceScore
- Returns:
- This list.
-
getSampleSize
public int getSampleSize()Returns the sample size from the first score.- Specified by:
getSampleSize
in interfaceScore
- Returns:
- This size.
-
getMaxDegree
public int getMaxDegree()Returns the max degree from teh first score.- Specified by:
getMaxDegree
in interfaceScore
- Returns:
- This maximum.
-
determines
Returns the 'determines' judgment from the first score.- Specified by:
determines
in interfaceScore
- Parameters:
z
- The set of nodes.y
- The node.- Returns:
- This judgment, true if the 'determine' relations holds.
-