<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>The Algorithm of Automatic Accentuation with Respect to the Speaking Norm of а Given Author</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Anna Mosolova</string-name>
          <email>a.mosolova@g.nsu.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Computational Technologies, SB RAS</institution>
        </aff>
      </contrib-group>
      <fpage>443</fpage>
      <lpage>450</lpage>
      <abstract>
        <p>The task of automatic accentuation is important to many eiflds of natuгal language processing including speech generation and poetry generation. In this paper we introduce а deep learning based algorithm of automatic accentuation. We describe the creation of а dataset rfom а collection of works Ьу А. S. Pushkin, а grammar dictionary Ьу А. А. Zaliznyak and а concordance of Pushkin's poems , the trainingof а recurrent neural network on this dataset and the evaluation of the resulting algorithm. The described algorithm outperrfoms the CRF-based baseline Ьу 10%.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>nuder</p>
      <p>Creative</p>
      <p>А. В. Мосолова
Институт вычислительныхтехнологийСО РАН</p>
      <p>a. mosolova@g.nsu.ru
Аннотация Задача автоматическойрасстановки ударений важна
длямногихразделовобработкиестественногоязыка,включаясинтез
речи и генерациюстихотворноготекста. В даннойстатье мы предла­
гаем основанныйна глубокомобучении алгоритмрасстановкиуда­
рений. В статье описывается составлениенабораданныхс помощью
собраниясочиненийА. С. Пушкина,грамматическогословаряА. А.
Зализняка и конкордансак стихам А. С. Пушкина,обучениена этом
наборе данных рекуррентнойнейроннойсети и исследованиекаче­
ства работыполученногоалгоритма.Описываемыйалгоритмпревос­
ходитбазовыйметод,основанныйна алгоритмеусловныхслучайных
полей, на десять процентов.
1</p>
      <p>
        Введение
Во многих областях анализа текста для его корректного рассмотрения тре­
буется наличие ударений у слов. Особенно это важно при анализе стихов.
Однако стандартные алгоритмы акцентуации проставляют ударения на ос­
нове современных норм русского языка, в то время как ритмический ри­
сунок и рифма в стихотворениях многих авторов работает только при той
орфоэпической норме, которая была принята в тот временной период разви­
тия русского языка, когда они создавали свои произведения. Таким образом,
мы видим своем задачей разработку алгоритмов для автоматической рас­
становки ударений, который проводит акцентуацию с учетом норм, которые
были использованы автором при написании своего произведения. В данной
работе будут представлены два алгоритма, решающие эту задачу, имитируя
нормы, которые использовал А. С. Пушкин. В разделе о данных опишем
подготовку наборов данных, основанных на произведениях А. С. Пушкина,
для обучения алгоритмов, далее рассмотрим устройство алгоритма с ис­
пользованием условных случайных полей и алгоритма с рекуррентной ней­
ронной сетью. В конце представлены результаты оценки качества работы
этих алгоритмов на тестовом множестве и заключение о работе.
* Работа осуществленав рамках гранта РНФ № 19-18-00466 «Разработкаи реа­
лизацияинформационнойсистемы многоуровнегоисследованиястихотворных
текстов&gt;&gt;
Исходный набор данных был обработан двумя способами для тестирования
каждого из предложенных в статье алгоритмов. Для первого алгоритма,
который использовался в качестве базового метода, был создан специаль­
ный корпус, основанный на первых четырёх томах собрания сочинений А.
С. Пушкина в десяти томах [1]. Во всех стихотворениях были проставлены
ударения с помощью акцентора, основанного на грамматическом словаре
русского языка А. А. Зализняка (ударения проставлялись в соответствии с
типом акцентной парадигмы из словаря), который использовал не только
саму словоформу, но и ее морфологические характеристики для коррект­
ного проставления ударения в одинаковых словоформах некоторой лексемы
[
        <xref ref-type="bibr" rid="ref1">4</xref>
        ]. Также был использован К&lt;онкорданс к стихам А. С. Пушкина&gt;&gt; Дж.
Томаса Шоу [2,3], из которого брались ударения к словам в строках, где
встречались омографы (рис. 1). Те предложения, в которых ударение не
могло было быть проставлено ввиду отсутствия какой-то из словоформ и
в словаре А. А. Зализняка, и в Конкордансе, удалялись из стихотворения.
Обработанные таким образом стихотворения затем преобразовывались в па­
ры последовательностей, состоящие из входной последовательности букв и
желаемой выходной последовательности нулей и единиц, причём единица
для элемента желаемой выходной последовательности означает то, что со­
ответствующий этому элементу символ входной последовательности должен
находиться под ударением, а ноль - что нет (рис. 2).
      </p>
      <p>Первая из последовательностей поступала на вход алгоритму, который
