This is an automated email from the ASF dual-hosted git repository. mawiesne pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/opennlp.git
The following commit(s) were added to refs/heads/main by this push: new 2690b88d OPENNLP-1694: Enhance JavaDoc in util.featuregen package (#739) 2690b88d is described below commit 2690b88df892319e46b79935eb880dc4567afe36 Author: Martin Wiesner <mawie...@users.noreply.github.com> AuthorDate: Thu Jan 16 10:44:41 2025 +0100 OPENNLP-1694: Enhance JavaDoc in util.featuregen package (#739) --- .../AdditionalContextFeatureGenerator.java | 1 - .../featuregen/AggregatedFeatureGenerator.java | 24 +++++++++++++--------- .../AggregatedFeatureGeneratorFactory.java | 3 +++ .../featuregen/BigramNameFeatureGenerator.java | 5 +++++ .../BigramNameFeatureGeneratorFactory.java | 6 ++++++ .../featuregen/BrownBigramFeatureGenerator.java | 9 ++++++-- .../tools/util/featuregen/BrownCluster.java | 9 ++++---- .../BrownClusterBigramFeatureGeneratorFactory.java | 5 ++++- ...wnClusterTokenClassFeatureGeneratorFactory.java | 5 ++++- .../BrownClusterTokenFeatureGeneratorFactory.java | 5 ++++- .../BrownTokenClassFeatureGenerator.java | 7 ++++++- .../tools/util/featuregen/BrownTokenClasses.java | 6 +++--- .../featuregen/BrownTokenFeatureGenerator.java | 13 +++++++++++- .../util/featuregen/CachedFeatureGenerator.java | 2 ++ .../featuregen/CachedFeatureGeneratorFactory.java | 3 +++ .../featuregen/CharacterNgramFeatureGenerator.java | 8 +++++--- .../CharacterNgramFeatureGeneratorFactory.java | 3 +++ .../DefinitionFeatureGeneratorFactory.java | 7 ++++--- .../featuregen/DictionaryFeatureGenerator.java | 21 ++++++++++++++----- .../DictionaryFeatureGeneratorFactory.java | 3 +++ .../featuregen/DocumentBeginFeatureGenerator.java | 5 +++++ .../DocumentBeginFeatureGeneratorFactory.java | 6 ++++++ .../FeatureGeneratorResourceProvider.java | 8 +++++--- .../tools/util/featuregen/GeneratorFactory.java | 7 ++++--- .../tools/util/featuregen/InSpanGenerator.java | 11 ++++++++-- .../featuregen/OutcomePriorFeatureGenerator.java | 2 ++ .../featuregen/POSTaggerNameFeatureGenerator.java | 16 +++++++++------ .../POSTaggerNameFeatureGeneratorFactory.java | 3 +++ .../util/featuregen/PosTaggerFeatureGenerator.java | 5 +++++ .../PosTaggerFeatureGeneratorFactory.java | 6 ++++++ .../util/featuregen/PrefixFeatureGenerator.java | 21 +++++++++++++++++-- .../featuregen/PrefixFeatureGeneratorFactory.java | 3 +++ .../featuregen/PreviousMapFeatureGenerator.java | 4 +++- .../PreviousMapFeatureGeneratorFactory.java | 4 +++- .../featuregen/PreviousTwoMapFeatureGenerator.java | 2 ++ .../util/featuregen/SentenceFeatureGenerator.java | 2 ++ .../SentenceFeatureGeneratorFactory.java | 3 +++ .../util/featuregen/SuffixFeatureGenerator.java | 21 +++++++++++++++++-- .../featuregen/SuffixFeatureGeneratorFactory.java | 3 +++ .../featuregen/TokenClassFeatureGenerator.java | 14 ++++++++++++- .../TokenClassFeatureGeneratorFactory.java | 3 +++ .../util/featuregen/TokenFeatureGenerator.java | 6 ++++-- .../featuregen/TokenFeatureGeneratorFactory.java | 6 ++++++ .../featuregen/TokenPatternFeatureGenerator.java | 3 +++ .../TokenPatternFeatureGeneratorFactory.java | 3 +++ .../featuregen/TrigramNameFeatureGenerator.java | 1 + .../TrigramNameFeatureGeneratorFactory.java | 6 ++++++ .../featuregen/WindowFeatureGeneratorFactory.java | 3 +++ .../featuregen/WordClusterFeatureGenerator.java | 1 + .../WordClusterFeatureGeneratorFactory.java | 4 +++- 50 files changed, 266 insertions(+), 61 deletions(-) diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java index c35a1c1a..9c7d4f36 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AdditionalContextFeatureGenerator.java @@ -34,7 +34,6 @@ public class AdditionalContextFeatureGenerator implements AdaptiveFeatureGenerat public void createFeatures(List<String> features, String[] tokens, int index, String[] preds) { if (additionalContext != null && additionalContext.length != 0) { - String[] context = additionalContext[index]; for (String s : context) { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java index 78af4325..68557bff 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGenerator.java @@ -25,16 +25,17 @@ import java.util.Objects; /** * The {@link AggregatedFeatureGenerator} aggregates a set of - * {@link AdaptiveFeatureGenerator}s and calls them to generate the features. + * {@link AdaptiveFeatureGenerator feature generators} and calls them + * to generate the features. */ public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator { private Collection<AdaptiveFeatureGenerator> generators; /** - * Initializes the current instance. + * Initializes an {@link AggregatedFeatureGenerator} via specified {@code generators}. * - * @param generators array of generators, null values are not permitted + * @param generators A collection of generators, {@code null} values are not permitted. */ public AggregatedFeatureGenerator(AdaptiveFeatureGenerator... generators) { @@ -49,17 +50,21 @@ public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator { this.generators = Collections.unmodifiableCollection(this.generators); } + /** + * Initializes an {@link AggregatedFeatureGenerator} via specified {@code generators}. + * + * @param generators A collection of generators, {@code null} values are not permitted. + */ public AggregatedFeatureGenerator(Collection<AdaptiveFeatureGenerator> generators) { this(generators.toArray(new AdaptiveFeatureGenerator[0])); } /** * Calls the {@link AdaptiveFeatureGenerator#clearAdaptiveData()} method - * on all aggregated {@link AdaptiveFeatureGenerator}s. + * on all aggregated {@link AdaptiveFeatureGenerator feature generators}. */ @Override public void clearAdaptiveData() { - for (AdaptiveFeatureGenerator generator : generators) { generator.clearAdaptiveData(); } @@ -67,7 +72,7 @@ public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator { /** * Calls the {@link AdaptiveFeatureGenerator#createFeatures(List, String[], int, String[])} - * method on all aggregated {@link AdaptiveFeatureGenerator}s. + * method on all aggregated {@link AdaptiveFeatureGenerator feature generators}. */ @Override public void createFeatures(List<String> features, String[] tokens, int index, @@ -80,10 +85,9 @@ public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator { /** * Calls the {@link AdaptiveFeatureGenerator#updateAdaptiveData(String[], String[])} - * method on all aggregated {@link AdaptiveFeatureGenerator}s. + * method on all aggregated {@link AdaptiveFeatureGenerator feature generators}. */ public void updateAdaptiveData(String[] tokens, String[] outcomes) { - for (AdaptiveFeatureGenerator generator : generators) { generator.updateAdaptiveData(tokens, outcomes); } @@ -91,9 +95,9 @@ public class AggregatedFeatureGenerator implements AdaptiveFeatureGenerator { /** * Retrieves a {@link Collections} of all aggregated - * {@link AdaptiveFeatureGenerator}s. + * {@link AdaptiveFeatureGenerator feature generators}. * - * @return all aggregated generators + * @return All aggregated generators in use. */ public Collection<AdaptiveFeatureGenerator> getGenerators() { return generators; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java index a3f3595c..5dffa228 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/AggregatedFeatureGeneratorFactory.java @@ -24,6 +24,9 @@ import java.util.Map; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link AggregatedFeatureGenerator} instances + * when {@link #create()} is called. + * * @see AggregatedFeatureGenerator */ public class AggregatedFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java index a9972dc7..40545f58 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGenerator.java @@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen; import java.util.List; +/** + * Adds bigram features based on tokens and token classes. + * + * @see AdaptiveFeatureGenerator + */ public class BigramNameFeatureGenerator implements AdaptiveFeatureGenerator { @Override diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java index 8b60d8ae..2064da5e 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BigramNameFeatureGeneratorFactory.java @@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; +/** + * A {@link GeneratorFactory} that produces {@link BigramNameFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see BigramNameFeatureGenerator + */ public class BigramNameFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java index b16606ce..3f35e069 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownBigramFeatureGenerator.java @@ -21,6 +21,9 @@ import java.util.List; /** * Generates Brown cluster features for token bigrams. + * + * @see AdaptiveFeatureGenerator + * @see BrownCluster */ public class BrownBigramFeatureGenerator implements AdaptiveFeatureGenerator { @@ -31,8 +34,10 @@ public class BrownBigramFeatureGenerator implements AdaptiveFeatureGenerator { private final BrownCluster brownCluster; /** - * Creates a new Brown Cluster bigram feature generator. - * @param brownCluster A {@link BrownCluster}. + * Initializes a {@link BrownBigramFeatureGenerator} generator via a specified + * {@link BrownCluster}. + * + * @param brownCluster The token {@link BrownCluster dictionary} to use. */ public BrownBigramFeatureGenerator(BrownCluster brownCluster) { this.brownCluster = brownCluster; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java index 88759662..221816b4 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownCluster.java @@ -34,8 +34,7 @@ import opennlp.tools.util.model.ArtifactSerializer; import opennlp.tools.util.model.SerializableArtifact; /** - * - * Class to load a Brown cluster document: word\tword_class\tprob + * Class to load a Brown cluster document in the format: {@code word\tword_class\tprob}. * <p> * Originally available at: <a href="http://metaoptimize.com/projects/wordreprs/"> * http://metaoptimize.com/projects/wordreprs/</a>. @@ -69,8 +68,8 @@ public class BrownCluster implements SerializableArtifact { /** * Instatiates a {@link BrownCluster} and its related token to cluster map * via an {@link InputStream}. - * <p> - * <b>Note:</b> + * + * @implNote * Only tokens with frequency bigger than {@code 5} will be added. * * @param in A valid, open {@link InputStream} to read from. @@ -101,7 +100,7 @@ public class BrownCluster implements SerializableArtifact { * Check if a token is in the Brown:paths, token map. * * @param string the token to look-up - * @return the brown class if such token is in the brown cluster map + * @return the brown class if such token is in the brown cluster map. */ public String lookupToken(String string) { return tokenToClusterMap.get(string); diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java index 7c9ee952..aa92b296 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterBigramFeatureGeneratorFactory.java @@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException; import opennlp.tools.util.model.ArtifactSerializer; /** - * Generates Brown clustering features for token bigrams. + * A {@link GeneratorFactory} that produces {@link BrownBigramFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see BrownBigramFeatureGenerator */ public class BrownClusterBigramFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java index 47bc8390..1b6624c8 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenClassFeatureGeneratorFactory.java @@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException; import opennlp.tools.util.model.ArtifactSerializer; /** - * Generates Brown clustering features for token classes. + * A {@link GeneratorFactory} that produces {@link BrownTokenClassFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see BrownTokenClassFeatureGenerator */ public class BrownClusterTokenClassFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java index fa3f834f..1e246a21 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownClusterTokenFeatureGeneratorFactory.java @@ -24,7 +24,10 @@ import opennlp.tools.util.InvalidFormatException; import opennlp.tools.util.model.ArtifactSerializer; /** - * Generates Brown clustering features for current token. + * A {@link GeneratorFactory} that produces {@link BrownTokenFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see BrownTokenFeatureGenerator */ public class BrownClusterTokenFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java index dde9ef66..9c0a2575 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClassFeatureGenerator.java @@ -21,9 +21,14 @@ import java.util.List; /** * Generates {@link BrownCluster} features for current token and token class. + * + * @see AdaptiveFeatureGenerator + * @see BrownCluster */ public class BrownTokenClassFeatureGenerator implements AdaptiveFeatureGenerator { + private static final String PREFIX = "c,browncluster="; + private final BrownCluster brownLexicon; /** @@ -44,7 +49,7 @@ public class BrownTokenClassFeatureGenerator implements AdaptiveFeatureGenerator List<String> wordClasses = BrownTokenClasses.getWordClasses(tokens[index], brownLexicon); for (String wordClass : wordClasses) { - features.add("c," + "browncluster" + "=" + wordShape + "," + wordClass); + features.add(PREFIX + wordShape + "," + wordClass); } } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java index 65277dd2..5629dbe4 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenClasses.java @@ -35,9 +35,9 @@ public class BrownTokenClasses { * It provides a list containing the pathLengths for a token if found * in the Map:token,BrownClass. * - * @param token the token to be looked up in the brown clustering map - * @param brownLexicon the Brown clustering map - * @return the list of the paths for a token + * @param token The token to be looked up in the brown clustering map + * @param brownLexicon The {@link BrownCluster} clustering map + * @return A list of the paths for a token. */ public static List<String> getWordClasses(String token, BrownCluster brownLexicon) { if (brownLexicon.lookupToken(token) == null) { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java index 76a2ce7c..ffc1b4d4 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/BrownTokenFeatureGenerator.java @@ -21,11 +21,22 @@ import java.util.List; /** * Generates {@link BrownCluster} features for current token. + * + * @see AdaptiveFeatureGenerator + * @see BrownCluster */ public class BrownTokenFeatureGenerator implements AdaptiveFeatureGenerator { + private static final String PREFIX = "browncluster="; + private final BrownCluster brownLexicon; + /** + * Instantiates a {@link BrownTokenFeatureGenerator} via a specified + * {@link BrownCluster}. + * + * @param dict The token {@link BrownCluster dictionary} to use. + */ public BrownTokenFeatureGenerator(BrownCluster dict) { this.brownLexicon = dict; } @@ -37,7 +48,7 @@ public class BrownTokenFeatureGenerator implements AdaptiveFeatureGenerator { List<String> wordClasses = BrownTokenClasses.getWordClasses(tokens[index], brownLexicon); for (String wordClass : wordClasses) { - features.add("browncluster" + "=" + wordClass); + features.add(PREFIX + wordClass); } } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java index e26ffbdd..d7875b2e 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGenerator.java @@ -25,6 +25,8 @@ import opennlp.tools.util.Cache; /** * Caches features of the aggregated {@link AdaptiveFeatureGenerator generators}. + * + * @see Cache */ public class CachedFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java index 70c0610e..14e3e698 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CachedFeatureGeneratorFactory.java @@ -21,6 +21,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link CachedFeatureGenerator} instances + * when {@link #create()} is called. + * * @see CachedFeatureGenerator */ public class CachedFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java index 62a0b109..59b66bea 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGenerator.java @@ -26,6 +26,8 @@ import opennlp.tools.util.StringUtil; /** * The {@link CharacterNgramFeatureGenerator} uses character ngrams to * generate features about each token. + * + * @see AdaptiveFeatureGenerator */ public class CharacterNgramFeatureGenerator implements AdaptiveFeatureGenerator { @@ -35,7 +37,7 @@ public class CharacterNgramFeatureGenerator implements AdaptiveFeatureGenerator private final int maxLength; /** - * Initializes a {@link CharacterNgramFeatureGenerator}. + * Initializes a {@link CharacterNgramFeatureGenerator} with the specified parameters. * * @param minLength The minimum length to use. Must not be negative. * @param maxLength The maximum length to use. Must not be negative. @@ -46,8 +48,8 @@ public class CharacterNgramFeatureGenerator implements AdaptiveFeatureGenerator } /** - * Initializes a {@link CharacterNgramFeatureGenerator} with - * min length of {@code 2} and max length of {@code 5} for ngrams. + * Initializes a {@link CharacterNgramFeatureGenerator} with default values for ngrams. + * The minimal length is set to {@code 2} and maximum length to a value of {@code 5}. */ public CharacterNgramFeatureGenerator() { this(2, 5); diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java index f449f8db..2b2d866d 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/CharacterNgramFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link CharacterNgramFeatureGenerator} instances + * when {@link #create()} is called. + * * @see CharacterNgramFeatureGenerator */ public class CharacterNgramFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java index cbe8ce4f..b7ed6599 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DefinitionFeatureGeneratorFactory.java @@ -20,13 +20,14 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** - * @see DefinitionFeatureGeneratorFactory + * A {@link GeneratorFactory} that produces {@link OutcomePriorFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see OutcomePriorFeatureGenerator */ public class DefinitionFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { - private static final String ELEMENT_NAME = "definition"; - public DefinitionFeatureGeneratorFactory() { super(); } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java index 9963e230..42089f94 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGenerator.java @@ -24,8 +24,8 @@ import opennlp.tools.dictionary.Dictionary; import opennlp.tools.namefind.DictionaryNameFinder; /** - * The {@link DictionaryFeatureGenerator} uses the {@link DictionaryNameFinder} - * to generated features for detected names based on the {@link InSpanGenerator}. + * The {@link DictionaryFeatureGenerator} uses a {@link DictionaryNameFinder} + * to generate features for detected names based on the {@link InSpanGenerator}. * * @see Dictionary * @see DictionaryNameFinder @@ -35,16 +35,27 @@ public class DictionaryFeatureGenerator implements AdaptiveFeatureGenerator { private InSpanGenerator isg; + /** + * Initializes a {@link DictionaryFeatureGenerator} with the specified {@link Dictionary}. + * + * @param dict The {@link Dictionary} to use. Must not be {@code null}. + */ public DictionaryFeatureGenerator(Dictionary dict) { - this("",dict); + this("", dict); } + /** + * Initializes a {@link DictionaryFeatureGenerator} with the specified parameters. + * + * @param prefix The prefix to set. Must not be {@code null} but may be empty. + * @param dict The {@link Dictionary} to use. Must not be {@code null}. + */ public DictionaryFeatureGenerator(String prefix, Dictionary dict) { - setDictionary(prefix,dict); + setDictionary(prefix, dict); } public void setDictionary(Dictionary dict) { - setDictionary("",dict); + setDictionary("", dict); } public void setDictionary(String name, Dictionary dict) { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java index 4d49a076..39d0a76f 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DictionaryFeatureGeneratorFactory.java @@ -28,6 +28,9 @@ import opennlp.tools.util.model.ArtifactSerializer; import opennlp.tools.util.model.DictionarySerializer; /** + * A {@link GeneratorFactory} that produces {@link DictionaryFeatureGenerator} instances + * when {@link #create()} is called. + * * @see DictionaryFeatureGenerator */ public class DictionaryFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java index 5531f9ed..dec1dd01 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGenerator.java @@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen; import java.util.List; +/** + * This feature generator creates document begin features. + * + * @see AdaptiveFeatureGenerator + */ public class DocumentBeginFeatureGenerator implements AdaptiveFeatureGenerator { private String[] firstSentence; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java index 419d4b25..dfefc744 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/DocumentBeginFeatureGeneratorFactory.java @@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; +/** + * A {@link GeneratorFactory} that produces {@link DocumentBeginFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see DocumentBeginFeatureGenerator + */ public class DocumentBeginFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java index f33c3acb..b39cc3ec 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/FeatureGeneratorResourceProvider.java @@ -18,14 +18,16 @@ package opennlp.tools.util.featuregen; +import opennlp.tools.commons.Internal; + /** * The {@link FeatureGeneratorResourceProvider} provides access to the resources * available in the model. Inside the model resources are identified by a name. - * <p> - * <b>Note:</b><br> - * This class is not be intended to be implemented by users.<br> + * + * @apiNote This interface is not intended to be implemented by users.<br> * All implementing classes must be thread safe. */ +@Internal public interface FeatureGeneratorResourceProvider { /** diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java index dcb9ccc2..f5795cca 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/GeneratorFactory.java @@ -293,7 +293,7 @@ public class GeneratorFactory { } /** - * Provides a list with all the elements in the xml feature descriptor. + * Provides a {@link List} with all the elements in the xml feature descriptor. * * @param xmlDescriptorIn the xml feature descriptor * @return a list containing all elements @@ -516,8 +516,9 @@ public class GeneratorFactory { } /** - * @return {@code null} if the subclass uses {@link #resourceManager} to instantiate - * @throws InvalidFormatException + * @return {@code null} if the subclass uses {@link #resourceManager} to instantiate. + * + * @throws InvalidFormatException Thrown if the format is incorrect. */ public abstract AdaptiveFeatureGenerator create() throws InvalidFormatException; } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java index 28de1863..cd9dd9ab 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/InSpanGenerator.java @@ -26,9 +26,16 @@ import opennlp.tools.util.Span; /** * Generates features if the tokens are recognized by the provided * {@link TokenNameFinder}. + * + * @see AdaptiveFeatureGenerator + * @see TokenNameFinder + * @see Span */ public class InSpanGenerator implements AdaptiveFeatureGenerator { + private static final String W_DIC = ":w=dic"; + private static final String W_DIC_IS = W_DIC + "="; + private final String prefix; private final TokenNameFinder finder; @@ -64,8 +71,8 @@ public class InSpanGenerator implements AdaptiveFeatureGenerator { for (Span currentName : currentNames) { if (currentName.contains(index)) { // found a span for the current token - features.add(prefix + ":w=dic"); - features.add(prefix + ":w=dic=" + tokens[index]); + features.add(prefix + W_DIC); + features.add(prefix + W_DIC_IS + tokens[index]); // TODO: consider generation start and continuation features diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java index 9e0bf74a..82723edc 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/OutcomePriorFeatureGenerator.java @@ -21,6 +21,8 @@ import java.util.List; /** * The definition feature maps the underlying distribution of outcomes. + * + * @see AdaptiveFeatureGenerator */ public class OutcomePriorFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java index 9b67f684..57cb81f2 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGenerator.java @@ -27,7 +27,11 @@ import opennlp.tools.postag.POSTagger; import opennlp.tools.postag.POSTaggerME; /** - * Adds the token POS Tag as feature. Requires a POS Tag model. + * Adds the token POS tag as feature. Requires a {@link POSTagger} at runtime. + * + * @see AdaptiveFeatureGenerator + * @see POSTagger + * @see POSModel */ public class POSTaggerNameFeatureGenerator implements AdaptiveFeatureGenerator { @@ -37,24 +41,24 @@ public class POSTaggerNameFeatureGenerator implements AdaptiveFeatureGenerator { private String[] cachedTags; /** - * Initializes a new instance. + * Initializes a {@link POSTaggerNameFeatureGenerator} with the specified {@link POSTagger}. * - * @param aPosTagger a POSTagger implementation. + * @param aPosTagger A POSTagger instance to be used. */ public POSTaggerNameFeatureGenerator(POSTagger aPosTagger) { this.posTagger = aPosTagger; } /** - * Initializes a new instance. + * Initializes a {@link POSTaggerNameFeatureGenerator} with the specified {@link POSModel}. * - * @param aPosModel a POSTagger model. + * @param aPosModel A {@link POSModel} to be used for the internal {@link POSTagger}. */ public POSTaggerNameFeatureGenerator(POSModel aPosModel) { this.posTagger = new POSTaggerME(aPosModel, POSTagFormatMapper.guessFormat(aPosModel)); } - + @Override public void createFeatures(List<String> feats, String[] toks, int index, String[] preds) { if (!Arrays.equals(this.cachedTokens, toks)) { this.cachedTokens = toks; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java index 3f44c8c6..6ba2961b 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/POSTaggerNameFeatureGeneratorFactory.java @@ -26,6 +26,9 @@ import opennlp.tools.util.model.ArtifactSerializer; import opennlp.tools.util.model.POSModelSerializer; /** + * A {@link GeneratorFactory} that produces {@link POSTaggerNameFeatureGenerator} instances + * when {@link #create()} is called. + * * @see POSTaggerNameFeatureGenerator */ public class POSTaggerNameFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java index bdfe4875..a7f677f6 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGenerator.java @@ -19,6 +19,11 @@ package opennlp.tools.util.featuregen; import java.util.List; +/** + * A POS tagging driven feature generator. Adds words and pos tags of the surrounding context. + * + * @see AdaptiveFeatureGenerator + */ public class PosTaggerFeatureGenerator implements AdaptiveFeatureGenerator { private static final String SB = "S=begin"; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java index 88624db7..6320fd61 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PosTaggerFeatureGeneratorFactory.java @@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; +/** + * A {@link GeneratorFactory} that produces {@link PosTaggerFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see PosTaggerFeatureGenerator + */ public class PosTaggerFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java index 6466feef..35529661 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGenerator.java @@ -19,18 +19,35 @@ package opennlp.tools.util.featuregen; import java.util.List; +/** + * A feature generator implementation that generates prefix-based features. + * + * @see AdaptiveFeatureGenerator + */ public class PrefixFeatureGenerator implements AdaptiveFeatureGenerator { private static final String PREFIX = "pre="; + /** + * The default upper boundary prefix length value is {@code 4}. + */ static final int DEFAULT_MAX_LENGTH = 4; private final int prefixLength; - + + /** + * Intializes a default {@link PrefixFeatureGenerator}. + * The prefixLength length is set to the value of {@link #DEFAULT_MAX_LENGTH}. + */ public PrefixFeatureGenerator() { prefixLength = DEFAULT_MAX_LENGTH; } - + + /** + * Intializes a {@link PrefixFeatureGenerator} with the specified {@code prefixLength}. + * + * @param prefixLength The upper boundary prefix length to use. + */ public PrefixFeatureGenerator(int prefixLength) { this.prefixLength = prefixLength; } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java index 4f475ae9..7ed08f1b 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PrefixFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link PrefixFeatureGenerator} instances + * when {@link #create()} is called. + * * @see PrefixFeatureGenerator */ public class PrefixFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java index 544c6fca..1daff822 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGenerator.java @@ -36,10 +36,12 @@ public class PreviousMapFeatureGenerator implements AdaptiveFeatureGenerator { /** * Generates previous decision features for the token based on contents of the previous map. + * + * @param tokens The tokens of the sentence or other text unit which has been processed. + * @param outcomes The outcomes associated with the specified tokens. */ @Override public void updateAdaptiveData(String[] tokens, String[] outcomes) { - for (int i = 0; i < tokens.length; i++) { previousMap.put(tokens[i], outcomes[i]); } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java index 6bfa846a..e81d5111 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousMapFeatureGeneratorFactory.java @@ -17,10 +17,12 @@ package opennlp.tools.util.featuregen; - import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link PreviousMapFeatureGenerator} instances + * when {@link #create()} is called. + * * @see PreviousMapFeatureGenerator */ public class PreviousMapFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java index 0c59e2d4..90513963 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/PreviousTwoMapFeatureGenerator.java @@ -24,6 +24,8 @@ import java.util.Map; /** * This {@link AdaptiveFeatureGenerator} generates features indicating the * outcome associated with two previously occurring words. + * + * @see AdaptiveFeatureGenerator */ public class PreviousTwoMapFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java index 1c76c138..7d10b263 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGenerator.java @@ -21,6 +21,8 @@ import java.util.List; /** * This feature generator creates sentence begin and end features. + * + * @see AdaptiveFeatureGenerator */ public class SentenceFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java index d452fe7e..115a2fb9 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SentenceFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link SentenceFeatureGenerator} instances + * when {@link #create()} is called. + * * @see SentenceFeatureGenerator */ public class SentenceFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java index e890cf08..25016845 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGenerator.java @@ -19,18 +19,35 @@ package opennlp.tools.util.featuregen; import java.util.List; +/** + * A feature generator implementation that generates suffix-based features. + * + * @see AdaptiveFeatureGenerator + */ public class SuffixFeatureGenerator implements AdaptiveFeatureGenerator { private static final String PREFIX = "suf="; + /** + * The default upper boundary suffix length value is {@code 4}. + */ static final int DEFAULT_MAX_LENGTH = 4; private final int suffixLength; - + + /** + * Intializes a {@link SuffixFeatureGenerator}. + * The suffix length is set to the value of {@link #DEFAULT_MAX_LENGTH}. + */ public SuffixFeatureGenerator() { suffixLength = DEFAULT_MAX_LENGTH; } - + + /** + * Intializes a {@link SuffixFeatureGenerator} with the specified {@code suffixLength}. + * + * @param suffixLength The upper boundary suffix length to use. + */ public SuffixFeatureGenerator(int suffixLength) { this.suffixLength = suffixLength; } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java index ef730943..f888e254 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/SuffixFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link SuffixFeatureGenerator} instances + * when {@link #create()} is called. + * * @see SuffixFeatureGenerator */ public class SuffixFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java index 07a8d40f..4454522b 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGenerator.java @@ -23,7 +23,9 @@ import opennlp.tools.util.StringUtil; /** - * Generates features for the class of the token. + * Generates features for the class of a token. + * + * @see AdaptiveFeatureGenerator */ public class TokenClassFeatureGenerator implements AdaptiveFeatureGenerator { @@ -32,10 +34,20 @@ public class TokenClassFeatureGenerator implements AdaptiveFeatureGenerator { private final boolean generateWordAndClassFeature; + /** + * Initalizes a {@link TokenClassFeatureGenerator} which won't generate + * the {@code w&c} feature per token. + */ public TokenClassFeatureGenerator() { this(false); } + /** + * Initalizes a {@link TokenClassFeatureGenerator}. + * + * @param generateWordAndClassFeature If {@code true} the {@code w&c} feature will be + * generated per token, {@code false} otherwise. + */ public TokenClassFeatureGenerator(boolean generateWordAndClassFeature) { this.generateWordAndClassFeature = generateWordAndClassFeature; } diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java index 54540823..f370e0ef 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenClassFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link TokenClassFeatureGenerator} instances + * when {@link #create()} is called. + * * @see TokenClassFeatureGenerator */ public class TokenClassFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java index 53119e06..a097538f 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGenerator.java @@ -23,7 +23,9 @@ import java.util.List; import opennlp.tools.util.StringUtil; /** - * Generates a feature which contains the token itself. + * Generates a feature which contains a token itself. + * + * @see AdaptiveFeatureGenerator */ public class TokenFeatureGenerator implements AdaptiveFeatureGenerator { @@ -33,7 +35,7 @@ public class TokenFeatureGenerator implements AdaptiveFeatureGenerator { /** * Initializes a {@link TokenFeatureGenerator}. * - * @param lowercase Whether to use lower-casing or not. + * @param lowercase Whether or not to use lower-casing. */ public TokenFeatureGenerator(boolean lowercase) { this.lowercase = lowercase; diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java index 51ca9ad8..1853a1f9 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenFeatureGeneratorFactory.java @@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; +/** + * A {@link GeneratorFactory} that produces {@link TokenFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see TokenFeatureGenerator + */ public class TokenFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java index 512230a5..8596244d 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGenerator.java @@ -28,6 +28,9 @@ import opennlp.tools.util.StringUtil; /** * Partitions tokens into sub-tokens based on character classes and generates * class features for each of the sub-tokens and combinations of those sub-tokens. + * + * @see AdaptiveFeatureGenerator + * @see Tokenizer */ public class TokenPatternFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java index 05d64441..1954aa5e 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TokenPatternFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} instantiates {@link TokenPatternFeatureGenerator} instances + * when {@link #create()} is called. + * * @see TokenPatternFeatureGenerator */ public class TokenPatternFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java index 76258e07..5f5aeb05 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGenerator.java @@ -22,6 +22,7 @@ import java.util.List; /** * Adds trigram features based on tokens and token classes. * + * @see AdaptiveFeatureGenerator */ public class TrigramNameFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java index 80f1abee..85137d28 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/TrigramNameFeatureGeneratorFactory.java @@ -19,6 +19,12 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; +/** + * A {@link GeneratorFactory} that produces {@link TrigramNameFeatureGenerator} instances + * when {@link #create()} is called. + * + * @see TrigramNameFeatureGenerator + */ public class TrigramNameFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java index 8f413b87..fecdb46e 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WindowFeatureGeneratorFactory.java @@ -20,6 +20,9 @@ package opennlp.tools.util.featuregen; import opennlp.tools.util.InvalidFormatException; /** + * A {@link GeneratorFactory} that produces {@link WindowFeatureGenerator} instances + * when {@link #create()} is called. + * * @see WindowFeatureGenerator */ public class WindowFeatureGeneratorFactory diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java index b98cd9bb..6f380307 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGenerator.java @@ -25,6 +25,7 @@ import opennlp.tools.util.StringUtil; * An {@link AdaptiveFeatureGenerator} implementation of a word cluster feature generator. * It is based on a pre-defined {@link WordClusterDictionary}. * + * @see AdaptiveFeatureGenerator * @see WordClusterDictionary */ public class WordClusterFeatureGenerator implements AdaptiveFeatureGenerator { diff --git a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java index 7ea19edd..5922d4e5 100644 --- a/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java +++ b/opennlp-tools/src/main/java/opennlp/tools/util/featuregen/WordClusterFeatureGeneratorFactory.java @@ -24,9 +24,11 @@ import opennlp.tools.util.InvalidFormatException; import opennlp.tools.util.model.ArtifactSerializer; /** - * Defines a word cluster generator factory; it reads an element containing + * Defines a word cluster {@link GeneratorFactory}; it reads an element containing * 'w2vwordcluster' as a tag name. These clusters are typically produced by * word2vec or clark pos induction systems. + * + * @see WordClusterFeatureGenerator */ public class WordClusterFeatureGeneratorFactory extends GeneratorFactory.AbstractXmlFeatureGeneratorFactory {