Given an input stream, the objective of this task is to classify whether words in the stream are grammatically correct or not. The input to this task is a stream of words, possibly from captions generated by a speech-to-text engine, and the output is a classification of each word from the labels (reason) = [NO_DIFF (correct), CASE_DIFF (case error), PUNCUATION_DIFF (punctuation error), CASE_AND_PUNCUATION_DIFF (both case and punctuation error), STEM_BASED_DIFF (stem word error), DIGIT_DIFF (digit error), INTRAWORD_PUNC_DIFF (intra-word punctuation error), and UNKNOWN_TYPE_DIFF (an error that does not corrrespond to the previous categories)].

Ex Input:
["we're", 'in', 'the', 'Metropolitan', 'Museum', 'of', 'Art', 'and', "we're", 'looking', 'at', 'lászló', 'moholy-nagy', 'is', 'climbing', 'the', 'mast', 'from', '1928', "it's", 'a', 'gelatin', 'silver', 'print', 'and', "it's", 'pretty', 'amazing', 'it', 'is', 'amazing', 'and', 'shows', 'one', 'of', 'the', 'things', 'that', 'he', 'was', 'known', 'for', 'with', 'his', 'new', 'vision', 'photography', 'over', 'these', 'worms', 'eye', 'and', 'Birds', 'Eye', 'views', 'and', 'this', 'is', 'a', 'classic', 'way', 'to', 'see', 'what', 'he', 'meant', 'by', 'worms', 'eye', 'view', 'this', 'unexpected', 'angle', 'that', 'you', 'get', 'of', 'the', 'climber', 'on', 'the', 'mast', "it's", 'kind', 'of', 'jarring', 'and', 'it', 'makes', 'you', 'stop', 'in', 'your', 'tracks', 'because', "it's", 'not', 'the', 'kind', 'of']

Ex Output:
['NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'CASE_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'UNKNOWN_TYPE_DIFF', 'UNKNOWN_TYPE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF']


Ex Input:
['I', 'have', 'two', 'green', 'balls', 'and', 'three', 'purple', 'balls', 'so', 'how', 'many', 'balls', 'do', 'I', 'have', 'all', 'together', 'well', "it's", 'going', 'to', 'be', 'two', 'purple', 'sorry', 'two', 'green', 'balls', 'plus', 'three', 'purple', 'balls', 'is', 'going', 'to', 'be', 'five', 'balls', 'all', 'together', 'and', 'you', 'see', 'that', 'right', 'over', 'there', "there's", 'five', 'balls', 'all', 'together', 'we', 'can', 'count', 'them', 'one', 'two', 'three', 'four', 'five', 'now', 'what', 'if', 'we', 'did', 'something', 'a', 'little', 'different', "let's", 'start', 'with', 'the', 'five', 'balls', 'so', "we're", 'going', 'to', 'start', 'with', 'the', 'five', 'balls', 'and', 'you', 'can', 'count', 'them', 'again', 'one', 'two', 'three', 'four', 'five', 'and', 'now', "let's"]

Ex Output:
['NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF']


Ex Input:
['hey', 'folks', 'just', 'a', 'short', 'kind', 'of', 'out-of-the-ordinary', 'video', 'for', 'you', 'today', 'a', 'friend', 'of', 'mine', 'cam', 'recently', 'got', 'a', 'math', 'tattoo', "it's", 'not', 'something', "I'd", 'recommend', 'but', 'he', 'told', 'his', 'team', 'at', 'work', 'that', 'if', 'they', 'reached', 'a', 'certain', 'stretch', 'goal', "it's", 'something', 'that', "he'd", 'do', 'and', 'well', 'the', 'incentive', 'worked', "Cam's", 'initials', 'are', 'CSC', 'which', 'happens', 'to', 'be', 'the', 'shorthand', 'for', 'the', 'cosecant', 'function', 'in', 'trigonometry', 'so', 'what', 'he', 'decided', 'to', 'do', 'is', 'make', 'his', 'tattoo', 'a', 'certain', 'geometric', 'representation', 'of', 'what', 'that', 'function', 'means', "it's", 'kind', 'of', 'like', 'a', 'wordless', 'signature', 'written', 'in', 'pure', 'math', 'it', 'got']

Ex Output:

['CASE_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_AND_PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'UNKNOWN_TYPE_DIFF', 'PUNCUATION_DIFF', 'CASE_AND_PUNCUATION_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF']


