Package statechum.analysis.learning.PrecisionRecall

Examples of statechum.analysis.learning.PrecisionRecall.ConfusionMatrix


  public void testClassify6()
  {
    LearnerGraph from = buildLearnerGraph("A-a->A-b->B / A-c-#C","testClassify1a",mainConfiguration,converter),
    to=buildLearnerGraph("A-b->A-a->B","testClassify1b",mainConfiguration,converter);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"a","a"} // FN
        ,new String[]{"b","b"} // FP
    },mainConfiguration,converter), from, to);
    Assert.assertEquals(0.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here


  public void testClassify7()
  {
    LearnerGraph from = buildLearnerGraph("A-a->A-b->B / A-c-#C","testClassify1a",mainConfiguration,converter),
    to=buildLearnerGraph("A-b->A-a->B","testClassify1b",mainConfiguration,converter);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"a","a"} // FN
        ,new String[]{"b","b"} // FP
        ,new String[]{"c"} // TN
    },mainConfiguration,converter), from, to);
    Assert.assertEquals(0.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.25,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

  public void testClassify8()
  {
    LearnerGraph from = buildLearnerGraph("A-a->A-b->B / A-c-#C","testClassify1a",mainConfiguration,converter),
    to=buildLearnerGraph("A-b->A-a->B","testClassify1b",mainConfiguration,converter);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[] {"a"} // TP
        ,new String[] {"b"} // TP
        ,new String[]{"b","b"} // FP
        ,new String[]{"c"} // TN
    },mainConfiguration,converter), from, to);
    Assert.assertEquals(2./3.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(1,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.8,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.75,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

     * @param cpuNumber the number of processors to use. Usually set to 1 because we run as many experiments as there are CPUs and so individual experiments should not consume more computational power than we have available for them.
     */
    public static DifferenceToReferenceLanguage estimationOfDifference(LearnerGraph referenceGraph, LearnerGraph actualAutomaton, Collection<List<Label>> testSet)
    {
           LearnerGraph learntGraph = new LearnerGraph(actualAutomaton.config);AbstractPathRoutines.removeRejectStates(actualAutomaton,learntGraph);
           ConfusionMatrix mat = DiffExperiments.classify(testSet, referenceGraph, learntGraph);
      return new DifferenceToReferenceLanguage(mat);
    }
View Full Code Here

     * @param cpuNumber the number of processors to use. Usually set to 1 because we run as many experiments as there are CPUs and so individual experiments should not consume more computational power than we have available for them.
     */
    public static DifferenceToReferenceLanguageBCR estimationOfDifference(LearnerGraph referenceGraph, LearnerGraph actualAutomaton, Collection<List<Label>> testSet)
    {
           LearnerGraph learntGraph = new LearnerGraph(actualAutomaton.config);AbstractPathRoutines.removeRejectStates(actualAutomaton,learntGraph);
           ConfusionMatrix mat = DiffExperiments.classify(testSet, referenceGraph, learntGraph);
      return new DifferenceToReferenceLanguageBCR(mat);
    }
View Full Code Here

  {
    Configuration config = Configuration.getDefaultConfiguration();
    LearnerGraph from = new LearnerGraph(buildGraph("A-a->A-b->B / A-c-#C","testClassify1a"),config),
    to=new LearnerGraph(buildGraph("A-b->A-a->B","testClassify1b"),config);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"a"}
    }), from, to);
    Assert.assertEquals(1.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(1.,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(1.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

  {
    Configuration config = Configuration.getDefaultConfiguration();
    LearnerGraph from = new LearnerGraph(buildGraph("A-a->A-b->B / A-c-#C","testClassify1a"),config),
    to=new LearnerGraph(buildGraph("A-b->A-a->B","testClassify1b"),config);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"notransition"}
    }), from, to);
    Assert.assertEquals(0.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(1.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

  {
    Configuration config = Configuration.getDefaultConfiguration();
    LearnerGraph from = new LearnerGraph(buildGraph("A-a->A-b->B / A-c-#C","testClassify1a"),config),
    to=new LearnerGraph(buildGraph("A-b->A-a->B","testClassify1b"),config);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"c"}
    }), from, to);
    Assert.assertEquals(0.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(1.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

  {
    Configuration config = Configuration.getDefaultConfiguration();
    LearnerGraph from = new LearnerGraph(buildGraph("A-a->A-b->B / A-c-#C","testClassify1a"),config),
    to=new LearnerGraph(buildGraph("A-b->A-a->B","testClassify1b"),config);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"a","a"} // FN
    }), from, to);
    Assert.assertEquals(0.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

  {
    Configuration config = Configuration.getDefaultConfiguration();
    LearnerGraph from = new LearnerGraph(buildGraph("A-a->A-b->B / A-c-#C","testClassify1a"),config),
    to=new LearnerGraph(buildGraph("A-b->A-a->B","testClassify1b"),config);
   
    ConfusionMatrix matrix = DiffExperiments.classify(TestFSMAlgo.buildSet(new String[][]{
        new String[]{"a","a"} // FN
        ,new String[]{"b"} // TP
    }), from, to);
    Assert.assertEquals(1.,matrix.getPrecision(),Configuration.fpAccuracy);
    Assert.assertEquals(0.5,matrix.getRecall(),Configuration.fpAccuracy);
    Assert.assertEquals(0.66666666,matrix.fMeasure(),Configuration.fpAccuracy);
    Assert.assertEquals(0.,matrix.getSpecificity(),Configuration.fpAccuracy);
    Assert.assertEquals(0.25,matrix.BCR(),Configuration.fpAccuracy);
  }
View Full Code Here

TOP

Related Classes of statechum.analysis.learning.PrecisionRecall.ConfusionMatrix

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.