001 package org.maltparser.parser;
002
003 import org.maltparser.core.exception.MaltChainedException;
004 import org.maltparser.core.syntaxgraph.DependencyStructure;
005 import org.maltparser.parser.guide.OracleGuide;
006 /**
007 * @author Johan Hall
008 *
009 */
010 public abstract class Trainer extends Algorithm {
011 /**
012 * Creates a parser trainer
013 *
014 * @param manager a reference to the single malt configuration
015 * @throws MaltChainedException
016 */
017 public Trainer(DependencyParserConfig manager) throws MaltChainedException {
018 super(manager);
019 }
020
021 /**
022 * Trains a parser using the gold-standard dependency graph and returns a parsed dependency graph
023 *
024 * @param goldDependencyGraph a old-standard dependency graph
025 * @param parseDependencyGraph a empty dependency graph
026 * @return a parsed dependency graph
027 * @throws MaltChainedException
028 */
029 public abstract DependencyStructure parse(DependencyStructure goldDependencyGraph, DependencyStructure parseDependencyGraph) throws MaltChainedException;
030 /**
031 * Returns the oracle guide.
032 *
033 * @return the oracle guide.
034 */
035 public abstract OracleGuide getOracleGuide();
036 public abstract void train() throws MaltChainedException;
037
038 }