делал ее предобработку перед использованием в качестве обучающего мно­
жества для нейросети. Каждый символ получал свой набор признаков: явля­
ется ли он заглавной/строчной буквой, буквой/цифрой/знаком препинания,
предыдущая перед текущим символом буква, следующая за текущим сим­
волом буква. Для другого варианта алгоритма расстановки ударений,
осно"Конкорданс"</p>
      <p>+
Охо\</p>
      <p>7
акцентор
7 плачу
ванного на проставлении ударения не для целого текста, а для одного слова,
использовался другой способ представления данных. Здесь на вход подается
Рис.1.
цепочка символов слова, а также его морфологическая характеристика, что
позволяет автоматически разрешать неодзнозначность в омографах.</p>
      <p>При обучении второго алгоритма использовался метод переноса обуче­
ния (transfer learning), поэтому для первичного обучения также был исполь­
зован корпус прозаических текстов, в которых были расставлены ударения.
Количество уникальных слов в обучающей выборке составило более 800 ты­
сяч.</p>
      <p>Дообучение проводилось с помощью второго массива данных - набора
слов из [2,3].</p>
      <p>
        Морфологическая информация о каждом слове генерировалась автома­
тически на основе словарного метода с использованием библиотеки pymorphy2
[
        <xref ref-type="bibr" rid="ref3">6</xref>
        ]. Омография на этапе подготовки корпуса разрешалась вручную.
3
3.1
Алгоритм
      </p>
      <p>
        Базовый метод: условные случайные поля
Обработанные описанным в разделе 2 способом последовательности посту­
пали на вход алгоритма, использующего метод условных случайных полей
(Conditional random efilds, CRF), который является разновидностью метода
Марковских случайных полей [
        <xref ref-type="bibr" rid="ref2">5</xref>
        ]. Принцип работы CRF схож с логистиче­
ской регрессией, этим объясняется быстрое обучение моделей такого рода,
однако она предназначена для предсказания последовательностей и способ­
на использовать, в отличие от логистической регрессии, контекст в качестве
признаков. Метод условных случайных полей часто применяется для задач
определения частей речи, распознавания именованных сущностей, определе­
ния элементов последовательностей изображений, поэтому должен хорошо
себя показывать и в задаче предсказания ударения.
      </p>
      <p>
        Для обучения алгоритма акцентуации мы использовали имплементацию
CRF в библиотеке sklearn-crfsuite [
        <xref ref-type="bibr" rid="ref5">8</xref>
        ] из библиотеки sklearn [
        <xref ref-type="bibr" rid="ref4">7</xref>
        ] для подбора
оптимального алгоритма обучения, а также коэффициента регуляризации.
и вентиль g Е {О,l} d, тогда s' вычисляется через произведение Адамара g
и х и его суммированием с тем же произведением (1 - g) на s.
      </p>
      <p>Таким образом мы можем контролировать запоминание отдельных эле­
ментов, однако для встраивания подобного вектора необходимо, чтобы мы
могли дифференцировать функцию, которая выдавала бы нам 1 или О. Для
этих целей используется вектор g' Е Rn, который затем передается в сигмо­
идную функцию для получения нужных 1 или О.</p>
      <p>Первой архитектурой, использующей преобразование такого рода, была
рекуррентная нейронная сеть типа LSTM [10], однако требуется долгое вре­
мя для приобретения этой сетью обобщающей способности, поэтому нами
была использована рекуррентная нейронная сеть типа GRU.</p>
      <p>
        Рекуррентный слой при обработке нового элемента последовательности
получает на вход не только входной вектор признаков, но и вектор состоя­
ния слоя в предыдущий момент времени, поэтому было решено передавать
информацию о морфологической характеристике слова вместо вектора со­
стояния слоя в предыдущий момент времени, так как простая конкатена­
ция слова и его морфологической характеристики значительно увеличивает
размерность вектора признаков и, как следствие, экспоненциально растёт
число обучаемых параметров нейронной сети, что может привести к её пе­
реобучению, т.е. потере обобщающей способности. Обычно в первый момент
времени (при обработке первого элемента последовательности) вектор со­
стояния считается нулевым. Мы же будем инициализировать вектор состо­
яния для первого элемента последовательности не нулями, а признаковым
описанием морфологической характеристики слова. Сама морфологическая
характеристика слова прндварительно получается с помощью основанного
на нейросети морфоанализатора RNNMorph [
        <xref ref-type="bibr" rid="ref3">6</xref>
        ]. Для обучения данной ней­
