Математико-механический факультет



Pdf просмотр
Дата09.01.2017
Размер1.81 Mb.
Просмотров315
Скачиваний0

Санкт-Петербургский Государственный Университет
Математико-механический факультет
Математическое обеспечение и администрирование информационных систем
Кафедра информационно-аналитических систем
Савченков Павел Александрович
Автоматическое распознавание речи на основе визуальной информации
Бакалаврская работа
Научный руководитель:
доцент, к.ф.-м.н. Михайлова Е. Г.
Рецензент:
ст. преп. Немешев М. Х.
Санкт-Петербург
2016

SAINT-PETERSBURG STATE UNIVERSITY
Department of Analytical Information Systems
Pavel Savchenkov
Automatic speech recognition based on visual information
Bachelor’s Thesis
Scientific supervisor:
associate professor, PhD Elena Mikhailova
Reviewer:
senior assistant professor Marat Nemeshev
Saint-Petersburg
2016

Оглавление
Введение
4
Постановка задачи
5
1. Обзор существующих методов
6
1.1. Подходы к построению акустической и языковой моделей . . .
8 1.1.1. Скрытые марковские модели . . . . . . . . . . . . . . . .
8 1.1.2. Нейронные сети . . . . . . . . . . . . . . . . . . . . . . . .
10 1.2. Обзор методов выделения признаков . . . . . . . . . . . . . . . .
15 1.2.1. Дескрипторы, основанные на выделении контуров . . . .
15 1.2.2. Дескрипторы, основанные на анализе значений пикселей
17 1.3. Эталонные выборки . . . . . . . . . . . . . . . . . . . . . . . . . .
18
2. Предложенный метод
20
2.1. Общее описание метода . . . . . . . . . . . . . . . . . . . . . . . .
20 2.2. Описание выбранной эталонной выборки . . . . . . . . . . . . .
20 2.3. Выделение признаков . . . . . . . . . . . . . . . . . . . . . . . . .
21 2.4. Доразметка обучающей выборки . . . . . . . . . . . . . . . . . .
24 2.5. Построение акустической модели . . . . . . . . . . . . . . . . . .
26 2.6. Модель, распознающая произнесенное слово на каждом кадре .
29 2.7. Модель, распознающая короткие последовательности слов . . .
31
3. Используемые технологии
34
4. Заключение
35
4.1. Результаты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35 4.2. Сравнение с другими работами . . . . . . . . . . . . . . . . . . .
35
Список литературы
36
3

Введение
В большинстве случаев под распознаванием речи подразумевают преобра- зование аудио-последовательности записи голоса человека в текстовые дан- ные. Однако, в некоторых случаях использование не только звуковой, но и видео-информации позволяет улучшить качество распознавания или даже за- менить аудио-модели.
Системы основанные на визуальных признаках могут использоваться для аутентификации [9], реализации интерфейсов ввода информации или управле- ния. Последнее особенно актуально в связи с широким распространением мо- бильных устройств, использование которых часто происходит в зашумленных условиях, сильно понижающих качество распознавания аудио-сигнала. Также данный подход может использоваться в случаях, когда человек по каким-то причинам не имеет возможности говорить вслух.
Однако распознавание речи, основанное на визуальной информации в об- щем случае сложнее анализа аудио-сигнала. Человеческая речь содержит по- рядка 50 фонем (минимальная различимая единица аудио-потока) в то вре- мя как по губам возможно различить порядка 10-15 визем (групп визуально неразличимых фонем). Таким образом, последовательность визем часто мо- жет не соответствовать конкретному слову и точность чтения по губам силь- но зависит от контекста. Кроме того, даже среди людей говорящих на одном диалекте соответствие между движениями губ и произнесенными виземами может очень сильно различаться, что делает почти невозможным построе- ние общей видео-модели распознавания без априорной информации о ”стиле”
движения губ человека.
В данной работе рассматривается проблема распознавания слитной речи на основе визуальной информации (фактически - чтение по губам) с малень- ким словарем и небольшим количеством произнесенных слов на рассматрива- емом отрезке видеоряда.
4

Постановка задачи
В рамках данной работы были поставлены следующие задачи:
• Провести обзор существующих подходов к распознаванию речи
• Выделить и описать основные этапы работы алгоритмов распознавания речи
• Предложить подход к преобразованию речи в текст, основанный только на визуальной информации
• Поставить ряд экспериментов и определить применимость предложен- ных методов
5

1. Обзор существующих методов
Системы распознавания речи можно условино разделить на несколько клас- сов по тому, какие типы последовательностей слов они способны анализиро- вать:
• Отдельные слова
Такие системы опираются на то, что произношение каждого слова бу- дет окружено тишиной с обоих сторон, то есть вынуждают говорящего делать паузы между соседними вхождениями. Выделение пауз в речи представляется отдельной задачей. В такой формулировке задачу рас- познавания можно (но не обязательно) рассматривать как задачу клас- сификации
• Связная речь
Некоторым вхождениям слов разрешается идти друг за другом с мини- мальной паузой
• Слитная речь
Практически естественная речь человека. Одна из сложнейших задач распознавания
В данной работе рассматривается класс, лежащих между первым и вторым пунктом - распознавание слов небольшого словаря на записях, содержащих несколько произнесенных слов подряд.
Большинство подходов к распознаванию речи можно разбить на следую- щие последовательные шаги:
• Препроцессинг
Включает выделение отрезков речи/не речи
• Извлечение признаков
• Декодирование
Собственно, расшифровка сказанной информации. Происходит с исполь- зованием:
6

