ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕВЫСШЕГО ОБРАЗОВАНИЯ
«НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ
«ВЫСШАЯ ШКОЛА ЭКОНОМИКИ»
МОСКОВСКИЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ
им. А.Н. ТИХОНОВА
Выпускная квалификационная работа
Система голосового управления кабиной лифта
студента образовательной программы бакалавриата
«Инфокоммуникационные технологии и системы связи»
Самойленко Кирилл Аркадьевич, группа БИТ-151
Рецензент ООО «ТиссенКруппЭлеватор»,
Директор филиала «Москва-Сити» М.А. Кулешов
Руководитель к.т.н., доцент департамента электронной инженерии
И.А. Иванов
Москва 2019 г.
Аннотация
Данная работа посвящена разработке концепции голосового управления кабиной лифта. Особенность данной системы заключается в использовании технологии распознавания голосовых команд, что позволяет взаимодействовать с панелью управления лифта бесконтактным способом. В настоящее время, существуют различные способы управления техническими устройствами, в том числе и бесконтактные, однако не многие из них приемлемы и актуальны для использования в кабине лифта. Положительными сторонами предложенной системы являются её потенциальное использование детьми и людьми с инвалидностью, а также повышение степени удобства в бытовом применении. Кроме того, при современном уровне развития технологий производства электронных компонентов появилась возможность проводить процесс обработки и распознавания голосовых команд на достаточно вычислительно мощных и малых по габаритам одноплатных микрокомпьютерах, что существенно упрощает и удешевляет их интеграцию в промышленные и бытовые устройства. В результате проведенной работы была разработана концепция системы голосового управления на базе одноплатного компьютера Raspberry Pi 3.
Abstract
This work is devoted to the development of the concept of voice control of the elevator cabin. The peculiarity of this system is the use of voice recognition technology, which allows you to interact with the elevator control panel contactless. Currently, there are various ways to control technical devices, including contactless, but not many of them are acceptable and relevant for use in the elevator cabin. Positive aspects of the proposed system are its potential use by children and people with disabilities, as well as increasing the degree of convenience in everyday life. In addition, with the current level of development of technologies for the production of electronic components there is an opportunity to carry out the process of processing and recognition of voice commands on fairly powerful and small in size single-board microcomputers, which significantly simplifies and reduces the cost of their integration into industrial and household devices. As a result of this work, the concept of voice control system based on a single-board computer Raspberry Pi 3 was developed.
Оглавление
Глава 1. Аналитический обзор
1.1 Исторический вопрос развития технологии
голосовой управление лифт
Историю развития распознавания человеческого голоса стоит начинать с появления первого, записывающего и воспроизводящего устройства - фонографа, изобретенного Томасом Эдисоном в 1877 году. В последствии Эдисон смог улучшить своё изобретение, сделав его менее хрупким и подверженным повреждениям, после чего данное устройство, получившее названии диктофон плотно вошло в жизнь секретарей, врачей и других людей, в работе которых существовала необходимость делать много письменных заметок. Эти исследования обеспечили фундамент для будущих инноваций, однако технологический контекст того времени не позволял ещё несколько десятков лет изобретателям совершить важные прорывы. Следующей важной вехой в развитии технологии была система «Audrey», созданная в 1952 году тремя исследователями из Bell Labs (Stephen Balashek, R. Buddulph, и K. H. Davis) и способная распознать цифры от единственного пользователя, т. е. система была спикер-зависимая, с 90% точностью. Эта система была основана на анализе формант (локальный максимум) в спектре мощностей каждого слова. В ходе тестирования были выявлены некоторые основные проблемы в распознавании речи: голос каждого человека может сильно варьироваться в зависимости от регионального диалекта, скорости, акцента, социального класса и пола. Из этого можно сделать вывод, что масштабирование систем распознавания речи является сложной и нетривиальной задачей. В 1960 году шведский ученный Гуннар Фант опубликовал работу, посвященную модели фильтрации источников производства речи. На основе этой модели строятся многие методы анализа речи, и она также способствует развитию в исследовании восприятия речи. Примерно в это же время советские исследователи изобрели алгоритм динамической трансформации временной шкалы (DTW, dynamic type warping) и использовали его для создания программы распознавания, способной работать со словарем из 200 слов. DTW обрабатывал речь путем разделения ее на короткие кадры, например 10 миллисекундные сегменты, и обработки каждого кадра как единого целого. Хотя DTW будет заменен более современными алгоритмами, эта технология продолжит свое развитие. Однако, вопрос о независимости от ораторов в этот период так и не был решен. Вплоть до 90-х годов даже самые успешные системы базировались на согласовании шаблонов, где звуковые волны переводились в набор цифр и сохранялись. Затем они срабатывали, когда в аппарат поступал идентичный звук. Конечно, это означало, что человек должен был говорить очень четко, медленно и в обстановке без фонового шума, чтобы иметь хорошие шансы на распознавание звуков. Следующей серьезной и важной инновацией стало исследование и развитие машинного обучения и последующее применение скрытой марковской модели (HMM, Hidden Markov Hodel). Введение HMM позволило совместить различные источники знаний, как например синтаксис акустика и язык, в рамках единой вероятностной модели. Следствием этого стало повышение гибкости системы за счет кластеризации данных и прогнозировании приближающихся фонем, основанных на последних моделях. Использование этой модели противоречило убеждениям, что распознавание речи можно получить только посредством моделирования имитаций процессов человеческого мозга, однако эксперименты показали хорошие результаты, позволив расширить количество распознаваемых языков и HMM стал доминирующим алгоритмом распознавания речи в 80-ых годах, обогнав алгоритм DTW. В начале 90-ых словарный запас типичной для коммерческого сегмента системы распознавания насчитывал больше слов чем в лексиконе стандартного человека. Однако, только Радж Редди и Ксуедонг Хуанг из CMU (Carnegie Mellon University) впервые смогли создать систему (Sphinx-II) способную распознавать не только непрерывную речь, но и стать ещё первой спикеро-независимой системой. Главным движущим фактором в 21 веке стало машинное обучение. Как и во многих других направлениях научных исследований, эта технология послужила основой для большинства прорывов в области распознавания речи. Примером успешного применения этой технологии можно представить компанию Google, которая смогла объединить новейшие технологии, метода статистического анализа и мощность облачных вычислительных комплексов для повышения точности алгоритмов машинного обучения, благодаря чему появилась инновационная технология, способная анализировать не только морфемы, но и контекст слов и предложений.
1.2 Алгоритмы, модели и методы распознавания
Чтобы преобразовать речь в текст на экране или компьютерную команду, компьютер должен пройти через несколько сложных этапов. Человек, выдыхая, пропускает воздух через голосовые складки, что приводит к их вибрации и появления звуковых колебаний. Применяя Аналого-цифровой преобразователь (АЦП) можно получить эту аналоговую волну в цифровые варианте, которые компьютер может понять. Для этого данный преобразователь записывает фрагменты или оцифровывается звук, выполняя точные измерения частоты волн с определенной периодичностью. Система фильтрует оцифрованный звук для удаления нежелательных шумов, а иногда и для разделения его на различные полосы частот. Дополнительно система нормализует звук или настраивает его на постоянный уровень громкости. Люди не всегда говорят с одинаковой скоростью, поэтому звук должен быть настроен в соответствии со скоростью шаблонных образцов звука, уже хранящихся в памяти системы. Затем сигнал делится на небольшие сегменты длиной в несколько сотых или даже тысячных долей в случае плотных согласных звуков - звуков, возникающих при блокировке потока воздуха в голосовом тракте - например, "б" или "д". Затем программа сопоставляет эти сегменты с известными фонемами на соответствующем языке. Фонема - это наименьший элемент языка - отображение звуков, которые мы создаем и собираем воедино, чтобы сформировать значимые выражения. В русском языке имеется около 42 фонем (у разных лингвистов разные мнения о точном количестве), в то время как в других языках может быть иное количество. Следующий шаг является наиболее трудным для выполнения и находится в центре внимания большинства исследований в сфере распознавания речи. Программа исследует фонемы в контексте других фонем вокруг них. Он запускает контекстный фонетический блок через сложную статистическую модель и сравнивает его с большой библиотекой известных слов, фраз и предложений. Затем программа определяет, что пользователь, вероятно, говорил, и либо выводит это в виде текста, либо выдает компьютерную команду. В более ранних системах распознавания речи была предпринята попытка применить набор речевых грамматических и синтаксических правил. В том случае, когда произнесенные слова вписываются в определенный набор правил, программа может определить, что это за слова. Однако у человеческого языка есть множество исключений из его собственных правил, даже если на нем постоянно говорят. Акценты, диалекты и манеры могут значительно изменить способ произношения определенных слов или фраз. Системы, основанные на правилах, оказались неэффективными, поскольку они не могли справиться с этими вариациями. Это также объясняет, почему более ранние системы не справлялись с непрерывной речью - каждое слово приходилось произносить отдельно, с небольшим перерывом между ними. Современные системы распознавания речи применяют мощные и сложные системы статистического моделирования. Эти системы используют вероятностные и математические функции для определения наиболее вероятного результата. Сегодня доминируют две модели - Скрытая Марковская модель и нейронные сети. Эти методы включают в себя сложные математические функции, но, фактически, они используют информацию, известную системе, чтобы выяснить скрытую от нее информацию.
На текущий момент наибольшее распространение получила Скрытая модель Маркова. В общем представлении можно представить слово цепочкой из звеньев, где каждое отдельное звено это фонема. Однако цепочка разветвляется в разных направлениях, поскольку программа пытается сопоставить цифровой звук с фонемой, которая, скорее всего, будет следующей. При обработке данная программа присваивает каждой фонеме рейтинг вероятности, основанный на ее встроенном словаре и обучении пользователя. Этот процесс еще более усложняется для фраз и предложений - система должна выяснить, где заканчивается и начинается каждое слово. Статистические системы нуждаются в достаточно большом количестве образцовых данных, чтобы достичь высокой производительности и точности. Иногда требуются с сотни мегабайт записанных образцов человеческой речи и большие объёмы текстовых данных. Однако, даже такой объём позволяет сделать только базовую модель, т. к. для специализированных областей нужен собственный словарь терминов и аббревиатур.
Рисунок 1 - Пример оцифрованного голосового сигнала
На практике, вместо привычным нам фонем, применяются более сложные и комплексные минимальные звуковые блоки - трифоны, особенность которых заключается в индивидуальной контекстной зависимости полученной с помощью скрытой Марковской модели. Задача построения акустической модели - зависимость акустических характеристик речевых сигналов от типа звукового блока - относится к числу наиболее сложных в автоматическом распознавании речи. До недавнего времени алгоритм выглядел примерно таким образом:
· Звуковой сигнал делится на короткие участки (около 10-50 мс);
· Применяется обработка сигнала в частотной области для каждого участка посредством быстрого преобразования Фурье;
· Логарифмирование получаемого спектра (в связи логарифмическим восприятием звуковой шкалы человеческим ухом);
· Применение дискретного косинусного преобразования (ДКП)логарифма спектра для получения кепстральные (практически независимых) коэффициентов;
· Запись кепстральных коэффициентов в виде смеси случайных векторов.
Затем, революционные результаты применения технологии глубокого обучения нашли своё место и в распознавании речи. Использование глубоких нейронных сетей прямого распространения, последовательно обучающихся без учителя от одного слоя к другому, совместно с применением скрытой марковской модели, повысило точно непрерывной и спонтанной речи на десятки процентов. Такой скомбинированный подход получил наибольшее количество реализаций в современной сфере распознавания речи. Отдельным и очень перспективным вектором развития технологий распознавания являются рекуррентные нейронные сети. Их основное достоинство заключается в учете контекста. Такой подход позволяет отойти от ограничений на использование в распознавании только предыдущих слов. Это действительно важная особенность, т. к. на слух распознаются не все слова, и способность машины угадывать пропущенные, на что способен почти любой человек, помогает добиться почти человеческой точности итогового распознавания.