УДК 004

РАСПОЗНАВАНИЕ ЭМОЦИЙ ЧЕЛОВЕКА ПО РЕЧИ С ПОМОЩЬЮ РЕКУРРЕНТНОЙ НЕЙРОННОЙ СЕТИ

№40,

Технические науки

Барышев Денис Анатольевич
Зубанков Алексей Сергеевич


Научный руководитель: Розалиев В.Л.


Ключевые слова: НЕЙРОННЫЕ СЕТИ; РЕКУРРЕНТНЫЕ НЕЙРОСЕТИ; ПОДАВЛЕНИЕ ШУМОВ; РАСПОЗНАВАНИЕ ЭМОЦИЙ; РАСПОЗНАВАНИЕ РЕЧИ; NEURAL NETWORKS; LSTM; RECURRENT NEURAL NETWORKS; NOISE SUPPRESSION; EMOTION RECOGNITION; SPEECH RECOGNITION.


Аннотация: В данной работе представлен нейросетевой метод распознавания эмоций человека по речи. В статье описана основная идея приложения, алгоритм работы программы и реализованная архитектура модели.

Распознавание эмоций человека по речи является наиболее информативным по сравнению с другими методами, такими как распознавание эмоций по мимике или кардиограмме. Это обусловлено тем, что, во-первых, мы можем получить достаточно точное аффективное состояние человека с небольшой погрешностью в виду пересечения определенных параметров разных эмоций. Во-вторых, эмоции в речи человека достаточно трудно подделать, что делает их анализ более объективным [1].

Основная цель – разработать нейросетевой метод распознавания эмоций человека по его речи. Разработка именно нейросетевого метода обусловлена тем, что алгоритмический подход является многократно более сложным и трудозатратным, а его результат не даст точности большей, чем нейронная сеть. Вариативность возможных результатов, количество определяемых эмоций и вероятность ошибки при разметке датасета также склоняют к выбору именно нейросетевого метода решения задачи, т.к. он сглаживает неточности и делает наиболее вероятно правильный вывод.

Для определения эмоций выбрана градация эмоций по Полу Экману [2]. Были также проанализированы другие варианты градации эмоций, однако наибольшее количество классификаций имеют недостаточно большое количество классов. В свою очередь стоит отметить, что существует, например, классификация эмоций по Роберту Плутчику, которая предусматривает те же 8 основных эмоций, что и у Экмана, но имеет также 24 оттенка эмоций. Однако классификация из суммарно 32 эмоций является избыточной для работы нейронной сети, потому как с увеличением количества классов падает точность работы нейронной сети.

Таким образом, получим перечень возможных определяемых эмоций человека:

— радость;
— грусть;
— злость;
— удивление;
— отвращение;
— презрение;
— страх;
— нейтралитет (спокойствие).

Алгоритм работы программы

Алгоритм работы программы можно условно разделить на 2 основные части – обучение модели нейронной сети и определение эмоции человека с использованием обученной модели.

Программа предусматривает ввод входных данных через загрузку аудиофайла формата “.wav” вручную или же создание нового аудиофайла с использованием микрофона на персональном компьютере пользователя. Следует учитывать, что входная аудиозапись может содержать шумы, что в свою очередь может негативно повлиять на точность работы модели. Поэтому в работе предусмотрен алгоритм удаления посторонних шумов из входной аудиозаписи. Для этого используется RNNoise_Wrapper API – это библиотека языка Python, которая является удобной надстройкой над рекуррентной нейронной сетью RNNoise для очистки шумов из аудиозаписи. В работе алгоритм очистки шумов запускается для каждой входной аудиозаписи перед определением эмоций, а также для каждой записи при обучении модели нейронной сети. Таким образом, конечный общий алгоритм программы можно увидеть на рисунке 1:


Рис.1 Общий алгоритм работы программы.

Архитектура нейронной сети

В данной работе была реализована собственная модель нейронной сети с долгосрочной памятью LSTM. Несмотря на то, что сверточные нейронные сети являются одной из лидирующих моделей, решающих задачу классификации, они в меньшей степени, чем RNN подходят для нашей задачи, т.к. основная их направленность – классификация и кластеризация в изображениях и видео [3]. У нас же задача классификация последовательности, для решения которой оптимально использовать рекуррентную нейронную сеть. Однако классические рекуррентные модели также являются устаревшими, поэтому выбрана более современная модель рекуррентной нейронной сети с механизмом памяти LSTM [4].

В качестве датасетов для работы программы выбраны такие открытые датасеты как TESS и RAVDESS. Также собран кастомный датасет на русском языке. Таким образом решается проблема отсутствия датасета на русском языке. Данные собирались из источников с открытым доступом.

В качестве модели нейронной сети выбрана LSTM – рекуррентная нейронная сеть с долгосрочной памятью. В качестве алгоритма оптимизации был выбран Adam. Опытным путем была найдена оптимальная архитектура, выдавшая точность равную 91.56%. Для этого происходило обучение на 4 слоях – 2 RNN размерность 128 нейронов на слое и 2 Dense с такой же размерностью – 128 нейронов на слое. Был выбран Batch size = 64 и количество эпох равное 1000. Batch – это количество итераций для одной эпохи. Batch size – размер батча, т.е. размер массива, который мы отправляем в нейронную сеть на каждой итерации. Такая структура необходима для лучше работы нейронной сети, т.к. мы не можем отправить в нее сразу все записи. Эпоха – одно прохождение всех итераций обучения нейросети [5]. Для задачи классификации используется функция потерь – категориальная кросс-энтропия. Такая Loss функция выбрана из-за того, что количество классов больше 2.

Архитектура модели нейронной сети представлена на рисунке 2.


Рисунок 2 — Архитектура модели нейронной сети.

Результатом работы является программа, работающая в двух режимах – прием аудиофайла с записью речи и анализ речи с использованием диктофона в реальном времени. Программа выдает в результате ту эмоцию, которая преобладала в аудиозаписи дольше.


Список литературы

  1. Вудвортс Р. Выражение эмоций // Экспериментальная психология. — М., 2000. — 798 с.
  2. Экман Пол. Психология эмоций. — 2-е изд. / Пер. с англ. — СПб.: Питер, 2010. – 27с.
  3. Каллан, Р. Основные концепции нейронных сетей. Пер. с англ. – М.: Издательский дом «Вильямс». 2001. – 288 с.
  4. E. Mower Provost, “Identifying salient sub-utterance emotion dynamics using flexible units and estimates of affective flow”. -. IEEE,2013. — IEEE ICASSP 2013.
  5. Y. Bengio, A. Courville, P. Vincent, “Representation learning: A review and new perspectives”. — IEEE Transaction on Pattern Analysis and Machine Intelligence, vol. 35, no. 8, pp. 1798–1828, 2013.