edu.berkeley.nlp.discPCFG.LexiconTester Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of berkeleyparser Show documentation
Show all versions of berkeleyparser Show documentation
The Berkeley parser analyzes the grammatical structure of natural language using probabilistic context-free grammars (PCFGs).
The newest version!
/**
*
*/
package edu.berkeley.nlp.discPCFG;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import edu.berkeley.nlp.classify.LabeledInstance;
import edu.berkeley.nlp.classify.MaximumEntropyClassifier;
import edu.berkeley.nlp.math.DoubleArrays;
import edu.berkeley.nlp.util.Counter;
/**
* @author adpauls
*
*/
public class LexiconTester {
/**
* @param args
*/
public static void main(String[] args) {
// create datums
int k = 2;
double[] dummyWeights = DoubleArrays.constantArray(1.0/(double) k, k);
LabeledInstance datum1 = new LabeledInstance("NN",new WordInSentence("The cats died",1));
LabeledInstance datum2 = new LabeledInstance("VB",new WordInSentence("I killing the cat",1));
LabeledInstance datum3 = new LabeledInstance("NN",new WordInSentence("A cats killed me",1));
LabeledInstance datum4 = new LabeledInstance("NN",new WordInSentence("The cats lived",1));
// create training set
List> trainingData = new ArrayList>();
trainingData.add(datum1);
trainingData.add(datum2);
trainingData.add(datum3);
// create test set
List> testData = new ArrayList>();
testData.add(datum4);
// build classifier
LexiconFeatureExtractor featureExtractor = new LexiconFeatureExtractor();
MaximumEntropyClassifier.Factory maximumEntropyClassifierFactory = new MaximumEntropyClassifier.Factory(1.0, 20, featureExtractor);
MaximumEntropyClassifier maximumEntropyClassifier = (MaximumEntropyClassifier) maximumEntropyClassifierFactory.trainClassifier(trainingData);
System.out.println("Probabilities on test instance: " + maximumEntropyClassifier.getProbabilities(datum4.getInput()));
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy