Package opennlp.maxent

Examples of opennlp.maxent.GISModel.eval()


      List<String> features = fe.getFeatures(entity);
      String type = entity.getType();
      if(modelsByType.containsKey(type)) {
        GISModel model = modelsByType.get(type);
        if(model.getNumOutcomes() == 2) {
          double prob = model.eval(features.toArray(new String[0]))[model.getIndex("T")];
          entity.setConfidence(prob);
        }
      }
    }
  }
View Full Code Here


      List<String> features = fe.getFeatures(entity);
      String type = entity.getType();
      if(modelsByType.containsKey(type)) {
        GISModel model = modelsByType.get(type);
        if(model.getNumOutcomes() == 2) {
          double prob = model.eval(features.toArray(new String[0]))[model.getIndex("T")];
          //System.out.println(entity.getConfidence() + "\t->\t" + prob);
         
          double conf = entity.getConfidence();
         
          double prob2 = prob;
View Full Code Here

      if(outcomeIndex == -1) continue;
      List<String> features = extractor.getFeatures(i);
      if(features.size() == 0) continue;
      String [] featuresArray = features.toArray(new String[0]);
      String [] newFeaturesArray = features.toArray(new String[0]);
      double [] baseProbs = gm.eval(featuresArray);
      for(int j=0;j<features.size();j++) {
        newFeaturesArray[j] = "IGNORETHIS";
        double [] newProbs = gm.eval(newFeaturesArray);
        double gain = infoLoss(newProbs, outcomeIndex) - infoLoss(baseProbs, outcomeIndex);
        if(Double.isNaN(gain)) gain = 0.0;
View Full Code Here

      String [] featuresArray = features.toArray(new String[0]);
      String [] newFeaturesArray = features.toArray(new String[0]);
      double [] baseProbs = gm.eval(featuresArray);
      for(int j=0;j<features.size();j++) {
        newFeaturesArray[j] = "IGNORETHIS";
        double [] newProbs = gm.eval(newFeaturesArray);
        double gain = infoLoss(newProbs, outcomeIndex) - infoLoss(baseProbs, outcomeIndex);
        if(Double.isNaN(gain)) gain = 0.0;
        String feature = features.get(j);
        double oldScore = 0.0;
        if(scoresForPrev.containsKey(feature)) oldScore = scoresForPrev.get(feature);
View Full Code Here

    GISModel gm = GIS.trainModel(100, di);
   
    //ClassificationEvaluator ce = new ClassificationEvaluator();
   
    for(Event event : testEvents) {
      double [] results = gm.eval(event.getContext());
      String result = results[gm.getIndex("TRUE")] > 0.5 ? "TRUE" : "FALSE";
      //String result = gm.getBestOutcome(results);
      //System.out.println(event.getOutcome() + "\t" + result + "\t" + results[gm.getIndex(event.getOutcome())] + "\t" + StringTools.arrayToList(event.getContext()));
      ce.logEvent(event.getOutcome(), result);
    }
View Full Code Here

      //System.out.println(s + "\t" + outcome + "\t" + gis.getBestOutcome(gis.eval(getFeatures(s))));
      double prob;
      if(gis2 == null) {
        prob = gis.eval(getFeatures(s))[gis.getIndex(outcome)];       
      } else {
        prob = gis2.eval(probToFeatures(gis.eval(getFeatures(s))[gis.getIndex("C")]))[gis.getIndex(outcome)];       
      }

      //System.out.print(prob + "\t");
      //prob = logitToProb(probToLogit(prob));
     
View Full Code Here

    for(String word : testSet) {
      Collection<String> f = overallFeatures.get(word);
      String type = chemFeatures.containsKey(word) ? "CHEM" : "NONCHEM";
     
      double [] results = gm.eval(f.toArray(new String[0]));
      System.out.println(word + "\t" + gm.getAllOutcomes(results));
      ce.logEvent(type, gm.getBestOutcome(results));
      if(!gm.getBestOutcome(results).equals(type)) System.out.println("*");
      if(type.equals("CHEM")) {
        chemList.add(results[gm.getIndex("CHEM")]);
View Full Code Here

    ce.pprintPrecisionRecallEval();
    ce.pprintConfusionMatrix();
   
    for(String word : unknownFeatures.keySet()) {
      Collection<String> f = unknownFeatures.get(word);
      double [] results = gm.eval(f.toArray(new String[0]));
      System.out.println(word + "\t" + results[gm.getIndex("CHEM")] + "\t" + NGramBuilder.getInstance().testWordProb(word) + "\t" + NGram.getInstance().testWordSuffixProb(word));     
    }
   
    /*Bag<String> chemWords = getBag(root.getFirstChildElement("chemical"));
    Bag<String> nonChemWords = getBag(root.getFirstChildElement("nonchemical"));
View Full Code Here

      GISModel gm = GIS.trainModel(100, di);
     
      ClassificationEvaluator ce = new ClassificationEvaluator();
     
      for(Event event : testData) {
        double [] results = gm.eval(event.getContext());
        String result = results[gm.getIndex("TRUE")] > 0.5 ? "TRUE" : "FALSE";
        //String result = gm.getBestOutcome(results);
        //System.out.println(event.getOutcome() + "\t" + result + "\t" + results[gm.getIndex(event.getOutcome())] + "\t" + StringTools.arrayToList(event.getContext()));
        ce.logEvent(event.getOutcome(), result);
      }
View Full Code Here

    GISModel gm = GIS.trainModel(100, di);
   
    ClassificationEvaluator ce = new ClassificationEvaluator();
   
    for(Event event : testData) {
      double [] results = gm.eval(event.getContext());
      String result = gm.getBestOutcome(results);
      System.out.println(event.getOutcome() + "\t" + result + "\t" + results[gm.getIndex(event.getOutcome())] + "\t" + StringTools.arrayToList(event.getContext()));
      ce.logEvent(event.getOutcome(), result);
    }
    System.out.println(ce.getAccuracy());
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. 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.