Акустической модели
Описывает зависимость между аудио-сигналом и единицами речи
(почти всегда фонемами)
Словаря
Множество произносимых слов вместе с их транскрипциями
Языковой модели
Распределение вероятностей над множествами всех предложений или отдельных слов
• Постпроцессинг
На выходе предыдущего пункта может получиться набор возможных по- следовательностей слов вместе с их оценками (например, вероятностя- ми). При выборе окончательного ответа можно использовать какие-либо высокоуровневые требования, которые не было возможности принять во внимание на описанных ранее этапах.
Схематически процесс можно представить следующим образом:
Рис. 1: Общий вид процесса распознавания речи
Также обычно фиксируются эталонные выборки данных для обучения,
тестирования и сравнению с другими работами. В рамках данной работы ос-
7
новное внимание уделяется извлечению визуальных признаков, акустической модели и последующему декодированию в последовательность слов.
1.1. Подходы к построению акустической и языковой мо-
делей
Во многих статьях относящихся к распознаванию речи долгое время базо- вым подходом считались скрытые марковские модели (например, [30], [15]),
однако в последнее время активно развиваются методы, основанные на при- менении нейронных сетей, в особенности рекуррентных (например, [8]). Далее приводится более подробный обзор указанных методов.
1.1.1. Скрытые марковские модели
Скрытая марковская модель (СММ) представляет из себя систему, имити- рующую случайный процесс, эволюция которого зависит только от текущего состояния модели и не зависит от предыдущей истории. В таком случае ста- вится задача нахождения значений скрытых (неизвестных) параметров моде- ли при заданной последовательности наблюдаемых значений.
Таким образом марковский процесс можно изобразить так:
Рис. 2: Пример марковского процесса
Здесь x t
∈ {1, . . . , N }
- скрытое состояние модели в момент времени t,
y t
∈ R
d
- наблюдаемая переменная в момент времени t. Значение y t
зави- сит только от x t
, а x t
только от состояния в момент времени t − 1, то есть от x t−1
. Для дальнейшего задания модели требуется определить матрицу ве- роятностей переходов a ∈ R
N ×N
| a i,j
= p(x t
= j|x t−1
= i)
, распределения наблюдаемых переменных для каждого состояния p(y t
|x t
)
и распределение
8
вероятностей начальных состояний p(x
1
)
. Обычно распределние p(y t
|x t
) = b t
делают нормальным b t
(y) = N (y; µ
t
, Σ
t
)
В общем случае вероятностные модели применяются при распознавании речи следующим образом [19]. После извлечения векторов признаков из сиг- нала Y = y
1
, . . . , y
T
декодер пытается найти последовательность слов w =
w
1
, . . . , w
L
, которыми с наибольшей вероятностью сгенерирована Y , другими словами находит w best
= argmax w
{P (w | Y )}
. Часто неудобно работать с веро- ятностью P (w | Y ), поэтому, используя формулу Байеса, ее заменяют на argmax w
{
P (Y |w)·P (w)
P (Y )
}
= argmax w
{P (Y | w) · P (w)}
Здесь P (Y | w) определяется акустической моделью, а P (w) - языковой.
Каждому слову соответствует упорядоченная последовательность фонем
(возможно не одна, поскольку у слова может быть несколько правильных произношений). Акустическая модель для конкретного слова получается кон- катенацией моделей для отдельных фонем, которые, в свою очередь, обучают- ся на размеченной тренировочной выборке, например, с помощью алгоритма прямого-обратного хода [25]. Можно уточнить формулу вычисления P (Y | w)
как суммирование по всем возможным произношениям последовательности w
P (Y | w) =
Q
P (Y | Q) · P (Q | w)
Первый множитель P (Y | Q) при заданной марковской модели для Q =
q
(w
1
)
, . . . , q
(w
L
)
, полученной конкатенацией моделей для своих составляющих,
считается как сумма вероятностей по всем последовательностям состояний
Θ = θ
0
, . . . , θ
T +1
, а именно
P (Y | Q) =
Θ
P (Θ, Y | Q) =
Θ
a
θ
0

1
T
t=1
b
θ
t
(y t
)a
θ
t

t+1
Состояния θ
0
и θ
T +1
введены для удобства последовательной конкатенации моделей друг с другом и большой роли не играют.
Второй же множитель считается как просто произведение вероятностей по каждому слову, что оно было произнесено соответствующим образом:
P (Q | w) =
L
l=1
P (q
(w l
)
| w l
)
9

Однако, обычно описанные модели используются не для нахождения по- следовательности сказанных слов, а для распознавания фонем, то есть для получения распределения вероятностей произнесенных фонем в каждый мо- мент времени. Дальшейший анализ производится с помощью языковой модели и алгоритмов, специализированных для конкретной задачи. В качестве при- меров можно привести Weighted Finite State Transducer [20] и нейронные сети,
про которые речь пойдет далее [7].
1.1.2. Нейронные сети
Нейронная сеть - это модель, используемая для оценки неизвестной функ- ции f(x) : R
d
1
→ R
d
2
, зависящей от большого числа параметров. Она представ- ляет из себя набор взаимодействующих между собой т.н. нейронов. Cоедине- ния между ними имеют численные веса, которые могут быть пересчитаны
(обучены) для лучшего соответствия заданным входным данным. Такая мо- дель впервые появилась в 40-х годах прошлого века, вдохновленная базовыми принципами работы человеческого мозга.
10

В общем случае нейронная сеть может быть визуализирована таким обра- зом:
Рис. 3: Общий вид нейронной сети
Здесь сеть принимает на вход вектор (a
1
, a
2
, a
3
, a
4
)
и выдает результат
(b
1
, b
2
, b
3
)
Обычно структура нейронной сети представляет из себя последователь- ность соединенных между собой слоев, причем для каждой пары соседних слоев заданы веса w i,j между i-м нейроном 1 слоя и j-м нейроном 2-го (при этом не обязательно соединять все пары нейронов). Таким образом, если u
(k)
i
- выход i-го нейрона k-го слоя, то на вход к j-му нейрону k + 1-го слоя по- дается i
w
(k)
i,j
· u
(k)
i
. Все слои кроме первого (входного) и последнего (выход- ного) называются скрытыми. Выход нейрона определяется его активацион- ной функцией, применяемой ко входу. Популярными функциями являются сигмоидная σ(z) =
1 1+e
−z
, пороговая φ(z) = max(0, z), гиперболический тан- генс φ(z) =
2 1+e
−2z
− 1
, rectified linear unit f(x) = max(x, 0) или тождественная функция φ(z) = z.
11

