Нейросеть LipNet читает по губам с точностью 93,4%



Командир Дэйв Боумен и второй пилот Фрэнк Пул, не доверяя компьютеру, решили отключить его от управления кораблём. Для этого они совещаются в звукоизолированной комнате, но HAL 9000 читает их разговор по губам. Кадр из фильма «Космическая одиссея 2001 года»

Чтение по губам играет важную роль в общении. Ещё эксперименты 1976 года показали, что люди «слышат» совершенно другие фонемы, если наложить неправильный звук на движение губ (см. «Hearing lips and seeing voices»[1], Nature 264, 746-748, 23 December 1976, doi: 10.1038/264746a0).

С практической точки зрения чтение по губам — важный и полезный навык. Можно понимать собеседника не выключая музыку в наушниках, читать разговоры всех людей в поле зрения (например, всех пассажиров в зале ожидания), прослушивать людей в бинокль или подзорную трубу. Область применения навыка очень широка. Освоивший его профессионал без труда найдёт высокооплачиваемую работу. Например, в сфере безопасности или конкурентной разведке.

У автоматических систем чтения по губам тоже богатый практический потенциал. Это медицинские слуховые аппараты нового поколения с распознаванием речи, системы для беззвучных лекций в публичных местах, биометрическая идентификация, системы скрытой передачи информации для шпионажа, распознавание речи по видеоряду с камер наблюдения и т.д. В конце концов, компьютеры будущего тоже будут читать по губам, как
HAL 9000[2].

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

Понимать речь на основании мимики человека — сложнейшая задача. Освоившие этот навык люди пытаются распознавать десятки согласных фонем, многие из которых очень похожи внешне. Неподготовленному человеку оcобенно трудно различить пять категорий визуальных фонем[3] (то есть визем) английского языка. Другими словами, различить по губам произношение некоторых согласных звуков практически невозможно. Неудивительно, что люди очень плохо справляются с точным чтением по губам. Даже самые лучшие среди инвалидов по слуху демонстрируют точность всего лишь 17±12% из 30 односложных слов или 21±11% из многосложных слов[4] (здесь и далее результаты для английского языка).

Автоматическое чтение по губам — одна из задач машинного зрения, которая сводится к покадровой обработке видеоряда. Задача сильно усложняется низким качеством большинства практических видеоматериалов, которые не позволяют точно считывать спатиотемпоральные, то есть пространственно-временные характеристики лица во время разговора. Лица двигаются и поворачиваются в разные стороны. Последние разработки в области машинного зрения пытаются отслеживать движение лица в кадре, чтобы решить эту проблему. Несмотря на успехи, до последнего времени они были способны распознавать только отдельные слова, но не предложения.

Значительного прорыва в данной области добились разработчики из Оксфордского университета. Обученная ими нейросеть LipNet[5] стала первой в мире, которая успешно распознаёт по губам речь на уровне целых предложений, обрабатывая видеоряд.


Покадровые карты салиентности[6] для английских слов «please» (вверху) и «lay» (внизу) при обработке нейросетью, которая читает по губам, выделяя наиболее привлекающие внимание (салиентные) признаки

LipNet — рекуррентная нейросеть типа LSTM (long short-term memory). Архитектура показана на иллюстрации. Нейросеть обучали с использованием метода нейросетевой темпоральной классификации (Connectionist Temporal Classification, CTC), который широко используется в современных системах распознавания речи, поскольку с ним отпадает необходимость обучения на наборе входных данных, синхронизированным с правильным результатом.


Архитектура нейросети LipNet. На входе подаётся последовательность кадров T, которые затем обрабатываются тремя слоями пространственно-временной (спатиотемпоральной) свёрточной нейросети (STCNN), каждый из которых сопровождается слоем пространственной выборки. Для извлечённых признаков повышается частота дискретизации по временной шкале (апсемплинг), а затем они обрабатываются двойной LTSM. Каждый временной шаг на выходе LTSM обрабатывается двухслойной сетью прямого распространения и последним слоем SoftMax

На особом корпусе предложений GRID нейросеть показывает точность распознавания 93,4%. Это не только превышает точность распознавания других программных разработок (которые указаны в таблице ниже), но и превосходит эффективность чтения по губам специально обученных людей.

МетодНабор данныхРазмерВыдачаТочность
Fu et al. (2008)AVICAR851Цифры37,9%
Zhao et al. (2009)AVLetter78Алфавит43,5%
Papandreou et al. (2009)CUAVE1800Цифры83,0%
Chung & Zisserman (2016a)OuluVS1200Фразы91,4%
Chung & Zisserman (2016b)OuluVS2520Фразы94,1%
Chung & Zisserman (2016a)BBC TV>400000Слова65,4%
Wand et al. (2016)GRID9000Слова79,6%
LipNetGRID28853Предложения93,4%

Особый корпус GRID составлен по следующему шаблону:

command(4) + color(4) + preposition(4) + letter(25) + digit(10) + adverb(4),

где цифра соответствует количеству вариантов слов для каждой из шести словесных категорий.

Другими словами, точность 93,4% — это всё-таки результат, полученный в тепличных лабораторных условиях. Разумеется, при распознавании произвольной человеческой речи результат будет гораздо хуже. Не говоря уже об анализе данных с реальной видеосъёмки, где лицо человека не снимают крупным планом в отличном освещении и с высоким разрешением.

Работа нейросети LipNet показана на демонстрационном видео.

Научная статья подготовлена к конференции ICLR 2017 и опубликована[7] 4 ноября 2016 года в открытом доступе.

По теме: ( из рубрики )

    Оставить отзыв

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    *
    *

    два × четыре =

    Top