Repository: opennlp Updated Branches: refs/heads/trunk c9f2943c7 -> c657cdeda
Remove deprecated methods from the Chunker See issue OPENNLP-884 Project: http://git-wip-us.apache.org/repos/asf/opennlp/repo Commit: http://git-wip-us.apache.org/repos/asf/opennlp/commit/c657cded Tree: http://git-wip-us.apache.org/repos/asf/opennlp/tree/c657cded Diff: http://git-wip-us.apache.org/repos/asf/opennlp/diff/c657cded Branch: refs/heads/trunk Commit: c657cdeda97c3138221e4032b175669bab81db79 Parents: c9f2943 Author: Jörn Kottmann <[email protected]> Authored: Thu Nov 10 01:23:09 2016 +0100 Committer: Jörn Kottmann <[email protected]> Committed: Tue Nov 22 01:29:42 2016 +0100 ---------------------------------------------------------------------- .../java/opennlp/tools/chunker/Chunker.java | 28 ---------- .../tools/chunker/ChunkerCrossValidator.java | 11 ---- .../tools/chunker/ChunkerEventStream.java | 10 ---- .../java/opennlp/tools/chunker/ChunkerME.java | 58 +------------------- .../opennlp/tools/chunker/ChunkerModel.java | 41 -------------- .../opennlp/tools/chunker/ChunkerMETest.java | 23 -------- 6 files changed, 2 insertions(+), 169 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/main/java/opennlp/tools/chunker/Chunker.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/main/java/opennlp/tools/chunker/Chunker.java b/opennlp-tools/src/main/java/opennlp/tools/chunker/Chunker.java index 02ccec0..b26f01b 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/chunker/Chunker.java +++ b/opennlp-tools/src/main/java/opennlp/tools/chunker/Chunker.java @@ -17,8 +17,6 @@ package opennlp.tools.chunker; -import java.util.List; - import opennlp.tools.util.Sequence; import opennlp.tools.util.Span; @@ -28,19 +26,6 @@ import opennlp.tools.util.Span; public interface Chunker { /** - * Generates chunk tags for the given sequence returning the result in a list. - * - * @param toks a list of the tokens or words of the sequence. - * @param tags a list of the pos tags of the sequence. - * - * @return a list of chunk tags for each token in the sequence. - * - * @deprecated please use {@link #chunk(String[], String[])} instead. - */ - @Deprecated - public List<String> chunk(List<String> toks, List<String> tags); - - /** * Generates chunk tags for the given sequence returning the result in an array. * * @param toks an array of the tokens or words of the sequence. @@ -66,19 +51,6 @@ public interface Chunker { * @param tags The pos-tags for the specified sentence. * * @return the top k chunk sequences for the specified sentence. - * - * @deprecated please use {@link #topKSequences(String[], String[])} instead. - */ - @Deprecated - public Sequence[] topKSequences(List<String> sentence, List<String> tags); - - - /** - * Returns the top k chunk sequences for the specified sentence with the specified pos-tags - * @param sentence The tokens of the sentence. - * @param tags The pos-tags for the specified sentence. - * - * @return the top k chunk sequences for the specified sentence. */ public Sequence[] topKSequences(String[] sentence, String[] tags); http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerCrossValidator.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerCrossValidator.java b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerCrossValidator.java index f264753..e9ce18d 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerCrossValidator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerCrossValidator.java @@ -34,17 +34,6 @@ public class ChunkerCrossValidator { private ChunkerEvaluationMonitor[] listeners; private ChunkerFactory chunkerFactory; - /** - * @deprecated Use {@link #ChunkerCrossValidator(String, TrainingParameters, ChunkerFactory, ChunkerEvaluationMonitor...)} instead. - */ - public ChunkerCrossValidator(String languageCode, TrainingParameters params, - ChunkerEvaluationMonitor... listeners) { - - this.languageCode = languageCode; - this.params = params; - this.listeners = listeners; - } - public ChunkerCrossValidator(String languageCode, TrainingParameters params, ChunkerFactory factory, ChunkerEvaluationMonitor... listeners) { this.chunkerFactory = factory; http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerEventStream.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerEventStream.java b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerEventStream.java index 33efcdb..118357c 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerEventStream.java +++ b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerEventStream.java @@ -43,16 +43,6 @@ public class ChunkerEventStream extends AbstractEventStream<ChunkSample> { this.cg = cg; } - /** - * Creates a new event stream based on the specified data stream. - * @param d The data stream for this event stream. - * - * @deprecated Use {@link #ChunkerEventStream(ObjectStream, ChunkerContextGenerator)} instead. - */ - public ChunkerEventStream(ObjectStream<ChunkSample> d) { - this(d, new DefaultChunkerContextGenerator()); - } - @Override protected Iterator<Event> createEvents(ChunkSample sample) { http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerME.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerME.java b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerME.java index 11d1c3b..e5b1073 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerME.java +++ b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerME.java @@ -67,7 +67,7 @@ public class ChunkerME implements Chunker { * and use the {@link ChunkerFactory} to configure the {@link SequenceValidator} and {@link ChunkerContextGenerator}. */ @Deprecated - public ChunkerME(ChunkerModel model, int beamSize, SequenceValidator<String> sequenceValidator, + private ChunkerME(ChunkerModel model, int beamSize, SequenceValidator<String> sequenceValidator, ChunkerContextGenerator contextGenerator) { this.sequenceValidator = sequenceValidator; @@ -88,30 +88,11 @@ public class ChunkerME implements Chunker { * * @param model The model for this chunker. * @param beamSize The size of the beam that should be used when decoding sequences. - * @param sequenceValidator The {@link SequenceValidator} to determines whether the outcome - * is valid for the preceding sequence. This can be used to implement constraints - * on what sequences are valid. - * @deprecated Use {@link #ChunkerME(ChunkerModel, int)} instead - * and use the {@link ChunkerFactory} to configure the {@link SequenceValidator}. - */ - @Deprecated - public ChunkerME(ChunkerModel model, int beamSize, - SequenceValidator<String> sequenceValidator) { - this(model, beamSize, sequenceValidator, - new DefaultChunkerContextGenerator()); - } - - /** - * Initializes the current instance with the specified model and - * the specified beam size. - * - * @param model The model for this chunker. - * @param beamSize The size of the beam that should be used when decoding sequences. * * @deprecated beam size is now stored inside the model */ @Deprecated - public ChunkerME(ChunkerModel model, int beamSize) { + private ChunkerME(ChunkerModel model, int beamSize) { contextGenerator = model.getFactory().getContextGenerator(); sequenceValidator = model.getFactory().getSequenceValidator(); @@ -135,14 +116,6 @@ public class ChunkerME implements Chunker { this(model, DEFAULT_BEAM_SIZE); } - @Deprecated - public List<String> chunk(List<String> toks, List<String> tags) { - bestSequence = - model.bestSequence(toks.toArray(new String[toks.size()]), new Object[] { tags.toArray(new String[tags.size()]) }, - contextGenerator, sequenceValidator); - return bestSequence.getOutcomes(); - } - public String[] chunk(String[] toks, String[] tags) { bestSequence = model.bestSequence(toks, new Object[] {tags}, contextGenerator, sequenceValidator); List<String> c = bestSequence.getOutcomes(); @@ -154,12 +127,6 @@ public class ChunkerME implements Chunker { return ChunkSample.phrasesAsSpanList(toks, tags, preds); } - @Deprecated - public Sequence[] topKSequences(List<String> sentence, List<String> tags) { - return topKSequences(sentence.toArray(new String[sentence.size()]), - tags.toArray(new String[tags.size()])); - } - public Sequence[] topKSequences(String[] sentence, String[] tags) { return model.bestSequences(DEFAULT_BEAM_SIZE, sentence, new Object[] { tags }, contextGenerator, sequenceValidator); @@ -235,25 +202,4 @@ public class ChunkerME implements Chunker { return new ChunkerModel(lang, seqChunkerModel, manifestInfoEntries, factory); } } - - /** - * @deprecated Use - * {@link ChunkerME#train(String, ObjectStream, TrainingParameters, ChunkerFactory)} - * instead. - */ - public static ChunkerModel train(String lang, ObjectStream<ChunkSample> in, - ChunkerContextGenerator contextGenerator, TrainingParameters mlParams) - throws IOException { - - Map<String, String> manifestInfoEntries = new HashMap<String, String>(); - - ObjectStream<Event> es = new ChunkerEventStream(in, contextGenerator); - - EventTrainer trainer = TrainerFactory.getEventTrainer( - mlParams.getSettings(), manifestInfoEntries); - - MaxentModel maxentModel = trainer.train(es); - - return new ChunkerModel(lang, maxentModel, manifestInfoEntries); - } } http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerModel.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerModel.java b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerModel.java index c677cd5..ed13f65 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerModel.java +++ b/opennlp-tools/src/main/java/opennlp/tools/chunker/ChunkerModel.java @@ -19,9 +19,6 @@ package opennlp.tools.chunker; import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.URL; @@ -30,8 +27,6 @@ import java.util.Properties; import opennlp.tools.ml.BeamSearch; import opennlp.tools.ml.model.AbstractModel; -import opennlp.tools.ml.model.BinaryFileDataReader; -import opennlp.tools.ml.model.GenericModelReader; import opennlp.tools.ml.model.MaxentModel; import opennlp.tools.ml.model.SequenceClassificationModel; import opennlp.tools.util.BaseToolFactory; @@ -49,15 +44,6 @@ public class ChunkerModel extends BaseModel { private static final String COMPONENT_NAME = "ChunkerME"; private static final String CHUNKER_MODEL_ENTRY_NAME = "chunker.model"; - /** - * @deprecated Use - * {@link #ChunkerModel(String, MaxentModel, Map, ChunkerFactory)} - * instead. - */ - public ChunkerModel(String languageCode, MaxentModel chunkerModel, Map<String, String> manifestInfoEntries) { - this(languageCode, chunkerModel, ChunkerME.DEFAULT_BEAM_SIZE, manifestInfoEntries, new ChunkerFactory()); - } - public ChunkerModel(String languageCode, SequenceClassificationModel<String> chunkerModel, Map<String, String> manifestInfoEntries, ChunkerFactory factory) { super(COMPONENT_NAME, languageCode, manifestInfoEntries, factory); @@ -81,15 +67,6 @@ public class ChunkerModel extends BaseModel { checkArtifactMap(); } - /** - * @deprecated Use - * {@link #ChunkerModel(String, MaxentModel, ChunkerFactory) - * instead.} - */ - public ChunkerModel(String languageCode, MaxentModel chunkerModel) { - this(languageCode, chunkerModel, null, new ChunkerFactory()); - } - public ChunkerModel(String languageCode, MaxentModel chunkerModel, ChunkerFactory factory) { this(languageCode, chunkerModel, null, factory); } @@ -159,22 +136,4 @@ public class ChunkerModel extends BaseModel { public ChunkerFactory getFactory() { return (ChunkerFactory) this.toolFactory; } - - public static void main(String[] args) throws FileNotFoundException, IOException { - - if (args.length != 4){ - System.err.println("ChunkerModel -lang code packageName modelName"); - System.exit(1); - } - - String lang = args[1]; - String packageName = args[2]; - String modelName = args[3]; - - AbstractModel chunkerModel = new GenericModelReader( - new BinaryFileDataReader(new FileInputStream(modelName))).getModel(); - - ChunkerModel packageModel = new ChunkerModel(lang, chunkerModel); - packageModel.serialize(new FileOutputStream(packageName)); - } } http://git-wip-us.apache.org/repos/asf/opennlp/blob/c657cded/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkerMETest.java ---------------------------------------------------------------------- diff --git a/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkerMETest.java b/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkerMETest.java index bfb6b2c..3f37554 100644 --- a/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkerMETest.java +++ b/opennlp-tools/src/test/java/opennlp/tools/chunker/ChunkerMETest.java @@ -116,29 +116,6 @@ public class ChunkerMETest { } @Test - public void testChunkAsList() throws Exception { - - @SuppressWarnings("deprecation") - List<String> preds = chunker.chunk(Arrays.asList(toks1), - Arrays.asList(tags1)); - - assertEquals(Arrays.asList(expect1), preds); - } - - @Test - public void testTokenProbList() throws Exception { - - @SuppressWarnings("deprecation") - Sequence[] preds = chunker.topKSequences(Arrays.asList(toks1), - Arrays.asList(tags1)); - - assertTrue(preds.length > 0); - assertEquals(expect1.length, preds[0].getProbs().length); - assertEquals(Arrays.asList(expect1), preds[0].getOutcomes()); - assertNotSame(Arrays.asList(expect1), preds[1].getOutcomes()); - } - - @Test public void testTokenProbArray() throws Exception { Sequence[] preds = chunker.topKSequences(toks1, tags1);