Таким образом в базовом случае сеть выглядит так:
Рис. 4: Пример нейронной сети
Подобные слои называются линейными, поскольку представляют из себя умножение входного вектора на матрицу весов w
(k)
i,j на k-ом слое. На практике к такому преобразованию обычно добавляют смешение b k
, то есть выходной вектор k-го слоя u
(k)
вычисляется через предыдущий слой как u
(k)
= φ
(k)
(A
(k)
· u
(k−1)
+ b k
)
, A
(k)
∈ R
d
1
×d
2
, b k
∈ R
d
1
В случае дифференцируемых функций активации преобразование f(x),
задаваемое сетью также дифференцируемо, что позволяет вычислять гради- енты в точке по параметрам w
(k)
i,j
При условии задания обучающей выборки {(x i
, y i
)}
и функционала потерь
L(y i
, f (x i
))
(также дифференцируемого) становится возможным оптимизиро- вать параметры сети с помощью метода градиентного спуска. Такой способ обучения получил название метода обратного распространения ошибки по- скольку вычисление градиента идет в противоположном порядке по сравне- нию с вычислением значения функции f(x).
Также существуют специальные нелинейные слои, заточенные под реше- ние различных классов задач. Например, сверточные слои [14], принимающие на вход изображения (обычно двумерные матрицы) и на выходе получающие какие-либо комбинации их сверток с различными ядрами. Также существуют преобразования, осуществляющие свертки с функцией max или min – max и
12
min-pooling соответственно. Подобные подходы в данный момент считаются state-of-the-art в анализе изображений. Кроме того, есть слои помогающие с проблемой переобучения - dropout (убирает долю связей между слоями во из- бежание слишком хорошей подгонки под тренировочные данные) [6] или batch normalization (нормализация данных не только перед загрузкой из в сеть, но и в процессе прохождения их между слоями) [12]. Все упомянутые подходы также позволяют считать градиенты по параметрам сети и соответственно обучать модель методом градиентного спуска.
Однако в рассматриваемой задаче сопоставления видеозаписи последова- тельности векторов признаков Y = y
1
, . . . , y
T
она может быть достаточно длин- ной, T не всегда фиксировано. Также требуется на выходе получать после- довательность слов, а не единственную метку класса. В связи с подобными проблемами появились т. н. рекуррентные нейронные сети, которые обладают
”обратной связью”, другими словами позволяют передавать накопленную по ходу информацию дальше во времени.
Визуально такой процесс можно изобразить следующим образом:
Рис. 5: Процесс работы рекурретной нейронной сети
Здесь сеть в момент времени t принимает входной вектор x t
, скрытое состо- яние на предыдущем шаге s t−1
и вычисляет выходной вектор o t
. После этого происходит новое состояние s t
передается в следующую итерацию процесса.
Такие сети позволяют обрабатывать последовательности неизвестной длины,
учитывая связи между настоящим и прошлым.
Основным методом обучения таких сетей является метод обратного рас- пространения ошибки во времени. Он работает следующим образом: проис-
13
ходит ”развертка” сети во времени, то есть если входная последовательность имела длину T , то сеть скопируется T раз. После этого сеть рассматривается как нерекуррентная, поэтому можно запустить обычный алгоритм обратного распространения ошибки и посчитать градиенты по весам (здесь существуют варианты запускать пересчет весов сразу для всей последовательности дли- ны T или для каждого префикса длины 1 ≤ T ≤ T ). Затем сеть обратно сворячивается в исходное состояние и происходит обновление весов средним значением градиента из всех копий сети.
Простейшие архитектуры подобных сетей хоть и способны обрабатывать последовательности произвольной длины, но подвержены таким проблемам при обучении как ”проблема изчезающего градиента” и ”проблема взрываю- щегося градиента”. Они связаны с тем, что при последовательном умножении маленьких/больших чисел результат растет/падает экспоненциально и гради- ент при обратном распространении ошибки может стать очень большим либо очень близким к нулю. В обычных нейронных сетях такая проблема также присутствует, но в рекуррентных моделях она выражена особенно остро. По тем же причинам, такие сети плохо учитывают завимости между сравнитель- но далеко отстоящими во времени моментами.
Для борьбы упомянутыми проблемами была придумана специальная ар- хитектура под названием Long Short Term Memory [24]. Визуально слой такой сети можно изобразить следующим образом:
Рис. 6: Структура слоя LSTM
Главная идея такой сети - это введение т. н. cell state, к которому в мо- мент времени t последовательно применяются forget gate и update gate. Таким
14
образом состояние сети проходит сквозь такие преобразования удалив часть информации, добавив новую и какую-то долю старого состояния оставив по- чти без изменения. Таким образом долгосрочные зависимости могут долго сохраняться при работает такой сети. Кроме того по причине нормализации данных с помощью сигмоидной и тангенсной активационных функций про- блемы исчезающего и взрывающегося градиента гораздо меньше проявляют себя. Подобная архитектура очень часто используется при работе с рекуррент- ными нейронными сетями и подавляющем большинстве случаев получаются модели лучшего качества, чем при использовании стандартных рекуррентных моделей.
Рекуррентные нейронные сети успешно используются при построении аку- стических [8] и языковых [7] моделей.
В данной работе при выборе между скрытыми марковскими моделями и нейронными сетями выбор сделан в пользу нейронных сетей, так как они де- лают меньше предположений о природе входных данных и в тоже время яв- ляются практически state-of-the-art решениями в распознаваниии речи.
1.2. Обзор методов выделения признаков
Среди подходов к выделению признаков из объектов на изображениях можно выделить алгоритмы, основанные на выделении контуров объекта (в рассматриваемом случае - губ) и методы, работающие напрямую со значени- ями пикселей в некоторой области на изображении. Также существуют алго- ритмы, использующие методы трекинга лица для улучшения точности при- знаков в случае, если входом является не фиксированная картинка, а видеоряд
(например, [23]).
1.2.1. Дескрипторы, основанные на выделении контуров
К классическим методам первой группы можно отнести активные моде- ли внешнего вида (active appearance models) [27] и активные модели формы
(active shape models) [18]. Они представляют из себя методы подгона некото- рой статистической модели изображений, учитывающей форму или текстуру
15
объекта, под конкретную картинку [5]. На похожих идеях основано множе- ство подходов к нахождению ключевых точек на изображениях (например,
[28] [17]). Выходом данных алгоритмов является множество ключевых точек на изображении, обозначающих форму лица, губ, глаз и т.п.
Существуют готовые реализации некоторых подходов разметки лица, опи- санных в статьях. Например, на изображении приведен пример работы при- ложения IntraFace, основанного на статье [33]
Рис. 7: Пример работы алгоритма разметки лица из IntraFace
Также широко известен метод, предложенный в статье [17]. Он основан на подгоне статистической модели формы лица к заданному изображению с помощью градиентного бустинга на регрессионных деревьях.
16

