• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Контакты

Адрес: 105066, г. Москва,
Старая Басманная ул., д. 21/4

 

🧭 Как до нас добраться

 

Телефон: +7 (495) 772-95-90 доб. 22734

E-mail: ling@hse.ru

Руководство
Заместитель руководителя Ахапкина Яна Эмильевна

Редакторы сайта — Наталья Борисовна Пименова, Татьяна Борисовна Казакова, Максим Олегович Бажуков, Юлия Геннадьевна Бадрызлова

Книга
Шугнанские этюды. Сборник статей о шугнанском языке

Хорог: Институт гуманитарных наук НАНТ, 2025.

Статья
Симметрическая и ретроспективная темпоральная подвижность в андийских языках
В печати

Филатов К. В.

Томский журнал лингвистических и антропологических исследований. 2025. Т. 50. № 4.

Глава в книге
Стандартизация шугнанского алфавита: теория и практика

Меленченко М. Г.

В кн.: Шугнанские этюды. Сборник статей о шугнанском языке. Хорог: Институт гуманитарных наук НАНТ, 2025. С. 18-38.

Препринт
You shall know a piece by the company it keeps. Chess plays as a data for word2vec models

Orekhov B.

arxiv.org. Computer Science. Cornell University, 2024

Правиловые инструменты компьютерной лингвистики в XXI веке: интервью с Г. А. Морозом и Т. Б. Казаковой

В сегодняшней беседе заведующий Международной лаборатории языковой конвергенции Георгий Алексеевич Мороз и Татьяна Борисовна Казакова рассказали о некоторых инструментах морфологического анализа языка и о том, чем они могут быть полезны для теоретических лингвистов при изучении и документации малоресурсных языков.

Правиловые инструменты компьютерной лингвистики в XXI веке: интервью с Г. А. Морозом и Т. Б. Казаковой

Вы закончили читать курс “Конечные автоматы в морфологическом анализе” для студентов 2 курса бакалавриата “Фундаментальная и компьютерная лингвистика” (ФГН). Какими задачами студенты занимаются на занятиях? Кому может быть интересен Ваш курс?

– Студенты на нашем курсе занимаются построением компьютерно-читаемой морфологии языка (и фонологии заодно). Этот курс в каком-то смысле моя старая мечта: студенты давно пишут у меня курсовые и дипломные работы на эту тему, описывая разные языки, и процесс работы часто шел тяжело, поскольку отсутствовал единый тематический учебник и материал был разбросан в разных местах в интернете. Я очень благодарен, что Таня согласилась помочь читать этот курс: я один точно не справился бы, а так получилось собрать воедино все мысли и практики, которые у нас были, и дать студентам возможность им научиться. Кроме того, это выход на бóльшую аудиторию студентов. Я даю эту тему курсовой уже несколько лет, но обычно такую работу пишут 3-4 студента. Сейчас на нашем курсе обучаются 17 человек. Мы читаем лекции на втором курсе бакалавриата, люди узнают про эти инструменты раньше, и если их заинтересует эта тема, после прохождения курса они смогут работать в этом направлении гораздо эффективнее, поскольку у них уже будет понимание, какие инструменты для морфологического анализа существуют и какие у них есть ограничения.

Что такое морфологический анализ языка? В каких прикладных задачах он может быть полезен?

– Обычно морфологией некоторого языка называют лингвистическую модель, описывающую отношение внутри единиц, которые традиционно называют словами. С точки зрения теоретической лингвистики в этой области много проблем: ученым может казаться, что некоторые сущности незыблемы, но всегда найдется язык, который будет устроен по-другому и заставит пересмотреть теорию.
На нашем курсе мы не используем никакого определения морфологии, а представляем морфологический анализ как следующую задачу: при виде некоторого слова языка Х – например, слова
столами – мы должны сопоставить ему некоторую начальную форму стол и морфологические теги, иллюстрирующие отношения, в которых это слово находится: в данном случае – существительное, творительный падеж, множественное число.
Морфологический анализ применяется в разных задачах NLP, в основном в виде приведения к начальной форме (столами – стол). Если мы хотим что-то узнать про большие объемы текстов, не читая их, при использовании морфологического анализа скорость извлечения информации будет значительно выше. Для языков с богатой морфологией типа русского, финского или адыгейского морфологический анализ позволяет сократить разреженность и разнообразие в данных.
Задачи NLP для малоресурсных языков обычно отличаются от задач NLP языков с большими и разнообразными ресурсами. Например, для языков типа английского или русского актуальной задачей NLP может стать анализ тональности отзывов на некоторый товар. Сложно представить, чтобы это было важно для малоресурсных языков, однако там есть свои задачи, например, построение спеллчекеров, распознавание речи, онлайн-переводчики.