ронной сети был применён метод переноса обучения (transfer learning). Сна­
чала нейросеть была обучена расставлять уд арения в словах, полученных из
обычных прозаических текстов, по правилам современного русского языка.
Затем сеть была дообучена на словах из [2,3].
4
      </p>
      <p>Результаты
Тестирование алгоритма проводилось на 25% от полученных наборов дан­
ных.</p>
      <p>В результате экспериментов было показано, что вариант алгоритма на
основе рекуррентных нейронных сетей типа GRU, инициализируемых со­
стоянием на основе векторного представления морфохарактеристик слова,
показывает 5,6% ошибок в расстановке уд арений. Базовый алгоритм, осно­
ванный на условных случайных полях с использованием признаков симво­
лов, дает 15% ошибок на тестовом множестве (табл. 1).</p>
      <p>Алгоритм, основанный на рекуррентных нейронных сетях, показывает
лучшее качество по сравнению с условными случайными полями, в связи
со своей способностью улавливать более тонкие закономерности в подавае­
мых ему на вход последовательностях. Однако, если необходимо получить
Таблица 1. Результаты
Алгоритм % ошибок
Условные случайные поля (базовый метод) 15
Рекуррентная нейронная сеть 5,6
алгоритм, который способен быстро обучатьсвяы, бор будет отдан(хоть и с
некоторойпотерей качества) в пользу CRF.
5</p>
      <p>Заключение
В даннойстатье мы описалипостроениекорпуса для обучения алгоритма
автоматическойрасстановкиударения, базовый алгоритм,основанныйна
условныхслучайных полях, и алгоритм,использующийрекуррентную ней­
роннуюсеть и морфологическиехарактеристикисловав качестве скрытого
состояния.Экспериментыпоказали,что последнийалгоритмвыполняетза­
дачу акцентуациина 10% лучше, чем базовый метод.
Благодарности. Эта работавыполненапод руководствомИвана Юрьеви­
ча Бондаренков рамках работы над грантомРНФ № 19-18-00466 &lt;&lt;Разра­
ботка и реализацияинформационнойсистемымногоуровнегоисследования
стихотворныхтекстов&gt;&gt;.
Список литературы
9. Werbos Р. J.: Backpropagation through time: what it does and how to do it. In:</p>
      <p>Proceedings of the IEEE. рр. 1550-1560. (1990)
10. Hochreiter S., Schmidhuber J.: Long short-term memory. In: Neural computation.
рр. 1735-1780. (1997)</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          4.
          <string-name>
            <surname>Yakovenko</surname>
          </string-name>
          , О., et al.:
          <article-title>Algorithms for automatic accentuation and transcription of russian texts in speech recognition systems</article-title>
          .
          <source>In: In proceedings of the International Conference оп Speech and Computer. рр. 768-777</source>
          . Springer, Cham (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          5.
          <string-name>
            <surname>Sutton</surname>
            ,
            <given-names>Ch.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McCallum</surname>
            ,
            <given-names>А.</given-names>
          </string-name>
          <article-title>An introduction to conditional random fields</article-title>
          .
          <source>In: oFundations and eТrnds@ in Machine Learning. рр. 267-373</source>
          . Now PuЫishers Inc.,
          <string-name>
            <surname>Hanover</surname>
          </string-name>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          6.
          <string-name>
            <surname>Anastasyev</surname>
            <given-names>D. G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gusev</surname>
            <given-names>I. О.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Indenbom</surname>
            <given-names>Е</given-names>
          </string-name>
          . М.:
          <article-title>Improving Part-of-speech Tagging Via Multi-task Learning and Character-level Word Representations</article-title>
          .
          <source>In: Proceedings of the International Conference "Dialogue</source>
          <year>2018</year>
          ". рр.
          <volume>14</volume>
          -
          <fpage>27</fpage>
          . Moscow (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          7.
          <string-name>
            <surname>Pedregosa F</surname>
          </string-name>
          . et а!.:
          <article-title>Scikit-learn: Machine learning in Python</article-title>
          .
          <source>In: T he Journal of machine Learning research. рр. 2825-2830</source>
          . (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          8.
          <string-name>
            <surname>Okazaki</surname>
            <given-names>N.</given-names>
          </string-name>
          :
          <article-title>Crfsuite: а fast implementation of conditional random fields (cr)fs</article-title>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>