Языковой перенос нейросетевого обучения для частеречной разметки Санкт-Петербургского корпуса агиографических текстов (СКАТ)
Гудков Вадим Вадимович
Митренина Ольга Владимировна
Соколов Евгений Геннадьевич
Коваль Ангелина Александровна
В статье рассказывается об эксперименте по обучению морфологического анализатора на основе искусственных нейронных сетей для разметки Санкт-Петербургского корпуса агиографических текстов (СКАТ), который разрабатывается на кафедре математической лингвистики СПбГУ Корпус содержит тексты 23 рукописей XV-XVIII вв. объемом около 190 тыс. словоупотреблений, четыре из которых размечены вручную. Для создания автоматического частеречного анализатора использовались модели bi-LSTM, дистиллированная RuBERT-tiny2 и модель RuBERT. Все они были обучены на корпусах текстов на современном русском языке и перенастроены для разметки древнерусских текстов с помощью языкового переноса. Для дообучения языковых моделей на основе архитектуры трансформера необходимо было сформировать свой токенизатор на основе техники byte pair encoding и соотнести токены из оригинального русскоязычного токенизатора и нового на основе индексов. Затем модель дообучалась на задачу классификации токенов. Для настройки модели использовался размеченный подкорпус из трех житий объемом 35 603 токена, 2885 предложений. В эксперименте учитывалась только разметка с указанием части речи, классификация проводилась по 17 тегам, 13 из которых соответствовали частям речи, а оставшиеся четыре отмечали знаки препинания. Для оценки качества модели использовались стандартные метрики F1 и Accuracy. Согласно автоматическим метрикам оценки наилучший результат показала модель RuBERT. С помощью нее была проведена частеречная разметка «Жития Александра Свирского», ошибки разметки были проанализированы вручную. Большинство ошибок были связаны с неверным обобщением закономерностей линейного положения или со сходством словоформ как в крайней левой, так и в крайней правой позиции.
Ключевые слова: агиография, корпус древнерусских текстов, нейросетевая разметка, языковой перенос нейросетевого обучения, частеречная разметка.
Language-based transfer learning approaches for part-of-speech tagging on Saint Petersburg Corpus of Hagiographic texts (SKAT)
Olga V. Mitrenina, Evgenii G. Sokolov, Angelina A. Koval
The article describes an experiment about training a part-of-speech tagger using artificial neural networks on the St. Petersburg Corpus of Hagiographic Texts (SKAT), which is being developed at the Department of Mathematical Linguistics of St. Petersburg State University. The corpus includes the texts of 23 manuscripts dating from the 15th-18th centuries with about 190,000 words usages, four of which were labelled manually. The bi-LSTM, distilled RuBERT- tiny2 and RuBERT models were used to train a POS tagger. All of them were trained on modern Russian corpora and further fine-tuned to label Old Russian texts using a technique called language transfer. To fine-tune transformer-based language models it was necessary to tokenize the texts using byte pair encoding and map tokens from the original Russian-language tokenizer to the new one based on indices. Then the model was fine-tuned for the token classification task. To fine-tune the model, a tagged subcorpus of three hagiographical texts was used, which included 35,603 tokens and 2,885 sentences. The experiment took into account only the tags of the parts of speech, the classification included seventeen tags, thirteen of which corresponded to parts of speech, and the remaining four marked punctuation marks. To evaluate the quality of the model, the standard metrics F1 and Accuracy were used. According to automatic evaluation metrics, the RuBERT model showed the best result. Most of the errors were related to incorrect generalization of linear position patterns or to the similarity of word forms in both the extreme left and extreme right positions.
Keywords: hagiography, corpus of Old Russian texts, neural network tagging, language-based transfer learning, part-of speech tagging.
Проблема автоматической разметки корпусов древних текстов
По самой своей сути историческая лингвистика -- дисциплина корпусная [Haug 2015: 185]. Не имея доступа к живым носителям, историк языка невольно работает с коллекцией текстов. Появление компьютеров позволило заменить собрания текстов на материальных носителях -- глине, камне, папирусе, пергамене или бумаге -- электронными корпусами, что сильно упростило работу исследователя. Особенностью корпуса является многоуровневая система помет (тегов), описывающих лексические, грамматические и прочие характеристики слов и других компонентов текста [Захаров 2017]. Аннотированный (или размеченный) корпус может быть полезен различным ученым: если лингвист найдет в нем удобный инструмент для извлечения языковых данных и статистической проверки гипотез, то филолога и историка может заинтересовать поиск текстовых заимствований или культурных реалий [Sokolov 2019: 338].
Так, специалистам по истории языка уже доступна построенная А. Е. Поляковым на основе данных корпуса церковнославянских текстов Национального корпуса русского языка (НКРЯ) [Поляков 2014: 245] эмпирическая модель словоизменения церковнославянского языка [Поляков]. Исследователь агиографической традиции может благодаря особой разметке корпусов сравнивать объем и расположение библейских и святоотеческих цитат в определенных группах житийных текстов [Алексеева и др. 2022], текстолог благодаря компьютерным средствам может эффективно находить разночтения в сотнях списков [Алексеева, Миронова 2017: 265-271], историк -- сопоставлять описания событий на широком массиве источников.
Ручная разметка корпусов (расстановка тегов) -- это трудоемкая операция, требующая долгого и однообразного труда квалифицированных лингвистов. Поэтому большой популярностью стали пользоваться автоматические способы разметки корпусов. В частности, в Университете Фрайбурга был создан автоматический лемматизатор для средневековых церковнославянских текстов [Podtergera et al. 2016: 88-90], а для упомянутого выше церковнославянского корпуса НКРЯ применялась комбинация машинного и ручного грамматического анализа [Поляков 2014: 252-253].
Однако существующие инструменты грамматического разбора нередко оказываются малоэффективны при разметке древнерусских и церковнославянских памятников. Причина этого кроется в отсутствии для таких текстов единого графико-орфографического стандарта, многочисленных сокращенных и титлованных написаниях, а также значительной вариативности словоизменительных морфем [Podtergera et al. 2016: 68-82].
В последние годы бурное развитие получили технологии, основанные на нейросетевых моделях, в том числе в сфере морфологической разметки текстов на естественном языке [Dereza et al. 2016; NMT]. Свойственная им эффективность позволяет надеяться на успех в применении их и к древним рукописным памятникам.
В нашей статье на примере Санкт-Петербургского корпуса агиографических текстов (СКАТ) рассматриваются перспективы автоматизации процесса морфологической разметки электронных корпусов на основе обучения искусственных нейронных сетей.
Состав и особенности СКАТ
СКАТ -- это развивающийся проект, реализуемый с конца 1970-х гг. усилиями сотрудников и студентов кафедры математической лингвистики Санкт-Петербургского государственного университета и ставший предметом в том числе и международного сотрудничества. Работа над корпусом в последние годы ведется в кооперации с лионской лабораторией IHRIM, имеющей богатый опыт работы с размеченным корпусом старофранцузского языка [Azarova et al. 2021], участники проекта выступают на крупных конференциях, таких как El'Manuscript, Interdisciplinary Perspectives on Data: 2nd International Conference of the European Association for Digital Humanities (EADH) и XLIX Международная научная филологическая конференция им. Л.А. Вербицкой.
Существование проекта СКАТ делает СПбГУ одним из немногих вузов мира, обладающих собственным историческим корпусом славянских языков [Mitrenina 2014], что подчеркивает высокий научный уровень Петербургского университета.
СКАТ включает тексты 23 рукописей XV-XVIII вв. объемом около 190 тыс. словоупотреблений. В основном это жития севернорусских святых, основателей монастырей Русского Севера на территории современных Вологодской, Архангельской и Ярославской областей. Четыре жития корпуса (50 тыс. словоупотреблений) вручную снабжены полной морфологической разметкой, которая была проведена силами студентов кафедры математической лингвистики под руководством Е. Л. Алексеевой. Эти тексты представлены в формате XML в соответствии с рекомендациями Text Encoding Initiative (TEI); в 2021 г. корпус был реализован на платформе TXM [Azarova et al. 2021]. Размеченные жития используются в качестве обучающей выборки для ряда экспериментов по автоматизации процесса морфологического аннотирования.
Структура морфологической разметки СКАТ
В морфологически размеченной части корпуса для токена могут быть указаны следующие шесть параметров: начальная форма слова («lemma»), грамматические характеристики («msd»), часть речи («pos»), словоформа, записанная с помощью символов кириллицы («reg»), словоформа, записанная с помощью специально разработанного шрифта («scr»), а также код, несущий информацию о тексте, которому принадлежит токен, и его порядковом номере в этом тексте («xml:id»). Ниже приведен пример разметки текста:
<w 1ешша="и" ро8="союз" reg='V src='W xml:id="DmPrlc.188"^</w>
<w leшшa="наказатель" шsd="jo;дат;мн;м" pos="сущ" ^="наказателемъ" src="НАКАЗАТЕЛЕМЪ" xшl:id="DшPrlc.189">наказателемъ</w>
<lb n="10"/>
<w leшшa="иже" шsd="м;им;мн;м" pos="мест" reg="иже" src="ИЖЕ" xшl:id="DшPrlc.190">иже</w>
<w leшшa="въ" pos="пред" reg="въ" src="BV xшl:id="DшPrlc.191">въ</w>
<w leшшa="правда" шsd="a;мест;ед;ж" pos="сущ" reg="правд+" src="ПРАBД+" xшl:id="DшPrlcЛ92">правд,B</w>
<w шsd="м;наст;дат;мн;м" pos="прич" reg="св+дущимъ" src="СB+ДUЩИМЪ" xшl:id="DшPrlcЛ93">св,Bдoyщимъ</w>
<pc force="weak" xml:id="DmPrlc.194">.</pc>
<w leшшa="паче" pos="нар" reg="паче" src="nA&4E" xml:id="DmPrlc.195"> па
<lb n="11"/> че
</w>
<w leшшa="же" pos="част" reg="же" src="ЖЕ" xшl:id="DшPrlc.196">же</w>
<w lemma^'TOn' шsd="тв;дат;мн;м" pos="мест" reg="т+мъ" src="Т+МЪ" xшl:id="DшPrlcЛ97">т,Bмъ</w>
<pc force="weak" xml:id="DmPrlc.198">.</pc>
Набор грамматических характеристик в параметре «msd» зависит от части речи, к которой принадлежит слово. Для существительных, прилагательных и числительных указываются тип склонения, падеж, число и род. Например, для слова рвенїю тег будет выглядеть следующим образом: «р;дат;ед;ср».
Для местоимений в зависимости от разряда могут указываться тип склонения, тип местоимения (1-е, 2-е лицо или возвратность), падеж, число и род; при этом сам разряд явным образом не называется. Различия в составе тегов можно увидеть при сравнении характеристик личного местоимения мы (личн;1;им;мн), возвратного местоимения себе (личн;возвр;вин/род) и неличного местоимения сами (тв;им;мн;м).
Грамматический тег для причастий состоит из пяти компонентов: типа склонения, времени, падежа, числа и рода (ср. помышллющи -- «^о;наст;им;мн;м»). Для глагола указываются наклонение, лицо, число, а также время (для изъявительного наклонения), род (для прошедшего времени), класс (для настоящего/будущего времени и повелительного наклонения). Отметим, что такая характеристика, как возвратность, отображается не в теге, а в части речи («прич/в», «гл/в»).
Для слов других частей речи параметр «msd» не указывается.
Знаки препинания также размечаются, однако для них указываются только две характеристики: «force» (длительность паузы) и «xml:id» (код). Кроме того, в корпусе размечены номера страниц и строк рукописи (параметры «п»).
Тег «src» используется для сохранения написания графических особенностей текста в формате plain text. Так, например, для кодировки буквы п (ять) используется знак «+». Обучение модели проводилось на основании тегов «src», однако для удобства чтения примеры в статье будут указаны в оригинальном написании.
У каждого памятника имеется также экстралингвистическая разметка, включающая в себя сведения о его печатном издании, информацию о названии, датировке и библиотечном шифре взятой за основу издания рукописи, а также о лицах, ответственных за редактирование текста и его конвертацию в формат XML-TEI.
В нашем эксперименте учитывалась только разметка с указанием части речи (тег «pos»).
Вопрос о применимости к анализу церковнославянских текстов понятия «предложение» и конкретном его определении и наполнении имеет долгую и сложную историю [Николенкова 2000: 38 и далее]. Поскольку наша статья посвящена не синтаксической, а морфологической разметке житийного корпуса, мы предпочтем не углубляться в проблему выделения минимальных и максимальных синтаксических единиц членения церковнославянских памятников, принимая за предложение отрезок текста любой степени синтаксической сложности и связности, ограниченный с обеих сторон точками.
Искусственные нейронные сети в лингвистических исследованиях
В современной науке о языке для исследовательских и практических целей активно применяются нейросетевые модели. В основе искусственной нейросети лежит идея модели нейрона [Jurafsky, Martin 2020: 137], предложенная в 1943 г. У Мак-Каллоком и У Питтсом [McCulloch, Pitts 1943]. Искусственный нейрон, или узел нейросети, принимая на вход некоторый набор вещественных чисел, по определенной закономерности их обрабатывает и возвращает результат обработки [Jurafsky, Martin 2020: 138]. С помощью так называемой функции активации этот результат преобразуется в выходной сигнал, принадлежащий обычно отрезку от -1 (или 0) до 1 [Jurafsky, Martin 2020: 138; Букия, Протопопова 2016: 131-132]. Узлы нейросети располагаются слоями. Слои должны быть трех типов: по одному входному и выходному и один или несколько промежуточных, скрытых [Васильев 2021: 33]. В каждом последующем слое всякий нейрон получает на вход выходной сигнал всех нейронов предшествующего слоя [Jurafsky, Martin 2020: 147], причем основные преобразования происходят в скрытых слоях. В выходном слое, как правило, бывает столько узлов, сколько предусмотрено решений для стоящей перед нейросетью задачи [Васильев 2021: 34]. К примеру, в нейросетевом морфологическом анализаторе каждый узел выходного слоя будет соответствовать отдельной части речи или варианту части речи с дополнительными морфологическими показателями (как это будет показано далее в статье).
Применяемые в настоящее время нейронные сети обычно имеют большое количество скрытых слоев, из-за чего называются глубокими. Использование такой нейросети, соответственно, называется глубоким обучением [Jurafsky, Martin 2020: 137].