Ниже приведены примеры его работы, полученные с использованием биб- лиотеки dlib, где данный подход реализован (показаны только контуры губ):
Рис. 8: Пример работы алгоритма разметки лица из dlib
В данной работе в качестве базового алгоритма выделения признаков был использован последний упомянутый подход, поскольку он по качеству сопо- ставим с лучшими решениями и при этом имеет реализацию с открытыми исходными кодами, что может позволить в будущем подгонять его под нуж- ные задачи.
1.2.2. Дескрипторы, основанные на анализе значений пикселей
Ко второй группе можно отнести такие подходы как обучение извлечения вектора признаков из набора пикселей изображения с помощью нейронных сетей. Такие сети могут работать следующим образом [22]: на вход подаются значения пикселей изображения или региона интереса и на выходе ожидается вектор, в точности равный входному, при это скрытые слои содержат гораздо меньше нейронов, чем входной. В процессе обучения происходит настройка весов скрытых слоев, чтобы они выдавали компактное представление исход- ных данных, из которого можно с какой-то степень точности их восстановить.
Преимуществом такого метода является отсутствие необходимости вручную решать какие признаки лучше всего опишут входные данные для конкретной задачи, придумывать различные ручные дескрипторы. Также такой подход
17
меньше зависит от способа подачи данных, например, можно вычислять при- знаки сразу для нескольких подряд идущих изображений из видео-потока.
Также стоит упомянуть про алгоритмы основанные на методы главных компонент. Он может использоваться для сжатия вектора признаков боль- шой размерности (например, списка значений пикселей региона интереса [3]).
В его основе лежит применение ортогонального преобразования к исходно- му пространству таким образом, чтобы выборочная дисперсия вдоль первой координаты была максимальна и далее выборочная дисперсия вдоль каждой последующей координаты максимальна, при условии ее ортогональности всем предыдущим координатам. Для применения подобных подходов на практике требуется предварительно вычислить матрицу ортогонвального преобразова- ния и вектор средних по обучающей выборке. После этого работа с заданным тестовым изображением представляет из себя вычитание среднего вектора с последующим преобразованием в вектор маленькой размерности, который можно рассматривать как вектор признаков и использовать для дальнейшей классификации как компактное представление исходного изображения.
1.3. Эталонные выборки
Подавляющее количество свободно доступных датасетов с размеченными аудио- и видеозаписями доступно на английском языке. Среди них можно выделить несколько самых популярных:
• GRID [4]
Содержит 33 говорящих, для каждого записано 1000 3-х секундных ви- део с произношением 6 слов из классов: команда (4 слова), цвет (4 слова),
предлог (4 слова), буква (25 штук, без W), цифра (10 штук), наречие (4
штуки).
• CUAVE [2]
36 говорящих, словарь из 10 цифр
• LILiR TwoTalk corpus [11]
4 диалога по 12 минут между двумя людьми
18

• AVLetters1 [10]
10 говорящих, по 3 повторения каждой буквы английского алфавита
(всего 780 произношений)
В данной работе был использован датасет GRID.
19

2. Предложенный метод
2.1. Общее описание метода
Как будет подробно рассказано ниже, последовательность шагов по рас- познаванию множества сказанных слов на видеозаписи выглядит следующим образом:
1. Для каждого кадра считается вектор признаков
2. С помощью акустической модели для каждого кадра считается распре- деление вероятностей произнесенных визем
3. Сгенерированная последовательность вероятностей проходит через спе- циальный вид рекуррентной нейронной сети (т.н. decoder LSTM) и ко- дируется в вектор фиксированной размерности
4. Полученный на предыдущем шаге вектор служит входным параметром для другой рекуррентной нейронной сети (т.н. encoder LSTM), которая последовательно генерирует метки выходных слов
2.2. Описание выбранной эталонной выборки
Как было сказано в разделе 1.3 для экспериментов был выбран датасет
GRID, записанный работниками университет Шеффилда. Он содержит в себе записи речи 34 спикеров, по 1000 видео на человека с частотой 25 кадров в секунду. Каждая запись представляет из себя последовательность слов из искусственной грамматики вида
<команда:4><цвет:4><предлог:4><буква:25><цифра:10>
<наречие:4>
После двоеточия указано количество различных слов соответствующего типа. Пример предложения из указанной грамматики: ”bin blue by m three again”. Более подробно содержание записей описано в следующей таблице
20

Таблица 1: грамматика в GRID corpus команда цвет предлог буква цифра наречие bin blue at
A-Z
1-9
again lay green by без W
zero now place red in please set white with soon
Также для каждой записи известен порядок слов, произнесенных на ней,
вместе с начальным и конечным кадром каждого произношения. Поскольку некоторые слова (и буквы) длились всего несколько кадров, было решено при- нимать в рассмотрение только фразы, которые длятся не слишком мало. А
именно, для каждого слова было подсчитано его средняя длина в кадрах и были оставлены для дальнейшей работы только следующие слова, длящиеся в среднем не меньше 4 кадров
Таблица 2: список выбранных слов place lay now red white green please again blue soon by with set bin five three nine eight two six zero four one seven
2.3. Выделение признаков
В качестве базового метода извлечения признаков из видеопотока исполь- зовался метод, предложенный в статье [17]. Преимуществами данного подхода являются качество, сопоставимое с коммерческими аналогами и малое время работы, что позволяет получать вектора признаков из видео ”на лету”. К то- му же этот алгоритм реализован в библиотеке с открытым кодом dlib, что добавляет возможность его модификации под возникающие задачи.
Таким образом, на выходе с каждой картинки получается последователь- ность из 68 точек (x, y), из которых мы оставляем 20 штук (x
1
, y
1
, ..., x
19
, y
19
)
,
соответствующих контуру губ, как указано на рисунке.
21

Рис. 9: Ключевые точки на губах
Затем происходит нормализация полученного вектора. Этот шаг необхо- дим, поскольку при сдвиге лица на кадре или его повороте вектор признаков должен меняться как можно меньше. Но при этом задача восстановления на- чального положения обьекта (в рассматриваемом случае - губ) в общем случае представляется довольно сложной задачей, поэтому был использован аналог простого метода нормализации, предложенного в статье [32]. Он заключается в переносе координат уголков губ в точки с координатами (−1, 0) и (1, 0) соот- ветственно. Более подробно, вычисляется средняя точка между уголками рта по формуле x
c
=
x
0
+x
6 2
, y c
=
y
0
+y
6 2
Можно получить угол поворота и радиус r =
(x
0
− x c
)
2
+ (y
0
− y c
)
2
α =
tan
−1 y
6
−y
0
x
6
−x
0
После этого нормализованные координаты контура можно получить сле- дующим образом x
(norm)
i
=
(x i
−x c
)
cos α+(y i
−y c
)
sin α
r y
(norm)
i
=
(y i
−y c
)
cos α+(x i
−x c
)
sin α
r
22

Таким образом, для последовательности из 75 кадров для каждой записи из рассматриваемого датасета, можно посчитать последовательность векторов признаков размерности 40. Кроме того, данные были линейно экстраполиро- ваны с 25 fps до 100 fps (т.е. теперь в одной записи после этого содержится 300
кадров). Такое преобразование является широко известным и применяется во многих работах (например [34]). Кроме того, такой шаг кажется полезным, по- тому что 25 кадров в секунду - это немного, а модели в распознавании речи (в том числе по звуковым данным) обычно работают с данными большей часто- ты. Например, очень широко используемые в анализе речи мел-кепстральные коэффициенты (mel-frequency cepstral coefficients) и PLP cepstral coefficients обычно считаются на окне шириной 25 миллисекунд, с шагом 10 миллисекунд по звуковому сигналу. Другими словами, на выходе получается последова- тельность частотой 100 fps, что совпадает с количеством векторов признаков после проведенной экстраполяции.
Как будет показано далее, в предложенном подходе можно добиться незна- чительного улучшения путем применения экспоненциального сглаживания второго порядка к последовательности векторов в пределах одной записи.
Более подробно, алгоритм экспоненциального сглаживания первого порядка временного ряда {u t
}
t=T
t=1
представляет из себя u
(smooth)
t
= αu t
+ (1 − α)u
(smooth)
t−1
, где 0 < α < 1 - параметр
Можно заметить, что алгоритм представляет из себя следующее: новый элемент сглаженной последовательности u
(smooth)
t получается прибавлением к предыдущему элементу u
(smooth)
t−1
его разности с текущим элементом последова- тельности (u t
−u
(smooth)
t−1
)
, домноженной на α. Таким образом, в каком-то смысле сглаживается первая ”производная” последовательности. Такое преобразова- ние, довольно долго реагирует на резкие изменения в поведении {u t
}
, поэтому в данной работе было использовано более чуствительное к таким колебаниям сглаживание второго порядка s
1
= u
1
b
1
= 0
s t
= αu t
+ (1 − α)(s t−1
+ b t−1
)
23
b
t
= β(s t
− s t−1
) + (1 − β)b t−1
u
(smooth)
t
= s t
+ b t
В экспериментах использовались константы α = 0.95, β = 0.1. Несмотря на его простоту такой метод позволил немного улучшить результаты.
2.4. Доразметка обучающей выборки
Поскольку распознавание предполагалось проводить в 2 этапа - распозна- вание последовательности визем (акустическая модель), затем непосредствен- но распознавание слов, то требуется разметка обучающей выборки по визе- мам. Для этого требуется ее распределение вероятностей фонем на каждом кадре, имея которую можно получить требуемую разметку, воспользовавшись любой таблицей, указывающей на возможное соответствие между фонемами и виземами. Таким образом, появилась задача по имеющимся аудиозаписям для рассматриваемого датасета GRID corpus получить распределение фонем с помощью какой-либо аудио-модели.
Для обучения данной модели был выбран стандартный датасет TIMIT [16].
В качестве признаков использовались логарифмы от т.н. filter-bank features.
Они вычислялись, как уже было упомянуто в разделе 2.3, на окне длиной 25
миллисекунд подряд идущих измерений сигнала и были вычислены с шагом
10 миллисекунд. Кроме того, окончательный вектор признаков для фрейма составлялся его конкатенацией векторов признаков размерности 40 c 5 преды- дущих фреймов и 10 следующих. Таким образом вектор признаков имел раз- мерность 40 · (5 + 1 + 10) = 640 чисел. Затем обучалась нейронная сеть со следующей архитектурой
24

Рис. 10: Архитектура сети для обучения аудио-модели
Здесь на стрелках подписана размерность данных, полученных после при- менения соответствующего слоя. Описание принципа работы обозначенных слоев можно найти в разделе 1.1.2. Заметим, что сверточные и max-pooling слои используются не только при анализе изображений, но и в задачах рас- познавания речи (например, [29], [21]). Выходом сети служило распределение вероятностей 61 фонемы, список которых приведен ниже
Таблица 3: список фонем sh iy hv ae dcl d y
er aa r
kcl k
s uw dx ih hg gcl g
w epi q ao l
axr ow n
m tcl t
ix eh oy ay dh hh z pcl ax th bcl b
ux f
el v
aw p ah ey en ch uh pau jh nx ax-h zh em eng
Точность такой работы такой модели на выборке из TIMIT (80% - трениро- вочное множество, 20% - тестовое), если из распределения выбирать фонему с максимальной вероятностью, получилась 71%.
Следующим шагов является преобразование вектора вероятностей фонем в каждый момент времени в соответствующий ему вектор вероятностей визем.
Это было сделано с помощью расширенной на 61 фонемы таблицы приведен- ной в [1]
25

Таблица 4: соответствие визем и фонем
Визема Фонема
O
ao ix ow oy k
el en eng epi g
hh hv k
l n
ng nx y
uh uh uw ux
Визема Фонема ah ah ax ax-h ay ey ey ae aw eh ey iy ih er er axr f
f v
t d
dh dx s
d t
th z
Визема Фонема aa aa ch ch bcl dcl jh kcl pcl sh zh p
p b
em m
sil sil pau gcl q
tcl w
w r
Вероятность одной из 14 визем считается как сумма вероятностей соответ- ствующих ей фонем.
2.5. Построение акустической модели
Модель, предсказывающая распределение вероятностей визем на каждом фрейме представляла из себя нейронную сеть с несколькими линейными сло-
26
ями с активационными функциями, возможно, со dropout-слоями между ни- ми. Таким образом в нашем случае модель задавалась выходной размерно- стью каждого линейного слоя, активационной функцией после каждого слоя и вероятностью в каждом dropout слое. Также, по аналогии с методом, ис- пользованным в предыдущем разделе, вектор признаков для кадра считал- ся конкатенацией векторов признаков на каждом фрейме в пределах опреде- ленного окна. Однако в нашем случае можно более аккуратно использовать вектор признаков, ведь формы губ на соседних кадрах очень сильно корре- лируют между собой и логичным шагом кажется сжать сконкатенированный вектор в несколько раз, одновременно избавившись от ненужного шума, лиш- ней информации и увеличив скорость обучения за счет меньшей размерности входных данных. Сжатие вектора осуществлялось с помощью метода главных компонент. В этом подходе требуется выбрать сколько компонент оставить в качестве признаков и, соответственно, какие компоненты не принимать во внимание. В качестве ориентира для этого параметра использовалось правило,
заключающееся в том, что остаются только компоненты с соответствующим собственным числом большим среднего среди всех собственных чисел (т.н.
Kaiser rule, более подробно в [13]). Также, были проведены эксперименты с применением экспоненциального сглаживания первого, второго порядка.
27

Пример сети, использованной в экспериментах
Рис. 11: Одна из возможных сетей в акустической модели
В качестве тренировочной выборки использовалось множество из 15 спи- керов, а тестовой выборке содержалось 3 спикера (не из числа первых пятна- дцати). В таблице приведены результаты некоторых экспериментов. Описание модели состоит из размера окна, которое использовалось для извлечения при- знаков, количества компонент после сжатия размерности (применения pca - principal component analysis), описания структуры сети, какие еще преобразо- вания были применены к векторам признаков. Например, первая запись озна- чает, что в качестве вектор признаков рассматривались сконкатенированные вектора из 10 предыдущих и 5 следующих фреймов и модель представляла из себя 3 линейных слоя с сигмоидными активационными функциями и вы- ходными размерностями 128, 64, 14 соответственно. Также указано, является ли выбранное количество компонент оптимальным по указанному выше пра- вилу. Во всех указанных экспериментах был использован размер батча 128,
метод обучения adam с начальным learning rate 0.001 (данные параметры по- казывали лучшие результаты на большинстве архитектур сетей)
28

