Сегодня хотелось бы поговорить об очередных потугах человечества в разрешении неразрешимых или пока разрешимых лишь теоретически компьютерных задач. Да-да, несмотря на многократный рост мощи вычислительных систем, несмотря на немыслимые успехи в моделировании разума и прорывах конструкторов человекоподобных андроидов, в решении некоторых задач люди почти не продвинулись ни на шаг с тех пор, как смогли сформулировать эти самые задачи.
Но сегодня речь не об искусственном интеллекте, самовоспроизводящихся механизмах или самонадевающихся сапогах, сегодня хотелось бы потеребить старую незаживающую рану самолюбия человеческого, ту самую, в которой большинство попыток приблизиться к божьим возможностям до сих пор регулярно терпели практически полное фиаско. Сегодня наш разговор о перспективах разработки систем распознавания человеческой речи компьютерами, в том числе, встраиваемыми в действительно полезные вещи, например, автомобили.
Нельзя сказать, что все попытки обучить компьютеры распознавать человеческую речь заканчивались неудачами. Как известно, отрицательный результат – тоже результат. По крайней мере, специалисты хотя бы оценили грандиозность масштабов стоящей перед ними проблемы и смогли подвести под это ряд соответствующих теорий. Опять же, нельзя сказать, что люди сдались, признали задачу неразрешимой и положили её под сукно до лучших времён – многие коллективы с участием учёных, инженеров, лингвистов продолжают биться с этим монстром, и временами даже добиваются отдельных успехов на локальных участках. Однако действительно впечатляющего - хотя бы на 90% распознающего человеческую речь инструмента пока нет.
Демонстрации всяких несерьёзных технологий, распознающих цифры и несколько слов, согласитесь, не в счёт. Победой можно будет назвать такую программу, которая, например, могла бы печатать вот эти строчки, выводя на экран без мириадов ошибок текст, продиктованный мной в микрофон. Или – если уж брать по максимуму, смогла бы переводить в реальном времени с русского или английского языка на китайский или испанский или любой другой незнакомый мне язык, удобный моему заморскому корреспонденту в беседе по Skype или телефону. Слишком амбициозно чтобы быть однажды воплощённым в жизнь? Может быть, может быть, но сдаётся мне, на свете существует очень много удивительного, считавшегося раньше невероятным и невозможным чудом.
Старожилы компьютерного бдения могут припомнить, как ещё лет десять тому назад - если не ошибаюсь, во времена первых Quake, одна компания всё же решилась на коммерциализацию своей разработки по "оцифровке" речи, диктуемой в микрофон. Помнится, бился я с тем "драконом" с месяц, пока не оценил всю бесперспективность попыток обучить его чему-нибудь вразумительному. Увы.
Хорошо что на свете есть люди, которые не считают эту задачу непосильной и продолжают работать над её решением. Среди множества коллективов, бьющихся нынче над обучением компьютеров пониманию человеческой речи, сегодня хотелось бы рассказать об одном, финансируемом Евросоюзом проекте, получившим название TALK, или Talk and Look, "Говори и Смотри", а если полностью -
Tools for Ambient Linguistic Knowledge, что примерно звучит как "Инструмент языкового познания окружающего мира". Амбициозность проекта можете оценить хотя бы по масштабам поставленной цели – не просто разработать технологию распознавания человеческой речи машиной, но сделать систему самообучающейся, учитывающей свои промахи и ошибки.
Плохие дороги требуют хороших проходимцев
На заре развития технологий распознавания голоса разработчики пытались моделировать речь, раскладывая звуковую последовательность на серию фрагментов, из разных комбинаций которых затем пытались складывать словарик узнаваемых машиной модулей-"фонем". Несмотря на относительную функциональность подобных решений, толку от них было мало, поскольку в результате получались всего лишь наборы зафиксированных раз и навсегда функций, с плохой (или никакой) дальнейшей обучаемостью, без малейших перспектив подстройки под другой тембр голоса, иное произношение или диалект.
Одной из следующих разработок, сдвинувших дело с места, стало создание математической структуры под названием ISU - Information State Update, ныне используемой во множестве различных приложений вроде SIRIDUS или TRINDI. Предтеча проекта базируется на использовании массива информации, записанной в процессе "человеко-компьютерного" обучения и сохранённой в "информационной среде" системы. В такой массив данных может входить, например, формально-смысловое представление информации, произнесённой пользователем системы, в сочетании с полной историей "диалога" человека и машины, с учётом всех внесённых правок. Фактически, такая система реагирует на слоги, целые слова, словосочетания и даже фразы, расширяя свой "кругозор" по мере наработки "опыта" в различных контекстных ситуациях.
В рамках развития проекта TALK, начатого в самом конце 2003 года, его разработчики пошли дальше возможностей, заложенных в систему ISU или, например, язык Voice XML, и разработали структуру, более гибкую и быстрее адаптирующуюся в процессе обучения. В частности, в систему изначально заложена
мультимодальная и мультилингвальная обучаемость. Специалисты, работающие над развитием TALK, также поставили цель расширить использование абстрактного представления обрабатываемых данных, в частности, использование техники
доменных онтологий для увеличения надёжности распознавания и способности системы к быстрой перенастройке.
Ключевыми аспектами разработки названы унификация мультимодальности и мультилингвальности; способность системы самостоятельно и автоматически реконфигурироваться под многоязычные интерфейсы, адаптивность и обучаемость. Одна из финальных целей – адаптация технологии TALK для поддержки самого широкого спектра разных языков, графических интерфейсов и операционных систем. Иными словами, на перспективу создаётся универсальная гибкая программная платформа для распознавания голоса под все виды операционных систем, в том числе, мобильных, которая может быть использована в любой стране любыми носителями любых языков. И, главное – такая система в любой момент может быть перенастроена и переучена на работу с ещё одним языком.
По словам Оливера Лемона (Oliver Lemon), координатора проекта из Эдинбургского университета (Edinburgh University), уже в ближайшее время ряд идей в рамках проекта TALK будет доведён до стадии коммерциализации. Уже на нынешнем этапе проект, обошедшийся в 5,71 млн. евро, поддерживается такими известными компаниями как Linguamatics, BMW, Bosch, DFKI, а также университетами Гётеборга (Швеция), Саарбрюкена (Германия), Кембриджа (Англия), Севильи (Испания) и Эдинбурга (Шотландия).
В качестве подтверждения некоторой промежуточной готовности технологий распознавания голоса к внедрению в конечные продукты можно привести показанную партнёрами проекта TALK, компаниями BMW и Bosch, диалоговую систему iDrive на базе подпроекта SAMMIE, встраиваемую в автомагнитолу и бортовую систему автомобиля.
Автомобильная система iDrive с MP3 плеером, спутниковым радио и навигатором была инсталлирована в автомобиль BMW 335i, при этом система общалась с пользователем на немецком и английском языках. Небольшой видеофрагмент презентации с командами и пояснениями на английском языке приведён в видеоролике ниже.
Честно говоря, ни скорость работы, ни её возможности на данном этапе лично меня не впечатлили. Однако, по словам Оливера Лемона, в преддверии первого показа система достаточно жёстко тестировалась специалистами BMW и Bosch с привлечением опытных водителей-испытателей, и в результате была признана "наименее отвлекающей и наиболее комфортной" нежели две другие системы от конкурирующих разработчиков. За время, прошедшее с первой демонстрации системы, проект SAMMIE значительно продвинулся в избавлении от ошибок и "оброс" множеством новых возможностей.
Впрочем, сами разработчики не скрывают промежуточный характер SAMMIE, который в настоящее время существует в двух версиях: SAMMIE 1 объединяет 24 обучающих сессии с приблизительно 2600 "мастерами" плюс примерно 248 Кб текстовой транскрипции; SAMMIE 2 – 21 сессию с 1700 "мастерами" и 164 Кб текстовой транскрипции. Расчёт делается на то, что продолжающаяся миниатюризация и повышение производительности различных аппаратных платформ – прежде всего, встраиваемых, со временем позволит инсталлировать языковые интерфейсы управления на базе улучшенного SAMMIE в самые разные устройства.
Кстати, проект SAMMIE для автомобилей – далеко не единственная прикладная разработка в рамках TALK. Так, например, программа TownInfo представляет собой туристический сервис – этакий общающийся с путешественником путевой гид, позволяющий отметить на интерактивной карте посещённые места. Другая разработка - AgendaTalk, представляет собой интерактивный календарь-дневник с функцией голосовых заметок. Более масштабный проект – MIMUS, представляет собой диалоговую систему для "умных домов" для ведения домашних дел. На самом деле, если немного "побродить" по сайту проекта TALK, можно обнаружить несколько десятков подобных разработок в разной степени готовности.
И это всё? А что же дальше?
Честно говоря, даже презентация наиболее наглядной реализации SAMMIE в бортовой диалоговой системе BMW iDrive пока особенно не впечатляет. Допустим, такую систему можно обучить понимать без существенных ошибок несколько слов-команд. И что из того? Такой системе можно доверить управление плеером, может быть, системой кондиционирования в офисе, или просто, развалившись в кресле, командовать браузеру "вперёд", "назад", "вэвэвэ-точка-тридэньюс-точка-ру" (впрочем, даже это было бы уже неплохо). Но доверять такой диалоговой системе что-то серьёзное пока не очень хочется. Даже кодовый замок на двери, не говоря уж об голосовом управлении жизненно важными функциями автомобиля. И уж точно такой системе пока очень далеко до функциональности домашнего секретаря, который, скажем, превращал бы диктофонные записи в электронные письма или голосовые диктовки в сообщения ICQ.
Впрочем, сами разработчики называют технологию TALK в её нынешнем состоянии "наукой сегодняшнего дня", не завтрашнего.
И всё же сдаётся мне, именно такие разработки в будущем приведут к появлению голосовых диалоговых систем для повседневного использования в большинстве сфер человеческой жизнедеятельности. Побродив по сайту проекта и
полистав несколько доскональных отчётов на сотни страниц, у меня возникло впечатление о том, что все эти люди работают даже не на завтрашний день, но на более далёкую перспективу. Сейчас, можно сказать, закладываются "кирпичики" той технологии, которая – может быть, через десяток лет, позволит воплотить самые фантастические идеи диалога человека и машины в реальные приложения.
Так, например, в рапорте, посвящённом детальному анализу ошибок системы SAMMIE, анализируется не только количество сбоев в разных приложениях или после нескольких "проходов" обучающего цикла, так также приводится дотошная статистика по различным типам ошибок – грамматических, пороговой чувствительности, по словам и предложениям, концептуальным, вне-словарным и так далее. Во всём чувствуется глубокий добротный системный подход, а полученные результаты при желании и наличии серьёзной аппаратной платформы можно масштабировать на любой размер словарного запаса под любое количество языков, интонаций, тональностей произношения и даже диалектов. Да, учёным предстоит нелёгкий путь по уменьшению процента ошибок распознавания голоса, но судя по всему, методика разработки технологии выбрана правильно. В конце концов, мы с вами далеко не все обладаем дикцией хорошего телеведущего и не всегда распознаём произнесённые при нас слова, даже хорошо знакомым человеком.
По словам координатора проекта Оливера Лемона, часть полученных результатов действительно имеет сугубо прикладное значение и совсем скоро сгодится в массовом производстве простых и недорогих речевых диалоговых систем для повседневного использования. Однако общий уровень разработок, функциональность, устойчивость и масштабируемость разработок проекта TALK, является жизненно важным фундаментом для полноценных универсальных голосовых интерфейсов будущего.
Проект TALK - лишь один из примеров попытки разработки надёжной системы распознавания голоса, над этой проблемой сегодня бьются десятки коллективов по всему миру, включая такие известные как IBM Google. Что касается проекта TALK, в этом году он выводится Евросоюзом в приоритетные направления. Теперь это будет отдельная статья финансирования в рамках новой концепции под названием CLASSIC - Computational Learning in Adaptive Systems for Spoken Conversation, которая, по замыслу, объединит в единую сеть ещё большие научные ресурсы Европы и позволит ещё быстрее вывести перспективы вразумительного общения человека и машины на новый качественный уровень.
Ресурсы для дополнительного чтения по теме: