edu.stanford.nlp.tagger.common.Tagger Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of stanford-corenlp Show documentation
Show all versions of stanford-corenlp Show documentation
Stanford CoreNLP provides a set of natural language analysis tools which can take raw English language text input and give the base forms of words, their parts of speech, whether they are names of companies, people, etc., normalize dates, times, and numeric quantities, mark up the structure of sentences in terms of phrases and word dependencies, and indicate which noun phrases refer to the same entities. It provides the foundational building blocks for higher level text understanding applications.
package edu.stanford.nlp.tagger.common;
import java.util.List;
import edu.stanford.nlp.ling.HasWord;
import edu.stanford.nlp.ling.TaggedWord;
import java.util.function.Function;
import edu.stanford.nlp.util.ReflectionLoading;
/**
* This module includes constants that are the same for all taggers,
* as opposed to being part of their configurations.
* Also, can be used as an interface if you don't want to necessarily
* include the MaxentTagger code, such as in public releases which
* don't include that code.
*
* @author John Bauer
*/
public abstract class Tagger implements Function,List> {
public static final String EOS_TAG = ".$$.";
public static final String EOS_WORD = ".$.";
@Override
public abstract List apply(List in);
public static Tagger loadModel(String path) {
// TODO: we can avoid ReflectionLoading if we instead use the
// serialization mechanism in MaxentTagger. Similar to ParserGrammar
return ReflectionLoading.loadByReflection("edu.stanford.nlp.tagger.maxent.MaxentTagger", path);
}
}