Search in sources :

Example 1 with SemBicScore

use of edu.cmu.tetrad.algcomparison.score.SemBicScore in project tetrad by cmu-phil.

the class TimeoutComparisonTest method getAlgorithms.

private static Algorithms getAlgorithms() {
    Algorithms algorithms = new Algorithms();
    algorithms.add(new Gfci(new FisherZ(), new SemBicScore()));
    return algorithms;
}
Also used : Algorithms(edu.cmu.tetrad.algcomparison.algorithm.Algorithms) FisherZ(edu.cmu.tetrad.algcomparison.independence.FisherZ) Gfci(edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.Gfci) SemBicScore(edu.cmu.tetrad.algcomparison.score.SemBicScore)

Example 2 with SemBicScore

use of edu.cmu.tetrad.algcomparison.score.SemBicScore in project tetrad by cmu-phil.

the class TsImages method search.

@Override
public Graph search(List<DataModel> dataSets, Parameters parameters) {
    List<DataModel> dataModels = new ArrayList<>();
    for (DataModel dataSet : dataSets) {
        dataModels.add(dataSet);
    }
    TsGFci search;
    if (score instanceof SemBicScore) {
        SemBicScoreImages gesScore = new SemBicScoreImages(dataModels);
        gesScore.setPenaltyDiscount(parameters.getDouble("penaltyDiscount"));
        IndependenceTest test = new IndTestScore(gesScore);
        search = new TsGFci(test, gesScore);
    } else if (score instanceof BdeuScore) {
        double samplePrior = parameters.getDouble("samplePrior", 1);
        double structurePrior = parameters.getDouble("structurePrior", 1);
        BdeuScoreImages score = new BdeuScoreImages(dataModels);
        score.setSamplePrior(samplePrior);
        score.setStructurePrior(structurePrior);
        IndependenceTest test = new IndTestScore(score);
        search = new TsGFci(test, score);
    } else {
        throw new IllegalStateException("Sorry, data must either be all continuous or all discrete.");
    }
    IKnowledge knowledge = dataModels.get(0).getKnowledge();
    search.setKnowledge(knowledge);
    return search.search();
}
Also used : BdeuScoreImages(edu.cmu.tetrad.search.BdeuScoreImages) IKnowledge(edu.cmu.tetrad.data.IKnowledge) IndependenceTest(edu.cmu.tetrad.search.IndependenceTest) SemBicScoreImages(edu.cmu.tetrad.search.SemBicScoreImages) DataModel(edu.cmu.tetrad.data.DataModel) IndTestScore(edu.cmu.tetrad.search.IndTestScore) BdeuScore(edu.cmu.tetrad.algcomparison.score.BdeuScore) ArrayList(java.util.ArrayList) TsGFci(edu.cmu.tetrad.search.TsGFci) SemBicScore(edu.cmu.tetrad.algcomparison.score.SemBicScore)

Example 3 with SemBicScore

use of edu.cmu.tetrad.algcomparison.score.SemBicScore in project tetrad by cmu-phil.

the class ExampleCompareSimulation method main.

public static void main(String... args) {
    Parameters parameters = new Parameters();
    https: parameters.set("numRuns", 10);
    parameters.set("numMeasures", 100);
    parameters.set("avgDegree", 4, 6);
    parameters.set("sampleSize", 500);
    parameters.set("alpha", 1e-4, 1e-3, 1e-2);
    Statistics statistics = new Statistics();
    statistics.add(new AdjacencyPrecision());
    statistics.add(new AdjacencyRecall());
    statistics.add(new ArrowheadPrecision());
    statistics.add(new ArrowheadRecall());
    statistics.add(new MathewsCorrAdj());
    statistics.add(new MathewsCorrArrow());
    statistics.add(new F1Adj());
    statistics.add(new F1Arrow());
    statistics.add(new SHD());
    statistics.add(new ElapsedTime());
    statistics.setWeight("AP", 1.0);
    statistics.setWeight("AR", 0.5);
    Algorithms algorithms = new Algorithms();
    algorithms.add(new Pc(new FisherZ()));
    algorithms.add(new Cpc(new FisherZ(), new Fges(new SemBicScore(), false)));
    algorithms.add(new PcStable(new FisherZ()));
    algorithms.add(new CpcStable(new FisherZ()));
    Simulations simulations = new Simulations();
    simulations.add(new SemSimulation(new RandomForward()));
    Comparison comparison = new Comparison();
    comparison.setShowAlgorithmIndices(true);
    comparison.setShowSimulationIndices(true);
    comparison.setSortByUtility(true);
    comparison.setShowUtilities(true);
    comparison.setParallelized(true);
    comparison.compareFromSimulations("comparison", simulations, algorithms, statistics, parameters);
}
Also used : Simulations(edu.cmu.tetrad.algcomparison.simulation.Simulations) Parameters(edu.cmu.tetrad.util.Parameters) SemSimulation(edu.cmu.tetrad.algcomparison.simulation.SemSimulation) RandomForward(edu.cmu.tetrad.algcomparison.graph.RandomForward) Algorithms(edu.cmu.tetrad.algcomparison.algorithm.Algorithms) FisherZ(edu.cmu.tetrad.algcomparison.independence.FisherZ) Comparison(edu.cmu.tetrad.algcomparison.Comparison) SemBicScore(edu.cmu.tetrad.algcomparison.score.SemBicScore)

