1. A method comprising: causing, by one or more processors, a first natural language processing (NLP) annotator of an NLP system to annotate a corpus, thereby producing an annotated corpus that includes a first set of annotation(s); causing, by one or more processors, a second NLP annotator of the NLP system to annotate the annotated corpus that includes the first set of annotation(s), thereby producing a second set of annotation(s) that annotate the annotated corpus that includes the first set of annotation(s); determining, by one or more processors, based, at least in part, on the second set of annotation(s), that a first annotation error has occurred in the annotation of the corpus by the first NLP annotator; identifying, by one or more processors, a cause of the first annotation error; generating, by one or more processors, a candidate set of annotation correction actions, where each annotation correction action of the set is directed to the identified cause and is adapted to prevent an occurrence of an error similar to the first annotation error by the first NLP annotator; selecting, by one or more processors, an annotation correction action from the candidate set of annotation correction actions, based, at least in part, on a set of annotation correction confidence characteristics and based, at least in part, on an impact analysis performed against one or more ground truth annotations, the ground truth annotations having been performed by humans; automatically applying, by one or more processors, the selected annotation correction action to the first NLP annotator; and causing, by one or more processors, the first NLP annotator to annotate a new corpus, thereby producing new annotation(s) based on the applied annotation correction action.