Я задал себе вопрос: нет ли какого-то математического метода, который помог бы нам анализировать образы в мозге говорящего человека на основании произнесенных слов? Одной фразы, конечно, было бы недостаточно, но если бы у нас имелся большой набор образцов, возможно, мы смогли бы использовать эту информацию для «прочтения» образов в новой коре говорящего человека (или хотя бы сформулировать математический эквивалент, который позволил бы нам распознавать новые словосочетания).
Часто люди недооценивают мощь математического аппарата; подумайте, ведь поиск самой разной информации за считаные секунды с помощью поисковых программ основан на математическом подходе. Так вот, когда в начале 1980-х гг. я занимался проблемой распознавания речи, оказалось, что для решения стоявших перед нами задач практически идеально подходит так называемый метод скрытых моделей Маркова. Русский математик Андрей Андреевич Марков (1856–1922) создал математическую теорию иерархических последовательностей состояний. Модель основана на возможности перехода из одного состояния в другое по цепочке; если переход совершается успешно, следующее состояние характеризуется более высоким уровнем иерархии. Вам это ничего не напоминает?
Простой пример одного слоя в скрытой модели Маркова. Символы от S1
до S4 обозначают «скрытые» состояния системы. Параметры переходов Pi,j соответствуют вероятности перехода из состояния S1 в состояние Sj. Эти вероятности определяются системой путем обучения на тренировочных данных и в рабочем порядке. Новая последовательность (например, новая последовательность звуков) соотносится со значениями Pi,j для определения вероятности воспроизведения моделью этой последовательности.В модели Маркова учитываются вероятности переходов из каждого состояния в следующее. В ней рассматривается ситуация, когда система следует такой иерархической линейной цепи состояний, но их невозможно проанализировать напрямую — отсюда название
Я задумал систему, в которой мы могли бы собирать образцы человеческой речи, применять метод скрытых моделей Маркова для выявления иерархии состояний с их связями и вероятностями (модель новой коры), а затем использовать эту иерархическую сеть для распознавания новых словосочетаний. Для создания системы, способной распознавать речь разных людей, следовало натренировать скрытые модели Маркова на образцах речи многих людей. Добавляя элементы иерархии для воспроизведения иерархической природы языковой информации, мы получили бы в чистом виде иерархические скрытые модели Маркова (ИСММ).
Мои коллеги в компании Kurzweil Applied Intelligence весьма скептически отнеслись к этому плану, учитывая сходство этой модели с самоорганизующимися нейронными сетями, которые уже не были столь популярны и не помогли нам серьезно продвинуться в наших предыдущих исследованиях. Я же указывал, что связи в системе нейронных сетей являются фиксированными и не адаптируются к входным сигналам — веса адаптируются, а связи нет. В системе скрытых моделей Маркова — при условии, что она правильно подготовлена, — исчезают неиспользуемые связи и происходит адаптация.
Я организовал небольшой изолированный проект, функционировавший вне общего направления исследований. Над проектом трудился я сам, один программист, работавший неполный день, и один инженер-электрик (который должен был создать базу частотных фильтров). К огромному удивлению коллег, наш проект оказался весьма успешным и позволил создать систему, с высокой точностью распознающую речь из большого набора слов.
После этого все последующие системы распознавания речи строились на иерархических скрытых моделях Маркова. Другие исследовательские группы, по-видимому, обнаружили достоинства этой модели независимо, и начиная с середины 1980-х гг. именно этот подход лег в основу большинства автоматизированных систем распознавания речи. Скрытые модели Маркова используются и для создания речи: не забывайте, что иерархическая организация нашей биологической новой коры важна не только для распознавания входных сигналов, но и для создания выходных сигналов, таких как речь или движение.