Flair_NER/evaluate_model.py

25 lines
1001 B
Python

from flair.models import SequenceTagger
from flair.datasets import ColumnCorpus
# from funcs import read_file_by_address
def do_evaluate():
tagger = SequenceTagger.load("./taggers/final-model.pt")
# تعیین ستون‌های داده و بارگذاری مجموعه داده‌های آزمایشی
columns = {0: 'text', 1: 'ner'}
data_folder = "./data/" # محل ذخیره داده‌ها
corpus = ColumnCorpus(data_folder, columns, test_file='test_ds.txt') # فایل داده‌های آزمایشی
result = tagger.evaluate(corpus.test, gold_label_type='ner', mini_batch_size=8)
result_text = f'''##### EVALUATION RESULT #####
F1 Score: {result.main_score}
************************************************
Detailed Results: {result.detailed_results}
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n'''
return result_text
# do_evaluate()