Почему распознавание речи затруднено? [закрытый]

Почему распознавание речи так сложно? Какие конкретные трудности? Я прочитал через вопрос по распознаванию речи, который частично ответил на некоторые из моих вопросов, но ответы были в основном анекдотическими, а не техническими. Он также до сих пор не ответил, почему мы все еще не можем просто бросить больше оборудования на проблему.

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

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

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

Итак, в чем же дело? Что?!--1-->технические проблемы есть, что делает его все еще так трудно для компьютера, чтобы понять меня?

5 ответов


некоторые технические причины:

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

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


люди используют больше, чем уши при прослушивании, они используют знания, которые они есть о говорящем и предмете. Слова не упорядочиваются произвольно вместе, есть грамматическая структура и избыточность, которые люди используют предсказывать слова, которые еще не произнесены. Кроме того, идиомы и как мы ’обычно’ говорить вещи делает предсказание еще проще.

в распознавании речи у нас есть только речевой сигнал. Конечно, мы можем построить модель грамматической структуры и использования какая-то статистическая модель чтобы улучшить прогнозирование, но есть еще проблема, как моделировать мир знания, знания говорящего и энциклопедические знания. Мы может, конечно, не моделировать мировое знание исчерпывающе, но интересно вопрос, насколько нам это нужно в АСР для человека понимание.

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

1: непрерывная речь

2: изменчивость канала

3: Динамика вариабельности

4: разговорный стиль

5: скорость речи

6: Двусмысленность!--1-->

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

-------------отсылал от http://www.speech.kth.se / ~rolf/gslt_papers / MarkusForsberg.pdf


Я подозреваю, что вас интересует "счетное" распознавание речи, где говорящий говорит предложения (не отдельные слова) с нормальной скоростью.

проблема заключается не только в анализе сигналов, но и в большом компоненте естественного языка. Большинство из нас понимает разговорный язык не анализируя каждую вещь, которую мы слышим, так как это никогда не сработает, потому что каждый человек говорит по-разному, фонемы подавлены, произношение разное и т. д. Мы просто интерпретируйте часть того, что мы слышим, а остальное "интерполируется" нашим мозгом, как только контекст того, что говорится. Когда у вас нет контекста, трудно понять разговорный язык.


множество серьезных проблем в распознавании речи напрямую не связаны с самим языком:

  • разные люди (женщины, мужчины,дети, старейшины и т. д.) имеют разные голоса
  • иногда один и тот же человек звучит по-разному, например, когда человек простудился
  • различные фоновые шумы
  • повседневной речи иногда содержит слова из других языков (например, у вас есть немецкое слово, детский сад в США/английский)
  • некоторые люди не из самой страны выучили язык (они обычно звучат по-другому)
  • некоторые люди говорят быстрее, другие медленнее говорите
  • качество микрофона
    так далее.

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

для справки см. статью Википедии http://en.wikipedia.org/wiki/Speech_recognition - он имеет хороший обзор, включая некоторые ссылки и ссылки на книги, которые являются хорошей отправной точкой...

из технического POV "предварительная обработка звука" - это всего лишь один шаг в длительном процессе... допустим, звук "crytal clear", затем несколько из вышеупомянутых аспектов (например, простуда, путаница в языках и т. д.).) все еще нужно решить.

все это означает, что для хорошего распознавания речи вам нужно иметь модель langauge(S), которая достаточно тщательна, чтобы учитывать небольшие различия (например, "ate" против "eight"), которая обычно включает в себя некоторый контекстный анализ (т. е. семантическое и фактическое/мировое знание, см. http://en.wikipedia.org/wiki/Semantic%5Fgap) etc.

поскольку почти все соответствующие языки эволюционировали и не были разработаны как математические модели, вам в основном нужно "перепроектировать" доступные неявные и явные knowlegde о язык в модель, которая является большой проблемой ИМХО.

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


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

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

даже если у вас есть все фонемы правильно, то организовать их в порядке, который имеет смысл также трудно.