Для компьютеров, чтобы иметь возможность использовать язык осмысленным образом, текст должен обрабатываться определенными способами. Один из способов извлечения признаков - идентифицировать определенные сущности (категории) в тексте. Это называется распознаванием сущностей имени. Это классифицирует именованные сущности на определенные. подгруппы, такие как люди, места, местоположение и т. д. Это очень полезно для таких приложений, как чат-боты.

Реализация этого для дивехи заложит основу для разработки других инструментов, связанных с НЛП, для дивехи. Но для эффективной реализации подобных систем требуется большой объем данных, поскольку они не были доступны для дивехи, мне пришлось создать свой собственный (небольшой) набор данных. с целью тестирования

Сбор данных

Для создания набора данных я использовал инструмент с открытым исходным кодом (ветка json_export). С его помощью я смог аннотировать около 1000 примеров, в основном заголовков новостей.

Обучение

Чтобы на самом деле обучить набор данных, я использовал отличную библиотеку nlp spacy. Поскольку он не поддерживает dhivehi, я использовал фиктивную реализацию языка без. Код, который я использовал train, был слегка измененной версией кода из официальной документации, которая позволяла загружать данные из json. Это репозиторий на github содержит весь используемый код и набор данных.

Результаты

Заключение

Хорошие результаты, учитывая очень маленький размер набора данных. И можно значительно улучшить, если использовать больше данных и лучшую реализацию языка.