I. Системы и средства искусственного интеллекта issn 2413-7383 Problems of Artificial Intelligence 2019 №4 (15) 35 П



Pdf көрінісі
бет2/7
Дата04.04.2023
өлшемі0,6 Mb.
#79087
1   2   3   4   5   6   7
c
y
h
f
h
t
t
t






(1) 


Система автоматической генерации транскрипций русскоязычных слов-исключений… 
Problems of Artificial Intelligence 2019 № 4 (15) 
39
В 
П 
где y – итоговая последовательность; c – контекстный вектор: 
)
,...,
,
(
2
1
m
x
x
x
f


(2) 
где x – входная последовательность. 
Декодер имеет следующий вид: 
)
,...,
,
,
(
1
2
1


t
t
y
y
y
c
g
y

(3) 
Рисунок 1 – Типовая схема работы seq2seq модели 
В модели seq2seq исходная информация сжимается в вектор контекста фиксиро-
ванной длины. Основным её недостатком является неспособность запоминать длин-
ные предложения, что приводит к плохому результату. Эта проблема была решена за 
счёт использования модели c вниманием [22] (рис. 2). В данной модели вместо постро-
ения одного контекстного вектора из последнего скрытого состояния декодера 
создаётся контекстный вектор для каждого входного слова. Таким образом, если в 
исходном документе N уникальных слов, то должно быть создано N контекстных 
векторов, а не один. Преимущество применения данного подхода состоит в том, что 
закодированная информация хорошо декодируется моделью. 
Рисунок 2 – Архитектура модели с вниманием 


Пикалёв Я. С., Ермоленко Т. В. 
Проблемы искусственного интеллекта 2019 № 4 (15)
40
П 
Формула контекстного вектора для модели внимания имеет вид: 



x
T
j
j
tj
t
h
a
c
1

(3) 
где 
tj
a
– веса для каждого скрытого состояния 
j
h
(оценка внимания): 



X
T
k
tk
tj
tj
e
e
a
1
)
exp(
)
exp(

(4) 
где 
tj
e
– модель вложения последовательности: 
)
,
(
1
j
t
tj
h
s
a
e



(5) 
где 
t
 – скрытое состояние енкодера: 
)
,
,
(
1
1
t
t
t
t
c
y
s
f
s




(6) 
Модель с вниманием имеет ряд недостатков: контекстный вектор вычисляется 
через скрытое состояние между исходной и целевой последовательностью, не 
учитывая контекст внутри исходного предложения и самого целевого предложения; 
данная модель из-за своей структуры сложна в распараллеливании. 
Модель Transformer [23], [24] основана на seq2seq модели. Модель Transformer 
использует отдельные модели енкодера (преобразует слова входного предложения в 
один или больше векторов в определенном пространстве) и декодера (генерирует из 
этих векторов последовательность слов). 
В качестве стандартных архитектур для енкодера и декодера Transformer ис-
пользует полносвязные слои. Архитектура Transformer (рис. 3) нацелена на проблему 
трансдукции последовательности, что означает любую задачу, в которой входные 
последовательности преобразуются в выходные последовательности. 
Рисунок 3 – Архитектура Transformer 


Система автоматической генерации транскрипций русскоязычных слов-исключений… 
Problems of Artificial Intelligence 2019 № 4 (15) 
41
В 
П 
Transformer уменьшает количество последовательных операций для привязки 
двух символов из последовательностей ввода-вывода с постоянным количеством 
операций O(1). Это достигается при помощи механизма многозадачности, который 
позволяет моделировать зависимости независимо от их расстояния во входном или 
выходном предложении. Новый подход Transformer заключается в том, чтобы 
полностью исключить повторение, и заменить его на обучающее внимание для 
обработки зависимостей между входом и выходом. 
В Transformer енкодер и декодер состоят из стека одинаковых слоёв. Каждый из 
этих слоёв состоит из двух общих типов подслоёв: 
-
механизма многослойного обучающего внимания (multi-head attention); 
-
позиционной полносвязной нейросети прямого распространения (feed forward). 
Главное отличие декодера от енкодера в Transformer – использование слоя c 
механизмом маскирующего многослойного внимания (masked multi-head attention), 
который позволяет «обращать внимание» на специфичные сегменты из енкодера 
(рис. 4). Это стало возможным благодаря механизму masked multi-head attention, 
который маскирует будущие токены посредством блокирования информации токе-
нов, которые находятся справа от вычисляемой позиции. 
Рисунок 4 – Схема работы self-attention и masked self-attention 
Модель генерации транскрипций для слов-исключений 
Для обучения нейросети необходимо: 
-
создать словарь, содержащий слова и их фонемные транскрипции; 
-
преобразовать входные данные (слова) в вектор чисел.
В связи с этим был создан словарь, содержащий более 5 млн уникальных 
словоформ, а также метки «<» (начало слова), «>» (конец слова), «*» (токен для 
обозначения внесловарного символа). Кроме того, был подготовлен набор данных, 
составленный из найденных в Сети фонетических словарей слов-исключений, кото-
рые при помощи библиотеки pymorphy2 были дополнены парадигмами. В общей 
сложности количество элементов словаря слов-исключений составило около 10 тыс. пар. 
Для преобразования слов в вектор был разработан алгоритм кодирования слов, 
который, в первую очередь, направлен на оптимизацию процесса обучения модели 
при помощи мини-пакетного типа обучения. При трансформации данных для мини-
пакетного типа обучения стоит помнить об изменении длины фразы в массивах 
данных. Чтобы разместить фразы разных размеров в одном пакете, необходимо 
сделать матрицу E длины 
s
max
b
L

(L
max
– максимальное кол-во слов во фразе, b
s
– 
размер пакетов), где фразы короче L
max
должны быть дополнены нулями после 
индекса токена «>», обозначающего конец слова. Если просто преобразовать фразы 


Пикалёв Я. С., Ермоленко Т. В. 
Проблемы искусственного интеллекта 2019 № 4 (15)
42
П 
в матрицы путем преобразования слов в их индексы и сделать нулевое заполнение, 
то тензор будет иметь форму (b
s
, W
max
), где W
max
– максимальная длина слова, и при 
индексировании первого измерения будет возвращаться полная последовательность 
по всем временным шагам. Необходимо иметь возможность индексировать пакет по 
времени и по всем последовательностям в пакете. Поэтому выполняется операция 
трансформации входного пакета в размерность (W
max
, b
s
), чтобы индексирование по 
первому измерению возвращало шаг по времени для всех слов в пакете (рис. 5). Для 
этого используется транспонирование матрицы EF =E
T

Рисунок 5 – Изображение операции преобразования матрицы индексов слов 
для мини-пакетного обучения 
Алгоритм кодирования состоит в следующем
1) На вход подаётся W={w


Достарыңызбен бөлісу:
1   2   3   4   5   6   7




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет