Поговорим, брат

Поговорим, брат

В последние три-четыре года все чаще задается один и тот же вопрос: на что тратится неуклонно возрастающая вычислительная мощность персональных компьютеров? Не на игрушки же! Наиболее точный ответ на него дал основатель и нынешний владелец небезызвестной Microsoft Corporation - Билл Гейтс.

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

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

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

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

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

Осознание необходимости обучить вычислительную технику говорить и слушать еще в середине ше-стидесятых побудило целый ряд научных центров, прежде всего американских, заняться исследованиями в данной области. Довольно быстро к проблеме проявили интерес военные. В 1986 году УПРАВЛЕНИЕМ ПРОГРАММ ПЕРСПЕКТИВНЫХ ИССЛЕДОВАНИЙ (Defense Advanced Research Project Agency, DARPA) Министерства Обороны США уже велась широкая реализация проекта Human Language Program. Параллельно над голосовым управлением трудились и аналитики ИНСТИТУТА ОБОРОННЫХ ИССЛЕДОВАНИЙ (Institute for Defense Analyses) США.

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

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

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

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

В настоящее время алгоритмы этого направления реализуются во всевозможных системах безопасности и идентификации, как программных, так и аппаратных (www.comptek.ru/telephony/board/ recognition.html Платы распознавания голосовых команд). Частной областью применения этих средств является телефонная связь и всевозможный сервис, предоставляемый с помощью телефона. В основном все сводится к предоставлению человеку возможности, вместо нажатия соответствующих кнопок на тональном телефоне, отдавать компьютеру, с которым на самом деле происходит общение, команды голосом. Это особенно представляет интерес для "восьмисотой" линии. Имеются в виду всевозможные службы бесплатного консультирования пользователей по телефону. Как показывает практика (и зарубежная, и отечественная), на самом деле клиенты обычно задают одни и те же вопросы, и довольно быстро можно подготовить исчерпывающий реестр ответов, которым вполне может оперировать компьютерная программа, обслуживающая многоканальный телефон. Примером может служить разработка фирмы Voice Control Systems (VCS) - плата распознавания голосовых команд Antares, способная обслуживать до 32 телефонных каналов единовременно (ultra.hq.cti.ru/telephony/board/rec-ognition.html).

Куда сложнее обстоит дело с распознаванием непрерывной речи (www.infoart.ru/it/press/cwm/20_98/voice.htm Компьютер учится говорить (и слушать тоже!)). Любой программист подтвердит, что наиболее удобным для компьютера набором команд является тот, где все стоит по очереди, без ветвлений и скачков по всяким "go to". Человеческая речь, наоборот, переплетена самым невероятным образом. Многие наверняка помнят мудрое изречение преподавателя английского языка в средней школе: "Английское предложение нужно переводить с конца". И это далеко не единственный интересный нюанс. Значение слова может зависеть еще и от таких понятий, как род, падеж, качество, в котором оно использовано (например, подлежащее или сказуемое). Потом следует учитывать общую направленность содержания анализируемого высказывания. Тот же driver может, в зависимости от контекста, означать: "механический привод", "двигатель", "мотор", "служебную компьютерную программу" или "водитель" (в смысле, водитель транспортного средства). А если добавить к этому возможные сленговые значения, то остается лишь то-скливо взирать в будущее.

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

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

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

В настоящее время исследования в области распознавания слитной речи набирают все большие обороты. Ими занимаются как отдельные фирмы, так и лидеры компьютерного рынка. Например одна только Microsoft Corporation инвестировала 45 миллионов долларов в бельгийскую фирму Lernout & Hauspie Speech Products. По условиям контракта компании совместно займутся разработкой продуктов, использующих технологии распознавания речи на различных языках для операционных систем Windows (ftp.infoart.ru/it/press/cwm/28_97/speech.htm).

Возможности голосового управления и общения на естественном языке наиболее привлекательны для рынка всяких миниатюрных и мобильных систем. Клавиатуры портативных компьютеров слишком малы и неудобны для быстрой работы с текстом. Даже если тыкать в них карандашом. Да и полевые условия не всегда позволяют удобно расположиться. По этим же причинам не слишком удобна и технология рукописного ввода. Естественно, пока нет достойной альтернативы, писать легче, чем печатать, но все же крайне затруднительно, например, находясь в салоне автомобиля во время движения. Поэтому опять-таки Microsoft стимулирует работы по созданию голосовых систем для платформы Windows CE, ориентированной на сверхмалые карманные компьютеры. С подачи Билла Гейтса компания Advanced Recognition Technologies (ART) планирует в 1998 году начать поставки собственного ПО распознавания речи Smartcommander для ОС Windows CE. Программа Smartcommander позволяет с помощью только голоса вводить данные и управлять миниатюрным компьютером Microsoft Palm PC, работающим под управлением ОС Windows CE (www.infoart.ru/it/news/98/01/ 19_22.htm ПО распознавания речи Smartcommander для Palm PC).

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

Для рынка своих компьютеров фирма Apple выпустила программу Speech Recognition Manager. Это комплект для разработчиков (SDK), с помощью которого можно в любые создаваемые приложения встраивать речевой ввод и управление голосом. ПО Speech Recognition Manager функционирует на любом компьютере Macintosh или PowerBook на базе микропроцессора PowerPC и требует на входе сигнал 16-битовой звуковой системы, микрофон PlainTalk или монитор AudioVision. Механизм работы Speech Recognition Manager схож с алгоритмом, реализованном в прикладном пакете Apple PlainTalk и продаваемом фирмой за 49 долларов. Что касается Speech Recognition Manager, то его Apple распространяет бесплатно, заявляя, что любой желающий может скачать SRM через Интернет (www.speech.apple.com).