Таблица 5: некоторые результаты обучения акустической модели
Описание модели
Точность распознавания визем
Window 10-5, pca 72(opt)
128(sigmoid)+64(sigmoid)+14(sigmoid)
54%
Window 10-5, pca 72(opt)
exp smoothing first order (α=0.97)
128(sigmoid)+64(sigmoid)+14(sigmoid)
52%
Window 20-10, pca 80(opt)
exp smoothing second order (α=0.95,β=0.1)
140(sigmoid)+80(sigmoid)+14(sigmoid)
55%
Window 15-10, pca 75(opt)
exp smoothing second order (α=0.95,β=0.1)
110(relu)+80(relu)+14(relu)
56%
Window 15-10, pca 75(opt)
exp smoothing second order (α=0.95,β=0.1)
110(relu,dropout=0.1)+
80(relu,dropout=0.15)+14(relu)
58%
Таким образом, лучшая модель имела точность 58%, она и использовалась в качестве первого шага в распознавании. Заметим, что такая точность пред- ставляет из себя качество распознавания разметки, которая была получена аудио-моделью c собственной точностью 71%, поэтому такой результат может оказаться лучше, чем кажется на первый взгляд.
2.6. Модель, распознающая произнесенное слово на каж-
дом кадре
В качестве следующего шага было решено попробовать рекурентную ней- ронную сеть, а именно LSTM, про который было рассказано в разделе 1.1.2.
Более подробно структуру слоя LSTM, изображенного на рисунке 6, можно описать как f
t
= σ(W
f
· [h t−1
, x t
] + b f
)
i t
= σ(W
i
· [h t−1
, x t
] + b i
)
29
c
t
= f t
c t−1
+ i t
tanh(W
c
· [h t−1
, x t
] + b c
)
o t
= σ(W
o
· [h t−1
, x t
] + b o
)
h t
= o t
·
tanh(c t
)
Слои называются соответственно с их главной задачей: f t
- forget gate, i t
- input gate, c t
- cell state, o t
- output gate, h t
- hidden state. В данном случае сеть состояла из одного слоя LSTM, куда последовательно подавались вектора распределения вероятностей 14 визем на каждом фрейме. В качестве выхода ожидалась метка класса слова, звучащего в данный момент времени.
Результаты некоторых экспериментов приведены в таблице. В ней в ка- честве оценки качество приведена точность распознавания принадлежности фрейма правильному слову из множества выбранных слов. Также указан раз- мер скрытого слоя в LSTM и вероятность dropout слоя
Таблица 6: некоторые результаты с использованием LSTM
Описание модели
Точность распознавания слов
LSTM hiddenSize=100 49%
LSTM hiddenSize=120 48%
LSTM hiddenSize=60 46%
LSTM hiddenSize=120, dropout=0.2 49%
LSTM hiddenSize=120, dropout=0.2
mark only 2nd half of word
48%
В таком подходе есть такой недостаток, что при разметке каждого фрейма,
принадлежащего слову соответствующим классом в том числе размечаются и самые первые фреймы. Но при использовании рекуррентной нейронной сети происходит последовательная подача входных данных с каждого кадра, поэто- му ожидать, что модель научится правильно определять слово уже по первым фреймам, содержащим его, не стоит. Более того, такая разметка начала слова в каком-то смысле приводит сеть в заблуждение, поскольку мы все-таки от нее ожидаем, что она как раз сможет угадывать слово уже по первым фрей- мам. Поэтому была предпринята попытка размечать соответствующей меткой класса только вторую половину каждого слова, но такой метод не дал улуч- шения. Возможно, это связано с тем, что мы все еще вводим сеть неправильно
30
сообщаем сети, что от нее нужно - ведь первая часть слова все-таки в нему относится, а размечена как что-то ни к чему не относящее, точно также как отрезки, где вообще ничего не произносится.
2.7. Модель, распознающая короткие последовательно-
сти слов
Проблемы, описанные в предыдущем разделе могут быть частично реше- ны, если разрешить нейронной сети сначала пропустить через себя всю запись
(последовательность векторов признаков, соответствующих конкретной ви- деозаписи) и уже потом предсказывать множество произнесенных слов. Такая задача очень похожа на задача sequence-to-sequence learning, т.е. преобразо- вание из последовательности в последовательность. Сложность заключается в том, что нейронные сети принимают на вход и выдают на выходе вектор фиксированного размера. Классические рекуррентные нейронные сети при- нимают на вход последоватльеность произвольной длины, но на выходе все еще выдают вектор фиксированного размера. Одним из возможных решений является архиктура т.н. encoder-decoder LSTM [26].Главной идеей этого мето- да является сначала получение какого-то вектора фиксированного размера,
описывающего входную последовательность, а затем его разворачивание уже в выходную последовательность. Более подробно, обычно процесс происходит следующим образом: вход пропускается через рекуррентную нейронную сеть
(в нашем случае со слоем LSTM), и cell state (вместо в hidden state) после про- хождения всей последовательности считается вектором, описывающим вход.
Этот этап кодирует данные в вектор, поэтому соответствующая нейронная сеть называется encoder. На втором этапе (decoding) стоит задача по век- тору понять выходную последовательность. Для этого полученный cell state считается начальным состоянием c t
(тоже с h t
) в следующей сети с исполь- зованием LSTM, которая последовательно генерирует символы из выходного алфавита пока не сгенерирует специальный терминальный символ. Часто та- кая архитектура используется в задачах машинного перевода, поэтому здесь было введено понятие выходного алфавита, также в классическом варианте символ, сгенерированный в момент времени t подается на вход сети в следую-
31
щий момент времени t + 1. Но в рассматриваемой в работе задаче, в этом нет необходимости, выходной алфавит (закодированное множество слов) имеет небольшой обьем, и символы полученного алфавита (который в свою очередь является множеством слов уже над английским алфавитом) не образуют меж- ду собой никаких связей. Поэтому использовалась описанная архитектура без передачи сгенерированного символа (т.е. слова) дальше в процессе работы decoder-LSTM.
Описанную структуру можно увидеть на рисунке
Рис. 12: Модель encoder-decoder LSTM
В качестве выхода ожидалась последовательность меток слов, произнесен- ных на данной видеозаписи. Слишком короткие слова помечались как пустое слово, но не выкидывались полностью. Фактически, это означает, что все ко- роткие слова оказались обьединенными в один большой класс.
В качестве тренировочной выборки было использовано множестве из 30
спикеров, в то время как в тестовой находилось 5 спикеров. При этом записи одного и того же спикера не могли находиться одновременно в обучающей и тестовой выборках.
32

