dynamiclmclassifiertest.java
来自「一个自然语言处理的Java开源工具包。LingPipe目前已有很丰富的功能」· Java 代码 · 共 83 行
JAVA
83 行
package com.aliasi.test.unit.classify;import com.aliasi.classify.DynamicLMClassifier;import com.aliasi.classify.LMClassifier;import com.aliasi.stats.MultivariateEstimator;import com.aliasi.test.unit.BaseTestCase;import com.aliasi.util.AbstractExternalizable;import java.io.IOException;import java.io.File;import com.aliasi.util.Files;import com.aliasi.util.Strings;public class DynamicLMClassifierTest extends BaseTestCase { public void testCompileOneCategory() throws IOException, ClassNotFoundException { File dataFile = new File("src/com/aliasi/test/unit/classify/testFile1.txt"); String data = Files.readFromFile(dataFile,Strings.UTF8); String[] categories = {"Foo", "Bar"}; DynamicLMClassifier classifier = DynamicLMClassifier.createNGramBoundary(categories,32); classifier.train("Foo",data); LMClassifier compiledClassifier = (LMClassifier) AbstractExternalizable.compile(classifier); assertTrue(null != compiledClassifier); } public void testOne() throws IOException, ClassNotFoundException { String[] categories = {"Foo","Bar"}; DynamicLMClassifier classifier = DynamicLMClassifier.createNGramProcess(categories,2); String oneStr = "The rain in Spain falls mainly on the ground."; char[] oneChar = oneStr.toCharArray(); classifier.train("Foo",oneChar,0,oneChar.length); String barStr = "The rain in Madrid is made of water."; char[] barChar = barStr.toCharArray(); classifier.train("Bar",barChar,0,barChar.length); MultivariateEstimator est = classifier.categoryEstimator(); assertEquals(2, est.getCount(est.outcome("Foo"))); assertEquals(4, est.trainingSampleCount()); assertEquals("Foo", classifier.classify("falls mainly").bestCategory()); assertEquals("Bar", classifier.classify("Madrid is made of water").bestCategory()); /* classifier.resetLanguageModel("Foo",2,256); assertEquals(est.getCount(est.outcome("Foo")),0); assertEquals(est.trainingSampleCount(),1); */ LMClassifier compiledCassifier = (LMClassifier) AbstractExternalizable.compile(classifier); assertEquals("Foo", compiledCassifier.classify("falls mainly").bestCategory()); assertEquals("Bar", compiledCassifier.classify("Madrid is made of water").bestCategory()); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?