Домой / Видео / Пару слов о распознавании образов. Проблема распознавания образов

Пару слов о распознавании образов. Проблема распознавания образов

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


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

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

    Общая схема распознавания речи. Изначально на вход нам поступает звуковая волна.

    Ее мы дробим на маленькие кусочки, фреймы. Длина фрейма - обычно 25 мс, шаг - 10 мс. Они идут с некоторым захлестом.


    После этого из фреймов мы извлекаем наиболее важные признаки. Допустим, нам не важен тембр голоса или пол человека. Мы хотим распознавать речь вне зависимости от этих факторов, так что мы извлекаем самые важные признаки.


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


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

    В целом, именно так и происходит распознавание речи.


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

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

    Как мы будем это улучшать? Я выделил четыре основных подхода, которые пересекаются друг с другом, но на это не стоит обращать внимания. Основные подходы следующие: улучшим архитектуру нейронных сетей, попробуем изменить Loss-функцию, почему бы не использовать подходы End to end, модные в последнее время. И в заключение расскажу про другие задачи, для которых, допустим, не нужно декодирование.


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


    Вообще многие статьи state of the art получены именно с помощью сверточных нейронных сетей, но сегодня я расскажу больше о рекуррентных нейронных сетях.


    Рекуррентные нейронные сети. Все знают, как они работают. Но возникает большая проблема: обычно фреймов намного больше, чем фонем. На одну фонему приходится 10, а то и 20 фреймов. С этим нужно как-то бороться. Обычно это зашивается в граф-декодирование, где мы остаемся в одном состоянии много шагов. В принципе, с этим можно как-то бороться, есть парадигма encoder-decoder. Давайте сделаем две рекуррентных нейронных сетки: одна будет кодировать всю информацию и выдавать скрытое состояние, а декодер будет брать это состояние и выдавать последовательность фонем, букв или, может быть, слов - это как вы натренируете нейронную сеть.

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


    Димой Богдановым, выпускником ШАД, был придуман метод Attention. Давайте encoder будет выдавать скрытые состояния, и мы их не будем выкидывать, а оставим только последнее. Возьмем взвешенную сумму на каждом шаге. Декодер будет брать взвешенную сумму скрытых состояний. Таким образом, мы будем сохранять контекст, то, на что мы в конкретном случае смотрим.

    Подход прекрасный, работает хорошо, на некоторых датасетах дает результаты state of the art, но есть один большой минус. Мы хотим распознавать речь в онлайне: человек сказал 10-секундную фразу, и мы сразу ему выдали результат. Но Attention требует знать фразу целиком, в этом его большая проблема. Человек скажет 10-секундную фразу, 10 секунд мы ее будем распознавать. За это время он удалит приложение и никогда больше не установит. Нужно с этим бороться. Совсем недавно с этим поборолись в одной из статей. Я назвал это online attention.


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

    Тут можно серию лекций прочитать, я постараюсь просто сформулировать идею.


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


    Чтобы с этим побороться, были придуманы функции Sequence Based Loss: давайте саккумулируем всю информацию на всех фреймах, посчитаем один общий Loss и пропустим градиент обратно. Не буду вдаваться в детали, можете прочитать про CTC или SNBR Loss, это очень специфичная тема для распознавания речи.

    В подходах End to end два пути. Первый - делать более «сырые» фичи. У нас был момент, когда мы извлекали из фреймов фичи, и обычно они извлекаются, стараясь эмулировать ухо человека. А зачем эмулировать ухо человека? Пусть нейронка сама научится и поймет, какие фичи ей полезны, а какие бесполезны. Давайте в нейронку подавать все более сырые фичи.

    Второй подход. Мы пользователям выдаем слова, буквенное представление. Так зачем нам предсказывать фонемы? Хотя их предсказывать очень естественно, человек говорит в фонемах, а не буквах, - но итоговый результат мы должны выдать именно в буквах. Поэтому давайте предсказывать буквы, слоги или пары символов.


    Какие еще есть задачи? Допустим, задача фреймспоттинга. Есть какой-нибудь кусок звука, откуда надо извлечь информацию о том, была ли сказана фраза «Слушай, Яндекс» или не была. Для этого можно фразу распознать и грепнуть «Слушай, Яндекс», но это очень брутфорсный подход, причем распознавание обычно работает на серверах, модели очень большие. Обычно звук отсылается на сервер, распознается, и распознанная форма высылается обратно. Грузить 100 тыс. юзеров каждую секунду, слать звук на сервер - ни одни сервера не выдержат.

    Надо придумать решение, которое будет маленьким, сможет работать на телефоне и не будет жрать батарейку. И будет обладать хорошим качеством.

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

    Таким образом, если в какой-то момент сначала шли большие вероятности для «слушай», потом большие вероятности для «Яндекс», то с большой вероятностью тут была ключевая фраза «Слушай, Яндекс».


    Задача, которая не сильно исследуется в статьях. Обычно, когда пишутся статьи, берется какой-то датасет, на нем получаются хорошие результаты, бьется state of the art - ура, печатаем статью. Проблема этого подхода в том, что многие датасеты не меняются в течение 10, а то и 20 лет. И они не сталкиваются с проблемами, с которыми сталкиваемся мы.

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


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

    Какие задачи остались? Там state of the art побили, тут задачи решили… Приведу график WER за последние несколько лет.


    Как видите, Яндекс улучшился за последние несколько лет, и тут приводится график для лучшей тематики - геопоиска. Вы можете понять, что мы стараемся и улучшаемся, но есть тот маленький разрыв, который нужно побить. И даже если мы сделаем распознавание речи - а мы его сделаем, - которое сравнится со способностями человека, то возникнет другая задача: это сделалось на сервере, но давайте перенесем это на устройство. Речь идет об отдельной, сложной и интересной задаче.

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

    В целом проблема распознавания образов состоит из двух частей: обучения и распознавания. Обучение осуществляется путем показа независимых объектов с отнесением их к тому или другому классу. По итогу обучения распознающая система должна приобрести способность реагировать одинаковыми реакциями на все объекты одного образа и различными - на все другие. Важно, что в процессе обучения указываются только сами объекты и их принадлежность образу. За обучением следует процесс распознавания, который характеризует действия уже обученной системы. Автоматизация этих процедур и составляет проблему.

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

    Но каждый объект наблюдения может воздействовать по-разному, в зависимости от условий восприятия. Кроме того, объекты одного и того же образа могут сильно отличаться друг от друга.

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

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

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

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

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

    Cтраница 2


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

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

    Есть много действительно серьезных, по-настоящему захватывающих проблем, над которыми работают сейчас тысячи ученых. Это - и проблема распознавания образа, и обработка информации, лингвистические проблемы и многие другие.  

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

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

    Использование топографических принципов позволяет создать самую быстродействующую и самую емкую машинную память. Голограммная память разыскивает нужную информацию по законам ассоциации, что свойственно человеческой памяти. Голография может решить проблему распознавания образов, над которой много лет бьются кибернетики. Если голограмме предъявить группу предметов, она мгновенно ответит (путем отождествления) на те из них, изображения которых она хранит. Причем, чем сложнее предмет, тем надежнее голограмма узнает его.  

    В четвертой главе излагаются основы теории дискретных самоорганизующихся систем. Определяется количественная мера самоорганизации и самообучения, исследуется поведение случайных автоматов и автоматов, работающих в условиях случайных внешних воздействий. Особое место уделяется проблеме распознавания образов и теории одного класса устройств (так называемых а-персептронов), предназначенных для решения этой проблемы. Рассматриваются некоторые вопросы моделирования условных рефлексов, а также процессов обучения распознаванию смысла и выработки новых понятий.  

    На рис. 12.11 представлен пример, в котором в качестве образа выбрана заглавная буква А. Нетрудно видеть, что при сохранении соответствующей емкости памяти уже после нескольких релаксационных шагов из сильно искаженных шумами букв возникает четкий образ, изначально записанный в памяти. Именно в этом и заключается взаимосвязь между ассоциативной памятью изложенного выше типа и проблемой распознавания образа. В настоящее время не существует точных представлений относительно того, каким образом можно было бы обобщить и расширить изложенную выше модель ассоциативной памяти на основе спиновых стекол, чтобы она была применима и к сложной проблеме распознования повернутых или сдвинутых образов. Как показывает пример изображения на рис. 12.11, буква А, перевернутая вверх тормашками, не была бы распознана, так как даже смещение неискаженного образа на несколько узлов решетки (растра) превращает его распознавание в проблему, решение которой выходит за рамки ассоциативных возможностей модели Хопфидда. Будущее покажет, удастся ли решить и этот класс проблем с помощью ассоциативных запоминающих устройств.  

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

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

    Распознавание образов является одной из форм обработки информации, поступающей от системы или объекта. Классы характеризуются тем, что принадлежащие им объекты обладают некоторой общностью (сходством), например характеризуются одинаковой структурой функционального оператора. То общее, что объединяет объекты в класс, принято называть образом. К задаче построения математического описания объекта или системы с точки зрения проблемы распознавания образов можно подходить двояко. Один из подходов заключается в том, что в качестве образа, который необходимо опознать, выступает сам функциональный оператор ФХС. С другой стороны, вместо функционального оператора Ф строится кибернетическое распознающее устройство, которое прогнозирует поведение системы так же, как это делал бы соответствующий функциональный оператор.  

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

    Я лично считаю, что такая трактовка дает современному специалисту по кибернетике ключ к более глубокому исследованию проблемы памяти, которая рассматривается в этой книге в другом разделе. Далее, хотя Лейбницу не удалось создать релятивистскую логику, его философские взгляды на проблему восприятия (являющуюся одним из важнейших вопросов кибернетики) примерно на три столетия опередили его эпоху. Ведь только с появлением работ Уайтхеда (Whitehead) в нашем веке был обоснован взгляд, что некоторый объект, не обладающий сам по себе сознанием, в состоянии реагировать в определенном смысле на связанные с ним события. Наконец, особенно характерно то, что в своих исследованиях всех этих связей Лейбниц стоял на принципиальных позициях теории исследования операций. Он гораздо меньше интересовался причинно-следственным истолкованием связей, чем динамическим, и считал, что часть является выражением целого, а не просто содержится в нем. Такой подход хорошо согласуется с гештальт-проблемами в современной психологии, с подходом к решению всех задач промышленной кибернетики с позиций органического единства, а также с современными кибернетическими исследованиями проблемы распознавания образов.  

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

    С тех пор, как в распознавании речи появилось глубокое обучение, уровень ошибок сильно снизился. Но несмотря на все, что вы могли читать и видеть, у нас все ещё не существует системы распознавания речи человеческого уровня. В распознавании речи есть множество ошибок. Для продвижения вперед важно знать, когда они происходят, и предпринимать шаги по решению проблем. Только так можно перейти от автоматического распознавания речи (ASR), которое работает для некоторых людей, к ASR, которое работает для всех людей и всегда.

    Улучшения в показателе частоты ошибок в тесте распознавания разговорной речи Switchboard. Набор тестов был собран в 2000 году. Он состоит из 40 телефонных разговоров между двумя случайными носителями английского языка.

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

    Акценты и шум

    Одно из самых заметных различий в распознавании речи – это способность разбираться с акцентами и фоновым шумом. Прямая причина этого заключается в том, что данные для обучения состоят из английской речи с американским акцентом с высоким показателем отношения сигнала к шуму (SNR – signal-to-noise ratio). Например, наборы данных для обучения и тестов Switchboard включают только речь носителей английского языка с небольшим фоновым шумом.

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

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

    Что касается фонового шума, в движущемся автомобиле SNR редко бывает на показателе -5 дБ. Люди без проблем понимают друг друга в этой среде. Автоматические системы распознавания речи допускают гораздо больше ошибок с увеличением шума. На диаграмме выше мы видим, как разница между ошибками людей и модели резко возрастает от аудио с низким SNR к аудио с высоким SNR.

    Семантические ошибки

    Показатель уровня ошибок в словах не самый объективный показатель. Нас интересует показатель семантических ошибок. Это доля высказываний, в которых мы искажаем смысл.

    Пример семантической ошибки: если кто-то сказал “let’s meet up Tuesday” (давайте встретимся во вторник), но система распознала высказывание как “let’s meet up today” (давайте встретимся сегодня). У нас также могут быть ошибки в словах без семантических ошибок: если система отбросила слово up и распознала “let’s meet Tuesday”, то семантика высказывания не изменилась.

    Мы должны осторожнее использовать показатель ошибок в словах (WER – word error rate) в качестве основного. Позвольте показать вам худшую ситуацию. WER в 5% соответствует одному пропущенному слову на каждые двадцать. Если в каждом предложении двадцать слов (средний показатель для английского), то показатель ошибок в предложениях составит 100%. Но пропущенные слова вряд ли изменят смысл предложений. В ином случае даже с 5% WER каждое предложение было бы неправильно интерпретировано.

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

    Исследователи в Microsoft недавно сравнили ошибки людей и систем распознавания речи с человеческим уровнем ошибок. Они обнаружили, что модель чаще путает междометия “а” и “ага”. У этих двух слов совершенно разная семантика: “а” просто заполняет паузы, а “ага” выступает в качестве подтверждения. Но модель и люди также совершили много похожих ошибок.

    Один канал, множество говорящих

    Тест от Switchboard проще, потому что каждый говорящий записан на отдельный микрофон. В одном канале аудио не перекрываются разные голоса. Люди же могут понимать нескольких людей, говорящих одновременно.

    Хорошая систем распознавания речи должна быть способна сегментировать аудио на основании того, кто говорит (диаризация). Она также должна понимать аудио от нескольких говорящих (разделение источников). Это должно быть возможно без необходимости присутствия микрофона около каждого говорящего.

    Другие области

    Акценты и фоновый шум – это всего лишь два фактора, в отношении которых должна повышаться надежность распознавателя речи. Вот еще несколько:

    • Реверберация от изменения акустической среды.
    • Артефакты аппаратного обеспечения.
    • Кодек, используемый для артефактов звука и сжатия.
    • Частота выборки.
    • Возраст оратора.

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

    Контекст

    Вы можете заметить, что показатель ошибок людей в тестах вроде Switchboard довольно высок. Если бы вы общались с другом, и они не понимали 1 из 20 сказанных вами слов, вам было бы сложно общаться.

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

    • Прошлые разговоры и тема обсуждения.
    • Визуальные подсказки, например, выражения лица и движения губ.
    • Знания о человеке, с которым мы общаемся.

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

    Реализация

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

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

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

    При использовании одного направления мы можем начать транскрипцию мгновенно

    С двунаправленным повторением мы вынуждены ждать окончания речи.

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

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

    Классическим примером улучшения, которое не реализуется, является ансамблевое обучение. Сокращение показателя ошибок на 1-2% не стоит увеличение вычислительной мощности от 2 до 8 раз. Современные модели на основе рекуррентных нейронных сетей обычно также относятся к этой категории, потому что их очень дорого использовать в лучевом поиске, хотя я ожидаю, что в будущем это изменится.

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

    Следующие пять лет

    В распознавании речи существует много открытых и сложных проблем. Среди них:

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