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)].

Input: Consider Input: ['welcome', 'to', 'the', 'presentation', 'on', 'why', 'not', 'how', 'borrowing', 'works', 'and', 'I', 'think', 'this', 'is', 'very', 'important', 'because', 'a', 'lot', 'of', 'people', 'who', 'even', 'know', 'math', 'fairly', 'well', 'or', 'have', 'a', 'advanced', 'degree', 'still', "aren't", 'completely', 'sure', 'on', 'why', 'borrowing', 'works', 'and', "that's", 'the', 'focus', 'of', 'this', 'presentation', "let's", 'say', 'I', 'have', 'the', 'subtraction', 'problem', '1000', "that's", 'a', 'zero', '1005', 'minus', '616', 'what', "I'm", 'going', 'to', 'do', 'is', "I'm", 'going', 'to', 'write', 'the', 'same', 'problem', 'in', 'a', 'slightly', 'different', 'way', 'of', 'looking', 'we', 'could', 'call', 'this', 'the', 'expanded', 'form', '1005', 'what', "I'm", 'gonna', 'do', 'is', "I'm", 'going', 'to', 'separate', 'the']

Output: ['CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'PUNCUATION_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', 'NO_DIFF', 'NO_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', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'DIGIT_DIFF', 'NO_DIFF', 'NO_DIFF', 'DIGIT_DIFF', 'DIGIT_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']


Input: Consider Input: ['so', 'I', 'have', 'a', 'number', 'written', 'here', "it's", 'a', 'two', 'a', 'three', 'and', 'a', 'five', 'and', 'we', 'already', 'have', 'some', 'experience', 'with', 'numbers', 'like', 'this', 'we', 'can', 'think', 'about', 'what', 'does', 'it', 'represent', 'and', 'to', 'think', 'about', 'that', 'we', 'just', 'have', 'to', 'look', 'at', 'the', 'actual', 'place', 'values', 'so', 'this', 'rightmost', 'place', 'right', 'over', 'here', 'this', 'is', 'the', 'ones', 'place', 'so', 'this', 'five', 'represents', 'five', 'ones', 'or', 'I', 'guess', 'you', 'could', 'say', "that's", 'just', 'going', 'to', 'be', 'five', 'this', 'three', 'this', 'is', 'in', 'the', 'tens', 'place', 'this', 'is', 'in', 'the', 'tens', 'place', 'so', 'we', 'have', 'three', 'tens', 'so', "that's", 'just']

Output: ['CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'DIGIT_DIFF', 'NO_DIFF', 'DIGIT_DIFF', 'NO_DIFF', 'NO_DIFF', 'DIGIT_DIFF', 'CASE_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', 'PUNCUATION_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', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'INTRAWORD_PUNC_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'DIGIT_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', 'DIGIT_DIFF', 'CASE_DIFF', 'DIGIT_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'CASE_DIFF', 'NO_DIFF', 'NO_DIFF']


Input: Consider Input: ["here's", 'some', 'of', 'the', 'guidelines', 'for', 'drawing', 'dot', 'structures', 'so', "let's", 'say', 'we', 'want', 'to', 'draw', 'the', 'dot', 'structure', 'for', 'this', 'molecule', 'so', 'silicon', 'tetrafluoride', 'the', 'first', 'thing', 'we', '', 'need', 'to', 'do', 'is', 'to', 'find', 'the', 'total', 'number', 'of', 'valence', 'electrons', 'that', 'we', 'would', 'account', 'for', 'these', 'valence', 'electrons', 'in', 'our', 'dot', 'structure', 'so', 'to', 'find', 'the', 'valence', 'electrons', 'we', 'need', 'to', 'look', 'at', 'a', 'periodic', 'table', 'and', 'so', 'here', 'I', 'have', 'a', 'modified', 'version', 'of', 'the', 'periodic', 'table', 'and', 'you', 'can', 'see', 'what', "I've", 'done', 'is', "I've", 'kind', 'of', 'cut', 'out', 'the', 'd-block', 'here', 'so', 'we', 'can', 'focus']


Output: ['CASE_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', 'STEM_BASED_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_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', 'PUNCUATION_DIFF', 'UNKNOWN_TYPE_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', 'PUNCUATION_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', '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', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'PUNCUATION_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF', 'NO_DIFF']


