Моя речь не распознается. Голосовой ввод

С момента, когда был изобретен компьютер, человечество мечтает общаться с ним на привычном языке - с помощью голоса. Рядовой житель планеты Земля знать не хочет ни о каких клавиатурах и мышах. Ему надо, чтобы компьютер понимал его с полуслова - причем в буквальном смысле. Просто, быстро, понятно! В то время как фантасты придумывают истории про то, как компьютеры через сотню-другую лет начнут по приказу ходить в магазины, массировать нам пятки и чесать спинки, разработчики программного обеспечения медленно, но верно движутся к реализации этой задумки. И если без чесания под лопаткой придется пока обойтись, то управлять различными приложениями с помощью голоса и даже надиктовывать компьютеру целые текстовые файлы уже очень даже можно. Программ для панибратского отношения с ПК пока не очень много, но те, что есть, стремительно развиваются. Еще год назад описанные в статье утилиты - более ранние их версии - представляли из себя весьма печальное зрелище. Сегодня же они подросли, возмужали - это уже не какие-то затравленные мокрые и голодные щенки, а жизнерадостные волчата, которые через год-два превратятся в волков голосового управления компьютером.

Dragon Naturally Speaking 8
Уникальная в своем роде утилита. Титаник и цеппелин “речевых” программ в одном флаконе. Адская смесь из распознавателя голоса, звукового управления компьютером и учителя правильного произношения английских слов. Но давайте обо всем по порядку.
Утилита англоязычная, потому и работать умеет исключительно с английскими словоформами. Теоретически, можно научить Dragon Naturally Speaking великому и могучему, но, увы и ах, использовать это можно только для голосового управления РС. Выступить в роли русской стенографистки утилита не сможет - на какие бы ухищрения вы не пошли. Зато разговорный английский схватывает на раз. По заявлениям разработчиков, программа распознает до 95% слов. Цифра, конечно, завышена, но не так сильно, как у конкурентов. Натаскав DNS на тембр своего голоса (для этого придется потратить около часа времени, надиктовывая различные слова), вы научите его понимать даже очень сложные мозгодробительные обороты, включая английский мат. Вот только одно “но”... Произносить любую фразу нужно предельно четко. Как, вы не проходили курсов артикуляции? Тогда придется потренироваться самостоятельно. Будьте уверены - через пару-тройку дней лингвистических сражений с DNS вы любого англичанина поразите чистотой произношения. Думаете, шутим? Нисколько! DNS - идеальное средство для тренировки правильного произношения - чуть где сфальшивили, сразу выдает предупреждение.
Теперь что касается голосового управления. Здесь DNS тоже не подкачал. Программку удалось натравить почти на все имеющиеся у нас на редакционных компьютерах утилиты. Сначала он мертвой хваткой вцепился в горло всем составляющим пакета MS Office . Открыл после голосового приказа Excel и Word, а также все остальные приложения. Затем настало время сетевых программ. The Bat! , ICQ , различные интернет-браузеры покорились DNS с первого раза. В завершение мы испытали утилиту в работе с разномастными утилитами того же класса - cправился и глазом не моргнул. Забавно, когда одна программа управления голосом запускает другую такую же утилиту. Кстати, обратите внимание: ничего не стоит настроить DNS на запуск любимых игр. Произносите в микрофон “Warcraft” - и он тут же загружается. Главное, не забывайте перед тем как командовать, научить программу связывать конкретное слово с той или иной утилитой (настраивается в меню Accuracy Center ).
Помимо упомянутого, в программу встроено множество разных мелких вкусностей, вроде бы необязательных, но которые заметно расширяют возможности утилиты. Как вам, например, распознавание текста из wav или mp3-файла? Загружаете англоязычную песню, в которой не можете разобрать какие-то слова, а DNS выдает вам их в текстовом виде.
Петь дифирамбы DNS можно почти до бесконечности. Это единственная программа в обзоре, которая справилась почти со всеми текстами и продемонстрировала даже больше возможностей, чем мы от нее ждали. Однозначный “мастхев” и “испешелиюз”.
Плюсы: Просто, удобно, со множеством наворотов и вкусностей.
Минусы: За регистрацию 30-дневной trial-версии просят почти $200 , что, мягко говоря, не скромно. Утилита не понимает русского - но это беда почти всех аналогичных программ.
Резюме: Пожалуй, лучшая программа для распознавания речи и голосового управления компьютером. Если бы не высокая цена, то была бы просто идеальной.
Realize Voice 4.1
Несмотря на то что создатели позиционируют Realize Voice как эдакий мультикомбайн, одинаково легко справляющийся с распознаванием речи, управлением приложениями и синтезом речитатива, детальное тестирование показало, что создатели, мягко говоря, преувеличивают возможности продукта. Как распознаватель речи утилита показала себя весьма слабо. Процент точного определения слов с последующим переводом в текстовую форму - очень низок. Даже длительные экзекуции над обучающим модулем ни к чему не привели. Многие слова и выражения программа понимать отказывается. И быть бы RV незамедлительно линчеванным и распятым, если бы не... уникальные возможности в области голосового управления различными приложениями. Тут RV поднатужился и дал такую фору другим утилитам, что мы разве что не аплодировали стоя. Программа с легкостью настраивается на запуск любой сторонней утилиты (хоть Word, хоть ICQ, хоть какой-нибудь драйвер) да еще и поддерживает работу с макросами. С их помощью можно вытворять такое, что и подумать страшно. На одну голосовую команду, которую, кстати, вполне можно сделать русской, разрешено повесить, например, такую многоступенчатую функцию: открыть почтовый клиент, подгрузить спам-фильтр, зайти на сервер, скачать все письма с заголовками на русском языке, все с заголовками на английском и с заголовками длиннее 20 символов - удалить. Это только для примера. Вообще же сложность макросов ничем не ограничена. Главное только успевать фантазировать. Единственное, на что Realize Voice натаскать не удалось, - на голосовое управление внутри компьютерных игр. Но в обычных приложениях - никаких проблем.
В качестве бонуса RV предлагает, как бы это помягче выразиться, интегральную функцию голосовой организации рабочего пространства. Это по-научному, а если на русском, то голосом можно не только запускать приложения и управлять их работой, но и в любой момент подгружать другие утилиты, переключаться между окнами, закрывать программы... Иными словами, Бобик по команде “Апорт!” не только сбегает за косточкой, но еще по пути заглянет в магазин за молоком, выбросит мусор, оплатит телефонный счет и купит вашей девушки цветы.
Плюсы: Уникальные функции голосового управления, поддержка сложных макросов, простота использования.
Минусы: Слабый модуль распознавания речи. Цена $50.
Резюме: Программа просто создана для голосового управления компьютером. Жаль, что разработчики пожертвовали другими важными функциями утилиты.
Dictation 2004 v. 4.4
Утилита-середнячок. Тот самый случай, когда и придраться, вроде бы, не к чему, но на фоне конкурентов смотрится не очень. Dictation 2004 неплохо справляется с распознаванием устной речи, хотя тягаться, например, с Dragon Naturally Speaking не может: последний бьет по самому незащищенному месту Dictation 2004 - по проценту правильного угадывания слов. С этим у программы не все в порядке, дополнительное обучение болезнь лечит, но не полностью. Можно поставить утилите “пять” за умение управлять приложениями, но это будет оценка за прилежание, а не за мастерское владение предметом, как это делает Realize Voice . Разработчики напирают на то, что программа тесно интегрирована с Word, но мы этого не заметили - от работы с другими утилитами ничем не отличается. Наконец, Dictation 2004 хочется почесать за ушком за то, что он умеет неплохо распознавать речь из wav-файлов, но Dragon Naturally Speaking делает это не в пример лучше. Единственная же уникальная функция “Диктанта” - умение распознавать речь напрямую из различных внешних источников (диктофона, плеера, музыкального центра - вряд ли кому-то понадобится). Вот и выходит, что ну всем хорош Dictation 2004, а отдавать за него “зеленый полтинник” ($50) жалко.
Плюсы: Умеет распознавать речь напрямую с различных внешних устройств.
Минусы: Средние показатели по всем функциям.
Резюме: Дешево, но не очень сердито. Утилита-середнячок, серая мышка в мире программ распознавания речи.
Горыныч ПРОФ 3.0
“Горыныч” - отечественная разработка. Уже за одно умение работать с великим и могучим программу можно водружать на пьедестал. Но - будем объективными. Утилита построена на двух модулях, отвечающих за распознавание надиктованной в микрофон речи и за команды различным приложениям. Жесткое тестирование показало, что проблемы с русским языком у “Горыныча”, увы, имеются - если проводить аналогии с зарубежными программами и их уровнем знания английского, то отечественный продукт работает где-то на уровне Dictation 2004 . То есть все здорово, но запинки случаются. Важный момент - в утилиту встроен блок самообучения: чем больше вы уделяете внимание “Горынычу”, тем лучше он вас понимает и меньше возмущается вашему неправильному русскому произношению. Мы испытывали нрав утилиты лишь несколько часов, и за это время, как нам показалось, программа действительно стала понятливей. Возможно, при более длительном общении результаты будут еще лучше.
Тестирование “командных” умений “Горыныча” прошло без сучка, без задоринки. Утилита не пытается претендовать на мега-интегральную систему, реализованы только основные функции управления программами - никаких сложносочиненных макросов писать не придется, но то, что есть, - на твердую пятерку. Запуски, отключения программ, вызовы дополнительных окошек - сказочный змей со всем справился и от демонстрации норовистости воздержался.
В природе встречается две версии коварного Горыныча - облегченная (Light), продающаяся в jewel-упаковке по цене около $5 (идеально подходит для домашнего пользования) и полноценный коробочный вариант за $49 (для дома функций явный перебор).
Плюсы: Русскоязычность, эргономичный интерфейс, функция самообучения, наличие недорогой облегченной версии.
Минусы: Средние показатели по всем функциям, но только на фоне зарубежных конкурентов, среди отечественных утилит аналогов нет.
Резюме: Отличная русскоязычная программа. За неимением достойных отечественных аналогов - чуть ли не единственный вариант для тех, кто совсем не дружит с английским.
Чего ждать? Чего бояться?
Несмотря на относительную схожесть “голосовых” программ, они используют разные алгоритмы распознавания речи, ее декодирования и выведения на экран в виде текста. Обычно в одну утилиту встроено несколько алгоритмических ядер, отвечающих за различные функции утилит. В зависимости от того, какой из компонентов в данной программе спрограммирован тщательнее, утилита справляется лучше с теми или другими функциями. Чаще всего “голосовые” приложения умеют работать по двум основным направлениям.
1) Распознавание русской или английской речи и конвертация голоса в текстовый файл. Самая сложная в реализации функция - разумеется, для разработчиков. Программ, владеющих этим навыком в совершенстве, увы, пока не существует.
2) Голосовое управление компьютером. Какое-то простое - или не очень простое, а многоступенчатое - действие “ассоциируется” с какой-то голосовой командой. После этого достаточно произнести заветное слово или фразу, и компьютер незамедлительно проделает соответствующую операцию.
Обратите внимание, что даже демоверсии описанных в статье программ занимают не менее 50 Мб. Это обусловлено большим объемом “словарного запаса” - чтобы понять произнесенное слово, утилита уже должна его “знать”. Не надейтесь, что “речевые” программы будут шустро бегать на слабых машинах. Для комфортной работы с большинством подобных утилит необходимо иметь вполне современный компьютер и хорошего качества микрофон.

