Class SimplePerceptronSequenceTrainer

  • All Implemented Interfaces:
    EventModelSequenceTrainer

    public class SimplePerceptronSequenceTrainer
    extends AbstractEventModelSequenceTrainer
    Trains models for sequences using the perceptron algorithm. Each outcome is represented as a binary perceptron classifier. This supports standard (integer) weighting as well average weighting. Sequence information is used in a simplified was to that described in: Discriminative Training Methods for Hidden Markov Models: Theory and Experiments with the Perceptron Algorithm. Michael Collins, EMNLP 2002. Specifically only updates are applied to tokens which were incorrectly tagged by a sequence tagger rather than to all feature across the sequence which differ from the training sequence.
    • Field Detail

      • PERCEPTRON_SEQUENCE_VALUE

        public static final java.lang.String PERCEPTRON_SEQUENCE_VALUE
        See Also:
        Constant Field Values
    • Constructor Detail

      • SimplePerceptronSequenceTrainer

        public SimplePerceptronSequenceTrainer()
    • Method Detail

      • validate

        public void validate()
        Description copied from class: AbstractTrainer
        Check parameters. If subclass overrides this, it should call super.validate();
        Overrides:
        validate in class AbstractTrainer
      • isValid

        @Deprecated
        public boolean isValid()
        Deprecated.
        Overrides:
        isValid in class AbstractTrainer
        Returns:
      • trainModel

        public AbstractModel trainModel​(int iterations,
                                        SequenceStream sequenceStream,
                                        int cutoff,
                                        boolean useAverage)
                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • nextIteration

        public void nextIteration​(int iteration)
                           throws java.io.IOException
        Throws:
        java.io.IOException