Cказано - сделано или гость из будущего.
АрхивПолезняшки (архив)Недавно в Компьютерре темой номера была проблема понимания компьютером человеческой речи. Основным объектом рассмотрения стали общие, теоретические вопросы. Я же хотел бы подробнее остановиться на одном конкретном аспекте этой проблемы, а именно на программах распознавания речи.
Недавно в Компьютерре темой номера была проблема понимания компьютером человеческой речи.[1] В соответствии с общим духом и направленностью журнала основным объектом рассмотрения стали общие, теоретические вопросы. Я же хотел бы подробнее остановиться на одном конкретном аспекте проблемы взаимопонимания человека и компьютера, а именно на программах распознавания речи.
Я достаточно давно интересуюсь подобным софтом и меня очень привлекает идея когда-нибудь «поговорить» с компьютером. Все эти фантастические фильмы, в которых герои на простом человеческом языке (чаще всего почему-то английском) обращаются к машине, а та тотчас же выдает на это адекватный ответ, никак не давали покоя. Никаких тебе тыканий мышью, все просто: сказано — сделано. Так что же, неужели эта мечта так и останется мечтой, или все же есть надежда?
В прессе время от времени появляются сообщения о различных системах распознавания речи. Самая известная из них — Dragon NaturallySpeaking (в девичестве — Dragon Dictate). О трансформации названия и о причинах, ее вызвавших — чуть позже. В силу известных причин речь все чаще идет об английском и нескольких европейских языках. Русский как всегда «в пролете». Хотя, отечественная разработка в этой области имеется. Впрочем, назвать ее таковой можно лишь с оговорками. Небезызвестный Горыныч основан все на том же Dragon Dictate, версии аж 2.5, когда текущая версия программы — 6.0. В Горыныче, русском Драконе, отсутствует система тренировки и настройки под индивидуальные характеристики голоса пользователя, в связи с чем, если вы захотите заставить программу работать, вам придется заново переозвучить весь словарь программы, а на это уйдет уже не один месяц. По моему мнению, если появится новая версия программы, основанная на последнем ядре, а к этому добавится еще и 15 минутная программа адаптации под ваше произношение, как это имеет место быть в оригинальной версии, тогда, и только тогда можно будет говорить о существовании системы распознавания речи для русского языка. Пока же реальная возможность «говорить с компьютером» имеется у тех, кто владеет одним из уже упомянутых иностранных языков, например английским. Я, со с свойственной мне природной скромностью, отношу себя к таковым, а по сему представляю вашему вниманию обзор шестой версии вышеозвученной программы.
В последней версии Мелкомягкого офиса также присутствует функция распознавания голоса. И вот, прочитав, еще давно, статью Сергея Scout Кащавцева про этот самый Office XP, обнаружил, что эта самая функция реализована в нем из рук вон плохо. Ну никак не хотела программа распознавать простейшие предложения начальной школы, как Сергей ни старался. Естественно, установив свежую версию Dragon’а (до этого я успешно пользовался пятой версией), я первым делом проверил эти самые несколько фраз на профпригодность. Дело в том, что пятую версию я уже достаточно долго и активно использовал и каких-либо критических нареканий она у меня не вызывала. Попытка потомка отстоять честь рода сразу как-то не получилась.
Напомню те несколько простых предложений, которые Scout, а потом и я, тщетно пытались ввести при помощи голоса. Вот они: “Hello, my name is Scout. I live in Moscow. Moscow is a beautiful city.” Эти простейшие предложения, которые мы выучиваем в начальной школе, ставили программу в полнейший ступор. С первым предложением программа справилась играючи, даже Scout сама с большой буквы написала, чего я, признаюсь, не ожидал :) Но дальше начались странности. Ни гневные угрозы с моей стороны, ни битье головой об стену, ни любые другие меры не могли заставить программу понимать название столицы нашей великой родины, к тому же, в ответ на мое city программа упорно выдавала CD. После где-то тридцатой безуспешной попытки в голову начала понемногу прокрадываться одна мысль: а может у меня произношение неправильное? Нет, я понимаю, что мог бы об этом и раньше подумать, но… как и Сергей я не испытывал (и не испытываю) особых сложностей при общении с иностранцами, да и они меня понимают, к тому же на себя всегда грешишь только в самую последнюю очередь. Я вдруг вспомнил, что в английском часто вместо звука «о» употребляется что-то среднее между «а» и «о», а то и вовсе звук «а». Ну что сказать, попробовал. Оказалось, что так оно и есть. Moscow, оказывается, совсем и не Moscow, а скорее даже Mascow. Со второй проблемой я справился тоже достаточно легко. Просто четко и доходчиво объяснил программе как в моем варианте звучит city, а как CD, и проблема исчезла :) В целом же, программа мне понравилась. Периодически, по мере диктовки текста, приходится проводить подобные разъяснения в произношении, но происходит это лишь единожды. После того, как вы один раз это сделаете, программа все запомнит и впредь будет выдавать верный вариант.
Перейдем к собственно рассмотрению возможностей программы. После установки вам предлагается создать нового пользователя. Дело в том, что программа многопользовательская, и работать с нею могут несколько человек сразу, для каждого из них она сохраняет индивидуальные настройки голоса, его тембра, особенности произношения и так далее. Во время этой процедуры вы выбираете язык, который предполагаете использовать в качестве ввода. Возможные варианты здесь — различные диалекты английского (британский, американский, австралийский и другие). Вы также выбираете используемый словарь: общий, состоящий только из специальных команд или же тинейджерский, с широким применением слэнга, я полагаю (см. Рисунок 1). Все зависит от ваших потребностей и от того, как вы будете использовать программу. Я, например, пишу с ее помощью сочинения по английскому для университета, общаюсь по e-mail с англо-говорящими друзьями и знакомыми и даже болтаю с ними же по ICQ и IRC! Если два первых действия можно вполне спокойно выполнять и с помощью обычной клавиатуры (хотя все же голосом гораздо интересней), то общение с помощью этой программы в чате вызывает полную иллюзию обычного человеческого разговора.
Рисунок 1.
Как я уже говорил, далее следует настройка микрофона и где-то 15 минутный процесс обучения программы особенностям вашего произношения. Вам предлагается выбрать текст, от самого легкого — инструкции по тому, как правильно использовать программу и как следует говорить, чтобы она вас понимала, до самого сложного — научной фантастики и исторической речи президента Кеннеди с применением специальных терминов и различных сложных слов и оборотов. Вообще же, рекомендуется периодически заглядывать в Accuracy Center и проводить тренировки, постепенно повышая уровень сложности текстов (см. Рисунок 2). Кстати говоря, в том же Accuracy Center есть и еще несколько возможностей повысить качество распознавания. Одна из интересных особенностей — добавление в словарь слов, которые вы часто используете, но которых нет в стандартном словаре (например, специальные термины). Это можно сделать несколькими способами. Но самый удобный из них — дать программе несколько документов с этими словами, она их просканирует и добавит в словарь те, которых не знала. Подобным образом происходит и добавление имен людей из вашей адресной книги. Поддерживаемые программы — Outlook и Lotus Notes. Хотя, как и заявлено разработчиками, вы будете поражены тем, сколько имен и фамилий программа уже знает.
Рисунок 2.
Есть несколько режимов работы программы (см. Рисунок 3). Это — обычный режим, режим диктовки, режим чисел, spell mode (когда вы произносите слово по буквам) и режим команд. Кстати о командах. В шестой версии появилась возможность давать различные команды на обычном человеческом языке, поэтому и название программы изменилось с Dictate (где вы могли лишь диктовать тексты) на Naturally Speaking. Теперь вы можете просто сказать “File”, и откроется меню «Файл», называете какой-либо пункт меню, и он тоже открывается. Выделение текста жирным или курсивом, изменение его размера, цвета, изменение шрифта, получение помощи, открытие\закрытие программ, навигация по web и много других функций становятся теперь доступными при помощи голоса. Для того чтобы проверить, не поступило ли вам новой почты, достаточно сказать “Check mail” и программа сама запустит ваш любимый почтовый клиент. Но это все относительно простые команды. Помимо них вы можете создавать и свои собственные. Я приведу лишь один простой пример такой команды и область ее применения. Когда мне нужно написать кому-либо письмо я говорю следующее: “New message for…” (здесь произносится имя адресата из адресной книги). Что после этого происходит? А происходит следующее. Запускается почтовая программа, открывается окно создания нового сообщения, и в поле адрес вводится (кстати очень интересно за этим наблюдать: вы даже не касаетесь клавиатуры, а адрес печатается сам собой, прямо какой-то внеземной разум) e-mail адрес нужного человека, после этого курсор переходит в поле написания текста письма, попутно переключая, если нужно, язык ввода. Ну как? По моему удобно. Это лишь один из возможных примеров. Таким же образом, сказав лишь короткую команду на естественном человеческом языке, можно управлять сложнейшими функциями.
Рисунок 3.
Но, конечно же, не все удобно выполнять голосом. Иногда более разумно будет просто ткнуться мышью на нужную кнопку, нежели произносить ее название, тем более, что понимает программа только английский. Наиболее правильное использование программы представляется в комбинации обоих подходов. Некоторые команды давать голосом, некоторые выполнять самому, при помощи клавиатуры и мыши. В этом случае программу лучше переключить в режим команд (при этом она не будет отвлекаться на всякую ерунду, отчего существенно возрастет время отклика), причем микрофон тогда и не обязательно располагать близко к себе. Достаточно поставить его стол на расстоянии 30-40 сантиметров, диктовать так не получится (слишком слабый сигнал), а вот команды распознаются прекрасно. Я лично использую гарнитуру (микрофон и наушники, соединенные в одном корпусе, надеваемом на голову), и когда не диктую, кладу ее сверху на монитор. Пока что проблем с распознаванием команд я не испытывал.
И на кого же рассчитаны подобные «диктовалки»? Оказалось, что спектр их применения достаточно велик. Например, на Западе подобными программами пользуются многие инвалиды. Благодаря им, люди с различными физическими недостатками получили возможность использовать компьютер наравне с другими. Для них голосовой интерфейс стал тем, что позволило им, как и всем современным людям в полной мере использовать преимущества цифрового века вообще, и компьютера и Интернета в частности. Но и для обычных людей голосовой интерфейс несет не мало преимуществ. Помимо всего прочего, это еще одна успешная попытка на пути воплощения мечты людей когда-нибудь поговорить с компьютером.
[1] — Видимо автор имеет в виду номер от 4 июня 2002 года. (прим. ред.)
[обратно к тексту]