* * *
В теории вы подкованы, дело - за практикой. Запасайтесь утилитами, инсталлируйте, осваивайте. Рынок программ распознавания речи молод, потому утилиты ведут себя как дети малые. За ними нужно ухаживать, вовремя менять им подгузники, следить, чтобы они вовремя узнавали новые слова (во всех программах есть модуль обучения новым выражениям), холить и лелеять. Что вырастет из скачанного из Сети или купленного дистрибутива - зависит только от вас. Если не будете уделять достаточно времени настройке и обучению программы - вырастет строптивый и хулиганистый отрок. Потратите несколько часов на изучение документации, лазанию по менюшкам, работе с микрофоном - взрастите прилежного юнца, который будет везде ходить за вами и глаголить: “Чего желаете, папенька?! Кашки? Огурчиков малосольных? ”.

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

Преобразование речи в текст непосредственно в Word

С помощью Microsoft Dictate вы можете диктовать и даже переводить текст прямо в Word.

  • Скачайте и установите бесплатную программу Microsoft Dictate .
  • Затем откройте – в нем появится вкладка Dictation. Кликнув на нее, вы увидите значок микрофона с командой Start.
  • Рядом находится выбор языка. Выберите русский язык и начните запись. Старайтесь произносить слова максимально четко, и они появятся прямо в документе.

