Исходя из того, что я понял, вы хотели бы иметь классификатор, который будет вводить текст и прогнозировать из списка предопределенных категорий.
Я не уверен, каков ваш уровень знаний, поэтому я дам высокую оценкуобзор уровня, если дополнительные люди хотели бы узнать о предмете.
Как и все задачи НЛП, использующие ML, вам придется преобразовать ваш домен textual
в домен numerical
с помощью процесса featurization
.
- Обработка текста и надписей
- Определение соответствующих элементов
- Создание числового представления элементов
- Обработка и проверка на классификаторе
Обработка текста и надписей
текст может иметь некоторые странные маркеры или вещи, которые необходимо изменить, чтобы сделать его более "чистым".это стандартно для шага нормализации текста.
тогда вам нужно будет сохранить связанные категории в качестве меток для текстов.
В конечном итоге это будет выглядеть примерно так:
For each wiki article:
Normalise wiki article text
Save associated categories labels with text for training
Определите соответствующие функции
Некоторые функции, о которых вы упомянули:
- Доминирующее поле (актер, политик)
- Информация о заголовке
Синтаксическая информация (POS-теги) является локальной (уровень токена), но может использоваться для извлечения определенных функций, например, являются ли слова собственными существительными или нет.
Создание числового представления функций
К счастью, есть способы автоматического кодирования, такие как doc2vec, которые могут сделать вектор документа из текста.Затем вы можете добавить дополнительные заказные функции, которые кажутся актуальными.
После этого у вас будет векторное представление функций, относящихся к этому тексту, а также меток (категорий).
Это станет вашим обучениемdata.
Обучение и тестирование по классификатору
Теперь обучение и тестирование по выбранному вами классификатору.
Ваши данные один-ко-многим, так как вы будете пытаться предсказать множество меток.
Попробуйте сделать что-то простое, просто чтобы показать, что все работает так, как вы ожидаете.проверить свои результаты с помощью процедуры перекрестной проверки, такой как k-кратная проверка с использованием стандартных метрик (Precision, Recall, F1)
уточнение
Просто чтобы уточнить, эта задача на самом деле не является именованным объектомзадача распознавания.Это своего рода задача классификации по нескольким меткам, где метки - это категории, определенные на страницах википедии.
Распознавание именованных объектов - поиск значимых именованных объектов в документе, таких как люди, места.Обычно что-то существительное.Обычно это делается на уровне токена, в то время как ваша задача, кажется, на уровне документа.