correct = 0 for sentence in predicted: for row in sentence: word_cnt += 1 if row['chunk'] == row['pchunk']: correct += 1 return correct / word_cnt if __name__ == '__main__': column_names = ['form', 'pos', 'chunk'] train_file = '../../../corpus/conll2000/train.txt' test_file = '../../../corpus/conll2000/test.txt' train_corpus = conll_reader.read_sentences(train_file) train_corpus = conll_reader.split_rows(train_corpus, column_names) test_corpus = conll_reader.read_sentences(test_file) test_corpus = conll_reader.split_rows(test_corpus, column_names) model = train(train_corpus) predicted = predict(model, test_corpus) accuracy = eval(predicted) print("Accuracy", accuracy) f_out = open('out', 'w', newline='\n') # We write the word (form), part of speech (pos), # gold-standard chunk (chunk), and predicted chunk (pchunk) for sentence in predicted: for row in sentence: f_out.write(row['form'] + ' ' + row['pos'] + ' ' + row['chunk'] + ' ' + row['pchunk'] + '\n')
correct = 0 for sentence in predicted: for row in sentence: word_cnt += 1 if row['chunk'] == row['pchunk']: correct += 1 return correct / word_cnt if __name__ == '__main__': column_names = ['form', 'pos', 'chunk'] train_file = '../../corpus/conll2000/train.txt' test_file = '../../corpus/conll2000/test.txt' train_corpus = conll_reader.read_sentences(train_file) train_corpus = conll_reader.split_rows(train_corpus, column_names) test_corpus = conll_reader.read_sentences(test_file) test_corpus = conll_reader.split_rows(test_corpus, column_names) model = train(train_corpus) predicted = predict(model, test_corpus) accuracy = eval(predicted) print("Accuracy", accuracy) f_out = open('out', 'w') # We write the word (form), part of speech (pos), # gold-standard chunk (chunk), and predicted chunk (pchunk) for sentence in predicted: for row in sentence: f_out.write(row['form'] + ' ' + row['pos'] + ' ' + row['chunk'] + ' ' + row['pchunk'] + '\n')