/ner_recognition

National Research University HSE project in Named Entity Recognition

Primary LanguagePython

ner_recognition

скрипт на языке Python 3

Скрипт запускается из консоли(файл main.py)

параметры --input или -i - путь к папке с исходными текстами(абсолютный или относительный), значение по умолчанию ./texts/

тексты должны иметь расширение .txt и кодировку utf-8

параметры --output или -o - путь к папке с результатами(абсолютный или относительный), значение по умолчанию ./results/(в случае отсутствия папки она создается)

Для работы скрипта необходимо установить pymystem3

Примеры запуска

Используем папки по умолчанию

python3 main.py

Используем свои папки

python3 main.py -i /home/user/ner_rules/ner_recognition/test_set -o ./ner_results

В случае если в пути присутствует пробел необходимо взять путь в одинарные или двойные кавычки

Формат выдачи

Записанные через пробел:

тип сущности, индекс символа с которого начинается сущность, длина в символах, сущность

Пример

ORG 161 3 CNN

LOC 221 6 Турции

PER 269 5 Путин

LOC 338 8 Стамбула

Словари

Словари именованных сущностей находятся в директории ./dictionaries. Словари разделены по типу именованных сущностей, каждый файл словаря имеет название dict_NE_X, где NE – именованная сущность LOC, PERSON или ORG, а X - количество слов в именованной сущности. Словари можно использовать как в программе извлечения сущностей, так и отдельно, так как они представлены в текстовом формате.

Для добавления пользовательских сущностей в словари, необходимо привести названия сущностей к лемматизированному виду и записать через перенос строки в текстовый файл с названием dict_NE (LOC, PER или ORG вместо NE).