Драконья погибель
АрхивИз журнала "Компьютерра"Просто наговаривать текст, отложив клавиатуру, хочется еще со школьных лет. Фантастика? Специалисты питерского Центра речевых технологий полагают, что нет.
Каждый журналист мечтает о том, чтобы прийти после встречи, подключить диктофон к компьютеру и открыть весь разговор непосредственно в текстовом редакторе. На деле же приходится тратить уйму времени на расшифровку аудиозаписи. Автоматизации это процесс поддается плохо, если, конечно, у вас нет расторопной прислуги. Да и просто наговаривать текст, отложив клавиатуру, хочется еще со школьных лет. Фантастика? Специалисты питерского Центра речевых технологий полагают, что нет.
Формальным поводом для этой статьи послужило заявление питерского Центра речевых технологий (ЦРТ) о завершении работы над технологией распознавания слитной русской речи. Такая новость воспринимается не иначе, как первоапрельская шутка, особенно при воспоминании о весьма неуклюжих "российских" разработках типа "Горыныч"1 . Еще более забавной кажется идея того же ЦРТ подготовить к Олимпиаде в Сочи, ни много ни мало, карманный переводчик устной речи.
Центр речевых технологий был образован в 1990 году небольшой группой инженеров, часть которых работала в НИИ "Дальняя связь", где была своя речевая лаборатория. Впрочем, заниматься чистой наукой в ЦРТ не получилось, компании были нужны проекты, способные быстро себя окупить.
"Сейчас у нас работает около двухсот человек, - говорит Алексей Хитров, аналитик ЦРТ. - В основном мы специализируемся на системах профессиональной записи звука, включая многоканальную запись. Мы разработали профессиональный диктофон "Гном", у нас есть также системы протоколирования и стенографирования".
Весьма недешевый - больше 1000 долларов - цифровой диктофон "Гном 2М" отмечен экспертами МВД РФ как прибор, записывающий человеческую речь с качеством, позволяющим проводить идентификацию голоса. Кроме того, ЦРТ сам занимается криминалистической фоноскопической экспертизой: по словам Хитрова, доля компании в этом бизнесе составляет около 25% по всему миру2 .
О работе ЦРТ над распознаванием речи и, главное, о сложностях этой проблемы рассказала Марина Татарникова, математик по образованию, руководящая группой исследователей Центра.
"Сначала у нас было реализовано дикторозависимое распознавание изолированных команд как целостных образов, для небольших словарей, - рассказывает Татарникова. - Процедура распознавания в этом случае требует хранения нескольких эталонов для каждой команды. Потом были разработаны алгоритмы построения акустических моделей аллофонов3 и на основе этого - пофонемное4 распознавание команд и поиск ключевых слов, независимые от диктора и словаря".
Для распознавания же слитной речи необходимы огромные речевые базы, нужны специалисты-алгоритмисты и вычислительные мощности. Поначалу проблема казалась слишком трудной и многогранной, если не сказать - безграничной.
Моделирование
Система распознавания слитной речи представляет собой взаимодействие акустических моделей, лексикона, языковой модели и декодера. Если акустические модели выполняют оценку вероятностей распознавания отдельных аллофонов, то языковые модели оценивают вероятность следования слов друг за другом. Лексикон содержит все возможные варианты произнесения слов, которые будут распознаваться в процессе работы системы. Декодер определяет лучшую гипотезу в сети распознавания. Это программа, оперирующая большими объемами данных, которая в максимально сжатые сроки должна принять решение о распознанном тексте. Для успешной работы программы требуется разработка особых алгоритмов, ускоряющих процесс и уменьшающих число ошибок.
"Сложностей хватает, - признает Марина Татарникова. - Вот вы и я произносим звуки и понимаем друг друга. С точки же зрения машины мы произносим одно и то же слово совершенно по-разному". По этой причине при создании систем дикторонезависимого пофонемного распознавания используется статистический подход. Для реализации такого подхода нужны большие базы с образцами речи разных людей для накопления параметров вероятностных моделей. Если база данных содержит достаточное количество образцов, оказывается возможным создать модель речевого процесса, отражающую вариативность естественной речи.
"Акустические модели, - поясняет Татарникова, - это статистические модели, основанные либо на аппарате скрытых марковских моделей, либо на нейронных сетях. Обучение моделей происходит на размеченных речевых базах". В ЦРТ обучали собственные акустические модели на двухстах пятидесяти дикторах, половина из которых - мужчины, а половина - женщины. Все дикторы проживают в европейской части России5 . Таким образом, на решение задачи сразу накладывалось некоторое ограничение, ведь русская речь от региона к региону меняется очень сильно и звучит по-разному. Вся база данных составляла около тридцати часов речи. Текст для дикторов подбирался так, чтобы в нем присутствовали все аллофоны русского языка во всех окружениях. Часть записей лингвисты вручную разбивали на сегменты (фоны), для чего есть специальные программы (речь после записи отображается в графическом виде, и на картинке специалист ставит метки на границах сегментов). После того как часть материала была сегментирована, строились начальные акустические модели, а затем, по определенным алгоритмам, на компьютере обрабатывалась остальная часть базы, при этом сегментация проводилась уже автоматически. В процессе обработки параметры акустических моделей переопределялись. Обучение моделей на шести вычислительных машинах заняло около двух суток.
Убийственный нюанс
Увы, языковая модель, построенная на текстах новостной базы, не может быть применена в создании, например, языковой модели для распознавания спортивных трансляций (и наоборот).
"Общая модель языка, - говорит Татарникова, - в принципе, вряд ли интересна: каждый приобретающий систему распознавания будет использовать ее в своих целях, подразумевающих определенный стиль речи. И за рубежом так же".
Татарникова приводит как доказательство от противного довольно известную разработку Dragon, принадлежащую фирме Nuance. Продаваемая этой компанией система диктовки для любого текста и любого пользователя требует перед началом работы адаптации языковых моделей и расширения словаря. Адаптация языковых моделей производится путем загрузки в систему типичных для работы пользователя текстов и последующей корректировки статистических языковых моделей. Расширение словаря - задача пользователя. Насколько успешно он с ней справится, настолько успешно будет работать система. Любая система распознавания знает только те слова, что есть в ее словаре.
Великий и могучий
Для создания языковой модели в ЦРТ применяется N-граммный подход, при этом чаще всего используются би-граммы и три-граммы. Для тренировки языковых моделей используются текстовые базы данных. В интернете были собраны аудиозаписи новостей, которым присущ один и тот же стиль речи. В этой базе сейчас около 35 млн. слов. Для оценки параметров языковых моделей требуются огромные объемы данных, и, как правило, этих объемов не достаточно. Всегда существуют n-граммы, которые не встретились в языковой модели. В этом случае используют сложные техники сглаживания и отката для оценки вероятностей так называемых unseen n-грамм.
Все это более или менее хорошо работает в английском языке и ему подобных, где есть жесткая последовательность слов в предложении. С русским языком у специалистов возникают немалые трудности. "В области акустики наибольшую проблему для распознавания русской речи представляет необычайно сильная количественная и качественная редукция гласных безударных слогов, - объясняет Марина Татарникова, - частично обусловленная свободным характером словесного ударения". Вместе с низкой артикуляторной напряженностью русской речи это приводит к нейтрализации и "размазыванию" акустических свойств сегментов, особенно в спонтанной разговорной речи.
С точки зрения грамматики и синтаксиса русский язык относится к синтетическим языкам со свободным порядком слов. "Богатая словоизменительная парадигма нашего языка существенно затрудняет языковое моделирование на основе "классической" n-граммной модели, - говорит Марина Татарникова, - поскольку требует использования чрезвычайно больших речевых корпусов для получения приемлемого числа реализаций всех входящих в словарь словоформ". Приходится ученым экспериментировать, использовать другие подходы при построении языковой модели, например морфемную или классовую. В морфемной модели словари строятся отдельно для основ и флексий, при этом n-граммные модели считаются для основ и флексий отдельно. В классовой модели n-граммы строятся не для слов, а для так называемых классов. Существует два основных подхода к построению классов: статистический и частеречный (от "часть речи"). Здесь улучшение достигается не при изолированном использовании классовой модели, а при интерполяции ее с базовой. Выбор того или иного подхода для русского языка требует исследований. Чем сейчас и занимаются в ЦРТ.
Существует в системе Dragon подстройка и под голос диктора. Для этого нужно минут тридцать почитать тексты, предложенные системой, чтобы программа адаптировала параметры существующих акустических моделей.
В ЦРТ также ведется работа по созданию алгоритмов адаптации акустических моделей под голос диктора, но в принципе уже ясно: журналистам, которым приходится проводить интервью с разными людьми в разном окружении, рассчитывать особо не на что. Универсального продукта для русского языка ждать не стоит. Даже более простой (в контексте распознавания) английский язык специалистам пока не поддается. О записи неформальной беседы, кажется, нет и речи.
"Надеяться на быстрое появление мобильных и даже стационарных устройств для распознавания спонтанной речи (например, нашего с вами разговора) вряд ли стоит в ближайшее время, - говорит Марина Татарникова. - Спонтанная речь отличается более сложными языковыми и акустическими моделями. Кроме того, необходимы речевые базы спонтанной речи гораздо больших объемов".
Вопрос специализации
"Определенный скепсис насчет систем распознавания речи, конечно, имеет место, - продолжает Татарникова. - На самом же деле, в мире такие системы есть, и они замечательно работают. Например, их используют медицинские учреждения в США". Известно, что медицинским работникам постоянно требуется делать какие-то записи, будь то история болезни или протоколирование действий. Медики в США просто наговаривают текст, который автоматически переводится в машинный вид. Этот текст нуждается лишь в косметической правке. Соответствующие технологии есть, к примеру, у той же Nuance. То, что это хорошие системы, косвенно подтверждает Алексей Хитров:
"У одной Nuance - капитализация 5 млрд. долларов. Это на три порядка больше, чем мы смогли вложить в наши разработки. Обращаю внимание на то, что и у них наибольших успехов достигли системы, работающие на ограниченных специализированных словарях. По разным данным, объем продаж только медицинских систем распознавания речи в США составляет 12–15 млрд. долларов".
В ЦРТ тоже планируют зарабатывать именно на специальных воплощениях своей системы распознавания, то есть компании интересен прежде всего корпоративный рынок. Правда, не факт, что первыми с новыми технологиями ознакомятся медики. В Америке создание речевых баз для систем распознавания было государственным проектом, чего не скажешь о российских разработках. Интерес, конечно, у наших медиков тоже есть, но нет государственной заинтересованности, чтобы оплачивать дорогостоящие исследования.
"И акустические, и языковые модели, а также алгоритмы для декодера - у нас собственной разработки", - говорит Хитров. По его словам, решение для диктовки текста будет готово в течение года. Сейчас ЦРТ доделывает программу Voice Digger для Auto Data Mining (поиск ключевых слов в звуковых файлах), а также готов представить распознавание команд для IVR6-систем (управление голосом).
Из всей этой группы готовящихся или почти готовых продуктов самой массовой кажется система для диктовки. Она призвана сделать реальностью голубую мечту многих людей, желающих диктовать компьютеру текст, а не набирать вручную. Однако в ЦРТ повторяют, что такие системы эффективны лишь при работе с тематически ограниченным словарем. Впрочем, электронного писаря Центр пока в люди не выводит, зато мне удалось немного поработать с другими программами, благо базируются они на одной и той же технологии.
На испытательном полигоне
Система IVR используется в самом ЦРТ для автоматического перенаправления входящих звонков. Тест прошел на ура, но как-то не впечатлил: автосекретарь вместо привычного "нажмите 1 или 2" говорил "скажите 1 или 2". Наверное, можно реализовать и более сложные системы такого типа, но рука тянулась к клавиатуре телефона - привычка.
Система голосовой верификации "Голосовой замок" (Voice key) призвана контролировать доступ к чему угодно: к компьютеру, к папке на диске, к сайту. В ЦРТ, например, сотрудники произносят пароль, если нужно выйти в интернет7. Банальным повтором ключевой фразы обойти систему не удалось. Не удалось этого сделать и с помощью записи ключевой фразы на диктофон с последующим воспроизведением через встроенный динамик, хотя, конечно, это был примитивный способ, но студийного микрофона и качественных динамиков поблизости не оказалось. Voice key требует произносить ключевую фразу в одной манере, микрофон следует держать примерно на одном и том же расстоянии ото рта. Система может быть чувствительной к замене микрофона или изменению тембра голоса при, скажем, простуде и, что интересно, не примет абсолютного полного совпадения с образцом, полагая это подвохом.
Для теста Voice digger мы запустили 23-секундный фрагмент новостной передачи, состоящий из двух частей: репортажа корреспондента с улицы и комментария диктора из студии. Ключевое слово, выбранное для поиска по записи, состояло из восьми слогов. При указании ключевого слова в программе нужно отметить ударную гласную. Поскольку ключевое слово нарочно было выбрано так, чтобы оно пришлось на часть записи, сделанную на улице, поиск результатов не дал: акустические модели действующей системы соответствуют или близки к студийной записи.
"При распознавании ключевой фразы или слова длиной пять-шесть слогов эффективность работы системы - 86%, - рассказывает Марина Татарникова. - Снижение количества слогов увеличивает количество ложных срабатываний, но при этом, как правило, нужный фрагмент тоже находится". Поиск пока чувствителен к различным словоформам. Однако, уверяют в ЦРТ, нет ничего сложного в том, чтобы заставить систему автоматически формировать все варианты слова8.
Второй тест для Voice digger состоял в работе с файлом, записанным непосредственно перед испытанием через микрофон. Текст был произвольным, и специалисты ЦРТ не накладывали на него никаких ограничений. В импровизированной речи длительностью 28 секунд одновременно искались единожды упомянутые в ней словосочетания "Московский вокзал" и "разведение мостов", произнесенные, как и все остальное, не слишком внятно. Поиск длился примерно то же время, что и сам звуковой файл. Оба словосочетания были найдены. После несложной подстройки системы в том же файле следом производился поиск слова "вокзал", короткого и заведомо неудобного для системы. Слово было найдено, но было и около десятка сложных срабатываний. Поиск длился секунд двадцать. После еще одной подстройки слово "вокзал" было найдено, но уже без ложных срабатываний. Обращает на себя внимание, что время поиска сравнимо с длительностью записи. Если поиск будет проходить в большом банке звуковых файлов, то, возможно, процесс займет много времени. Впрочем, проверить эту гипотезу было просто не на чем, к тому же, вероятно, этот неприятный момент можно как-то оптимизировать.
Есть ли у этой технологии будущее? Как сказал Алексей Хитров, нужно разделять технологию и продукты на ее основе. Конечно, было бы здорово облегчить труд российским медикам или другим специалистам. И работы впереди - непочатый край. Распознавание слитной речи для всех и каждого в виде банального набора текста пока так и остается мечтой, огороженной множеством "если". Распознавание, очевидно, связано со сложными вычислениями и большими базами данных, и очень хочется посмотреть на то, как такую систему можно реализовать в карманном устройстве. Ну а переводчики для Олимпиады - это, без сомнения, утопия. Даже если оставить в стороне звук - вы еще верите в качественный машинный перевод?
1. "Горыныч" - адаптация под русский язык системы распознавания Dragon Naturally Speaking от компании Nuance. Она создавалась для английского языка - совершенно иначе организованного, если сравнивать его с русским. [вернуться]
2. В основном такая работа ведется в развивающихся странах [вернуться]
3. Аллофон(а) (от греч. бllos - иной, другой, и phфnз - звук), вариант, разновидность фонемы, обусловленная данным фонетическим окружением (БСЭ). Например, в словах "первое" и "апреля" звук "п" находится в разном окружении, и, соответственно, будут разные аллофоны. [вернуться]
4. Фонема (от греч. phonema - звук), основная единица звукового строя языка, предельный элемент, выделяемый линейным членением речи (БСЭ). [вернуться]
5. Запись речевой базы частично велась ЦРТ, а частично приобреталась на стороне. [вернуться]
6. Interactive voice response. [вернуться]
7. Удивляет не столько технология, сколько применение. - Прим. ред. [вернуться]
8. Но тут, думается, все зависит от реализации. Если система вместо одного слова будет искать десять его форм как независимые слова, то время поиска увеличится на порядок. С другой стороны, можно просто искать основу слова. [вернуться]