Режим распознавания голоса. Pаспознавание речи и мгновенный перевод


Энциклопедичный 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 смогут получать доступ к счетам и проводить транзакции с помощью идентификации по голосу. Переход должен был состояться в начале лета

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

    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 Мб. Это обусловлено большим объемом “словарного запаса” - чтобы понять произнесенное слово, утилита уже должна его “знать”. Не надейтесь, что “речевые” программы будут шустро бегать на слабых машинах. Для комфортной работы с большинством подобных утилит необходимо иметь вполне современный компьютер и хорошего качества микрофон.

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

    Человека всегда привлекала идея управлять машиной естественным языком. Возможно, это отчасти связано с желанием человека быть НАД машиной. Так сказать, чувствовать свое превосходство. Но основной посыл - это упрощение взаимодействия человека с искусственным интеллектом. Управление голосом в 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!

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

    Приложение для перевода аудио голоса в текст – требования к системе

    Большинство ныне существующих программ для перевода голоса в текст имеют платный характер, предъявляя ряд требований к микрофону (в случае, когда программа предназначена для компьютера). Крайне не рекомендуется работать с микрофоном, встроенным в веб-камеру, а также размещённым в корпусе стандартного ноутбука (качество распознавания речи с таких устройств находится на довольно низком уровне). Кроме того, довольно важно иметь тихую окружающую обстановку, без лишних шумов, способных напрямую повлиять на уровень распознавания вашей речи.

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

    Программа преобразования речи в текст

    Перейдём к непосредственному описанию программ, способных помочь в переводе речи в текст.

    Программа «Laitis»

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

    Для своей работы программа требует обязательного наличия на ПК скоростного интернета (в работе программы используются сетевые сервисы распознавания голоса от «Google» и «Yandex»). Возможности программы позволяют, также, управлять с помощью голосовых команд и вашим браузером, для чего необходима установка на веб-навигатор специального расширения от «Laitis» (Chrome, Mozilla, Opera).

    «Dragon Professional» — расшифровка аудиозаписей в текст

    На момент написания данного материала цифровой англоязычный продукт « Dragon Professional Individual » является одним из мировых лидеров по качеству распознаваемых текстов. Программа понимает семь языков (с русским пока работает лишь мобильное приложение «Dragon Anywhere» на и ), обладает высоким качеством распознавания голоса, умеет выполнять ряд голосовых команд. При этом данный продукт имеет исключительно платный характер (цена за основную программу составляет 300 долларов США, а за «домашнюю» версия продукта «Dragon Home » покупателю придётся выложить 75 американских долларов).

    Для своей работы данный продукт от «Nuance Communications» требует создания своего профиля, который призван адаптировать возможности программы под специфику вашего голоса. Кроме непосредственной диктовки текста, вы можете обучить программу выполнять ряд команд, тем самым делая своё взаимодействие с компьютером ещё более конгруэнтным и удобным.

    «RealSpeaker» — сверхточный распознаватель речи

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


    «RealSpeaker» считывает не только аудио, но и визуальную составляющую процесса речи

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

    «Voco» — программа быстро переведёт голос в текстовый документ

    Ещё один преобразователь голоса в текст – это платный цифровой продукт «Voco », цена «домашней» версии которого ныне составляет около 1700 рублей. Более продвинутые и дорогие варианты данной программы – «Voco.Professional» и «Voco.Enterprise» имеют ряд дополнительных возможностей, одной из которых является распознавание речи из имеющихся у пользователя аудиозаписей.

    Среди особенностей «Voco» отмечу возможность дополнения словарного запаса программы (ныне словарный запас программы включает более 85 тысяч слов), а также её автономную работу от сети, позволяющую не зависеть от вашего подключения к Интернету.


    Среди плюсов «Voco» — высокая обучаемость программы

    Приложение включается довольно просто — достаточно дважды нажать на клавишу «Ctrl». Для активации голосового ввода в «Gboard» достаточно нажать и удерживать пробел

    Приложение абсолютно бесплатно, поддерживает несколько десятков языков, среди которых и русский.

    Заключение

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

    Для того, чтобы распознать речь и перевести её из аудио или видео в текст , существуют программы и расширения (плагины) для браузеров. Однако зачем всё это, если есть онлайн сервисы? Программы надо устанавливать на компьютер, более того, большинство программ распознавания речи далеко не бесплатны.


    Большое число установленных в браузере плагинов сильно тормозит его работу и скорость серфинга в интернет. А сервисы, о которых сегодня пойдет речь, полностью бесплатны и не требуют установки – зашел, попользовался и ушел!

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

    Speechpad.ru

    Русскоязычный онлайн сервис распознавания речи. Имеет подробную инструкцию по работе на русском языке.

    • поддержку 7 языков (русский, украинский, английский, немецкий, французский, испанский, итальянский)
    • загрузку для транскрибации аудио или видео файла (поддерживаются ролики с YouTube)
    • синхронный перевод на другой язык
    • поддержку голосового ввода знаков препинания и перевода строки
    • панель кнопок (смена регистра, перевод на новую строку, кавычки, скобки и т.п.)
    • наличие персонального кабинета с историей записей (опция доступна после регистрации)
    • наличие плагина к Google Chrome для ввода текста голосом в текстовом поле сайтов (называется «Голосовой ввод текста — Speechpad.ru»)

    Dictation.io

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

    Основной функционал сервиса:

    • поддержка 30 языков, среди которых присутствуют даже венгерский, турецкий, арабский, китайский, малайский и пр.
    • автораспознавание произношения знаков препинания, перевода строки и пр.
    • возможность интеграции со страницами любого сайта
    • наличие плагина для Google Chrome (называется «VoiceRecognition»)

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

    Сравнительный тест сервисов

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

    Ниже представлен результат перевода речи в текст каждым сервисом (ошибки обозначены красным цветом):

    Как видим, оба сервиса практически с одинаковыми ошибками справились с распознаванием речи. Результат весьма неплохой!

    Теперь для теста возьмем отрывок из письма красноармейца Сухова (к/ф «Белое солнце пустыни»):

    Отличный результат!

    Как видим, оба сервиса весьма достойно справляются с распознаванием речи – выбирайте любой! Похоже что они даже используют один и тот же движок — уж слижком схожие у них оказались допущенные ошибки по результатам тестов). Но если Вам необходимы дополнительные функции типа подгрузки аудио / видео файла и перевода его в текст (транскрибация) или синхронного перевода озвученного текста на другой язык, то Speechpad будет лучшим выбором!


    Кстати вот как он выполнил синхронный перевод фрагмента поэмы Некрасова на английский язык:

    Ну а это краткая видео инструкция по работе со Speechpad, записанная самим автором проекта:

    Друзья, понравился ли Вам данный сервис? Знаете ли Вы более качественные аналоги? Делитесь своими впечатлениями в комментариях.