Что такое морфологические трансдьюсеры? Как они устроены и где используются?

– Определить морфологический трансдьюсер без использования специальных терминов непросто.
Трансдьюсер – это усложненный вид конечного автомата. Конечный автомат – это математическая модель, в которой имеются некоторые состояния (например, два состояния, как выключатель) и по каким-то четким правилам можно переходить между разными состояниями. Например, вендинговый аппарат имеет состояние покоя, потом он принимает какое-то количество денег, высчитывает сдачу, выдает товар и снова возвращается в состояние покоя. Трансдьюсер – это двойной конечный автомат, который не только получает какой-то input, но и на каждом состоянии дает какой-то output.
Когда мы используем это в морфологическом анализе, получается, что на вход подается какое-нибудь слово – например, столами – а на выход будет выдаваться лемма стол и морфологические теги формы: творительный падеж, единственное число.
Важно еще сказать, что трансдьюсеры обратимы: если у нас есть трансдьюсер, который делает морфологический анализ, мы можем его обратить, и получится трансдьюсер, выполняющий не морфологический анализ, а генерацию, т.е. на вопрос “какая форма у леммы стол в творительном падеже множественного числа?” модель будет отвечать “ столами ”. Это такая прелесть морфологических трансдьюсеров – мы получаем и анализатор, и генератор одновременно.
Другая важная вещь: мы можем соединять друг с другом трансдьюсеры с разными целями. Например, у нас есть трансдьюсер, который делает морфологический анализ, и у нас может быть еще один трансдьюсер, который делает транскрипцию – совершает перевод написанного текста, например, из кириллицы в знаки международного фонетического алфавита. Если мы сделаем их композицию, получим трансдьюсер, который раньше разбирал кириллицу, и теперь одной строчкой в командной строке будет работать и с транскрипцией.
Еще одно положительное свойство – если мы делаем большой трансдьюсер, который выполняет морфологический анализ, его можно оптимизировать. Допустим, у нас есть формы столами , руками, столешницами . Трансдьюсер для этих форм можно оптимизировать: во-первых, мы видим общий для всех форм сегмент - ами , а, во-вторых, видим общий сегмент стол - у форм столами и столешницами . Получается, что мы можем не записывать каждый путь по отдельности, а соединять их вместе. Нет ничего быстрее для поиска и извлечения информации, чем оптимизированный трансдьюсер.
Важную роль в использовании трансдьюсеров в морфологическом анализе сыграла фирма Xerox: в их исследовательской лаборатории в конце XX века были написаны программы, которые реализовывали морфологический анализ при помощи трансдьюсеров.
В начале XXI века уже существовали инструменты такого типа, но они были не очень популярны среди лингвистов. Дальнейшую разработку этих инструментов подхватила группа Apertium: они сделали бесплатные онлайн-переводчики с открытым кодом для близкородственных языков с применением морфологических трансдьюсеров. Родство языков позволило избежать синтаксических сложностей при переводе с одного языка на другой.
На больших объемах данных, например, в поисковых системах Яндекса и Гугла, чаще, однако, используются статистические алгоритмы.

Какие проблемы могут возникнуть при создании правилового морфологического анализатора для малоресурсного языка?

– Проблем моделирования морфологии языка при помощи трансдьюсеров достаточно много. Первая проблема — лингвистические описания, к сожалению, далеки от полноты. Когда лингвисты делают описание языка, нет никакой меры, которая бы говорила, что оно покрывает некоторую часть языка – каждое грамматическое описание будет устроено особым образом. Другая проблема – недостаток материалов и их качество. Для того чтобы сделать морфологический анализатор, нам, помимо описания языка, необходимы объемный словарь и корпус текстов.
Важно, чтобы бóльшая часть перечисленных ресурсов у нас была – конечно, можно сделать морфологический анализатор только по описанию языка, но тогда непонятно, будет ли оно в действительности грамматическим описанием, а не фантазией конкретного исследователя. Кроме того, часто в словарях не хватает важной словоизменительной информации, необходимой для создания анализатора.
Еще одна проблема – источники могут противоречить друг другу: например, в словаре приведена одна грамматическая информация, а в описании языка – другая.
Сложности при построении морфологического анализатора может также добавлять вариативность – разные варианты одной единицы могут не фиксироваться в описаниях, кроме того, иногда вариативность мотивирована стилистическими или социальными факторами. Не всегда ясно, как поступать с диалектной вариативностью: какую форму учитывать при построении анализатора и что делать с формой другого диалекта.
Огромную проблему представляет неоднозначность и ее влияние на построение морфологического анализатора. Представим себе слово
столом . Если наш трансдьюсер знает слово стол , то он интерпретирует эту форму как творительный падеж единственного числа соответствующего слова, но он заодно может интерпретировать форму столом как некоторое существительное столом в именительном падеже единственного числа (а заодно и в винительном). При создании морфологического анализатора приходится учитывать такие моменты и создавать алгоритмы, позволяющие избегать нескольких трактовок формы там, где это не нужно.
Идиоматичность также создает немало трудностей: например, в русском языке имеется сочетание
сбить с панталыку , морфологию которого не так просто анализировать – сейчас людьми в речи не используется форма панталык (или панталыко?) .
Аналогичная проблема возникает при анализе супплетивных форм, когда основа формы множественного числа явно отличается от основы формы единственного числа – например,
ребенок-дети, человек-люди : анализаторы нужно подстраивать под формы такого типа, не вписывающиеся в общую закономерность.
Самая большая трудность для трансдьюсеров – циклы.
Представим себе следующую цепочку: есть существительное
слуга , имеющее именную морфологию, есть глагол служить , имеющий глагольную морфологию. Мы можем образовать от него другой глагол, например, услужить , добавив приставку. Далее уже от этого глагола можно образовать существительные услужение или услуга.
Получается, что словообразовательная цепочка началась с существительного, прошла через глагол и закончилась существительным.
Если мы будем добавлять такие словообразовательные модели в трансдьюсер, то алгоритм будет чувствовать себя плохо, потому что он будет считать, что так можно делать бесконечно. Необходимо прописывать ограничения на словообразование, чтобы алгоритм не мог от
услуги образовать глагол по какой-то модели, которую мы изложили, а потом от этого глагола снова образовать существительное и дальше по циклу.
Время разработки анализатора также может быть проблемой: для некоторых языков типа адыгейского со сложной морфологией создать анализатор – очень сложная задача, на которую может уйти очень много времени.
Наконец, есть технические сложности: большая часть софта для трансдьюсеров создана в прошлом веке, и развивают его без применения современных инструментов. Это существенно мешает совместной работе при описании языка. Студентам приходится учить эти старые инструменты, потому что никто не потратил достаточное количество денег, чтобы переписать инструменты для какого-то популярного среди лингвистов языка программирования. И вряд ли потратит – в XXI веке правиловые морфологические анализаторы выглядят анахроничными.

С помощью каких инструментов можно моделировать морфонологическую систему языка? Как устроены эти инструменты?

– Мы учим инструментам, которые были разработаны в Apertium. Я очень благодарен Нику Хауэллу, который в какой-то момент жил в Москве, работал в Вышке и читал связанные с этими инструментами курсы для наших магистров. Мы вместе с ним вели какое-то количество курсовых работ, которые были посвящены трансдьюсерам, так я всему и научился.
На нашем курсе мы учим двум инструментам, lexd и twol. lexd– это программа, которую написали Ник Хауэлл и Дэниел Вашингтон; она позволяет описывать морфологию в виде простых текстовых файлов, которые могли бы быть понятны лингвистам: в них описаны классы морфем и то, как единицы из разных классов друг с другом соединяются. Хауэлл и Вашингтон создали инструмент, который позволяет в понятном виде работать даже с такими сложными морфологическими системами, как, например, морфология семитских языков, в которой имеются разрывные морфемы, называемые трансфиксами. Такие сегменты особенно сложны для морфологического анализа. Впрочем, подобные сложности встречаются не только в семитских языках: например, в русском есть слово
Баба-Яга , и каждая часть этого слова изменяется по падежам – Баба-Яга, Бабы-Яги, Бабой-Ягой . Инструмент lexd позволяет описывать такую морфотактику – что с чем и как соединяется. Кроме того, есть инструмент twol, который описывает фонологию и морфонологию во фреймворке двухуровневой фонологии. Понимание принципа работы этого инструмента часто вызывает сложности у студентов: у этой программы своеобразный синтаксис, она сложно работает в комбинации с другими консольными программами. Хотя вообще принцип ее работы можно описать анекдотом «Если сделать 4 ошибки в слове хлеб – получится слово пиво ».
Есть и другие программы, например, инструменты, позволяющие создавать морфологические угадыватели и спеллчекеры. Есть инструменты, которые позволяют накладывать ограничения на морфологические разборы слов в зависимости от контекста. Обо всех таких программах мы рассказываем на нашем курсе, а также учим студентов создавать собственные программы путем комбинирования известных им инструментов.

