Нет, этот пост не будет очередной уткой на тему всяких юридических споров, новостей в духе «главный босс одной компании обозвал другую» и домыслов о заговоре. Речь пойдет о движках распознавании речи и генерации речи из текста, предоставляемых компаниями Google и Microsoft, их внутренней совместимости и взаимной дружбе.
Как известно, и Google и Microsoft имеют средства распознавания речи и генерации речи на основе текста. У Гугла эти инструменты онлайновые, используются для перевода и поиска, у Майкрософта — встроенные в операционную систему, используются как средства дополнительного взаимодействия с интерфейсом. Попробуем
Используемые механизмы
Google генерация аудио по тексту: Google переводчик
Google генерация текста по аудио: программа многоуважаемого Yakhnev, которую пришлось чуть-чуть подправить (да здравствует opensource).
Microsoft генерация аудио по тексту: движок Anna
Microsoft генерация текста по аудио: Windows Speech Recognition
Тестовые фразы
- May the Force be with you.
- A martini. Shaken, not stirred.
- History is the version of past events that people have decided to agree upon.
- That's one small step for a man, one giant leap for mankind
- Do the right thing. It will gratify some people and astonish the rest.
- I have a dream that one day this nation will rise up.
- Elementary, my dear Watson.
- Life was like a box of chocolates: you never know what you're gonna get.
- Behind every great fortune there is a crime.
- Genius is one percent inspiration and ninety-nine percent perspiration.
Кому скучно — можно повспоминать откуда фразы (только без Гугла — а то не интересно).
Итак, вот получившиеся аудиофайлы.
Результаты распознавания
Вот как Google распознал аудио, которое сам же сгенерировал:
- may the force be with you — 100%
- a martini shaken not stirred — 100%
- ошибка 500 — 0 %
- that's 1 small step for man 1 giant leap for mankind — 92%
- do the right thing it will gratify some people and diamonds direct — 77%
- I have a dream that 1 day this nation will rise up — 100%
- elementary my dear watson — 100%
- life was like a box of chocolates you never know what you're gonna get — 100%
- behind every great fortune terrace brookline — 50%
- genius is 1 percent inspiration and 99 percent perspiration — 100%
Средний результат: 82%. Следует отметить, что Google вообще не смог распознать третью фразу — выдал ошибку.
Вот как Google распознал аудио, которое сгенинировал голосовй движок от Microsoft:
- may the force be with you — 100%
- m martini shaken not stirred — 80%
- history is the version of past few bands that people have decided to agree upon — 93%
- that's 1 small step for man 1 giant leap for mankind — 92%
- do the right thing it will gratify some people and astonish arrest — 85%
- I have a dream that 1 day this nation will rise up — 100%
- elementary my dear watson — 100%
- life would like a box of chocolates you never know what you're gonna get — 93%
- behind every great fortune there is a crime — 100%
- genius is 1 percent inspiration and 99 percent perspiration — 100%
Средний результат: 94%
Гугл понимает Microsoft на 13% лучше самого себя!.
Забавно, согласитесь. Хотя, если подумать — ничего странного в этом нет. Майкрософтовская Анна звучит более строго, железно, делает паузы между словами и на глаз ухо человека звучит более механизированно, чем переводчик от Гугла. Так что закономерно, что более «человечный» голос Гугла распознаётся хуже.
Что же касается попытки распознавания аудиофайлов средствами Windows — меня ждал провал. Во-первых, мой русскоязычный Windows этого не умеет вообще (но это мелочи), а во-вторых, распознавание голоса от Microsoft работает по совершенно другим принципам. Оно построено на механизме обучения и становится тем лучше, чем дольше вы будете учить компьютер Вас понимать. Я не придумал, стоит ли в этом эксперименте вообще не обучать движок (но в этом случае я даже не понимаю как его запустить) или обучать его «до посинения», пока не будет распознаваться всё — и решил такой эксперимент не проводить. Если кому — нибудь будет интересно это сделать — еще раз дам ссылку на тестовые аудиофайлы и статейку о том, как сделать программу, распознающую текст из аудиофайлов, а не микрофонного входа.
Поскольку эксперимент получился сфокусированным на технологиях Google, публикую топик в его блог.