В таблице приведены некоторые показательные результаты эксперимен- тов. Записи про dropout слой с заданной вероятностью и про размер скры- того слоя означают их параметры на соответствующем этапе (encoding или decoding)
Таблица 7: некоторые результаты с архитектурой encoder-decoder LSTM
Описание модели
Точность распознавания слов encHiddenSize=128
decHiddenSize=50 73%
encHiddenSize=100
decHiddenSize=40 72%
encHiddenSize=110, dropout=0.2
decHiddenSize=60, dropout=0.1 75%
encHiddenSize=128, dropout=0.2
decHiddenSize=40 76%
Таким образом, лучшей точностью, которой удалось добиться является
76%. Также стоит заметить, что на подавляющей большинстве записей (97%)
правильно определилось количество слов, на остальных же видео все распо- знанные вхождения слов считались ошибочными, даже если какие-то из них совпали с правильными разметкой.
Кроме того, если в качестве рассматриваемого множества слов использо- вать все доступные слова, без выкидывания самых коротких по продолжи- тельности, то точность последней модели на длинных словах понизится до
55%, а качество работы на коротких фразах будет составлять 23%.
33

3. Используемые технологии
Работа непосредственно с видеоданными осуществлялась на языке C++,
на нем же осуществлялось вычисление признаков с использованием библио- теки dlib и opencv3. При работе с аудио-данными и извлечении признаков из аудио использовался язык python. Обучение нейронных сетей происходило с помощью библиотеки torch, написанной на C и использующей при работе язык lua. Почти всегда данные хранились в формате hdf5, поскольку с ним можно работать как из python так и из lua, то это позволяло без проблем из- влекать признаки на одном языке, а использовать их на другом. Также почти все процессы обучения происходили на видеокарте с использованием CUDA,
что позволяло ускорить работу с данными и обучение на порядок.
34

4. Заключение
4.1. Результаты
В рамках данной дипломной работы были поставлены и решены следую- щие задачи:
• Проведен обзор существующих методов в распознавании речи
• Выделены и проанализированы основные этапы работы алгоритмов рас- познавания речи
• Предложен метод преобразования речи в последовательность слов, ос- нованный только на визуальной информации
• Проведен ряд экспериментов, сравнивающих варианты предложенного метода между собой и показывающих применимость предложенного под- хода
4.2. Сравнение с другими работами
В большинстве работ посвященных распознаванию речи по видеозаписи или чтению по губам рассматривается свой датасет, часто с сильно ограни- ченным набором слов или даже собственноручно записанный. К тому анализ речи по визуальным признакам гораздо более чуствителен к смене спикера,
различным наборам слов, акцентам. Также очень часто авторы приводят ка- чество своих моделей, обученных на аудио и визуальных признаках вместе,
чтобы сравнить с моделями, анализирующими только аудио. Поэтому срав- нивать работы между собой сложнее, чем, например, при работе со звуковой информацией. Все же существуют работы, которые работали с тем же датасе- том GRID corpus и анализировали возможность чтения по губам. Например, в работе [31] авторам удалось добиться точности 79%, используя только видео- признаки. Однако там все эксперименты были speaker-dependent, то есть те- стовая и тренировочная выборки всегда брались с одного и того же спикера,
в отличие от данной работы.
35

Список литературы
[1] Benedikt Lanthao. Facial Motion: a novel biometric? –– 2010.
[2] CUAVE: A new audio-visual database for multimodal human-computer interface research / E. K. Patterson, S. Gurbuz, Z. Tufekci, J. N. Gowdy //
In Proc. ICASSP. –– 2002. –– P. 2017–2020.
[3] Christoph Bregler Yochai Konig. “EIGENLIPS” FOR ROBUST SPEECH
RECOGNITION. –– 1994.
[4] Cookea Martin, Jon Barker Stuart Cunningham Xu Shao. An audio- visual corpus for speech perception and automatic speech recognition. ––
2006. –– URL: http://laslab.org/upload/an_audio-visual_corpus_for_
speech_perception_and_automatic_speech_recognition.pdf
[5] Cootes T. F., Edwards G., Taylor C.J. Comparing Active Shape Models with
Active Appearance Models. –– 1999. –– P. 173–182.
[6] Dropout: A Simple Way to Prevent Neural Networks from Overfitting /
Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky et al. // Journal of
Machine Learning Research. –– 2014. –– Vol. 15. –– P. 1929–1958. –– URL:
http://jmlr.org/papers/v15/srivastava14a.html
[7] Exploring the Limits of Language Modeling / Rafal Józefowicz, Oriol Vinyals,
Mike Schuster et al. // CoRR. –– 2016. –– Vol. abs/1602.02410. –– URL: http:
//arxiv.org/abs/1602.02410
[8] Fast and Accurate Recurrent Neural Network Acoustic Models for
Speech Recognition / Hasim Sak, Andrew W. Senior, Kanishka Rao,
Françoise Beaufays // CoRR. –– 2015. –– Vol. abs/1507.06947. –– URL: http:
//arxiv.org/abs/1507.06947
[9] Hassanat Ahmad Basheer. Visual Passwords Using Automatic Lip Reading. ––
2014. –– Vol. abs/1409.0924. –– URL: http://arxiv.org/abs/1409.0924.
[10] Index of AVLetters [HTML]. –– URL: http://www2.cmp.uea.ac.uk/
bjt/
avletters/
36

[11] Index of LiLiR [HTML]. –– URL: http://www.ee.surrey.ac.uk/Projects/
LILiR/datasets.html
[12] Ioffe Sergey, Szegedy Christian. Batch Normalization: Accelerating Deep
Network Training by Reducing Internal Covariate Shift // CoRR. –– 2015. ––
Vol. abs/1502.03167. –– URL: http://arxiv.org/abs/1502.03167.
[13] Jackson Donald A. Stopping rules in principal component analysis: a comparison of heuristical and statistical approaches. –– 1993.
[14] Jacobs David. Correlation and Convolution // Class Notes for CMSC 426. ––
2016. –– URL: http://www.cs.umd.edu/
djacobs/CMSC426/Convolution.
pdf
[15] Jendoubi Siwar, Yaghlane Boutheina Ben, Martin Arnaud. Belief Hidden
Markov Model for speech recognition // CoRR. ––
2015. ––
Vol.
abs/1501.05530. –– URL: http://arxiv.org/abs/1501.05530.
[16] John Garofolo Lori Lamel William Fisher Jonathan Fiscus David Pallett
Nancy Dahlgren Victor Zue. TIMIT Acoustic-Phonetic Continuous Speech
Corpus. –– URL: https://catalog.ldc.upenn.edu/LDC93S1.
[17] Kazemi Vahid, Sullivan Josephine. One Millisecond Face Alignment with an
Ensemble of Regression Trees // CVPR. –– 2014.
[18] Le Thai Hoang, Vo Truong Nhat. Face Alignment Using Active Shape Model
And Support Vector Machine // CoRR. –– 2012. –– Vol. abs/1209.6151. ––
URL: http://arxiv.org/abs/1209.6151.
[19] Mark Gales Steve Young. The Application of Hidden Markov Models in
Speech Recognition. –– 2008. –– URL: http://mi.eng.cam.ac.uk/
mjfg/
mjfg_NOW.pdf
[20] Mehryar Mohri Fernando Pereira Michael Riley. Weighted Finite-State
Transducers in Speech Recognition. –– 2001. –– URL: http://www.cs.nyu.
edu/
mohri/pub/csl01.pdf
37

[21] Ossama Abdel-Hamid Abdel-rahman Mohamed Hui Jiang Gerald Penn.
Applying convolutional neural networks concepts to hybrid nn-hmm model for speech recognition.
[22] Paleček Karel. Extraction of Features for Lip-reading Using Autoencoders. ––
2005.
[23] Sak Hasim, Senior Andrew W., Beaufays Françoise. A Novel Motion Based Lip
Feature Extraction for Lip-reading. –– 2008. –– URL: http://www.comp.hkbu.
edu.hk/
ymc/papers/conference/cis08_publication_version.pdf
[24] Sak Hasim, Senior Andrew W., Beaufays Françoise. Long Short-Term Memory
Based Recurrent Neural Network Architectures for Large Vocabulary Speech
Recognition // CoRR. –– 2014. –– Vol. abs/1402.1128. –– URL: http://arxiv.
org/abs/1402.1128
[25] Sridharan Ramesh. HMMs and the forward-backward algorithm. –– 2010. ––
URL: http://people.csail.mit.edu/rameshvs/content/hmms.pdf.
[26] Sutskever Ilya, Vinyals Oriol, Le Quoc V. Sequence to Sequence Learning with
Neural Networks // CoRR. –– 2014. –– Vol. abs/1409.3215. –– URL: http:
//arxiv.org/abs/1409.3215
[27] Timothy F. Cootes Gareth J. Edwards Christopher J. Taylor. Active
Appearance Models. –– 2008. –– URL: http://www.comp.hkbu.edu.hk/
ymc/
papers/conference/cis08_publication_version.pdf
[28] Timothy F. Cootes Gareth J. Edwards Christopher J. Taylor. Improving
Visual Features for Lip-reading. ––
20111. ––
URL: https://pdfs.
semanticscholar.org/6778/68449c6b05a3df45d25a18f9782550b69661.
pdf
[29] Toth
Laszlo.
Convolutional
Deep
Maxout
Networks for
Phone
Recognition. ––
URL:
https://pdfs.semanticscholar.org/0a24/
5098455a6663f922a83d318f7b61d357ab1f.pdf
38

[30] Virginia Estellers Jean-Philippe Thiran. Multi-pose lipreading and Audio-
Visual Speech Recognition. –– 2012. –– URL: http://vision.ucla.edu/
virginia/publications/Estelle2012EURASIP.pdf
[31] Wand Michael, Koutník Jan, Schmidhuber Jürgen. Lipreading with Long
Short-Term Memory // CoRR. –– 2016. –– Vol. abs/1601.08188. –– URL:
http://arxiv.org/abs/1601.08188
[32] Wang S. L., Lau W. H., Leung S. H. Automatic Lip Contour Extraction from Color Images // Pattern Recogn. –– 2004. –– . –– Vol. 37, no. 12. ––
P. 2375–2387. –– URL: http://dx.doi.org/10.1016/j.patcog.2004.04.
016
[33] Xiong Xuehan, la Torre Fernando De. Supervised Descent Method and its
Applications to Face Alignment. –– 2012.
[34] Yuxuan Lan Richard Harvey, Theobald Barry-John. Insights into machine lip reading. –– 2012. –– URL: https://pdfs.semanticscholar.org/c573/
c71213b46a2b966546c7b7848b5bbe0536ec.pdf
39

Document Outline

  • Йведение
  • Ð�оцчановка задаÑ⁄и
  • Обзоѕ цхћецчвхєћиі мечодов
    • Ð�одіодщ к поцчѕоениє акхцчиÑ⁄ецкой и ёзщковой моделей
      • Скѕщчще маѕковцкие модели
      • Кейѕоннще цечи
    • Обзоѕ мечодов вщделениё пѕизнаков
      • Ðflецкѕипчоѕщ, оцнованнще на вщделении кончхѕов
      • Ðflецкѕипчоѕщ, оцнованнще на анализе знаÑ⁄ений пикцелей
    • Ð�чалоннще вщбоѕки
  • Ð�ѕедложеннщй мечод
    • Обћее опицание мечода
    • Опицание вщбѕанной ѓчалонной вщбоѕки
    • Йщделение пѕизнаков
    • Ðflоѕазмечка обхÑ⁄аєћей вщбоѕки
    • Ð�оцчѕоение акхцчиÑ⁄ецкой модели
    • Моделф, ѕацпознаєћаё пѕоизнеценное цлово на каждом кадѕе
    • Моделф, ѕацпознаєћаё коѕочкие поцледовачелфноцчи цлов
  • Пцполфзхемще чеінологии
  • ЊаклєÑ⁄ение
    • Ѐезхлфчачщ
    • Сѕавнение ц дѕхгими ѕабочами
  • Спицок личеѕачхѕщ

Каталог: bitstream -> 11701
11701 -> Исследование характера взаимодействия зрителя и произведения на материале инди-игр
11701 -> Образовательная программа «Русский язык как иностранный»
11701 -> Научно-исследовательская работа по направлению «Реклама и связи с общественностью»
11701 -> Основная образовательная программа бакалавриата по направлению подготовки 040100 «Социология» выпускная квалификационная работа
11701 -> Торопова Марина Леонидовна Использование модели wrf для детализации микроклиматических описаний Магистерская диссертация
11701 -> «Разработка информационной инфраструктуры органик фермы»
11701 -> К афедра компьютерных технологий и систем ахмадеев Артур Эдуардович


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал