О СОЗДАНИИ ПРОГРАММНОГО КОМПЛЕКСА ДЛЯ РАСПОЗНАВАНИЯ ЭМОЦИЙ С ИСПОЛЬЗОВАНИЕМ МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ - Студенческий научный форум

IX Международная студенческая научная конференция Студенческий научный форум - 2017

О СОЗДАНИИ ПРОГРАММНОГО КОМПЛЕКСА ДЛЯ РАСПОЗНАВАНИЯ ЭМОЦИЙ С ИСПОЛЬЗОВАНИЕМ МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ

Пак Г.В. 1
1Московский Технический Университет Связи и Информатики
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
В статье кратко описывается анализ систем распознавания эмоций с применением методов машинного обучения, находящихся в открытом доступе, в рамках курсового проекта по дисциплине Обучающие Технические Системы "Machine Learning". Научный руководитель: к.т.н., доц. Воронов В.И..

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

- Определение агрессивно настроенных людей;

- Проведение психологической диагностики;

- Тестирование и оценка рекламных роликов или нового продукта по эмоциональной реакции фокус-группы.

Эффективным решением данных задач является использование автоматизированных программных средств распознавания эмоций.

Целью данной статьи является анализ работы приложений по распознаванию эмоций с использованием методов машинного обучения на примере Neurobotics EmoDetect и Emotion API Microsoft Cognitive Services.

Распознавание эмоций

Эмоция - психический процесс средней продолжительности, отражающий субъективное оценочное отношение к существующим или возможным ситуациям.

Все эмоции характеризуются валентностью (тоном), т. е. могут быть положительными или отрицательными, интенсивностью, стеничностью (побуждать к действию или расслаблять), а также содержанием. Различают семь основных видов эмоций: презрение, отвращение, гнев, печаль, счастье, удивление, страх и нейтральное состояние[1].

Для выделения признаков лица исследователи обычно используют так называемые "двигательные единицы лица" (Action Units, AU). Все AU объединены в систему кодирования лицевых движений (Facial Action Coding System, FACS), разработанную американским психологом, специалистом в области психологии эмоций Полом Экманом[2]. Некоторые коды AU представлены в таблице 1.

Система кодирования лицевых движений (FACS)[2]

Таблица 1

Код AU

Значение

Код AU

Значение

1

Приподнята внутренняя часть брови

15

Опущен уголок губы

2

Приподнята внешняя часть брови

16

Опущена нижняя губа

4

Опущена бровь

17

Приподнят подбородок

5

Приподнято верхнее веко

18

Сморщены губы

6

Приподнята щека

20

Растянуты губы

7

Натянуты веки

22

Губы воронкой

8

Губы навстречу друг другу

23

Натянуты губы

9

Сморщен нос

24

Сжаты губ

10

Приподнята верхняя губа

25

Губы разведены

11

Углубитель носогубной складки

26

Челюсть опущена

12

Приподнят уголок губы

27

Рот широко открыт

13

Остро приподнят уголок губы

54

Голова вниз

14

Ямочка на щеке

64

Глаза вниз

В таблице 2 представлена эмоциональная система кодирования лицевых движений (англ. Emotion Facial Action Coding System (EmFACS)) по П. Экману[2]. В данной таблице отображены прототипы эмоций и коды двигательных единиц лица (ДЕ), соответствующих им. Для обозначения интенсивности задействования ДЕ к номеру ДЕ добавляют латинские буквы от A до E, в зависимости от минимальной – максимальной интенсивности движения.

  • А Слабо различимое

  • B Незначительное

  • С Заметное или ярко выраженное

  • D Сильное или крайне заметное

  • E Предельное

Таблица 2

Эмоциональная система кодирования лицевых движений[2]

Эмоция

Прототип (Код AU)

Удивление

1+2+5B+26; 1+2+5B+27;

Страх

1+2+4+5*+20*+25, 26, или 27;1+2+4+5*+25, 26, или 27;

Радость

6+12*; 12C/D;

Печаль

1+4+11+15B с/без 54+64;1+4+15* с/без 54+64;6+15* с/без 54+64;

Отвращение

9; 9+16+15+26; 9+17;10*; 10*+16+25, 26; 10+17;

Презрение

9 или одностороннее 10;12; 14;

Гнев

4+5*+7+10*+22+23+25, 26;4+5*+7+10*+23+25, 26;4+5*+7+23+25, 26;4+5*+7+17+23, 24;4+5*+7+23, 24;

Neurobotics EmoDetect

Программный комплекс Neurobotics EmoDetect, основанный на анализе двигательных единиц лица, был разработан с использованием мультиклассификатора, состоящего из вероятностного классификатора, нейронной сети и набора логических правил[3].

При разработке системы распознавания проводилась нормировка признаков двух видов: относительно опорного кадра и по диапазону значений. При нормировке относительно опорного кадра за признаки принимаются усредненные значения признаков для нескольких имеющихся в базе изображений нейтрального выражения лица субъекта. Нормировку по диапазону значений выполняют для приведения признаков к единой шкале[4]. После нормировки признаков на вход вероятностного классификатора и нейронной сети подаются 20 признаков-маркеров, представленных в таблице 3.

Признаки лица и связанные с ними AU[4]

Таблица 3

Признак

Код AU

Признак

Код AU

1. Высота прически над уровнем бровей

-

11. Подъем внутренней части бровей

1, 9

2. Морщины в области лба

1, 2, 38

12. Толщина верхней губы

9, 10, 23

3. Складки между бровями

4, 9

13. Складки в области под бородка

17

4. Ширина глазной щели

5, 6, 7, 43

14. Степень открытия рта

25–27

5. Складки по сторонам носа

9, 10

15. Складки в уголках рта

15

6. Подъем верхней губы

10

16. Толщина нижней губы

17, 23

7. Подъем бровей

2

17. Морщины под нижним веком

6, 9

8. Ориентация уголков рта

12–15, 17

18. Тип открытия рта

25–27

9. Радиус дуги нижнего века

6

19. Ориентация губ

12–15, 17

10. Радиус дуги крыла носа

9

20. Форм-фактор области рта

20, 25–27

В том случае, когда полученные результаты двух классификаторов не однозначны, набор логических правил разрешает спорную ситуацию.

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

CognitiveEmotion

Cognitive Emotion – когнитивный сервис распознавания эмоций от Microsoft. Данная программа принимает изображение в качестве входных данных и возвращает набор эмоций для каждого лица на изображении, ограничивающую рамку лица от Cognitive Face. Результатом работы программы являются показатели для каждого вида эмоции, сумма которых равна 1[5].

Тестирование работы программ для распознавания эмоций

Автором статьи протестированы рассматриваемые приложения на примере изображения мужчины.

NeuroboticsEmoDetect.

Рассмотрим работу программы Neurobotics EmoDetect, предварительно подав на вход изображение для калибровки.

Рисунок 1. Вводное изображение (а); изображение для распознавания эмоции (б); результаты распознавания EmoDetect.

На рисунке 1а отображено вводное изображение, предназначенное для определения нейтрального состояния. После его анализа получен результат выбранного изображения (рисунок 1б). Доля каждой эмоции представлена на рисунке 1в.

MicrosoftCognitiveEmotion

На рисунке 2 отображены результаты программы, разработанной Microsoft, Cognitive Emotion.

Рисунок 2. Результаты распознавания Cognitive Emotion.

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

Аналитический вывод

На рассматриваемом изображении автор статьи проанализировал «действующие единицы лица» и получил следующие результаты:

  • Односторонняя приподнятая верхняя губа (Код AU: 10C)

  • Приподнят уголок губы (Код AU: 12D)

  • Ямочка на щеке (Код AU: 14D)

Таким образом, в соответствии с таблицей 2 сделан вывод, что превалирующая эмоция – презрение.

Анализ результатов

Результаты работы программ и аналитический вывод вынесены в таблицу 4.

Результаты распознавания эмоций на тренировочном примере

Таблица 4

Эмоция

EmoDetect

Cognitive Emotion

Аналитический вывод

Нейтральное состояние

0,58

0,47

0,27

Удивление

0,26

0,00

0,00

Страх

0,42

0,00

0,00

Радость

0,3

0,12

0,00

Печаль

0,00

0,01

0,00

Отвращение

0,07

0,01

0,00

Презрение

-

0,38

0,73

Гнев

0,07

0,02

0,00

Оба приложения показали, что нейтральное состояние преобладает над остальными эмоциями. Вторым по величине показателем являются страх (EmoDetect) и презрение (Cognitive Emotion). Опираясь на аналитический вывод автора статьи можно сказать, что программный комплекс от Microsoft обладает более точным прогнозированием в отличие от EmoDetect, но преобладающая эмоция была выбрано неверно. В связи с этим было принято решение о разработке собственного программного комплекса для распознавания эмоций.

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

  1. https://ru.wikipedia.org/wiki/Эмоция

  2. Ekman P., Friesen W.V., Hager J.C. – Facial Acton Coding System. The Manual. Research Nexus division of Network Information Research Corporation Publ., 2002.

  3. http://neurobotics.ru/phychophysiology/emodetect - официальный сайт Neurobotics EmoDetect

  4. Бобе А.С., Конышев Д.В., Воротников С.А. Система распознавания базовых эмоций на основе анализа двигательных единиц лица. Инженерный журнал: наука и инновации, 2016, вып. 9.

  5. https://www.microsoft.com/cognitive-services - официальный сайт когнитивных сервисов компании Microsoft.

  6. Заболеева-Зотова А.В. Развитие системы автоматизированного определе- ния эмоций и возможные сферы применения. Открытое образование, 2011, № 2, с. 59–62

  7. Князев Б.А., Гапанюк Ю.Е. Распознавание аномального поведения челове- ка по его эмоциональному состоянию и уровню напряженности с исполь- зованием экспертных правил. Инженерный Вестник, 2013, с. 509–524.

  8. Tariq U., Lin K., Li Z., Zhou Z., Wang Z., Le V., Huang T.S., Lv X., Han T.X. Emotion Recognition from an Ensemble of Features. Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions, 2012, vol. 42 (4), pp. 1017– 1026.

  9. https://www.microsoft.com/cognitive-services/en-us/Emotion-api/documentation - документация о программах распознавания эмоций на официальном сайте Microsoft.

Просмотров работы: 820