Процесс образования новых слов с помощью добавления новых аффиксов или корней; добавляется какой-то новый смысл кот + уменьшительно-ласкательный суффикс "ик" = котик
Процесс образования новой формы одного и того же слова с помощью изменения окончания; нового смысла не добавляется сосед + Мн.ч, Тв.п = соседями
Нас интересует именно этот процесс
Словообразование
Словоизменение
Помните, что такое словоформа?
определенная грамматическая форма слова
А что такое лемма?
начальная форма слова
А знаете ли вы, что такое лексема?
абстрактная единица, объединяет в себе все словоформы, ей приписывается определенное лексическое значение.
“стол” - лемма “стол”, “стола”, “столу”, “столы”, “столов” и т.д. - словоформы Лексемой будет тоже "стол"
Парадигма — система, по которой изменяется слово, объединяющая в себе всë множество его возможных словоформ.
Морфологический разбор
Маша рассказала друзьям анекдот.
Часть речи: анекдот —существительное рассказала (что?) анекдот
Начальная форма (именительный падеж, единственное число) - анекдот
Постоянные признаки: неодушевлённое, нарицательное, мужской род, второе склонение Непостоянные признаки: винительный падеж, единственное число
Роль в предложении: рассказала(что?)анекдот —дополнение.
Морфология и компьютер
Что делать с текстом после того, как разобьёшь его на токены
Какие задачи можно решать с помощью морфологии? Оказывается, очень многие!
Лемматизация
приведение словоформ к начальной форме (лемме)
POS-Tagging
частеречная разметка
Разметка категорий
автоматическое присвоение каждому слову тэгов согласно его грамматическим категориям
Зачем нужна лемматизация?
Знание того, какая начальная форма у слова, сильно облегчает анализ. Например, это нужно для правильного подсчёта статистики по словам.
Лемматизация — важная часть предобработки текста. Приведение слов к начальной форме - один из первых шагов морфологического анализа; помните, что у каждой части речи начальная форма имеет свои признаки (например, у прилагательных начальная форма - это мужской род, единственное число, именительный падеж). Пример: "длинношеюю" -> "длинношеий"
Частотный список лучше всего составлять именно после лемматизации, а не до.
Помимо лемматизации, существует ещё и стемминг (от англ. stem - основа). Он ориентирован на поиск основы, а не начальной формы. Пример: "белое" -> "бел"
Частотный список без лемматизации
Перестемминг (англ. overstemming)
Происходит, когда слишком большая часть слова обрезается. Это может привести к бессмысленным стемам, где значение слова потеряно. Или же к тому, что совершенно неродственные слова будут приведены к одной и той же основе.
Происходит, когда у нас есть несколько слов, которые на самом деле являются формами друг друга. Было бы хорошо, если бы они все "разрешались" в одно древо родственных слов, но, к сожалению, этого не происходит.
Пример: "прокрастинация" -> "прокрастинаци"
Оригинальный текст: На простом интенсиве я познал невероятный дзен.
Лемматизация: На простой интенсив я познать невероятный дзен.
Стемминг: На прост интенсив я позн невероятн дзен.
Зачем нужна частеречная разметка?
Информация о частях речи позволяет корректно присвоить словам нужные грамматические категории, а также структурировать данные как на лексическом уровне, так и на других.
Частеречная разметка (POS-Tagging) даёт нам огромное количество информации об устройстве каждого слова и даже об отношениях между ними. Этот шаг напоминает поиск постоянных и непостоянных признаков слова в морфологическом разборе.
Мы можем искать конкретные части речи с конкретными признаками, интересующими именно нас — например, только глагол прошедшего времени. Если нет синтаксической разметки, можно находить определённые конструкции, опираясь на морфологическую разметку, например, существительное + существительное в родительном падеже. Мы уже делали такое, когда работали с поиском в корпусе.
Узнаёте, откуда это?
Это НКРЯ! Да, там тоже есть частеречная разметка.
Как это сделать на компьютере?
Андрей Анатольевич Зализняк (1935 - 2017)
Выдающийся российский лингвист, академик РАН, доктор филологических наук. Занимался исследованиями грамматики русского языка, вопросом подлинности “Слова о полку Игореве”, исследованиями в области индоевропеистики и сравнительно-исторического языкознания; автор “Грамматического словаря русского языка”.
А.А. Зализняк придумал систему, которая позволяла построить парадигму любого слова на основании его начальной формы. То есть, мы можем получить все возможные формы слова, имея только лемму. Словарь А.А. Зализняка стал основой для первых морфологических анализаторов.
Pymorphy и Mystem
На самом деле существует намного больше морфологических анализаторов, но сегодня мы рассмотрим именно эти два
Pymorphy — это один из морфологических анализаторов, основанных на той же технологии, что и словарь Зализняка. Его словарь построен по корпусу OpenCorpora. Сейчас принято пользоваться версией pymorphy2. Мы с вами тоже будем её использовать.
Он умеет:
приводить слово к нормальной форме (лемматизация).
ставить слово в нужную форму. Например, ставить слово во множественное число, менять падеж слова и т.д.
возвращать грамматическую информацию о слове (POS-Tagging)
предсказывать часть речи, грамматические категории и их значения для неизвестных ему слов
построение гипотез для слов, отсутствующих в словаре
Pymorphy vs Mystem
Установка: Pymorphy
Написан на Python и является дополнительной библиотекой для этого языка, как следует из названия. Скачивается с помощью pip.
Установка: Mystem
Mystem — консольная программа. Её следует запускать в терминале. Однако для работы в Питоне существует библиотека pymystem3, с которой мы и будем работать.
Тэги: Pymorphy
Есть тэги в латинице, которые можно перевести в русский вариант при помощи самого Pymorphy.
Тэги: Mystem
Тэги частей речи в латинице, остальные в русском варианте, с Pymorphy совпадают частично.
Особые умения: Pymorphy
Умеет ставить слово в заданную форму, в отличие от Mystem.