Глоссарий

Что такое лемматизация?

Как компьютеры понимают, что зло, зла и (из двух) зол — формы одного и того же слова? Рассказываем про лемматизацию — один из основных методов предобработки текстов, который помогает компьютеру лучше их понимать.

Что такое лемматизация?

Лемматизация (англ. lemmatization) — это процесс приведения слова к его базовой, начальной форме, или лемме. Лемматизация является важным этапом в обработке естественного языка, поскольку она помогает компьютеру «‎понимать» различные грамматические формы слова как одно и то же слово. Например, слова «‎бегу», «‎бежит» будут приведены к лемме «‎бежать», а «‎малиновую» и «‎малиновее» — к лемме «малиновый».

Как производится лемматизация?

Чтобы хорошо лемматизировать текст, лучше учитывать контекст слова, чтобы снять возможную грамматическую омонимию: «ели» может быть как множественным числом существительного ель, так и глаголом «есть» в прошедшем времени, третьем лице и множественном числе. Грамматика языка подсказывает, к какой части речи принадлежит слово и в какой грамматической форме оно находится. Лемму можно получить из словаря лемм, в котором содержится информация о лемме слов и их формах (обычно это списки слов во всевозможных падежах, временах, числах и т. д. с указанием начальной формы), хотя в последнее время всё чаще применяют методы машинного обучения.

Автоматизировать лемматизацию можно с помощью различных библиотек, таких как NLTK для английского языка или pymorphy2 (об этой библиотеке мы уже рассказывали в нашей статье про морфологический анализ) и natasha для русского языка. Более мощный инструмент, в котором поддерживаются русский, английский и множество других языков, — библиотека spaCy.

Пример лемматизации русского текста при помощи библиотеки spaCy (в среде Google Colab)

Более старые инструменты и модели частично основаны на правилах и эвристиках, которые заведомо не могут полностью описать механизмы естественного языка, более современные — на машинном обучении. Ни один инструмент не обладает стопроцентной точностью.

Где используется лемматизация?

Лемматизация применяется в самых разных областях:

  • в поисковых системах для повышения точности поиска;
  • при текстовом анализе в NLP и DH;
  • при предобработке данных для обучения моделей машинного обучения.

Например, в этом материале можно ознакомиться с тем, как лемматизация помогает при выделении тем в новостных статьях.

Источники

  1. Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to Information Retrieval. Cambridge University Press.
  2. Bird, S., Klein, E., & Loper, E. (2009). Natural Language Processing with Python. O’Reilly Media.
  3. Korobov, M. (2015). Morphological Analyzer and Generator for Russian and Ukrainian Languages. Dialogue Conference.
  4. Natasha: NLP library for Russian language. [Электронный ресурс]. URL: https://natasha.github.io/ (дата обращения: 06.02.2024).
  5. Natural Language Toolkit (NLTK). [Электронный ресурс]. URL:  Retrieved from https://www.nltk.org/ (дата обращения: 06.02.2024).
Share

Recent Posts

В России принят первый закон об ИИ

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

27.07.2026

Муза с перфокартами: как компьютеры учились писать стихи за полвека до нейросетей

Генеративная поэзия появилась задолго до ChatGPT. Компьютеры генерируют стихи уже больше 60 лет, а сама мечта заставить машину рифмовать —…

24.07.2026

MLOps для работы с текстом: принципы и минимальный набор инструментов

Как специалисты по машинному обучению наводят порядок при работе с большими корпусами? Что нужно сделать, чтобы эксперимент был воспроизводимым, качество…

20.07.2026