В секторе IBM PC лидерами 1997 года оказались две компании, выпустившие чисто программные системы. Система ViaVoice - IBM Corporation и NaturallySpeaking фирмы Dragon Systems (Ньютон, шт. Массачусетс). Оба продукта рассчитаны на работу с IBM-совместимым ПК под управлением Windows 95 или Windows NT с процессором Pentium, 32 - 48 Мбайт ОЗУ и 60 - 100 Мбайт дискового пространства.

Я не видел систему IBM, а вот с продуктом Dragon Systems (www.dragonsys.com) мне довелось столкнуться. Правда, не с классическим его видом, а неким подобием русифицированного варианта. Дело в том, что интересы и продукцию Dragon Systems в России официально представляет компания White. Она же, помимо дистрибуции, занимается и некоторыми собственными работами в данной области, которые вылились в попытку русификации программы Dragon Voice, выпущенную на рынок под наименованием "ГОРЫНЫЧ".

За 52 доллара пользователю предлагается система, которая "умеет" управлять многими известными прикладными пакетами, а также осуществлять преобразование речи в печатный текст. Согласно рекламным обещаниям, "ГОРЫНЫЧ" обеспечивает скорость ввода до семисот символов в минуту. Без ошибок, опечаток и прочих всяких "вчпяток". Теоретически, система имеет модуль самообучения, не требует предварительной настройки и способна уверенно работать даже в условиях среднего уровня посторонних шумов.

Однако мои практические эксперименты позволили несколько усомниться в вышесказанном. Что касается английского, то "ГОРЫНЫЧ" (по сути, тот же Dragon Voice) вел себя вполне неплохо. Даже с моим, совершенно "никаким", английским произношением программа справлялась весьма недурственно. Однако по мере накопления опыта, количество задержек и сбоев не уменьшилось, а даже стало возрастать. Будучи весьма прилежным, "ГОРЫНЫЧ" постоянно спотыкался и запускал модуль самообучения, в котором просил выбрать то слово, которое по его мнению было произнесено. Если же там его не было, то предлагалось набрать его с клавиатуры. Потом программа "просила" пару-тройку раз заново повторить произношение, чтобы хорошо его запомнить. Однако обучение помогало не слишком хорошо, и "ГОРЫНЫЧ" продолжал спотыкаться, даже если уже знал слово.

С русским языком дела обстояли еще хуже. Если говорить медленно, размеренно, ровным тоном и в не слишком шумной обстановке, то программа, вообще-то, справлялась. Однако до обещанных 500-700 знаков в минуту явно не дотягивала. Ускорение произношения до нормального зачастую заканчивалось сбоем русскоязычной библиотеки, автоматическим переходом на английскую, которая, что естественно, "не понимала" ни одного русского слова.

Перечисленные проблемы вовсе не относятся к одной лишь Dragon Voice, а характерны для всего класса этого программного обеспечения. Состояние дел в этой области наглядно прокомментировал Уильям Осборн (William Osborne), генеральный менеджер отделения IBM Speech System, как раз специализирующегося в разработке голосовых систем. По его мнению, для современного бизнеса совершенно неприемлемо, даже когда ошибочными окажутся всего два слова из ста. Для сравнения скажу, что в этой статье около двух с половиной тысяч слов... А лучшие современные системы обеспечивают всего восемьдесят процентов точности, которые могут быть увеличены до девяносто - девяносто одного процента в результате отработки человеком лучшего произношения при общении с программой. Таким образом, все равно, будь эта статья введенной голосом, она бы имела не менее двухсот ошибочных слов. Увы, пока еще нельзя обойтись без последующей ручной корректуры полученного таким образом текста, что значительно снижает общую производительность процесса, хотя, надо признать, итоговый показатель все же значительно превосходит скорость печатания обычного человека.

Правда, первые компьютеры также мало походили на то, что мы эксплуатируем сегодня. К тому же и без особой прозорливости видно, что прикладной интерфейс неуклонно движется в сторону повышения естественности. Все шире внедряются пиктограммы, голосовые предупреждения, визуальные образы, музыка и прочие, естественные для человека, виды представления информации. В канве происходящего голосовой ввод и управление значительно отстали от соседних областей, что позволяет сделать вывод о скорых прорывах в данной области. Тем более, что с каждым днем в исследования инвестируются все новые и новые средства. К примеру, один только Университет Джона Гопкинса получил от Национального фонда науки США 750 тысяч долларов на продолжение программы исследований в области компьютерного распознавания слитной речи (ftp.infoart.ru/it/press/cwm/31_97/voice.htm Рынок аппаратных средств).

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

Сотрудники Cognitive разработали алгоритмы надежного выделения основного тона диктора и освоили способы корректного разделения слитной речи на фрагменты, содержащие целое число минимальных голосовых единиц. Для повышения качества распознавания разработаны механизмы выделения резонансных частот речевого тракта, их форматного оценивания и акустическо-фонетические преобразования. Планируется применение разработанных технологий распознавания речи в программных пакетах CuneiForm, Cognitive Forms и "Евфрат", а также разработка речевого управления в условиях высокой шумности.

И через годик-другой подойдет пользователь к своему рабочему компьютеру и скажет: "Ну что, брат, поговорим?", а в ответ из динамиков раздастся: "Ну так давай"...

Александр Запольскис
E-mail: leshy@nestor.minsk.by
- титульная страница


Компьютерная газета. Статья была опубликована в номере 23 за 1998 год в рубрике интернет :: разное

©1997-2024 Компьютерная газета