Превращаем речь в текст с помощью Speak a Message

Бесплатная программа Speak A Message записывает произнесенный текст, а затем расшифровывает его. Основные языки программы - английский, немецкий, испанский и французский, но есть и мультиязычная версия.

  • Установите программу и нажмите кнопку «Запись». Произнесите весь текст, а затем кликните «Стоп».
  • Под кнопкой записи рядом с записанными файлами вы найдете функцию «Транскрипция» - «Речь в текст».
  • Скопируйте готовый текст и вставьте его в нужный текстовый редактор. Но не забудьте проверить то, что записала программа — иногда она допускает ошибки.

Преобразуем речь в текст без специальных программ

В операционной системе Windows 8 и 10 вам не требуется дополнительное программное обеспечение для преобразования голоса в текст.

  • Нажмите на клавишу Windows и введите «Распознавание речи». Затем откройте совпадающий с запросом результат и следуйте указаниям программы.
  • После завершения настройки запустите приложения и диктуйте прямо в документе Word. Для этого просто нажмите на кнопку микрофона и начните говорить.

Преобразование речи в текст через приложение

Если вы хотите диктовать тексты и получать их в напечатанном виде прямо на ходу, используйте специальные приложения.

  • Android и iOS уже интегрировали в свои системы функцию распознавания речи. Когда вы открываете приложение для создания заметок и начинаете набирать текст, используйте значок микрофона, чтобы запустить распознавание голоса.
  • Есть и другие приложения для аналогичной цели, например Dragon Dictation, доступное для Android и iOS.

Энциклопедичный YouTube

  • 1 / 5

    Работы по распознаванию речи берут начало с середины прошлого века. Первая система была создана в начале 1950 годов: её разработчики поставили перед собой задачу распознавания цифр . Разработанная система могла идентифицировать цифры, но сказанные одним голосом, как, например, система «Audrey» компании Bell Laboratories . Она работала на основе определения форманты в спектре мощности каждого речевого отрывка . В общих чертах система состояла из трех главных частей: анализаторов и квантователей, шаблонов согласователей сети и, наконец, датчиков. Создано было, соответственно, на элементной базе различных частотных фильтров, переключателей, так же в составе датчиков были газонаполненные трубки [ ] .

    К концу десятилетия появились системы, распознающие гласные независимо от диктора . В 70-х годах начали использоваться новые методы, позволившие добиться более совершенных результатов - метод динамического программирования и метод линейного предсказания (Linear Predictive Coding - LPC). В вышеупомянутой компании, Bell Laboratories были созданы системы, использующие именно эти методы . В 80-х годах следующим шагом в развитии систем распознавания голоса стало использование скрытых марковский моделей (Hidden Markov Models - HMM). В это время начинают появляться первые крупные программы по распознаванию голоса, как например, Kurzweil text-to-speech . В конце 80-х также стали применяться методы искусственных нейронных сетей (Artificial Neural Network - ANN) . В 1987 году на рынке появились куклы Worlds of Wonder’s Julie doll, которые были способны понимать голос . А ещё через 10 лет Dragon Systems выпустила программу «NaturallySpeaking 1.0» .

    Надежность

    Основными источниками ошибок распознавания голоса являются:

    Распознавание пола можно выделить в отдельный тип задач, который довольно успешно решается - при больших объёмах начальных данных пол определяется практически безошибочно, а на коротких отрывках вроде ударного гласного звука вероятность ошибки - 5,3 % для мужчин и 3,1 % для женщин .

    Также рассматривалась проблема имитации голоса. Исследования France Telecom показали, что профессиональная имитация голоса практически не увеличивает вероятность ошибки определения личности - имитаторы подделывают голос лишь внешне, подчеркивая особенности речи, но базовую канву голоса подделать не способны. Даже голоса близких родственников, близнецов будет иметь различие, как минимум, в динамике управления . Но с развитием компьютерных технологий возникла новая проблема, требующая использования новых способов анализа, - трансформация голоса, которая увеличивает вероятность ошибки до 50 % .

    Для описания надежности системы есть два используемых критерия: FRR (False Rejection Rate) - вероятность ложного отказа в доступе (ошибка первого рода) и FAR (False Acceptance Rate) - вероятность ложного допуска, когда система ошибочно опознает чужого как своего (ошибка второго рода). Также иногда системы распознавания характеризуются таким параметром, как EER (Equal Error Rates), представляющим точку совпадения вероятностей FRR и FAR. Чем надежней система, тем более низкий EER имеет .

    Значения ошибок идентификации для различных биометрических модальностей

    Применение

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

    Хотя распознавание по голосу не может гарантировать стопроцентную правильность результата, оно может довольно эффективно использоваться в таких областях, как криминалистика и судебная экспертиза; разведка; антитеррористический мониторинг; безопасность; банковское дело и так далее .

    Анализ

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

    • предобработка сигнала;
    • выделение критериев;
    • распознавание диктора.

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

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

    Кепстральный анализ

    В работах по распознаванию голоса наиболее популярен метод кепстрального преобразования спектра речевых сигналов . Схема метода такова: на интервале времени в 10 - 20 мс вычисляется текущий спектр мощности, а затем применяется обратное преобразование Фурье от логарифма этого спектра (кепстр) и находятся коэффициенты: c n = 1 Θ ∫ 0 Θ ∣ S (j , ω , t) ∣ 2 exp − j n ω Ω ⁡ d ω {\displaystyle c_{n}={\frac {1}{\Theta }}\int _{0}^{\Theta }{\mid S(j,\omega ,t)\mid }^{2}\exp ^{-jn\omega \Omega }d\omega } , Ω = 2 2 π Θ , Θ {\displaystyle \Omega =2{\frac {2\pi }{\Theta }},\Theta } - верхняя частота в спектре речевого сигнала, ∣ S (j , ω , t) ∣ 2 {\displaystyle {\mid S(j,\omega ,t)\mid }^{2}} - спектр мощности. Число кепстральных коэффициентов n зависит от требуемого сглаживания спектра, и находится в пределах от 20 до 40. Если используется гребенка полосовых фильтров , то коэффициенты дискретного кепстрального преобразования вычисляются как c n = ∑ m = 1 N log ⁡ Y (m) 2 cos ⁡ π n M (m − 1 2)) {\displaystyle c_{n}=\sum _{m=1}^{N}\log {Y(m)^{2}}\cos {{\frac {\pi n}{M}}(m-{\frac {1}{2}}))}} , где Y(m) - выходной сигнал m-го фильтра, c n {\displaystyle c_{n}} - n-й коэффициент кепстра.

    Свойства слуха учитываются путем нелинейного преобразования шкалы частот, обычно в шкале мел . Эта шкала формируется исходя из присутствия в слухе так называемых критических полос, таких, что сигналы любой частоты в пределах критической полосы неразличимы. Шкала мел вычисляется как M (f) = 1125 ln ⁡ (1 + f 700) {\displaystyle M(f)=1125\ln {(1+{\frac {f}{700}})}} , где f - частота в Гц, M - частота в мелах. Либо используется другая шкала - барк , такая, что разность между двумя частотами, равная критической полосе, равна 1 барк. Частота B вычисляется как B = 13 a r c t g (0 , 00076 f) + 3 , 5 a r c t g f 7500 {\displaystyle B=13\operatorname {arctg{(0,00076f)}} +3,5\operatorname {arctg{\frac {f}{7500}}} } . Найденные коэффициенты в литературе иногда обозначаются как MFCC - Mel Frequiency Cepstral Coefficients. Их число лежит в диапазоне от 10 до 30. Использование первых и вторых разностей по времени кепстральных коэффициентов втрое увеличивает размерность пространства принятия решений, но улучшает эффективность распознавания диктора .

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

    Методы

    Метод GMM следует из теоремы о том, что любая функция плотности вероятности может быть представлена как взвешенная сумма нормальных распределений:

    P (x | λ) = ∑ j = 1 k ω j ϕ (χ , Θ j) {\displaystyle p(x|\lambda)=\sum _{j=1}^{k}{\omega _{j}\phi (\chi ,\Theta _{j})}} ; λ {\displaystyle \lambda } - модель диктора;k - количество компонентов модели; ω j {\displaystyle {\omega _{j}}} - веса компонентов такие, что ∑ j = 1 n ω j = 1. {\displaystyle \sum _{j=1}^{n}{\omega _{j}}=1.} ϕ (χ , Θ j) {\displaystyle \phi (\chi ,\Theta _{j})} - функция распределения многомерного аргумента χ , Θ j {\displaystyle \chi ,\Theta _{j}} . ϕ (χ , Θ j) = p (χ ∣ μ j , R j) = 1 (2 π) n 2 ∣ R j ∣ 1 2 exp ⁡ − 1 (χ − μ j) T R j − 1 (χ − μ j) 2 {\displaystyle \phi (\chi ,\Theta _{j})=p(\chi \mid \mu _{j},R_{j})={\frac {1}{({2\pi })^{\frac {n}{2}}{\mid R_{j}\mid }^{\frac {1}{2}}}}\exp {\frac {-1(\chi -\mu _{j})^{T}R_{j}^{-1}(\chi -\mu _{j})}{2}}} , ω j {\displaystyle \omega _{j}} - её вес, k - количество компонент в смеси. Здесь n - размерность пространства признаков, μ j ∈ R n {\displaystyle \mu _{j}\in \mathbb {R} ^{n}} - вектор математического ожидания j-й компоненты смеси, R j ∈ R n × n {\displaystyle R_{j}\in \mathbb {R} ^{n\times n}} - ковариационная матрица.

    Очень часто в системах с этой моделью используется диагональная ковариационнная матрица. Она может использоваться для всех компонент модели или даже для всех моделей. Чтобы найти матрицу ковариации, веса, векторы средних часто используют EM-алгоритм . На входе имеем обучающую последовательность векторов X = {x 1 , . . . , x T } . Параметры модели инициализируются начальными значениями и затем на каждой итерации алгоритма происходит переоценка параметров. Для определения начальных параметров обычно используют алгоритм кластеризации такой, как алгоритм К-средних . После того как произошло разбиение множества обучающих векторов на M кластеров, параметры модели могут быть определены так: начальные значения μ j {\displaystyle \mu _{j}} совпадают с центрами кластеров, матрицы ковариации рассчитываются на основе попавших в данный кластер векторов, веса компонентов определяются долей векторов данного кластера среди общего количества обучающих векторов.

    Переоценка параметров происходит по следующим формулам:

    GMM можно также назвать продолжением метода векторного квантования (метод центроидов). При его использовании создается кодовая книга для непересекающихся областей в пространстве признаков (часто с использованием кластеризации методом K-means). Векторное квантование является простейшей моделью в системах распознавания, независимых от контекста .

    Метод опорных векторов (SVM) cтроит гиперплоскость в многомерном пространстве, разделяющую два класса - параметров целевого диктора и параметров дикторов из референтной базы. Гиперплоскость вычисляется c помощью опорных векторов - выбранных особым образом. Будет выполняться нелинейное преобразование пространства измеренных параметров в некоторое пространство признаков более высокой размерности, так как разделяющая поверхность может и не соответствовать гиперплоскости. Разделяющая поверхность в гиперплоскости строится методом опорных векторов, если выполняется условие линейной разделимости в новом пространстве признаков. Таким образом успех применения SMM зависит от подобранного нелинейного преобразования в каждом конкретном случае. Метод опорных векторов применяется часто с методом GMM или HMМ. Обычно для коротких фраз длительностью в несколько секунд для контестно-зависимого подхода лучше применяются фонемно-зависимые HMM .

    Популярность

    По информации консалтинговой компании International Biometric Group из Нью-Йорка, наиболее распространенной технологией является сканирование отпечатков пальцев. Отмечается, что из 127 млн долларов, вырученных от продажи биометрических устройств, 44 % приходится на дактилоскопические сканеры. Системы распознавания черт лица занимают второе место по уровню спроса, который составляет 14 %, далее следуют устройства распознавания по форме ладони (13 %), по голосу (10 %) и радужной оболочке глаза (8 %). Устройства верификации подписи в этом списке составляют 2 %. Одни из самых известных производителей на рынке голосовой биометрии - Nuance Communications, SpeechWorks, VeriVoice .

    В феврале 2016 года The Telegraph опубликовала статью, в которой сообщается, что клиенты британского банка HSBC смогут получать доступ к счетам и проводить транзакции с помощью идентификации по голосу. Переход должен был состояться в начале лета

    Человека всегда привлекала идея управлять машиной естественным языком. Возможно, это отчасти связано с желанием человека быть НАД машиной. Так сказать, чувствовать свое превосходство. Но основной посыл - это упрощение взаимодействия человека с искусственным интеллектом. Управление голосом в Linux с переменным успехом реализуется без малого уже четверть века. Давай разберемся в вопросе и попробуем сблизиться с нашей ОС настолько, насколько это только возможно.

    Суть дела

    Системы работы с человеческим голосом для Linux существуют давно, и их великое множество. Но не все они корректно обрабатывают русскую речь. Некоторые и вовсе заброшены разработчиками. В первой части нашего обзора мы поговорим непосредственно о системах распознавания речи и голосовых ассистентах, а во второй - рассмотрим конкретные примеры их использования на Linux-десктопе.

    Следует различать собственно системы распознавания речи (перевод речи в текст или в команды), такие как, например, CMU Sphinx, Julius, а также приложения на основе этих двух движков, и голосовые ассистенты, ставшие популярными с развитием смартфонов и планшетов. Это, скорее, побочный продукт систем распознавания речи, дальнейшее их развитие и воплощение всех удачных идей распознавания голоса, применение их на практике. Для Linux-десктопов таких пока мало.

    Надо понимать, что движок распознавания речи и интерфейс к нему - это разные вещи. Таков базовый принцип архитектуры Linux - разделение сложного механизма на более простые составные части. Самая сложная работа ложится на плечи движков. Обычно это скучная консольная программа, работающая незаметно для пользователя. Пользователь же взаимодействует в основном с программой-интерфейсом. Создать интерфейс несложно, поэтому основные усилия разработчики направляют именно на разработку открытых движков распознавания речи.

    Что было раньше

    Исторически сложилось так, что все системы работы с речью в Linux развивались не спеша и скачкообразно. Причина не в криворукости разработчиков, а в высоком уровне вхождения в среду разработки. Написание кода системы для работы с голосом требует высокой квалификации программиста. Поэтому, перед тем как начать разбираться с системами работы с речью в Linux, необходимо сделать небольшой экскурс в историю. Была когда-то в IBM такая чудесная операционная система - OS/2 Warp (Merlin). Вышла она в сентябре далекого уже 1996 года. Кроме того, что она обладала очевидными преимуществами перед всеми остальными операционками, OS/2 была укомплектована весьма продвинутой системой распознавания речи - IBM ViaVoice . Для того времени это было очень круто, учитывая, что ОС работала на системах с 486-м процессором с объемом ОЗУ от 8 Мбайт (!).

    Как известно, OS/2 проиграла битву Windows, однако многие ее компоненты продолжили существовать независимо. Одним из таких компонентов стала та самая IBM ViaVoice, превратившаяся в самостоятельный продукт. Так как IBM всегда любила Linux, ViaVoice была портирована на эту ОС, что дало детищу Линуса Торвальдса самую передовую для своего времени систему распознавания речи.

    К сожалению, судьба ViaVoice сложилась не так, как хотели бы линуксоиды. Сам движок распространялся бесплатно, но его исходники оставались закрытыми. В 2003 году IBM продала права на технологию канадо-американской компании Nuance. Nuance, разработавшая, пожалуй, самый успешный коммерческий продукт для распознавания речи - Dragon Naturally Speeking , здравствует и ныне. На этом бесславная история ViaVoice в Linux практически закончилась. За то короткое время, что ViaVoice была бесплатной и доступной линуксоидам, к ней разработали несколько интерфейсов, таких, например, как Xvoice. Однако проект давно заброшен и ныне практически неработоспособен.

    INFO

    Самое сложное звено в машинном распознавании речи - естественный человеческий язык.

    Что сегодня?

    Сегодня все гораздо лучше. В последние годы, после открытия исходников Google Voice API, ситуация с развитием систем распознавания речи в Linux значительно улучшилась, выросло качество распознавания. Например, проект Linux Speech Recognition на основе Google Voice API показывает очень неплохие результаты для русского языка. Все движки работают примерно одинаково: сначала звук с микрофона устройства юзера попадает в систему распознавания, после чего либо голос обрабатывается на локальном устройстве, либо запись отправляется на удаленный сервер для дальнейшей обработки. Второй вариант больше подходит для смартфонов или планшетов. Собственно, именно так и работают коммерческие движки - Siri, Google Now и Cortana.

    Из всего многообразия движков для работы с человеческим голосом можно выделить несколько активных на данный момент.

    WARNING

    Установка многих из описанных систем распознавания речи - нетривиальная задача!

    CMU Sphinx

    Большая часть разработки CMU Sphinx ведется в университете Карнеги - Меллона. В разное время над проектом работали и Массачусетский технологический институт, и покойная ныне корпорация Sun Microsystems. Исходники движка распространяются под лицензией BSD и доступны как для коммерческого, так и для некоммерческого использования. Sphinx - это не пользовательское приложение, а, скорее, набор инструментов, который можно применить в разработке приложений для конечных пользователей. Sphinx сейчас - это крупнейший проект по распознаванию речи. Он состоит из нескольких частей:

    • Pocketsphinx - небольшая быстрая программа, обрабатывающая звук, акустические модели, грамматики и словари;
    • библиотека Sphinxbase, необходимая для работы Pocketsphinx;
    • Sphinx4 - собственно библиотека распознавания;
    • Sphinxtrain - программа для обучения акустическим моделям (записям человеческого голоса).

    Проект развивается медленно, но верно. И главное - его можно использовать на практике. Причем не только на ПК, но и на мобильных устройствах. К тому же движок очень хорошо работает с русской речью. При наличии прямых рук и ясной головы можно настроить распознавание русской речи с помощью Sphinx для управления домашней техникой или умным домом. По сути, можно обычную квартиру превратить в умный дом, чем мы и займемся во второй части этого обзора. Реализации Sphinx имеются для Android, iOS и даже Windows Phone. В отличие от облачного способа, когда работа по распознаванию речи ложится на плечи серверов Google ASR или Яндекс SpeechKit, Sphinx работает точнее, быстрее и дешевле. И полностью локально. При желании можно научить Sphinx русской языковой модели и грамматике пользовательских запросов. Да, придется немного потрудиться при установке. Равно как и настройка голосовых моделей и библиотек Sphinx - занятие не для новичков. Так как основа CMU Sphinx - библиотека Sphinx4 - написана на Java, можно включать ее код в свои приложения для распознавания речи. Конкретные примеры использования будут описаны во второй части нашего обзора.

    VoxForge

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

    Любой, у кого есть доступ к интернету, может поучаствовать в создании речевого корпуса, просто записав и отправив фрагмент речи. Это можно сделать даже по телефону, но удобней воспользоваться сайтом. Конечно, кроме собственно аудиозаписи, речевой корпус должен включать в себя дополнительную информацию, такую как фонетическая транскрипция. Без этого запись речи бессмысленна для системы распознавания.


    HTK, Julius и Simon

    HTK - Hidden Markov Model Toolkit - это инструментарий для исследования и разработки средств распознавания речи с использованием скрытых марковских моделей, разрабатывается в Кембриджском университете под патронажем Microsoft (Microsoft когда-то выкупила этот код у коммерческого предприятия Entropic Cambridge Research Laboratory Ltd, а затем вернула его Кембриджу вместе с ограничивающей лицензией). Исходники проекта доступны всем желающим, но использование кода HTK в продуктах, предназначенных для конечных пользователей, запрещено лицензией.

    Однако это не означает, что HTK бесполезен для Linux-разработчиков: его можно использовать как вспомогательный инструмент при разработке открытых (и коммерческих) средств распознавания речи, что и делают разработчики открытого движка Julius, который разрабатывается в Японии. Julius лучше всего работает с японским языком. Великий и могучий тоже не обделен, ведь в качестве голосовой базы данных используется все тот же VoxForge.

    Продолжение доступно только участникам

    Вариант 1. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

    Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!

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

    Что такое транскрибация

    Транскрибация – это автоматический или ручной перевод речи в текст, точнее, запись аудио или видео-файла в текстовом виде.

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

    Однако можно сделать транскрибацию автоматически, с помощью специальной программы, умеющей “слушать” текст и одновременно “печатать” его, превращать в текстовый файл, пригодный для дальнейшего использования.

    Перевод речи в текст вручную или с помощью специальной программы полезен

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

    О проблемах автоматического перевода речи в текст

    Можно выделить две крупных проблемы перевода речи в текст с помощью программы: качество записанной речи и наличие в записи фона в виде шума, музыки или иных посторонних звуков.

    Речь у всех людей разная:

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

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

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

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

    Опишем наиболее эффективные инструменты, доступные на компьютере, мобильные приложения и онлайн-сервисы для перевода речи в текст.

    1 Сайт speechpad.ru

    Это онлайн-сервис, который позволяет через браузер Google Chrome переводить речь в текст. Сервис работает с микрофоном и с готовыми файлами. Конечно, качество будет значительно выше, если использовать внешний микрофон и диктовать самому. Однако сервис неплохо справляется даже с видеороликами на YouTube.

    Нажимаем «Включить запись», отвечаем на вопрос про «Использование микрофона» – для этого кликаем «Разрешить».

    Длинную инструкцию про использование сервиса можно свернуть, нажав на кнопку 1 на рис. 3. От рекламы можно избавиться, пройдя несложную регистрацию.

    Рис. 3. Сервис speechpad

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

    Список видео-уроков по работе с speechpad:

    Можно транскрибировать видео с Youtube или со своего компьютера, правда, понадобится микшер, подробнее:

    Видео «Транскрибирование аудио»

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

    2 Сервис dictation.io

    Замечательный онлайн-сервис, который позволит бесплатно и легко переводить речь в текст.

    Рис. 4. Сервис dictation.io

    1 на рис. 4 – русский язык можно выбрать в конце страницы. В браузере Google Chrome язык выбирается, а в Мозилле почему-то нет такой возможности.

    Примечательно то, что реализована возможность автосохранять готовый результат. Это убережет от случайного удаления в результате закрытия вкладки или браузера. Готовые файлы этот сервис не распознает. Работает с микрофоном. Нужно называть знаки препинания, когда производите диктовку.

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

    3 RealSpeaker

    Эта программа позволяет легко переводить человеческую речь в текст. Она предназначена для работы в разных системах: Windows, Android, Linux, Mac. С ее помощью можно преобразовывать речь, звучащую в микрофон (например, он может быть встроен в ноутбук), а также записанную в аудиофайлы.

    Может воспринимать 13 языков мира. Существует бета-версия программы, которая работает в режиме онлайн-сервиса:

    Нужно перейти по указанной выше ссылке, выбрать русский язык, загрузить на онлайн-сервис свой аудио- или видео-файл и оплатить его транскрибацию. После транскрибации можно будет скопировать полученный текст. Чем больше файл для транскрибации, чем больше времени понадобится на его обработку, подробнее:

    В 2017-ом году был бесплатный вариант транскрибации с помощью RealSpeaker, с 2018 года такой возможности нет. Вероятно для того, чтобы транскрибированный файл был недоступен всем пользователям для скачивания, необходимо наличие галочки напротив “Сделать файл неудачным в течение 24 часов”.

    На сайте есть онлайн-чат. Кнопка, чтобы начать чат, находится в правом нижнем углу сайта.

    4 Speechnotes

    Альтернатива предыдущему приложению для мобильных устройств, работающих на Android. Доступно бесплатно в магазине приложений:

    Текст редактируется автоматически, в нем расставляются знаки препинания. Очень удобно для того, чтобы надиктовывать себе заметки или составлять списки. В результате текст получится весьма достойного качества. Есть платная премиум-версия.

    5 Dragon Dictation

    Это приложение, которое распространяется бесплатно для мобильных устройств от компании Apple.

    Программа может работать с 15 языками. Она позволяет редактировать результат, выбирать из списка нужные слова. Нужно четко проговаривать все звуки, не делать лишних пауз и избегать интонации. Иногда возникают ошибки в окончаниях слов.

    Приложение Dragon Dictation используют обладатели яблочных гаджетов, например, чтобы, перемещаясь по квартире, надиктовать список покупок в магазине. Придя туда, они могут посмотреть на текст в заметке, и не надо слушать.

    Какую бы программу Вы ни использовали в своей практике, будьте готовы перепроверять результат и вносить определенные коррективы.

    Только так можно будет получить безукоризненный текст без ошибок.

    Расшифровка аудио и видео в текст на биржах фриланса

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

    Как же можно сделать заказ на бирже фриланса? Сначала нужно зарегистрироваться на сайте биржи, то есть пройти там регистрацию. Затем можно будет разместить заказ – задание на транскрибацию.

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


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

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

    Ниже предлагаю две известных биржи фриланса, где можно разместить заказ для перевода речи в текст с помощью фрилансера: weblancer.net и freelance.ru.

    Две биржи фриланса

    Расшифровка аудио и видео в текст (транскрибация) на бирже фриланса weblancer.net:

    Рис. 5. (кликните для увеличения)

    Биржа фриланса weblancer.net

    Другая биржа, где можно заказать расшифровку аудио/видеозаписей – freelance.ru

    Биржа фриланса freelance.ru