Первая лабораторная посвящена предобработке текста (мы коротко говорили об этом на лекции). Подробнее об этом можно почитать здесь: https://github.com/mannefedov/compling_nlp_hse_course/blob/master/notebooks/preprocessing/Text_preprocessing.ipynb Здесь есть описания всех библиотек, примеры и прочие полезные для выполнения лабы вещи.
В самой лабораторной три вопроса:
1. Ошибки токенизации
Найдите 1 любой способ сломать токенизацию на предложения функцией sentenize из библиотеки razdel.
Придумайте (или найдите на каком-то корпусе) такое предложение (или несколько предложений), которое будет некорректно
разобрано
sentenize, но при этом будет грамматически верным.
2. Токенизация Mystem vs razdel.tokenize
Токенизируйте текст (не менее 10 предложений, можно взять любую статью Вики) с помощью razdel и с помощью Mystem.
Найдите различия в токенизациях. Что, по вашему мнению, работает лучше на этом тексте?
3. Лемматизация Mystem vs Pymorphy
Лемматизируйте текст с помощью mystem и pymorphy. Найдите различия в лемматизации. Что, по вашему мнению, работает
лучше на этом тексте?
Важно: для пайморфи используйте токенизацию из mystem, чтобы исключить влияние токенизации на результат. Анализируйте только значимые различия, а не технические особенности (не сравнивайте скорость работы и удобность интерфейса).
- sentinize сломался на статье про БАК
- Mystem ошибается при лемматизации, например,
0,0001 сек
понял как глагол и выдалсечь
. Также, к нему требуется постобработка как минимум от пробелов, т.к. считает их токенами. Часто ошибается в разделение на токены комбинации скобок.
Я бы разделял на токены при помощиrazdel
, а потом бы приводил к леммам средствамиmystem
- Mystem лучше работает с символами с ударением, но требует более тщательной подготовки текста или постобработки (
например, от лишних пробелов).
Также, как описывалось выше, он ошибается в выражениях по типу
0,0001 сек
. Оба лемматизатора не справляются с сокращениями по типусек
. Также есть различия в форме- Mystem ошибается при определении леммы причястия:
образованные
определяется какобразованный
, а необразовать
- Mystem ошибается при определении леммы причястия: