Крис Мэннинг рассказал о нейросетевой революции в синтаксическом анализе

Stanford Online 23,3 тыс. 1 ч 18 мин 8 мин 04.03.2025
Главное

В рамках знаменитого курса Стэнфордского университета CS224N «НЛП с глубоким обучением» профессор Крис Мэннинг представил детальный разбор синтаксического анализа зависимостей (Dependency Parsing). Лекция охватывает эволюционный путь лингвистических моделей от классических контекстно-свободных грамматик до современных нейросетевых архитектур линейного времени, способных эффективно разбирать структуру человеческой речи. Слушатели узнают, как современные модели преодолевают глобальную двусмысленность живых текстов и почему переход к плотным векторным представлениям признаков произвел настоящую революцию в компьютерной лингвистике.

🏗️ От структуры фраз к синтаксису зависимостей 2:13

При моделировании структуры естественных языков лингвисты традиционно опираются на два фундаментальных подхода. Первый — это грамматика составляющих (phrase structure grammar), которая в компьютерных науках представляется в виде контекстно-свободных грамматик. В этой парадигме сотни тысяч слов разбиваются на базовые классы — части речи: существительные, прилагательные, детерминаторы и предлоги. Из этих кирпичиков последовательно собираются более крупные синтаксические единицы, например, именные (noun phrases) или предложные группы (prepositional phrases). Описывая правила ветвления, исследователи создают иерархическое дерево фразовой структуры.

Однако существует альтернативный метод — грамматика зависимостей (dependency grammars), составляющая основу современных систем обработки естественного языка (NLP). Вместо группировки слов в абстрактные фразы данный подход выявляет непосредственные бинарные связи между главным словом (head) и его зависимыми элементами или модификаторами. Например, в командной фразе «посмотри в большой ящик на кухне у двери» центральным узлом (вершиной) становится глагол «посмотри», а все остальные компоненты образуют дерево подчинения, последовательно уточняя детали действия.

🕵️ Ловушки живой речи: глобальная двусмысленность человеческого языка 14:49

Человеческое общение линейно по своей природе: мы пишем и произносим слова последовательным потоком звуков, в котором при живой речи даже отсутствуют физические пробелы. Мозг слушателя выполняет колоссальную работу, мгновенно превращая этот поток в иерархическую структуру смыслов. Для компьютерных моделей эта задача усложняется из-за тотальной синтаксической многозначности естественного языка.

Крис Мэннинг демонстрирует это на классических примерах из прессы:

Понимание того, какое слово от какого зависит, критически важно на практике. В биоинформатике синтаксический анализ связей позволяет автоматически извлекать из миллионов научных статей факты о взаимодействии белков (например, связи между протеинами KaiC, SasA и KaiA) для построения структурированных баз данных.

📜 От древнеиндийских сутр до Хомского: краткая история грамматики 29:04

Вопреки популярному мнению, именно грамматика зависимостей, а не контекстно-свободные правила, имеет самую долгую историю в человеческой цивилизации. Первым в истории лингвистом и создателем формальной грамматики зависимостей признан Панини, живший в древней Индии (приблизительно между IV и VIII веками до нашей эры на территории современного Афганистана). Движимый религиозными мотивами, Панини разработал строгое устное описание санскрита. Поразительно, но эта сложнейшая система передавалась из поколения в поколение наизусть за сотни лет до появления первых рукописей на бересте. В первом millennium'е нашей эры аналогичные подходы на основе зависимостей активно развивали арабские языковеды.

Контекстно-свободные грамматики появились лишь в 1940-х годах и были канонизированы Ноамом Хомским в 1950-х. Крис Мэннинг развеивает миф о том, что знаменитая иерархия Хомского была создана для усложнения жизни студентов-программистов. На самом деле Хомский разработал ее для математического доказательства того, что регулярные автоматы и конечноавтоматные модели принципиально неприменимы для описания всей сложности человеческого языка.

Современный синтаксис зависимостей во многом опирается на труды французского лингвиста Люсьена Теньера, который закрепил стандарт направления стрелок: от главного слова к зависимому. Для удобства вычислений к структуре каждого предложения сегодня принято добавлять искусственный корневой элемент (fake root node), служащий отправной точкой анализа.

📊 Эпоха Treebanks: как размеченные данные спасли компьютерную лингвистику 39:07

На заре развития систем искусственного интеллекта инженеры пытались прописывать грамматические правила вручную. Этот подход полностью провалился. Живой язык обладает бесконечным «длинным хвостом» нестандартных конструкций, сленга и креативных вольностей (от манеры речи магистра Йоды из «Звездных войн» до ироничного добавления отрицания «not» в конце фразы). Ручные правила не позволяли эффективно выбирать лучший вариант из десятков потенциальных деревьев разбора.

Решением стало создание размеченных корпусов — банков деревьев зависимостей (Treebanks), начавшееся на рубеже 1980-х и 1990-х годов. Крупнейшим международным проектом в этой области стал Universal Dependencies — кросс-лингвистическая база данных, объединяющая более 100 языков с единым формализмом разбора.

Появление Treebanks дало индустрии два мощных рычага:

  1. Появилась возможность собирать статистику распределения частот модификаторов, что легло в основу вероятностных моделей и машинного обучения.
  2. Лингвисты впервые получили строгую методологию оценки систем. Если в 1950–1970-х годах качество парсера доказывалось демонстрацией его работы на одном удачном предложении, то с появлением тестовых датасетов на 1000 вручную разобранных фраз оценка качества стала точной и революционной наукой.

⚙️ Алгоритм Transition-Based Parsing: синтаксический анализ за линейное время 53:32

При принятии решений о связи слов алгоритмы учитывают четыре ключевых фактора:

Наиболее эффективным практическим методом стал синтаксический анализ на основе переходов (transition-based parsing). Он задействует структуры данных, напоминающие работу компилятора: буфер (Buffer), содержащий слова входящей строки, и стек (Stack) для промежуточного хранения строящихся фрагментов дерева. На каждом шаге у системы есть выбор из трех базовых операций (транзиций):

  1. Shift (сдвиг): перенос слова из вершины буфера в стек.
  2. Left-Arc (левая дуга): установление связи, где верхний элемент стека становится главным, а второй сверху — зависимым, после чего зависимый удаляется.
  3. Right-Arc (правая дуга): установление обратной связи, где второй элемент стека подчиняет себе верхний.

Процесс на примере фразы «I ate fish» («Я съел рыбу») выглядит следующим образом: начав со стека с техническим корнем [ROOT] и полным буфером, парсер делает последовательные сдвиги (Shift), связывает левой дугой местоимение «I» с глаголом «ate», сдвигает существительное «fish» и закрывает его правой дугой под глагол «ate». В финале глагол связывается с ROOT. Буфер пуст, на стеке остается только ROOT — разбор завершен.

Главное преимущество этого метода, предложенного шведским ученым Йоакимом Нивре в начале 2000-х, заключается в его феноменальной скорости. Поскольку на каждом шаге принимается одно детерминированное решение без глобального перебора, алгоритм работает за линейное время $O(n)$. Традиционные алгоритмы контекстно-свободных грамматик требуют кубического времени $O(n^3)$.

🧠 Нейросетевая революция: от разреженных признаков к Parsey McParseface 1:04:39

Качество работы парсера оценивается по двум метрикам: UAS (Unlabeled Attachment Score — процент правильно найденных стрелок без учета их типа) и LAS (Labeled Attachment Score — точность с учетом грамматических ролей, таких как субъект или объект).

В оригинальной версии 2005 года Йоаким Нивре использовал традиционное машинное обучение (логистическую регрессию или SVM) с символьными индикаторными признаками. Инженеры сочетали слова, их части речи и контекст, что порождало миллионы разреженных, уникальных комбинаций. Программа тратила до 90% процессорного времени не на вычисление самой модели, а на громоздкое извлечение этих признаков в памяти.

Прорыв совершила аспирантка Криса Мэннинга — Данци Чэнь (Danqi Chen). В 2014 году она спроектировала первый нейросетевой transition-based парсер. Вместо миллионов разреженных индикаторов ее модель использовала компактные плотные векторы — эмбеддинги для слов, детализированных частей речи и типов связей.

Архитектура парсера Данци Чэнь работает по следующим шагам:

  1. Из стека и буфера извлекаются ключевые элементы (например, первое слово в буфере и два верхних слова в стеке).
  2. Их векторные представления конкатенируются в один большой входной вектор.
  3. Вектор подается на скрытый слой полносвязной нейросети, где вычисляется линейное преобразование $Wx + b$ с последующей нелинейностью ReLU.
  4. На выходном слое вычисляется операция $Uh + b_2$, результаты которой через Softmax превращаются в вероятности трех доступных действий (Shift, Left-Arc, Right-Arc).

Благодаря нелинейной классификации нейросеть Чэнь сравнялась по точности с традиционными графовыми парсерами (которые были точнее, но работали в 50 раз медленнее алгоритма Нивре), сохранив при этом колоссальное преимущество в скорости.

В 2016 году эта технология привлекла внимание компании Google. Их инженеры углубили нейросеть, оптимизировали гиперпараметры и добавили алгоритм пучкового поиска (beam search) для рассмотрения нескольких альтернативных гипотез. Продукт был выпущен под ироничным названием Parsey McParseface и вызвал мощный резонанс в технологических медиа уровня WIRED как самый точный парсер в мире, подняв показатель UAS до рекордных 94.6%.

🕸️ Альтернативный путь: графовые парсеры и библиотека Stanza 1:15:00

В завершение лекции Крис Мэннинг кратко описал второй фундаментальный нейросетевой подход — графовые парсеры (graph-based dependency parsers). В отличие от пошагового алгоритма переходов, графовый метод оценивает предложение целиком. Для каждого слова вычисляется оценка его связи со всеми остальными $n^2$ словами предложения. На основе полученной матрицы весов запускается алгоритм поиска минимального каркасного дерева (Minimum Spanning Tree, MST), гарантирующий отсутствие изолированных островков текста или замкнутых циклов.

Уже к 2017 году нейросетевые графовые парсеры превзошли по точности Parsey McParseface более чем на 1%. Именно эта более совершенная архитектура легла в основу Stanza — открытой библиотеки Stanford University для высокоточного многоязычного синтаксического анализа текстов, используемой разработчиками по всему миру.

💬 Цитаты

«Человеческие слушатели должны понимать, что модифицирует что, чтобы правильно понимать предложения.»

Крис Мэннинг 13:52

«Иерархия Хомского была изобретена вовсе не для того, чтобы мучить начинающих программистов.»

Крис Мэннинг 35:29

«Модель Данци Чэнь показала, что можно построить парсер, превосходящий символьные вероятностные представления.»

Крис Мэннинг 12:53
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Dependency Parsing (Анализ зависимостей)
Процесс определения синтаксической структуры предложения путем выявления связей между главными и зависимыми словами.
Context-Free Grammar (Контекстно-свободная грамматика)
Формальная грамматика, определяющая структуру предложения через иерархическое группирование слов в синтаксические группы.
UAS (Unlabeled Attachment Score)
Метрика оценки парсера, измеряющая процент правильно определенных синтассических связей без учета их грамматического типа.
Treebank (Банк деревьев)
Корпус текстов, в котором для каждого предложения вручную аннотирована его полная синтаксическая структура.
📊 Цифры
🗓 Хронология
  1. IV–VIII века до н.э. Древнеиндийский лингвист Панини создает первую устную грамматику зависимостей для санскрита.
  2. 1950-е годы Ноам Хомский канонизирует теорию контекстно-свободных грамматик и представляет иерархию формальных языков.
  3. 2005 год Йоаким Нивре предлагает детерминированный парсер на основе переходов с использованием символьного машинного обучения.
  4. 2014 год Данци Чэнь разрабатывает первый высокоточный нейросетевой transition-based парсер на плотных эмбеддингах.
  5. 2016 год Google выпускает парсер Parsey McParseface, совершая масштабный PR-всплеск в технологических медиа.
  6. 2017 год Появление нейросетевых графовых парсеров, легших в основу современной открытой библиотеки Stanza.
⚖️ Другая сторона
Искусственный интеллект CS224N Stanford University Dependency Parsing Крис Мэннинг Danqi Chen