':param initial_tagger: The initial tagger
:type initial_tagger: TaggerI
:param rules: An ordered list of transformation rules that
should be used to correct the initial tagging.
:type rules: list(TagRule)
:param training_stats: A dictionary of statistics collected
during training, for possible later use
:type training_stats: dict'

def __init__(self, initial_tagger, rules, training_stats=None):

    self._initial_tagger = initial_tagger
    self._rules = tuple(rules)
    self._training_stats = training_stats