Как умение работать с морфологическими анализаторами малоресурсных языков может помочь при работе с проблемами теоретической лингвистики?

– Умение компьютерного моделирования языковых явлений полезно при работе в поле. На мой взгляд, большая проблема некоторых лингвистических описаний заключается в том, что у них нет какой-то метрики – один и тот же материал можно описать по-разному, и лингвистические описания не накладывают ограничений на это.
Как мне кажется, компьютерные описания больших данных куда более полезны для документации языка, чем описательная статья – например, если у нас есть статья, которая описывает, как образуются формы множественного числа в языке Х, было бы здорово, если бы к ней была приложена ссылка на репозиторий с описанными данными. Это бы значило, что собранный материал можно использовать еще раз; кроме того, мы бы знали, какой конкретно языковой материал проанализирован.
Сейчас, к сожалению, при документации языка не слишком распространена практика собирать голые парадигмы слов, хотя это достаточно полезный материал: при описании некоторые важные теоретические моменты могут быть случайно или сознательно упущены.
Создавать морфологический анализатор с нуля достаточно затратно и сложно, однако в России распространена очень полезная практика поездок в поле большими группами студентов. Было бы здорово поехать в экспедицию группой студентов и выделить им определенные морфологические, синтаксические или фонологические темы для исследования, чтобы в дальнейшем они моделировали изучаемые явления при помощи компьютерных инструментов. Возможно, сведение таких морфологических и фонологических кусочков компьютерного описания воедино было бы шагом к тому, чтобы быстрее и с меньшими затратами создать морфологический анализатор с лингвистическим лицом. Конечно, следует помнить, что Google в какой-то момент хвастался увеличением метрик перевода, увольняя лингвистов и заменяя их программистами. Но для малоресурсных языков нет такого объема данных, какой был у Google.
Думаю, что для теоретической лингвистики это может быть очень полезно. Как минимум – в вопросе воспроизводимости результатов.

– Входит ли в план курса создание каждым студентом морфологического анализатора для языка, который ему интересен?

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

– Поддерживаются ли упомянутые проекты (lexd, twol, Apertium) разработчиками?

– Упомянутые проекты поддерживаются разработчиками – в течение курса я даже задал им кое-какие вопросы, и разработчики ответили в течение полудня.
Некоторые инструменты точно разрабатываются, и люди находятся в контакте по вопросам их реализации.
Насколько активно идёт этот процесс – мне сложно судить. Насколько я знаю, всем этим занимаются люди, у которых это скорее побочный результат их работы.

– Нет ли идей по автоматизации написания правил в этих формализмах?

– Такие есть. Недавно я обнаружил, что автор twol, Киммо Коскениеми, в 2016 году написал статью Simplified two-level morphonology, где он предлагал автоматически составлять морфонологические правила (и эта работа основана на его более ранних статьях). Кроме того, несколько лет назад группа студентов Вышки в рамках мастерской под руководством Олега Серикова занималась созданием приложения, в котором можно из таблиц с грамматической информацией (с парадигмами, деривационными аффиксами и глоссами для всех показателей)  автоматически сгенерировать правила и затем поправить неточности, а также писать правила вручную при помощи интуитивных кнопок и приятного веб-интерфейса. Однако разработка этого проекта с окончанием мастерской была приостановлена.

– Вы можете привести примеры готовых инструмент, в основе которого лежит трансдьюсер. Где посмотреть готовые морфологические анализаторы, написанные при помощи этого инструмента?

– Готовые инструменты выложены на сайте Apertium.
Все работы наших студентов, выполненные в формате курсовых, задокументированы и расположены на GitHub. Из конкретных образцов можно выделить парсеры нахско-дагестанских языков: багвалинского, который делал Даниил Игнатьев, и андийского, над которым работала Валерия Бантюкова, кроме того, множество других студентов работали и продолжают работать над разными языками в рамках курсовых и ВКР. Кроме того, мы в рамках Международной лаборатории языковой конвергенции хотим сделать хаб, где бы собирались наши морфологические анализаторы и транслитераторы.