Example 4 with SemBicScore

use of edu.cmu.tetrad.algcomparison.score.SemBicScore in project tetrad by cmu-phil.

the class ExampleCompareSimulationTimeSeries method main.

public static void main(String... args) {
    Parameters parameters = new Parameters();
    parameters.set("numRuns", 10);
    parameters.set("numMeasures", 10);
    parameters.set("avgDegree", 4);
    parameters.set("sampleSize", 500);
    parameters.set("alpha", 1e-4, 1e-3, 1e-2);
    Statistics statistics = new Statistics();
    statistics.add(new AdjacencyPrecision());
    statistics.add(new AdjacencyRecall());
    statistics.add(new ArrowheadPrecision());
    statistics.add(new ArrowheadRecall());
    statistics.add(new MathewsCorrAdj());
    statistics.add(new MathewsCorrArrow());
    statistics.add(new F1Adj());
    statistics.add(new F1Arrow());
    statistics.add(new SHD());
    statistics.add(new ElapsedTime());
    statistics.setWeight("AP", 1.0);
    statistics.setWeight("AR", 0.5);
    Algorithms algorithms = new Algorithms();
    algorithms.add(new TsFci(new FisherZ()));
    algorithms.add(new TsGfci(new FisherZ(), new SemBicScore()));
    algorithms.add(new TsImages(new SemBicScore()));
    Simulations simulations = new Simulations();
    simulations.add(new TimeSeriesSemSimulation(new RandomForward()));
    Comparison comparison = new Comparison();
    comparison.setSortByUtility(true);
    comparison.setShowUtilities(true);
    comparison.compareFromSimulations("comparison", simulations, algorithms, statistics, parameters);
}
Also used : Simulations(edu.cmu.tetrad.algcomparison.simulation.Simulations) Parameters(edu.cmu.tetrad.util.Parameters) RandomForward(edu.cmu.tetrad.algcomparison.graph.RandomForward) TsGfci(edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.TsGfci) TimeSeriesSemSimulation(edu.cmu.tetrad.algcomparison.simulation.TimeSeriesSemSimulation) Algorithms(edu.cmu.tetrad.algcomparison.algorithm.Algorithms) FisherZ(edu.cmu.tetrad.algcomparison.independence.FisherZ) Comparison(edu.cmu.tetrad.algcomparison.Comparison) TsFci(edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.TsFci) TsImages(edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.TsImages) SemBicScore(edu.cmu.tetrad.algcomparison.score.SemBicScore)

Example 5 with SemBicScore

use of edu.cmu.tetrad.algcomparison.score.SemBicScore in project tetrad by cmu-phil.

the class TsImagesSemBic method getParameters.

@Override
public List<String> getParameters() {
    List<String> parameters = new Fges(new SemBicScore(), false).getParameters();
    parameters.add("randomSelectionSize");
    // Bootstrapping
    parameters.add("bootstrapSampleSize");
    parameters.add("bootstrapEnsemble");
    parameters.add("verbose");
    return parameters;
}
Also used : Fges(edu.cmu.tetrad.algcomparison.algorithm.oracle.pattern.Fges) SemBicScore(edu.cmu.tetrad.algcomparison.score.SemBicScore)

Aggregations

SemBicScore (edu.cmu.tetrad.algcomparison.score.SemBicScore)17 Parameters (edu.cmu.tetrad.util.Parameters)13 Algorithms (edu.cmu.tetrad.algcomparison.algorithm.Algorithms)12 Comparison (edu.cmu.tetrad.algcomparison.Comparison)11 Simulations (edu.cmu.tetrad.algcomparison.simulation.Simulations)9 Fges (edu.cmu.tetrad.algcomparison.algorithm.oracle.pattern.Fges)7 FisherZ (edu.cmu.tetrad.algcomparison.independence.FisherZ)5 RandomForward (edu.cmu.tetrad.algcomparison.graph.RandomForward)4 Algorithm (edu.cmu.tetrad.algcomparison.algorithm.Algorithm)3 Gfci (edu.cmu.tetrad.algcomparison.algorithm.oracle.pag.Gfci)3 ScoreWrapper (edu.cmu.tetrad.algcomparison.score.ScoreWrapper)3 FirstInflection (edu.cmu.tetrad.algcomparison.algorithm.FirstInflection)2 IndependenceWrapper (edu.cmu.tetrad.algcomparison.independence.IndependenceWrapper)2 LinearFisherModel (edu.cmu.tetrad.algcomparison.simulation.LinearFisherModel)2 DataSet (edu.cmu.tetrad.data.DataSet)2 Graph (edu.cmu.tetrad.graph.Graph)2 LargeScaleSimulation (edu.cmu.tetrad.sem.LargeScaleSimulation)2 GeneralBootstrapTest (edu.pitt.dbmi.algo.bootstrap.GeneralBootstrapTest)2 Test (org.junit.Test)2 StARS (edu.cmu.tetrad.algcomparison.algorithm.StARS)1