Компьютерра, 2005 № 36 (608) | страница 29



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

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

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


- Тихо - сказал Форд. - Послушай, это может быть важно.

- Ва… важно?

- Это вогонский капитан делает объявление с корабельного узла.

- Ты хочешь сказать, что так вогоны разговаривают?

- Слушай же!

- Но я не понимаю по-вогонски!

- Тебе и не надо. Просто засунь рыбку в ухо.

Дуглас Адамс, «Путеводитель вольного путешественника по галактике»

Ничего не слышу?

Он скажет: «До свидания!»

А слышится: «До здания!»

Он спросит: «Где галоши?»

А слышно: «Это лошадь?»

С. Михалков, «Сашина каша»

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