close

Вход

Забыли?

вход по аккаунту

?

Ronzhin

код для вставкиСкачать
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
Государственное образовательное учреждение
высшего профессионального образования
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ
А. Л. Ронжин, И. В. Ли
МЕТОДЫ ИСКУССТВЕННОГО
ИНТЕЛЛЕКТА И АВТОМАТИЧЕСКОГО
РАСПОЗНАВАНИЯ РЕЧИ
Учебное пособие
Санкт-Петербург
2006
УДК 004.383.4
ББК 32.813
Р54
Рецензенты:
лаборатория прикладной информатики Санкт-Петербургского института
информатики и автоматизации Российской академии наук;
доктор технических наук, профессор В. Е. Марлей
Утверждено редакционно-издательским советом университета
в качестве учебного пособия
Р54
Ронжин А. Л., Ли И. В.
Методы искусственного интеллекта и автоматического распознавания речи: учебное пособие / А. Л. Ронжин, И. В. Ли; ГУАП. –
СПб., 2006. – 176 с.: ил.
ISBN 5-8088-0209-1
Рассматриваются основные методы и направления исследований в
области искусственного интеллекта. Изложены методы распознавания
образов, подходы к представлению знаний, а также представлены нейронные сети и их применение в экспертных системах. Особое внимание уделено проектированию систем речевого диалога и методам автоматического распознавания речи.
Учебное пособие предназначено для студентов, обучающихся по
специальностям 220201 «Управление и информатика в технических
системах», 220402 «Роботы и робототехнические системы», 230102
«Автоматизированные системы обработки информации и управления»,
230201 «Информационные системы и технологии»; может быть полезно студентам смежных специальностей, а также аспирантам и специалистам, работающим над созданием систем искусственного интеллекта, речевых технологий и диалоговых информационных сервисов.
УДК 004.383.4
ББК 32.813
©
©
ISBN 5-8088-0209-1
2
ГУАП, 2006
А. Л. Ронжин,
И. В. Ли, 2006
ПРЕДИСЛОВИЕ
На сегодняшний день системы искусственного интеллекта используются практически во всех сферах человеческой деятельности. За последние несколько лет произошел значительный скачок в разработке
интеллектуальных приложений, особенно в сфере инфотелекоммуникаций и электронного бизнеса, а также в области медицины, в том числе для людей с ограниченными двигательными и коммуникативными
возможностями. Данное учебное пособие представляет широкий и ретроспективный анализ методов искусственного интеллекта. Особое внимание уделено одному из наиболее перспективных направлений – автоматическому распознаванию речи и диалоговым системам.
В рамках первого раздела кратко изложена история развития различных направлений искусственного интеллекта с момента зарождения до
наших дней. Рассмотрены базовые модели представления знаний, а также основные понятия и идеи, лежащие в основе теории нейронных сетей.
Как наиболее развитые и появившиеся сравнительно раньше других интеллектуальных систем , рассматриваются экспертные системы.
Второй раздел посвящен методам распознавания образов – наиболее важному направлению искусственного интеллекта. Рассматриваются основные понятия и общие подходы к автоматической классификации образов. Приведены некоторые типовые подходы к распознаванию акустических образов. Обсуждаются основные особенности распознавания речи и кластеризации базовых речевых единиц.
Приведена архитектура стандартной системы понимания речи.
В третьем разделе представлены методы автоматического распознавания речи, начиная с выделения границ речи и параметрического представления речевого сигнала и заканчивая подходами к распознаванию
изолированных слов и слитной речи. Особое внимание уделяется методам обучения и настройки параметров системы. Рассматриваются скрытые марковские сети, байесовские сети и методы динамического программирования.
В заключительном, четвертом разделе рассматриваются системы
речевого диалога, поскольку именно в этой области наиболее востребованы технологии автоматического распознавания и понимания
3
речи. Здесь проанализированы основные проблемы представления и
обработки естественного языка, приведена архитектура типовой диалоговой системы и рассмотрены основные методы обучения стратегии
диалога. В заключение даны примеры современных диалоговых систем.
Вопросы, рассматриваемые в учебном пособии, соответствуют программе курсов «Методы искусственного интеллекта», «Нейронные
сети и экспертные системы».
4
1. МЕТОДЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
1.1. Основные понятия и направления развития
интеллектуальных систем
1.1.1. Определение искусственного интеллекта
Термин «интеллект» (intelligence) происходит от латинского
intellectus, что означает познание, понимание, рассудок. Соответственно, искусственный интеллект (artificial intelligence) – ИИ (AI)
обычно толкуется как свойство автоматических систем брать на себя
отдельные функции интеллекта человека.
Системы искусственного интеллекта строятся на основе предположений о человеческом интеллекте, поэтому необходимо определить, что следует понимать под словом «интеллект». Интеллект –
это способность мозга решать (интеллектуальные) задачи путем приобретения, запоминания и целенаправленного преобразования знаний в процессе обучения на опыте и при адаптации к разнообразным
обстоятельствам [73].
В этом определении под термином «знания» подразумевается не
только та информация, которая поступает в мозг через органы чувств,
а вся информация об объектах окружающей нас среды, которые не
только воздействуют на органы чувств, но и находятся в определенных отношениях друг с другом. Для того чтобы осуществлять интеллектуальную деятельность, необходима среда, поэтому нужно построить модель этого мира в некоторой системе знаний [74]. Модель
мира должна не только содержать реальные объекты среды, их свойства и отношения между ними, но и обладать способностью к обучению и адаптации. Таким образом, первичным при построении системы ИИ является построение модели мира, а именно модели представления знаний о мире.
Чтобы вести дальнейшие рассуждения, необходимо определить,
чем отличается интеллектуальная задача от просто задачи. Для этого введем один из краеугольных терминов кибернетики – «алгоритм».
Под алгоритмом понимают точное предписание системе совершить
определенную последовательность действий для решения любой задачи из некоторого данного класса (множества) задач за конечное
число шагов. Термин «алгоритм» происходит от имени узбекского
математика Аль-Хорезми, который еще в IX в. предложил простейшие арифметические алгоритмы [73]. В математике и кибернетике
класс задач определенного типа считается решенным, если для их
решения установлен алгоритм. Нахождение алгоритмов является
естественной целью человека при решении им разнообразных клас5
сов задач. Отыскание алгоритма для задач некоторого данного типа
связано с тонкими и сложными рассуждениями, требующими большой изобретательности и высокой квалификации. Принято считать,
что подобного рода деятельность требует участия интеллекта человека. Задачи, связанные с отысканием алгоритма решения класса
задач определенного типа, будем называть интеллектуальными.
Однако существует класс задач, для которых алгоритмы решения
уже найдены, и для их выполнения требуется только, чтобы лицо,
решающее задачу, было способно совершить те элементарные операции, из которых складывается процесс, точно и аккуратно руководствуясь предложенным алгоритмом. На основе существующего алгоритма можно успешно решать любую задачу рассматриваемого типа.
Поэтому задачи, уже имеющие стандартные методы решения, не следует причислять к классу интеллектуальных. В данном контексте
интеллект можно рассматривать как универсальный сверхалгоритм,
который способен создавать алгоритмы решения конкретных задач.
Здесь не лишним будет отметить, что профессия программиста,
исходя из наших определений, является одной из самых интеллектуальных, поскольку продуктом деятельности являются программы, а именно алгоритмы в чистом виде. Поэтому использование элементов ИИ может качественно повысить производительность процесса программирования.
Мышлением или интеллектуальной деятельностью будем называть деятельность мозга, направленную на решение интеллектуальных задач. Интеллект и мышление органически связаны с решением
таких задач, как доказательство теорем, логический анализ, распознавание ситуаций, планирование поведения, игры и управление в
условиях неопределенности. Характерными чертами интеллекта,
проявляющимися в процессе решения задач, являются способность
к обучению, обобщению, накоплению опыта (знаний и навыков) и
адаптации к изменяющимся условиям в процессе решения задач.
Именно этими способностями пытаются наделить интеллектуальную систему разработчики.
Следует иметь в виду, что существуют и другие, чисто поведенческие (функциональные) определения. Одним из наиболее известных является тест А. Тьюринга, который описывается с помощью игры в имитацию [19]. В игре участвуют люди и машина. Люди
не могут видеть друг друга, но имеют возможность обмениваться
информацией письменно или по почте. Если в процессе диалога
между участниками игры людям не удается установить, что один
из участников – машина, то такую машину можно считать обладающей интеллектом.
6
А. Тьюринг также предложил весьма интересный способ имитации интеллекта. «Пытаясь имитировать интеллект взрослого
человека, – пишет Тьюринг, – мы вынуждены много размышлять
о том процессе, в результате которого человеческий мозг достиг
своего настоящего состояния… Почему бы нам вместо того, чтобы
пытаться создать программу, имитирующую интеллект взрослого
человека, не попытаться создать программу, которая имитировала бы интеллект ребенка? Ведь если интеллект ребенка получает
соответствующее воспитание, он становится интеллектом взрослого человека… Наш расчет состоит в том, что устройство, ему подобное, может быть легко запрограммировано… Таким образом,
мы расчленим нашу проблему на две части: на задачу построения
“программы-ребенка” и задачу “воспитания” этой программы»
[19]. Фактически все существующие системы ИИ используют этот
способ, так как только на этом пути могут проявиться основные
признаки интеллектуальной деятельности, такие как обучаемость,
адаптация и т. д.
Теперь перейдем к вопросу назначения искусственного интеллекта. Одной из основных задач ИИ является его полезность. Ученым,
специализирующимся в вычислительной технике, необходимо знать,
каким образом искусственный интеллект может помочь им в разрешении трудных проблем. Для этого следует ознакомиться с результатами исследований ИИ, полученными в различных областях знаний, таких как психология, философия, лингвистика и др., и дать
им оценку.
На сегодняшний день интеллектуальные системы применяются
практически во всех сферах человеческой деятельности: сельском
хозяйстве, промышленности, образовании, медицине, туризме, домашнем хозяйстве и др. Во всех этих отраслях требуются системы
для сбора, хранения, обработки информации и выполнения ряда
сложных интеллектуальных задач.
В настоящий момент вычислительные машины применяются
дляисследования ИИ, поскольку обладают рядом необходимых
качеств [73].
Во-первых, вычислительные машины – прекрасный объект для
проведения опытов. В ходе исследований из программы вычислительной машины довольно просто выбросить некоторую совокупность
знаний для того, чтобы проверить, насколько она важна на самом
деле. Во-вторых, работа с вычислительными машинами привела к
созданию нового, богатого языка, позволяющего обсуждать то, как
делать вещи и как их описывать. В-третьих, компьютерные модели
отличаются точностью, которая позволяет вскрыть те ошибки и недо7
четы, которые обычно ускользают от внимания даже самых скрупулезных исследователей. Кроме того, вычислительные машины позволяют выделить требования, связанные с задачей: если некоторая
программа осуществляет решение данной задачи, то можно вынести
определенное суждение о том, какой требуется объем обработки информации.
Чтобы понять, что такое искусственный интеллект, или понять
работу, проводимую в этой области, необходимо усвоить основные
положения, касающиеся организации знания, использования ограничений, пространств поиска и фокусировки внимания. К настоящему времени проведено множество работ по исследованию интеллектуальных возможностей вычислительных систем.
В результате установлено, что компьютеры способны проходить
тест на разумность в проведении геометрических аналогий, могут
обучаться новым понятиям при помощи последовательности образцов, способны понимать визуальные образы. Они могут приходить к
заключениям о том, какого типа объекты присутствуют, в каких отношениях они находятся между собой, какие группы они образуют.
Вычислительные машины могут понимать фразы на естественном
языке, а также решать задачи на профессиональном уровне. Интеллектуальные системы (роботы) могут решать полезные задачи на производстве, поскольку назначение роботов – выполнять сложную,
опасную или плохо оплачиваемую работу.
Еще одной областью применения интеллектуальных систем является моделирование психических процессов. Некоторые психологи работают в области искусственного интеллекта, потому что они
хотят понять мышление человека с точки зрения обработки информации. Один из разделов психологии связан с концепцией ассоциативной памяти. В другом разделе изучаются методы решения человеком задач, которые связаны с моделями, проливающими свет на такие явления кратковременной памяти, как выделение кусков, скрытые состояния и переполнение. Испытание подобных моделей ведется как на программах, так и на людях.
Таким образом, интеллектуальные системы способны делать много
вещей, которые требуют наличия интеллекта.
Для обеспечения вышеперечисленных способностей необходим
широкий спектр концепций, связанных с ограничениями представлений знаний, решением задач и весьма сложными управляющими
структурами. Представление знаний, возможно, является одной из
наиболее важных составляющих построения систем ИИ.
Понятие «искусственный интеллект» появилось не сразу, но задолго до его появления начались серьезные исследования процессов
8
мышления, классификации знаний и моделирования человеческого
восприятия. Для того чтобы кратко ознакомиться с историей искусственного интеллекта, рассмотрим основные этапы развития интеллектуальных систем.
1.1.2. Этапы развития интеллектуальных систем
В истории развития методов и систем искусственного интеллекта
можно выделить несколько основных этапов [35, 74].
Ранний этап. Несмотря на то что термин «искусственный интеллект» появился только в 50-х годах XX столетия, первыми теоретическими работами в области искусственного интеллекта можно считать разработанные в XVIII в. Лейбницем и Декартом универсальные
языки классификации всех наук. До начала XX века параллельное
развитие логики и биологии привело к накоплению знаний о процессах мышления, макро- и микроструктуре нервной системы, развитию и утверждению логической и нейронной доктрин, различия в
которых принципиальны. Исследования, относящиеся к области
ИИ, почти сразу же разделились на два самостоятельных направления, так называемые «нейрокибернетика» и «кибернетика “черного
ящика”». Эти направления существенно различаются как в методологии, так и в технологии. За прошедший период эти течения накопили большой запас методов, которые при правильном их применении могут привести к решению проблем искусственного интеллекта,
поэтому в последнее десятилетие появились тенденции к объединению этих двух направлений.
Основная идея нейрокибернетики состоит в том, что единственный объект, способный мыслить, – это человеческий мозг, а, следовательно, его структура должна быть взята за основу при построении
устройства, способного рассуждать. Ученые-нейрокибернетики пытались создать модель, аналогичную модели взаимодействия нейронов. Эти системы принято называть нейронными сетями, или нейросетями. Первую работу по нейрокибернетике, т. е. моделированию
нейронных сетей в технических системах, опубликовали в 1943 г.
У. Маккаллок и В. Питс [47]. Это была известная статья «Логическое исчисление идей, имитирующих нервную активность», в которой обрисовывалась модель сети из формальных нейронов, давшая
начало массе исследований в этом направлении.
В отличие от нейронного подхода, кибернетика «черного ящика»
не следует природе, обосновывая это тем, что в науке еще недостаточно изучены процессы интеллектуальной деятельности мозга человека; не изучено, как устроена память; не вскрыты механизмы познания человеком окружающего мира. Основоположники кибернетики
9
«черного ящика» предлагали алгоритмы решения интеллектуальных задач посредством компьютера. Существенный вклад здесь внесли такие специалисты как Маккарти (автор первого языка программирования для задач ИИ – ЛИСПа (LISP)), Минский (автор идеи фрейма и фреймовой модели представления знаний), Ньюэлл, Саймон,
Шоу, Хант и др.
Этап попыток осмысления. В 40-х годах XX в. Норберт Винер
создал свои основополагающие работы по новой науке – кибернетике
и появились первые ЭВМ. По сути, в это время и произошло рождение искусственного интеллекта как научного направления [35]. Термин «искусственный интеллект» появился в 1956 г.; считается, что
он был предложен в Дартсмутском колледже (США), а также ученым
из Массачусетского университета Дж. Маккарти в том же году.
К этому моменту учеными уже были сделаны значительные шаги по
исследованию ИИ: сформированы логика предикатов и логическое
программирование, алгоритмические модели Тьюринга, логика продукций Поста. Таким образом, осуществился переход к использованию теоретических моделей рассуждений, основанных на машинах Тьюринга и Поста, а также формальных моделей бинарных нейросетей.
Этап закладки фундамента. В 50-е годы развивались идеи функционального и логического программирования, происходило утверждение самого понятия «искусственный интеллект», с одной стороны, и создавались более сложные модели механизмов мозга (модели
условных рефлексов, иерархические модели мозга и др.). Ключевые
моменты этого этапа связаны с кажущимися неограниченными возможностями искусственных нейросетей. Первые нейросети были предложены в 1956–1965 гг. Розенблатом и Маккаллоком, которые пытались создать системы, моделирующие человеческий глаз и его взаимодействие с мозгом. Разработанное ими устройство получило название ПЕРСЕПТРОН (perception) [66]. Это была первая слоистая
модель нейронной сети для задачи распознавания образов.
В направлении кибернетики «черного ящика» в 1956–1963 гг.
велись интенсивные поиски моделей и алгоритмов человеческого
мышления и разработка первых программ на их основе. В конце 50-х
годов появилась модель лабиринтного поиска, которая представляет задачу как некоторое пространство состояний в форме графа, и в
этом графе проводится поиск оптимального пути от входных данных
к результирующим. Однако для решения практических задач эта идея
не нашла широкого применения [83, 89]. Затем в начале 60-х годов
появились подходы на основе эвристик, теоретически обоснованных
правил, которые позволяют сократить количество переборов в пространстве поиска.
10
Этап самоанализа и осмысления. В 60-е годы создаются и проверяются первые программные инструментальные средства интеллектуальных систем, такие как ЛИСП; разрабатываются эвристические
методы и системы решения задач (GPS), новые подходы к построению искусственных нейросетей (импульсные модели, различные варианты ПЕРСЕПТРОНов). В целом отмечается спад активности в
нейросетевом направлении, поскольку практические результаты оказываются весьма ограниченными.
Этап развития концепции знаний. В 70-е годы осуществляется
переход к концепции знаний, которая далее становится основной в
искусственном интеллекте. В 1963–1970 гг. к решению задач стали
подключать методы математической логики. Д. Робинсон разработал метод резолюций, который позволяет автоматически доказывать
теоремы при наличии набора исходных аксиом. Примерно в это же
время выдающийся отечественный математик С. Ю. Маслов предложил так называемый обратный вывод, впоследствии названный его
именем, решающий аналогичную задачу другим способом [51]. На
основе метода резолюций француз Альбер Кальмероэ в 1973 г. создает язык логического программирования Пролог (PROLOG). Большой
резонанс имела программа «Логик-теоретик», созданная Ньюэлом,
Саймоном и Шоу, которая доказывала школьные теоремы. Однако
большинство реальных задач не сводится к набору аксиом, и человек, решая производственные задачи, не использует классическую
логику, поэтому логические модели при всех своих преимуществах
имеют существенные ограничения по классам решаемых задач.
В то же время создаются первые экспертные системы, разрабатываются программные инструментальные средства логического программирования, такие как Пролог, развиваются сетевые формы знаний (семантические сети и фреймы), с одной стороны, и универсальный подход и теория искусственных нейросетей (системы нейро- и
мнемоуравнений), с другой стороны.
Этап активных разработок. В 80-е годы совершенствуется объектный и концептуальный подход к программированию при создании
интеллектуальных систем, проектируются ЭВМ 5-го поколения, создаются первые когнитивно-логические (самообучающиеся) системы
на знаниях и разрабатываются первые объектно-сетевые ЭВМ, осуществляется переход к аналоговым моделям нейросетей с полной
коммутацией (модель Хопфилда), разрабатываются первые когнитивно-нейронные системы с ассоциативными моделями знаний (модели КОГНИТРОН, НЕОКОГНИТРОН, АРТ-3), развивается технология производства нейроСБИС и нейроинформатика, создаются первые нейрокомпьютеры, начинает реализовываться программа созда-
11
ния ЭВМ 6-го поколения [74]. Появление новых архитектур построения вычислительных систем позволило решить проблему недостаточной памяти и быстродействия. Появились транспьютеры – компьютеры с большим количеством процессоров или параллельно
работающих компьютеров. Фактически начинается объединение двух
направлений в искусственном интеллекте на базе объектно-сетевого
подхода и аппаратной реализации интеллектуальных систем.
Этап развития коннективистских систем. В 90-е годы происходит усиленное развитие аппаратного подхода на базе усовершенствованных массивно-параллельных ЭВМ с гиперкубовой архитектурой и нейрокомпьютеров. Такие мощные аппаратные средства позволили практически реализовать когнитивные логические системы
на основе семантических, продукционных и фреймовых сетей, автоматически накапливающих знания, а также когнитивные нейронные системы.
Новое теоретическое и практическое направление по разработке
аналоговых нейроСБИС появилось в 1985 г. [74]. Основоположником этого направления стал К. Мид, создавший первые микросхемы:
Retina Chip (БИС сетчатки) и Cochlea Chip (БИС улитки). В 1987 г.
К. Мид объявил программу «Аналоговые микроЭВМ», в рамках которой был создан «искусственный геном» на кремниевой вафле емкостью 108 транзисторов и быстродействием 1013 оп/с. Далее, в середине 90-х были разработаны технологии построения кремниевых систем (кремниевых нейронов) и нейропротезирования, что свидетельствует об огромных возможностях этого подхода.
В 90-е годы практически все ведущие компьютерные фирмы стали
разрабатывать и продавать нейропроцессоры и комплектные нейрокомпьютеры. Так, IBM выпустила в продажу цифровую СБИС ZISCO 36, на
которой были разработаны несколько вариантов нейроплат, Siemens –
нейроСБИС МА-16, нейроплату SYNAPSEC2*PS и нейрокомпьютер
«Synapse-1», HNC – нейрокомпьютер «SNAP», Intel – аналоговую
нейроСБИС ETANN.
Слияние двух направлений в 90-е годы трактуется как объединение логической и нейронной когнитивных парадигм, которое фактически означает переход к аппаратной реализации обучаемых интеллектуальных систем. Можно предположить, что дальнейшее развитие когнитивных систем будет происходить в рамках совершенствования ЭВМ 6-го поколения, основными чертами которых являются:
возможность решения задач без программирования за счет способности к обучению по примерам и даже по определенным критериям,
объектно-сетевая архитектура, допускающая самоорганизацию, возможность моделирования механизмов мозга на макро- и микроуров12
нях [74]. Вероятно, превалирующим для моделирования подсознательных когнитивных процессов окажется нейросетевой подход, с
помощью которого проще решаются задачи обучения, самообучения
и самоорганизации таких процессов. Моделирование высших когнитивных процессов (рассуждения, интуиции, эмоции и т. д.) может
оказаться более доступным с использованием универсального объектно-сетевого подхода с применением обучаемых семантических и фреймовых сетевых моделей знаний. Однако и в этом случае принятие
решений может быть организовано на нейромодулях с ассоциативным выводом, что может разрешить трудности, связанные со сложностью программирования при моделировании высших уровней
мышления.
1.1.3. Основные направления исследований
в области искусственного интеллекта
Искусственный интеллект – это одно из направлений информатики, целью которого является разработка аппаратно-программных
средств, позволяющих пользователю-непрограммисту ставить и решать свои, традиционно считающиеся интеллектуальными задачи,
общаясь с ЭВМ на ограниченном подмножестве естественного языка.
Среди множества направлений ИИ можно выделить несколько
основных, которые в настоящее время вызывают наибольший интерес у исследователей и практиков [35].
Представление знаний и разработка систем, основанных на зна!
ниях. Это одно из основных направлений в области искусственного
интеллекта. Оно связано с разработкой моделей представления знаний, созданием баз знаний, образующих ядро экспертных систем.
Здесь также исследуются методы извлечения и структурирования
знаний. В ходе исследований в каждой предметной области были разработаны свои специфические методы. Многочисленность подходов
связана с тем, что в каждой прикладной области существуют свои
правила и способы представления знаний, например математические или химические формулы, музыкальные ноты, а также текстовая информация. Для их обработки и оптимального представления
создаются соответствующие методы. Тем не менее, можно выделить
несколько базовых подходов на основе правил, фреймов семантических сетей, а также логики предикатов. В следующем разделе будут
детально рассмотрены эти модели и уделено внимание проблеме нечетких знаний.
Программное обеспечение систем ИИ. В рамках этого направления разрабатываются специальные языки для решения интеллектуальных задач, в которых традиционно упор делается на преоблада13
ние логической и символьной обработки над вычислительными процедурами [74]. Эти языки: ЛИСП, Пролог, SMALLTALK, РЕФАЛ и
др. – ориентированы на символьную обработку информации. Помимо этого создаются пакеты прикладных программ, ориентированные
на промышленную разработку интеллектуальных систем, или программные инструментарии искусственного интеллекта, например
АРТ, KEE, G2. Достаточно популярно также создание так называемых пустых экспертных систем или оболочек: KAPPA, EXSYS, ЭКО, –
базы знаний которых можно наполнять конкретными знаниями, создавая различные прикладные системы.
Распознавание образов. Это классическая задача, которая решается в рамках почти любой интеллектуальной системы. Это одно из
направлений искусственного интеллекта, берущее начало у самых
его истоков, но в настоящее время практически выделившееся в самостоятельную науку. Основной подход – описание классов объектов через определенные значения признаков. Каждому объекту ставится в соответствие матрица признаков, по которой происходит его
распознавание. Процедура распознавания использует чаще всего специальные математические процедуры и функции, разделяющие
объекты на классы. Это направление близко к машинному обучению
и тесно связано с нейрокибернетикой. Задача распознавания образов
состоит из двух этапов: 1) формирование множества характеристических признаков, которыми описываются отдельные образы; 2) нахождение решающего правила, с помощью которого производится
классификация образа [29].
Разработка естественно!языковых интерфейсов, машинный пе!
ревод. Идея автоматического перевода с одного языка на другой существует с 50-х годов. Было создано специальное направление в области ИИ – компьютерная лингвистика, которая изучает процессы
автоматической обработки текстов. Однако идея машинного перевода совсем не так проста, как казалось ее исследователям и разработчикам. Первые программы в области естественно-языковых интерфейсов – автоматические переводчики текстов – были основаны только на пословном переводе, грамматическом и синтаксическом анализе. В результате появлялись следующие переводы: «Моя дорогая
Даша – my expensive Dasha». Проблемы данного подхода связаны с
очевидным фактом: человек может перевести текст только на основе
понимания его смысла и в контексте предшествующей информации.
В дальнейшем системы машинного перевода усложнялись, и в настоящее время используются несколько более сложных моделей. Применяются так называемые «языки-посредники» или «языки смысла», осуществляющие дополнительную трансляцию «исходный язык
14
оригинала – язык смысла – язык перевода». Кроме того, при переводе стали учитывать знания о предметной области, при этом ассоциативный поиск аналогичных фрагментов текста и их переводов производится в специальных текстовых базах данных по конкретной тематике. В настоящее время при анализе и синтезе естественно-языковых сообщений обычно используются следующие уровни обработки: 1) морфологический анализ – анализ слов в тексте; 2) синтаксический анализ – разбор состава предложений и грамматических связей между ними; 3) семантический анализ – анализ смысла составных частей каждого предложения на основе некоторой предметноориентированной базы знаний; 4) прагматический анализ – анализ
смысла предложений в реальном контексте на основе собственной
базы знаний.
В работах по машинному переводу впервые была поставлена проблема понимания текста как проблема соотнесения его с совокупностью знаний о внешнем мире, которые хранятся в памяти воспринимающего текст. В результате возникли методы автоматического морфологического и синтаксического анализа и синтеза, а чуть позже
появились первые попытки формализации семантического компонента в текстах. Все эти методы сейчас активно используются в различных информационных системах.
Одновременно с развитием программ машинного перевода начались работы по созданию специальных программ для поиска информации в больших информационных хранилищах, которые были бы
релевантны поступившим запросам. Развитие работ в области автоматического порождения рефератов стимулировало развитие нового
научного направления – лингвистики текста. Многие идеи, возникшие в процессе создания программ информационного поиска и автоматического реферирования, использовались в дальнейшем при создании диалоговых систем [29].
Интеллектуальные роботы. Большую лепту в обсуждение данной проблемы внесли и писатели-фантасты. Чешский писатель Карел Чапек впервые употребил термин «робот», а в серии рассказов
писателя-фантаста и ученого Айзека Азимова можно найти общепринятые законы робототехники [73]. Само слово «робот» появилось в 20-х годах как производное от чешского «робота» – тяжелая,
грязная работа. Роботы – это электротехнические устройства, предназначенные для автоматизации человеческого труда. Условно можно выделить три поколения роботов: 1) роботы с жесткой схемой управления; 2) адаптивные роботы с сенсорными устройствами; 3) самоорганизующиеся или интеллектуальные роботы – конечная цель
развития робототехники. Основные нерешенные проблемы при со15
здании интеллектуальных роботов: машинное зрение, адекватное
хранение и обработка трехмерной визуальной информации. Также
ведутся исследования по созданию человекоподобных роботов.
В заключение следует отметить, что искусственный интеллект
является междисциплинарной наукой, которая изучает процессы
биологических прототипов и пытается смоделировать их с помощью
технических средств. В настоящее время внимание исследователей в
большей степени уделено когнитивным процессам, т. е. способности
человека познавать окружающий его мир. Изучением этих проблем
одновременно занимаются психологи, медики, нейрофизиологи, лингвисты, инженеры и другие специалисты, конечной целью которых
является создание искусственных интеллектуальных систем.
1.2. Модели представления знаний
Прежде всего, дадим некоторые определения базовым понятиям: данные, информация, знания, – которые используются при изучении и разработке любых интеллектуальных технических систем. Данные – это
отдельные факты, характеризующие объекты, процессы и явления предметной области, а также их свойства. Термин «информация» происходит от латинского слова informatio, что означает «придание формы». В
процессе обработки данных мы извлекаем некоторую информацию, которая является полезной для конкретной предметной области и ситуации. Многократно проверенная в ходе практического использования
информация накапливается в виде знаний, которые в свою очередь служат для обработки данных. Знания – это система представлений о предметной области в виде сущностей (вещей, явлений, процессов) и их проявлений в форме фактов (объектов) и их отношений (связей). Задача из
предметной области может быть представлена конкретными сущностями и их проявлениями в форме, определяемой выбранной моделью знаний. Система способна решать такую задачу, если она имеет средства
обработки знаний в выбранной форме [74].
1.2.1. Правила
В настоящее время существует множество различных моделей представления знаний, использующих для реализации систем некоторые
правила вида «если – то» (явление – реакция) [63]. Сейчас это наиболее распространенный способ представления знаний, так называемая продукционная модель. Под «явлением» здесь понимается некоторое предложение, которое используется для формирования запроса к базе знаний (БЗ), а под «реакцией» – действия, которые выполняются при успешном исходе поиска. С точки зрения пользователя,
16
продукционная модель представляет собой прямое описание логических выводов для решения задач в конкретной предметной области. Это позволяет легко дополнять, модифицировать и удалять правила. Кроме того, со стороны компьютера имеется возможность определения простого и точного механизма использования знаний с
высокой однородностью, описанных по одному синтаксису. Эти две
отличительные черты являются причинами столь широкого распространения метода представления знаний правилами.
Продукционная система состоит из трех основных компонентов:
– набора правил, используемого как БЗ, поэтому его еще называют базой правил;
– рабочей памяти (или памяти для кратковременного хранения), в
которой хранятся предпосылки, касающиеся конкретных задач предметной области, и результаты выводов, полученных на их основании;
– механизма логического вывода, использующего правила в соответствии с содержимым рабочей памяти.
Чаще всего поиск по базе знаний и вывод результатов осуществляется прямым (от данных к поиску цели) или обратным (от цели
для ее подтверждения к данным) способом.
От выбранного метода поиска, т. е. стратегии вывода, будет зависеть порядок применения и срабатывания правил. Процедура выбора сводится к определению направления поиска и способа его осуществления. Процедуры, реализующие поиск, обычно «зашиты» в механизм вывода, поэтому в большинстве систем инженеры знаний не
имеют к ним доступа и, следовательно, не могут в них ничего изменять по своему желанию [35].
При обратном порядке вывода вначале выдвигается гипотеза, а
затем механизм вывода как бы возвращается назад, переходя к фактам, пытаясь найти те, которые подтверждают гипотезу (рис. 1.1, а).
Если она оказалась правильной, то выбирается следующая гипотеза, детализирующая первую и являющаяся по отношению к ней
подцелью. Далее отыскиваются факты, подтверждающие истинность
подчиненной гипотезы. Вывод такого типа называется управляемыми
целями, или управляемыми консеквентами. Обратный поиск применяется в тех случаях, когда цели известны и их сравнительно немного.
В системах с прямым выводом по известным фактам отыскивается заключение, которое из этих фактов следует (рис. 1.1, б). Если
такое заключение удается найти, то оно заносится в рабочую память.
Прямой вывод часто называют выводом, управляемым данными, или
выводом, управляемым антецедентами.
Существуют системы, в которых вывод основывается на сочетании упомянутых выше методов – обратного и ограниченного прямо-
17
б)
82
2345
a)
12345
6 789
39
1
3
2
5
4
6
6
4
7
5
1
82
2345
583
583
12345
6 339
9
82
2345
2
82
4 2345
7
6
3
5
1
4
6
5
44
1
4
3
7
583
46
2
45
8
9
583
Рис. 1.1. Стратегия вывода: а – обратного; б – прямого
го. Такой комбинированный метод получил название циклического.
В больших системах, где база знаний содержит свыше сотни правил,
используются дополнительные стратегии управления выводом для
оптимизации и сокращения времени поиска [35]. Наиболее распространенными среди таких стратегий являются поиск в глубину, поиск в ширину, разбиение на подзадачи и др.
1.2.2. Фреймы
В основе теории фреймов лежит восприятие фактов посредством
представления, информации, полученной извне конкретными элементами и значениями, а также рамками, определенными для каждого концептуального объекта в нашей памяти. Фрейм (рамка) – это
единица представления знаний, запомненная в прошлом, детали которой при необходимости могут быть изменены согласно текущей
18
ситуации [63]. Каждый фрейм может быть дополнен различной информацией. Эта информация может касаться способов применения
данного фрейма, последствий этого применения, действий, которые
необходимо выполнить, если не оправдался прогноз, и т. п. Каждый
фрейм можно рассматривать как сеть, состоящую из нескольких вершин и отношений. На самом верхнем уровне фрейма представлена
фиксированная информация – факт, касающийся состояния объекта, который обычно считается истинным. На последующих уровнях
расположено множество так называемых терминальных слотов (терминалов), которые обязательно должны быть заполнены конкретными значениями и данными.
В каждом слоте задается условие, которое должно выполняться
при установлении соответствия между значениями (слот либо сам
устанавливает соответствие, либо обычно это делает более мелкая
составляющая фрейма). Простое условие указывается меткой, оно
может содержать требования, например: чтобы соответствие устанавливал пользователь, чтобы было достаточно полно описанное
значение, чтобы был указатель специальных составляющих фреймов и т. п. Сложные условия указывают отношения между фактами,
соответствующими нескольким терминалам. Соединив множество
фреймов, являющихся отношениями, можно построить фреймовую
систему. Наиболее важным результатом такого построения является возможность преобразования фреймов в одной системе. Кроме того,
различные фреймы могут иметь общие терминалы, благодаря чему
возможно связывание информации и включение других процессов.
Несколько терминалов одного фрейма обычно заранее определяются
значениями по умолчанию. Следовательно, даже когда не задана подробная информация, касающаяся некоторого места, данный фрейм все
равно будет довольно информативен. Этот метод можно широко использовать для представления информации общего характера, анализа множества сходных задач, отработки техники решения задач логическими
методами, а также он может служить полезным средством распространения фреймовых систем. Поскольку значение по умолчанию не связано жестко с терминалом, его можно легко заменять новой информацией, например для более точного согласования с соответствующей ситуацией. Следовательно, значение по умолчанию может использоваться в
качестве переменной, либо в специальных случаях выводов на основании фактов, либо в общепризнанных случаях. Кроме того, оно может
использоваться вместо логических ограничителей.
Рассмотрим основные типы фреймов, способы их сравнения и топологии фреймовой системы. При эффективном использовании фреймовой системы можно добиться быстрого понимания сущности дан-
19
ного предмета и его состояния, однако для запоминания различных
позиций в виде фреймов требуется большое количество памяти. Поэтому только наиболее важные объекты данного предмета запоминаются в виде базовых фреймов, на основании которых строятся фреймы-экземпляры для новых состояний.
В ходе процесса сопоставления проверяется правильность выбора
фрейма. Обычно этот процесс осуществляется в соответствии с текущей
целью и информацией (значениями), содержащейся в данном фрейме.
Другими словами, фрейм содержит условия, ограничивающие значения слота, а цель используется для определения, какое из этих условий, имеющих отношение к данной ситуации, является релевантным.
Фреймовая система обычно имеет иерархическую структуру [63]. Ее
особенность заключается в том, что информация об атрибутах, которую содержит фрейм верхнего уровня, совместно используется всеми
фреймами нижних уровней, связанных с ним. Например, атрибут «животное передвигается» (рис. 1.2) является общим и для птиц вообще, и
для канарейки, которая находится на самом нижнем уровне.
6593
5
27
65
42
32
1
635
35
24
98
12345 7686
38345
5
5
12345 8
3545
12345 673839
3
993 2
96
35
(6
6# 7 79
865
&3 3535
12345 79
45
12345
! 8
43
23
21
6"6#
$%36 9#
& 93835
735
38' 76 833
Рис. 1.2. Концептуальная схема классификационной иерархической
структуры [69]
Если бы человеческая память имела подобную структуру, то можно было бы систематизировать и запоминать схожие понятия, избегать лишних сложностей, касающихся информации об атрибутах, и
добавлять новые понятия или знания в соответствующие позиции в
этой иерархии (обучение). Запоминание концептуального объекта,
имеющего классификационную иерархическую структуру, легко поясняется фреймовой моделью, однако, как уже было сказано, если
20
«процесс сопоставления» окончился неудачей, то возникает необходимость поиска фрейма, подобного предыдущему. Такой поиск, осуществляемый с использованием указателей различия, возможен благодаря соединению фреймов, описывающих объекты с небольшими различиями, с данными указателями и образованию сети подобных фреймов.
В результате получаются так называемые межфреймовые сети [63].
Пример сети Уинстона показан на рис. 1.3. Если при сопоставлении фрейма «стул» выяснилось, что объект слишком велик и у него
отсутствует спинка, то с помощью указателя различия ищется фрейм
«стол». Если окажется, что объект слишком широк и отсутствует
спинка, можно выполнить эффективный поиск фрейма «скамейка» с
помощью другого указателя различия.
12345623
758 9
212
924 23
18
18
6
2
124 921
58 9
2
358 35
124 521
58 9
2
6
98
9456
98
758 983983
Рис. 1.3. Сеть подобия по Уинстону
В этом примере рассмотрены указатели различия, однако семантические сети можно строить с помощью всевозможных других указателей и благодаря им с высокой эффективностью выполнять различные выводы. В таких случаях следует считать, что фреймовая
система включает семантическую сеть.
Когда человек рассматривает нечто и думает о том, что бы это значило, или мысленно представляет себе что-то, то данный процесс
можно представить как распределение конкретных значений между
терминальными слотами фрейма. Здесь в случае мысленного представления пределы, касающиеся распределения этих значений, широки. Предполагаемое значение называется значением по умолчанию.
21
Рассмотренная выше иерархическая структура основывается на
отношениях «абстрактное – конкретное», однако помимо такого типа
структур существуют и другие, основанные на отношениях «целое –
часть». Отношения «абстрактное – конкретное» характерны тем, что
на верхних уровнях расположены абстрактные объекты (концепты),
а на нижних уровнях – конкретные объекты, причем объекты нижних уровней наследуют атрибуты объектов верхних уровней. Эти отношения еще называют отношениями типа IS-A. Такие названия
объясняются формами записи «канарейка IS-A птица» (канарейка
есть птица) и «канарейка IS KIND-OF птица» (канарейка – это разновидность птиц). Отношение «целое – часть» (PART-OF) касается
структурированных объектов и показывает, что объект нижнего уровня является частью объекта верхнего уровня.
Практическое применение во фреймовых системах получили лишь
отношения «абстрактное – конкретное». Тем не менее, иногда требуется описывать и управлять структурированным объектом, поэтому
в таких случаях не обойтись без обработки отношений типа «целое –
часть». При этом составляющие системы описываются отношениями IS-А, а структура – отношениями PART-OF. Однако в отношениях типа PART-OF нельзя использовать наследование атрибутов, изза чего не видны преимущества модели представления знаний фреймами. В таких случаях необходимы другие методы.
Теперь, имея общее представление о теории фреймов, рассмотрим, какие бывают структуры фреймов [63]. Фрейм, как показано на рис. 1.4,
представлен определенной структурой данных. Фреймовая система –
это иерархическая структура, узлами которой являются подобные фреймы. Значение и свойства каждого элемента структуры следующие.
Имя фрейма – идентификатор, присваиваемый фрейму, фрейм должен иметь имя, единственное в данной фреймовой системе (уникальное). Каждый фрейм состоит из произвольного числа слотов, причем
несколько из них обычно определяются самой системой для выполнения специфических функций, а остальные определяются пользователем. В число функций входят слот IS-А, показывающий фреймродитель данного фрейма, слот указателей дочерних фреймов, который является списком указателей этих фреймов, слот для ввода имени пользователя, даты определения, даты изменения, текста комментария и др.
Имя слота – идентификатор, присваиваемый слоту, слот должен
иметь уникальное имя во фрейме, к которому он принадлежит. Обычно имя слота не несет никакой смысловой нагрузки и является лишь
идентификатором данного слота, но в некоторых случаях оно может
иметь специфический смысл.
22
123 456728
123 456728
9
886
8683
62
12
13
4
4
4
1
123 8
9
886
866 8
85 8
52361866 61
56
6166 866 61 565861 4147
56683 565861
886 4147
Рис. 1.4. Структура данных фрейма
Указатели наследования касаются только фреймовых систем
иерархического типа, основанных на отношениях «абстрактное –
конкретное». Они показывают, какую информацию об атрибутах
слотов во фрейме верхнего уровня наследуют слоты с такими же именами во фрейме нижнего уровня. Типичные указатели наследования:
уникальный, такой же, установление диапазона и др. В большинстве систем допускается несколько вариантов указания наследования.
Указание типа данных показывает, что слот имеет численное значение (float, int, short, boolean) либо служит указателем другого фрейма (т. е. показывает имя фрейма).
Значение слота – пункт ввода значения слота. Значение слота
должно совпадать с указанным типом данных этого слота. Кроме
того, должно выполняться условие наследования.
Демон – процедура, автоматически запускаемая при выполнении
некоторого условия. Демоны запускаются при обращении к соответствующему слоту. Демон является разновидностью присоединенной
процедуры.
Присоединенная процедура – используется некоторая служебная
программа процедурного типа в качестве значения слота, которая
запускается по сообщению из другого фрейма.
В языке представления знаний фреймами отсутствует специальный механизм управления выводом, поэтому пользователь должен
23
реализовывать данный механизм с помощью присоединенной процедуры. Это обеспечивает универсальность и гибкость создаваемых систем. В то же время для разработки таких систем от пользователя
требуется знание определенных языков программирования, поэтому
обычно представление знаний на основе фреймов используется специалистами по искусственному интеллекту, ориентированными на
решение сложных прикладных задач.
1.2.3. Семантические сети
Семантическая сеть – это один из способов представления знаний.
Термин «семантическая» означает «смысловая», а семантика – это
наука, устанавливающая отношения между символами и объектами, которые они обозначают, т. е. наука, определяющая смысл знаков [35]. Семантическая сеть – это ориентированный граф, вершины
которого – понятия, а дуги – отношения между ними.
В качестве понятий обычно выступают абстрактные или конкретные объекты, а отношения – это связи типа IS-А («это») и PART-OF
(«имеет частью»). Характерной особенностью семантических сетей
является обязательное наличие трех типов отношений:
– класс – элемент класса (цветок – роза);
– свойство – значение (цвет – желтый);
– пример элемента класса (роза – чайная).
Можно предположить несколько классификаций семантических
сетей, связанных отношениями между понятиями. По количеству
типов отношений:
– однородные (с единственным типом отношений);
– неоднородные (с различными типами отношений).
По типам отношений:
– бинарные (в которых отношения связывают два объекта);
– N-арные (в которых есть специальные отношения, связывающие более двух понятий).
Наиболее часто в семантических сетях используются следующие
связи:
– типа «часть – целое»;
– функциональные (определяемые обычно глаголами «производит», «влияет»…);
– количественные (больше, меньше, равно…);
– пространственные (далеко от, близко от, за, под, над…);
– временные (раньше, позже, в течение…);
– атрибутивные (имеет свойство, имеет значение);
– логические (И, ИЛИ, НЕ);
– лингвистические и др.
24
Проблема поиска решения в БЗ типа семантической сети сводится
к задаче поиска фрагмента сети, соответствующего некоторой подсети, отражающей поставленный запрос к базе.
Изначально семантическая сеть была задумана как модель представления структуры долговременной памяти в психологии, но впоследствии стала одной из основных [63]. Первоначально в психологии изучались объекты, именуемые семантическими, с точки зрения
известных ассоциативных свойств, накапливаемых в системе обучения и поведения человека. Однако с развитием психологии познания
стали изучаться семантические структуры, включающие некоторые
объекты. Затем были изучены принципы действия человеческой памяти (способы хранения информации и знаний), в частности предположительные (гипотетические) структурные модели долговременной памяти, и созданы моделирующие программы, понимающие смысл слов.
В качестве структурной модели долговременной памяти Куиллиан
предложил модель понимания смысла слов, получившую название TLCмодели (Teachable Language Comprehender: доступный механизм понимания языка) [63]. В ней для описания структуры долговременной памяти была использована сетевая структура как способ представления
семантических отношений между концептами (словами). Данная модель имитирует естественное понимание и использование языка человеком. Поэтому основной ее идеей было описание значений класса, к
которому принадлежит объект, его прототипа и установление связи со
словами, отображающими свойства объекта.
В модели Куиллиана концептуальные объекты представлены ассоциативными сетями, состоящими из вершин, показывающих концепты, и дуг, показывающих отношения между концептами. Например, в сети представления
концептуального объекта
72856943
«принтер» [63], показанной
52412
на рис. 1.5, с оператором от62412
1234562 5
ношений «класс» ассоцииру5234
ется значение «оргтехника»,
12362
со свойством – «струйный»,
524
«лазерный», «матричный», с
примером – «струйный принтер». Подобная ассоциативная Рис. 1.5. Образец семантической сети
структура называется плоскостью, описываемые концепты объекта называются вершинами типа, а связанные с ними соответствующие отдельные
слова (ассоциативные слова) – вершинами лексем. В любой плоскости существует одна вершина типа и только необходимое для определения концептов, описывающих его, число вершин лексем.
25
Вершины лексем определяют всевозможные сущности, имеющие
место в реальном мире, например классы, свойства, примеры, время,
место, средство, объекты и т. п. Преимущество лексем по сравнению
с типами заключается в экономии пространства памяти ЭВМ.
Итак, исходя из приведенных соображений, можно сделать вывод, что в ТLС-модели используется представление данных в форме
«элемент» и «свойство». Другими словами, можно попытаться структурировать знания, заменив вершину типа на элемент, а вершину
лексемы – на свойство. Благодаря этому данные, основанные на фактах, в долговременной памяти можно представить с помощью структур трех типов: элементов, свойств и указателей [63]. Элемент представлен заключением, называемым фактом, например объектом, событием, понятием и т. п., обычно за элемент принимается отдельное
слово, имя существительное, предложение или контекст (например,
«собака», «Америка», «прекрасный цветок», «хороший человек» и
т. п.). Свойство – это структура, описывающая элемент, оно соответствует таким частям речи как имя прилагательное, наречие, глагол и т. д., например «твердый», «быстро», «любит птиц» и т. д.
И наконец, указатели связывают элементы и свойства «атрибут –
значение». В ТLС-модели существует несколько правил, регламентирующих структуру указателей «элемент – свойство». Например:
элемент имеет прототип, свойство имеет атрибут и значение и т. п.
При построении семантической сети отсутствуют ограничения на число связей элементов, свойств и сложность сети. Поэтому функции, указываемые указателями, желательно в некоторой степени упорядочить.
Куиллиан предложил определять функции между понятиями с помощью: 1) подмножества – старшего множества; 2) индекса (наречие, имя
прилагательное); 3) логического правила И; 4) логического правила
ИЛИ; 5) логического правила исключающее-ИЛИ и т. п. Кроме того, в
качестве операторов отношения для группировки элементов (вершин)
были предложены отношения «близости», «следствия», «предпосылки» и «сходства». Поскольку все эти отношения зависят от мира, в
котором используются, то их унификация является сложной задачей.
Внимания заслуживают отношения, предложенные для многих миров.
Только благодаря этим отношениям становится возможным представление семантическими сетями. [Мир – конкретная формальная теория,
полностью заданная участвующими в ней элементарными объектами (алфавитом), правилами построения выражений из этих объектов (формул),
набором аксиом, касающихся формул, и набором привил вывода].
Важность модели семантической сети Куиллиана с точки зрения
многочисленных приложении определяется следующими моментами. В отличие от традиционных методов семантической обработки с
26
анализом структуры предложения были предложены новые парадигмы в качестве модели представления структуры долговременной памяти, в которой придается значение объему языковой активности.
Был предложен способ описания структуры отношений между фактами и понятиями с помощью средства, называемого семантической
сетью, отличающейся несложным представлением понятий. Кроме
того, был предложен способ семантической обработки в мире понятий на основе смысловой связи (смыслового обмена) между прототипами. В результате создана реальная система TLC, осуществлено
моделирование человеческой памяти и разработана технологическая
сторона концепции понимания смысла, которая послужила основой
для дальнейшего развития семантических сетей.
В заключение отметим, что положительной стороной представления
знаний на основе семантических сетей является простой и понятный
способ описания отношений между элементами с помощью дуг и узлов.
Однако с увеличением размера сети время поиска по сети возрастает
нелинейно, а проверка непротиворечивости связей между элементами
становится чрезмерно сложной. В настоящее время для реализации семантических сетей существуют специальные сетевые языки, например
NET, язык реализации систем SIMER+MIR и др. Широко известны экспертные системы, использующие семантические сети в качестве языка
представления знаний: PROSPECTOR, CASNET, TORUS [35].
1.2.4. Логика предикатов
Основное преимущество представления знаний на основе логики
предикатов заключается в том, что обладающий хорошо понятными
математическими свойствами мощный механизм вывода может быть
непосредственно запрограммирован. Для лучшего понимания логики предикатов вначале рассмотрим логику высказываний.
Логика высказываний является более простой логической системой по сравнению с логикой предикатов. Высказыванием (суждением) называют предложение, принимающее только два значения: «истина» или «ложь». Например, высказываниями являются предложения «лебедь белый», «лебедь черный», «у Марса 3 спутника» и
т. п. Из нескольких простых высказываний можно составить более
сложные, например: «Лебедь белый или черный», «Лебедь белый, и
у Марса 3 спутника», «Если лебедь не белый, то лебедь черный» [63].
Другими словами, высказывания образуются с помощью пяти
подчеркнутых слов или аналогичных им по смыслу. И наоборот, высказывание может быть разделено на несколько частичных высказываний, связанных с помощью этих слов. Высказывания, которые
не могут быть разделены на несколько частичных высказываний, бу27
дем называть элементарными. Элементарные высказывания могут
рассматриваться как переменные, имеющие значение «истина» и
«ложь». Если обозначить элементарные высказывания Р и Q, то из Р
можно вывести следующие высказывания:
Р или Q; Если не Р, то Q
Можно показать, что если Р истинно, то приведенные выше высказывания также истинны. Однако вывести из Р высказывание Р и Q
нельзя, как и нельзя показать, что это высказывание является истиной, если Р имеет значение «истина». Для обозначения операторов
применяются следующие символы: ¬ – «не», ∨ – «или», ∧ – «и», ⊃ –
«если»; эти символы называются логическими связками. Если А и В –
высказывания, то таковыми являются и ¬ А, А ∨ В, А ∧ В, А ⊃ В,
причем их значения определяются истинностью А и В. ¬ А – ложь
при А – истина, и истина – при А – ложь, А ∨ В – ложь, только когда
А и В – ложь, в остальных случаях А ∨ В – истина. А ∧ В – истина
только в случае, когда и А и В – истина, в остальных случаях – ложь.
А ⊃ В – ложь, только при А – истина, В – ложь, в остальных случаях
А ⊃ В – истина. Отсюда понятно, что значение А ⊃ В совпадает со
значением ( ¬ А) ∨ В; очевидно также, что ¬ ¬ А есть А. Кроме того:
¬ (А ∨ В) имеет то же значение, что (¬ А) ∧ (¬ В);
¬ (А ∨ В) имеет то же значение, что (¬ А) ∧ (¬ В).
Эти соотношения известны как правила де Моргана. Рассмотрим
вывод, дающий заключение на основе двух предпосылок.
Предпосылка 1. Все люди смертны.
Предпосылка 2. Сократ – человек.
Заключение. Сократ – смертен.
Если представить эти предложения в виде высказываний, то все
они могут быть выражены только элементарными высказываниями,
между которыми нет никакой логической связи. Таким образом, сделать такое заключение в рамках логики высказываний невозможно.
Чтобы это заключение стало возможным, необходимо разделить элементарные высказывания на еще меньшие элементы. Например, если
разделить предложение «Сократ – человек» на части «Сократ»
(субъект) и «человек» (свойства субъекта), получим: человек (Сократ).
Разделив предложение «Иван – отец Петра» на субъекты «Иван» и
«Петр» и отношение этих субъектов «... – отец ...», получим: отец
(Иван, Петр). Вместо имен субъектов можно подставить переменные
х, у, z и т. д. Например: человек (х) показывает, что «х – человек». И
наоборот, «человек (Сократ)» можно рассматривать как результат подстановки в функцию «человек (х)» значения переменной х – «Сократ».
28
Рассмотрим теперь предложение «у каждого человека есть отец».
Для представления этого предложения необходимо использовать конструкции вида «существует такой х, что...» или «для любого х...».
Представив эти конструкции в виде соответственно «∃x(…), ∀x(…)», можно записать приведенное предложение следующим образом:
∀x∃y (человек (x) ⊃ отец (y, x)).
Здесь важна последовательность ∀x и ∃y. Если изменить порядок
следования, получим
∃y∀x (человек (x) ⊃ отец (y, x)).
Эта запись имеет смысл «у всех людей общий отец». Таким образом, приведенные выше предпосылки 1, 2 и заключение можно представить в следующем виде.
Предпосылка 1. ∀x (человек (x) ⊃ смертен (x)).
Предпосылка 2. Человек (Сократ).
Заключение. Смертен (Сократ).
Такое представление называется логической формулой.
Логика предикатов рассматривает вопрос, можно ли, представив предложения в виде логических формул, с помощью выводов получить из
нескольких исходных логических формул некую конечную логическую
формулу. Следовательно, в данном примере логика предикатов решает
вопрос, можно ли из предпосылок 1, 2 вычислить заключение. Как и
логика высказываний, она не рассматривает, на что указывает понятие
«Сократ» или какой смысл имеет х в записи «человек (x)». Поэтому
«Сократ», «человек», «смертный» записываются в виде а, p, q, т. е. под
р(х) понимается «х – человек», под q(а) – «Сократ – смертен». Таким
образом, приведенные выше логические формулы преобразуются к следующему виду.
Предпосылка 1. ∀x(p(x) ⊃ q(x)).
Предпосылка 2. р(а).
Заключение. q(а).
В логике предикатов обозначения вида а называются константами; р, q и т. д. называются предикатными символами. Кроме того, в
логике предикатов разрешается использование функциональных
символов. Если обозначить через f функцию одного аргумента, логическая формула будет иметь вид
(p(f(x)) ⊃ p(x)).
Упорядочим применяемые в логике предикатов термины [63].
Прежде всего, отметим 6 типов символов:
1) переменные: представлены буквами х, у, z, и, v, w или этими же
буквами с индексами;
29
2) константы: представлены буквами a, b, c, d, e или этими же
буквами с индексами;
3) функциональные символы: представлены буквами f, g, t или
этими же буквами с индексами;
4) предикатные символы: представлены буквами p, q, r, s, t или
этими же буквами с индексами;
5) логические символы: ⊃, ∨, ∧, ¬, ∃, ∀ (первые четыре символа
называются пропозициональными связками, последние два – знаками кванторов; наивысший приоритет имеет логический символ ∀,
наименьший – символ ⊃);
6) вспомогательные символы – круглые скобки.
Каждый предикатный и функциональный символ определяет несколько аргументов. Терм определяется индуктивно с помощью следующих правил.
1. Переменные и константы являются термами.
2. Если f – функция m аргументов и t1, …, tm являются термами,
то f(t1, …, tm) – терм.
3. Термами являются только понятия, определенные в правилах 1, 2.
Если обозначить р – предикатный символ n аргументов; t1, …, tn – термы, то р(t1, …, tn) называется атомарной формулой или атомом. Логические формулы определяются индуктивно с помощью следующих правил.
1. Атом – это логическая формула.
2. Если А и В – логические формулы, а х – переменная, то (А) ⊃ (В),
(А) ∨ (В), (А) ∧ (В), ¬ (А), ∃х(А), ∀х(А) являются логическими формулами.
3. Логическими формулами являются только понятия, определенные в правилах 1, 2.
Например, логической формулой является следующее выражение:
((∀у( ∃ х(p(х, у)))) ⊃ ((q(f(а))))) ∧ (r(u, b)).
Однако круглые скобки в формуле создают определенные затруднения, поэтому, опираясь на приоритеты логических символов, можно сократить число скобок. Тогда формула примет вид
(∀у∃хp(х, у) ⊃ q(f(а))) ∧ (r(u, b).
Для упрощения изложения в настоящем тексте константы представляются также в виде «Сократ», функциональные символы –
«отец», предикатные символы – «человек» и т. д.
Знания, которые могут быть представлены с помощью логики предикатов, являются фактами, представляемыми логическими формулами [63]. Для представления какой-либо области в виде логических формул прежде всего необходимо выбрать константы, которые
определяют объекты в данной области, а также функциональные
символы и предикатные символы, которые определяют соответствен30
но функциональную зависимость и отношения между объектами.
Символы других типов являются общими и не зависят от конкретного мира. Следовательно, определив константы, функциональные и
предикатные символы, можно построить логические формулы, описывающие данную область. Записать знания в виде логических формул не удается в тех случаях, когда затруднен выбор указанных трех
групп символов или же эти знания превышают возможности представления в логике предикатов.
Автоматическое преобразование предложений, написанных на
естественном языке (ЕЯ), в язык формальных систем типа логики
предикатов называется пониманием ЕЯ. Понимание естественного
языка является весьма сложной проблемой и, несмотря на то, что
исследования по автоматическому преобразованию предложений на
английском языке в логические формулы проводятся с 60-х годов, в
этой области удалось добиться лишь частичных успехов. Однако изза наличия нечеткостей в естественном языке преобразование предложений на ЕЯ в формулы вручную также в большинстве случаев
является непростым делом, причем сложность этого процесса известна
уже давно. Проблема нечеткости, многозначности и вариативности
особенно характерна для ЕЯ.
1.2.5. Нечеткие знания
Знания не всегда могут быть описаны точно – часто встречаются
так называемые «нечеткие» знания [63]. Люди повседневно решают
проблемы и делают выводы в условиях нечетких знаний. Для того
чтобы интеллектуальные системы обладали такими же возможностями, необходимо оперировать нечеткими знаниями.
Плохо поставленные (некорректные) задачи существуют во всех
предметных областях, где, как ожидается, будут эффективными интеллектуальные системы как средство построения информационных
систем нового поколения. К ним относятся проблемы, строгое описание которых невозможно, а также сложные проблемы. Корректные
задачи часто можно решить существующими методами систематизации и программирования (так сказать, волевым путем). В области
некорректных задач точные знания либо нельзя получить вообще,
либо их нельзя получить сразу, поэтому, как правило, необходим
подход, суть которого – в постепенном приближении к полному набору знаний. Другими словами, знания чаще всего нечетки. Для того
чтобы интеллектуальные системы вышли за рамки простых символьных выводов и приблизились к мышлению человека, необходимы
методы представления нечетких знаний и механизм выводов, работающий в их среде. Все нечеткости, с которыми до сих пор приходи31
лось иметь дело в инженерии знаний, можно классифицировать следующим образом [63]: недетерминированность выводов, многозначность, ненадежность, неполнота, нечеткость или неточность.
Недетерминированное управление наиболее характерно для систем искусственного интеллекта. Такое управление необходимо потому, что знания накапливаются фрагментарно, и нельзя априори определить цепочку логических выводов, в которых они используются. Другими словами, необходимо методом проб и ошибок выбрать
некую цепочку выводов, и в случае неуспеха организовать перебор с
возвратами для поиска другой цепочки и т. д. Такое управление является предпосылкой проявления гибкости и интеллектуальных способностей, позволяющих найти выход в самых различных ситуациях. Поскольку эффективность простого поиска низка, возникает необходимость определения пути, по которому следует начать поиск в
первую очередь. При эвристическом поиске руководствуются оценочными функциями, которые не всегда бывают точными (имеют априорные значения). В эпоху инженерии знаний возникла идея реализации выводов (поиска) на основе знаний. Шире стали применять эвристические знания (в смысле не обязательно достоверных знаний,
т. е. знаний, содержащих нечеткости).
Многозначность интерпретации – обычное явление при понимании ЕЯ и распознавании изображений и речи. При понимании ЕЯ
большими проблемами становятся многозначность смысла слов,
многозначность их подчиненности, многозначность местоимений в
контексте и т. п. Как правило, устранение многозначности обеспечивается за счет более широкого контекста и семантических ограничений. При обработке изображений часто многозначна интерпретация
элементов изображения (контуры, области и т. п.). В общем случае
устранить многозначность помогают более широкие пространственные отношения и другие способы. Метод релаксации – это метод систематического устранения многозначности при интерпретации изображений с помощью циклических операций. В качестве знаний в нем
используются локальные ограничения (этот метод объяснен ниже).
Существуют дискретный и вероятностный методы релаксации, которые предусматривают устранение многозначности при локальных
ограничениях и выбор интерпретации через согласование ограничений в целом.
В задачах, которые решают интеллектуальные системы, иногда
приходится применять ненадежные знания и факты. В этом случае
представить их двумя значениями [истина или ложь (1 или 0)] практически невозможно. Существуют знания, достоверность которых,
скажем, равна 0,8. Такую ненадежность в современной физике и тех32
нике представляют вероятностью, подчиняющейся законам Байеса
(для удобства назовем ее байесовской вероятностью), но в инженерии знаний было бы нелогично иметь дело со степенью надежности,
приписанной знаниям изначально, как с байесовской вероятностью
(нелогично незнание представлять байесовской вероятностью).
Связь между подзадачами, на которые разбита задача, оперирующая двумя понятиями – истина и ложь, может быть представлена
через операции И и ИЛИ. В задачах с ненадежными исходными данными кроме И и ИЛИ важную роль играет комбинированная связь.
Такая связь независимо подкрепляет или опровергает цель на основании двух и более доказательств. Нечеткая логика, ведущая свое
происхождение от теории нечетких множеств, – это разновидность
непрерывной логики, в которой логические формулы оперируют со
значениями между 0 и 1. Упомянутые выше методы, продолжающие
развитие теории вероятности, несколько отличаются от нечеткой
логики, более субъективны, но по своей логической сущности более
сильны. Логика вообще играет важную роль при рассмотрении фундаментальных понятий представления знаний и выводов, даже принципы обработки ненадежных знаний основаны на логике.
В начале 70-х американский математик Лотфи Заде предложил
формальный аппарат нечеткой алгебры и нечеткой логики. Он ввел
одно из главных понятий в нечеткой логике – понятие «лингвистической переменной» [35]. Лингвистическая переменная – это переменная, значение которой определяется набором вербальных (т. е.
словесных) характеристик некоторого свойства. Для операций над
нечеткими знаниями, выраженными при помощи лингвистических
переменных, существует много различных способов, в основном эвристики. Одним из первых применений теории нечетких множеств
стало использование коэффициентов уверенности для вывода рекомендаций медицинской системы MYCIN. В настоящее время большинство инструментальных средств разработки систем, основанных
на знаниях, используют нечеткую логику и средства реализации нечеткого вывода.
1.3. Нейронные сети
Искусственные нейронные сети представляют собой набор математических и алгоритмических методов для решения широкого круга задач. Структурным элементом сети является нейрон, построенный по принципу биологического прототипа. Искусственные нейронные сети – это совокупность моделей биологических нейронных сетей, состоящих из искусственных нейронов, связанных между собой
33
синаптическими соединениями. Работа сети состоит в преобразовании входных сигналов во времени, в результате чего меняется внутреннее состояние сети и формируются выходные воздействия.
Независимо от типа данных или специфики наблюдаемого явления нейронная сеть является неким абстрактным методом решения.
Первоначально нейронные сети применялись в задачах классификации, персептрон Ф. Розенблата решал задачу классификации графических изображений букв. Это объясняется ступенчатой активационной функцией нейронов. В дальнейшем, с введением в нейрон непрерывных активационных функций, появилась возможность решения обширного класса задач: распознавание образов, ассоциативный
поиск информации, прогнозирование развития систем, управление
сложными устройствами, диагностика и принятие решений в медицине, криминалистике, финансовой и других сферах. Несмотря на то
что существуют специализированные методы в каждой из указанных областей, для решения глобальных задач ИИ нейронные сети
считаются наиболее перспективными благодаря их универсальности. Нейронные сети строятся по принципу биологических нейронных и служат основой для моделирования фундаментальных процессов мышления, понимания, экспертного анализа.
1.3.1. Биологический нейрон
Изучая процессы управления в биологических системах, мы фактически исследуем работу основного механизма, ответственного за
регулирование жизнедеятельности и приспособительные реакции
человека и животных к изменяющейся внешней среде – нервную систему [30]. Однако нельзя полагать, что, изучив отдельный нейрон,
можно понять работу всей нервной системы в целом. Соотношение
одного нейрона и всей нервной системы (1:1010) можно сравнить с
усиленным в миллион раз соотношением одного транзистора и универсальной ЭВМ (1:104). С другой стороны, точно так же, как нельзя
понять работу вычислительной машины без знания ее элементов,
нельзя раскрыть все тайны мозга, не изучив свойств нейронов.
По своему внешнему виду нейроны необычайно разнообразны,
причем их форма подчас отражается в названии: звездчатые, корзиночные, пирамидные и т. д. Заметно различаются и функции нейронов. Но в основном по характеру решаемых задач все нейроны можно
разделить на три группы: рецепторные – воспринимающие внешнее
раздражение или сигнал о состоянии некоторого внутреннего органа; ассоциативные – анализирующие и синтезирующие полученную
от рецепторных нейронов информацию и принимающие решение об
определенном виде активности; эффекторные – передающие сигналы
34
управления, пришедшие от других нейронов, к исполнительным механизмам – мышцам или железам.
Для всех нейронов характерно основное свойство живой протоплазмы – возбудимость, дополняемое проведением возникшего возбуждения. Эти свойства проявляются в ионных процессах, создающих электрические токи. Подавляющее большинство процессов жизнедеятельности протекает под воздействием электрических сигналов
управления, формируемых в нервной системе. Носителем информации служат электрические импульсы переменной частоты следования. Передача информации с помощью импульсов является экономичной и помехоустойчивой формой кодирования возбуждения, найденной самой живой природой. Интенсивность входного возбуждения отражается в частоте и количестве импульсов на выходе нейрона, причем частота и количество импульсов при одной и той же силе
внешнего раздражения определяются конкретным типом нейронов и
изменяются в широком диапазоне.
Как и любые другие клетки, нейроны сверху покрыты оболочкой
(мембраной), отделяющей их от окружающей среды. Схематично
нейрон можно разделить на несколько частей (рис. 1.6): тело клетки, содержащее ядро и клеточную протоплазму; дендриты – древовидные отростки, служащие входами нейрона; аксон, или нервное
волокно, – единственный выход нейрона, представляющий собой
длинный цилиндрический отросток, ветвящийся на конце [30]. Иногда по ходу аксона от него отходят боковые ветви (коллатерали).
1
2
4
3
56
55
8
7
5
9
Рис. 1.6. Биологический нейрон:
1 – коллатераль; 2 – перехват Ранвье; 3 – миелиновая оболочка;
4 – дендриты; 5, 7 – синапсы; 6 – концевые веточки; 8 – тело клетки;
9 – ядро; 10 – аксон; 11 – концевые веточки
На всем протяжении до образования окончаний нервное волокно
нейрона покрыто миелиновой оболочкой. Эта оболочка улучшает
электроизоляцию биотоков, распространяющихся по аксону, и
35
способствует увеличению скорости их распространения. Аксоны некоторых видов нейронов не содержат миелиновой оболочки, из-за
чего скорость проведения нервных импульсов резко падает. Кроме
того, эта скорость зависит от толщины волокна – она пропорциональна корню квадратному из диаметра аксона.
Миелиновая оболочка через каждые 1–3 мм прерывается так называемыми перехватами Ранвье [30]. Последние служат промежуточными генераторами, обеспечивающими распространение нервных
импульсов по аксону без затухания. Роль перехватов Ранвье можно
сравнить с ролью ретрансляционных станций.
Основным законом проведения каждого отдельного нервного импульса по аксону является закон «все или ничего», т. е. в любой момент возможны лишь два состояния нервного волокна – есть импульс,
причем максимально возможный, или его нет. Величина импульса и
скорость его проведения не зависят от силы раздражения, а определяются лишь свойствами данного аксона. Сила раздражения, как уже
указывалось, находит отражение в частоте и количестве импульсов.
У человека диаметр различных нервных волокон составляет от
1 до 20 мк, скорость проведения нервного импульса не превышает
120 м/с, а длина аксона колеблется от долей миллиметра до полутора метров [30]. Пучки нервных волокон образуют нервы – линии связи живого организма.
Передача выходного сигнала с аксона предыдущего нейрона на
дендриты или прямо на тело следующего нейрона осуществляется
специальными образованиями на концевых веточках аксона – синапсами, число которых у каждой нервной клетки от сотен до нескольких тысяч. Приходящий по аксону нервный импульс высвобождает из синапса химическое вещество – посредник, так называемый медиатор. Медиатор воздействует на лежащую под синапсом мембрану следующего нейрона, изменяя ее ионную проводимость. Вследствие инерционности ионных процессов состояние этого нейрона меняется не сразу, а с некоторой задержкой, называемой синаптической.
Поступающие на нейрон импульсы могут оказывать возбуждающее или тормозящее воздействие, что зависит от того, какой медиатор выделяется. Согласно современным представлениям, во всех синапсах нейрона имеется лишь один определенный медиатор, т. е.
каждый нейрон может оказывать только возбуждающее или только
тормозящее воздействие. Значит, по характеру воздействия нейроны можно подразделять на возбуждающие и тормозные, и, с другой
стороны, не существует нейронов, которые могут одновременно возбуждать одни соседние нервные клетки и тормозить другие.
36
Исследования, проводившиеся с помощью микроэлектродов, введенных в тело мотонейрона, обнаружили наличие внутреннего потенциала Uвн = –70 мВ относительно потенциала внеклеточной среды, принимаемого за нуль [30]. Характерно, что внутренним потенциалом обладают любые клетки животных.
Величина внутреннего потенциала меняется в зависимости от ионных процессов, вызванных приходящими нервными импульсами.
При возбуждающем воздействии абсолютная величина уменьшается, а при тормозящем – увеличивается.
На том этапе, когда внутренний потенциал еще не достиг некоторого критического уровня, называемого уровнем возбуждения Uвозб,
изменение внутреннего потенциала нейрона под действием пришедшего сигнала не подчиняется закону «все или ничего». В этом случае
оно носит плавный характер, и его величина зависит как от силы
воздействия одного импульса, определяемой местонахождением и
размерами возбуждаемых синапсов на нейроне, так и от частоты следования входных импульсов. Эта особенность обеспечивает широкое
взаимодействие пришедших сигналов. Воздействия, передаваемые одновременно по нескольким синапсам, суммируются (пространственное
суммирование возбуждений). Если же входные сигналы приходят последовательно, то, начиная с некоторой минимальной частоты, воздействие последующего импульса накладывается на воздействие предыдущего (временное суммирование возбуждений), поскольку к этому моменту внутренний потенциал не успевает вернуться к уровню покоя.
Подведем некоторые итоги в отношении характера работы нейрона. Входные сигналы, закодированные в частотно-импульсной форме, по многим различным входам через синапсы передаются на нейрон. В теле нейрона под их воздействием происходит плавное изменение внутреннего потенциала. Достижение внутренним потенциалом
уровня возбуждения приводит к генерации нервного импульса. Суммарное входное воздействие на данный нейрон отразится в частоте и
количестве выработанных импульсов, поступающих на единственный
выход нейрона – аксон. Следует отметить, что энергия, необходимая
для генерирования и проведения нервного импульса, черпается не из
источника раздражения, а из самого нейрона за счет ионных процессов,
происходящих в нем при возбуждении, т. е. нейрон является активным
элементом, осуществляющим преобразование входных сигналов.
1.3.2. Искусственный нейрон
Еще шестьдесят лет назад основоположник математической биофизики И. Рашевский описал ионные процессы, происходящие в
37
нейроне, с помощью дифференциальных уравнений [30]. Позднее английскими учеными А. Л. Ходжкином и А. Ф. Хаксли была получена система уравнений, с большой точностью моделирующая процесс
генерации импульса в нейроне. Но практическое использование методов классической математики, и в частности теории дифференциальных уравнений, очень затруднительно, поскольку при этом приходится учитывать большое количество факторов. Получаемые системы уравнений настолько сложны, особенно при описании нейронных
сетей, что даже в настоящее время почти не поддаются решению.
Попытки использовать аналоговые вычислительные машины для
решения упрощенных дифференциальных уравнений, описывающих
поведение нейрона при возбуждении, привели к созданию ряда моделей [30]. Американский ученый Ф. Ф. Хильтц в модели, использующей два сумматора-интегратора, один сумматор и мультивибратор
(рис. 1.7), описывал состояние мембраны нейрона дифференциальным уравнением второго порядка.
1345
1
1
1
12345
2
3
3
4
Рис. 1.7. Модель нейрона Хильтца:
1 – сумматоры!интеграторы; 2 – сумматор; 3 – мультивибратор
Голландский ученый Дерксен в модели мотонейрона кошки (рис. 1.8)
отразил свойства генерации, пространственно-временное суммирование, синаптическую задержку.
В 1943 г. американскими учеными У. Маккаллоком и У. Питтсом
была предложена модель нейрона, построенная по законам математической логики, которая получила название «формальный нейрон»
или персептрон. В дальнейшем его схема была уточнена и развита
С. К. Клини, Д. Т. Калбертсоном, фон Нейманом, Ю. Т. Медведевым
и др. [30]. Простая нейронная модель, показанная на рис. 1.9, использовалась в большей части их работы.
Элемент Σ умножает каждый вход х на вес ω и суммирует взвешенные входы. Если эта сумма больше заданного порогового значения,
38
8
1
2
5
6
7
3
9
4
1
Рис. 1.8. Модель нейрона Дерксена:
1 – возбуждающие входы; 2 – тормозящие входы; 3 – цепь порога; 4 – цепь
заряда; 5 – цепь разряда; 6 – цепь задержки; 7 – генератор импульсов;
8 – выход
12
111
2
1
2
1
ω2
ω1
ω3
∑
12324
2
11
Рис. 1.9. Персептронный нейрон
выход равен единице, в противном случае – нулю. Эти системы (и
множество им подобных) получили название персептронов [79].
Персептрон – пороговый элемент, работающий по закону «все или
ничего» в строго фиксированные моменты времени. Если в некоторый момент алгебраическая сумма воздействий, поступивших на нейрон по всем входам, достигнет или превысит некоторую величину θ
(порог нейрона), то через некоторый промежуток времени, называемый синаптической задержкой, на выходе нейрона появится сигнал.
Синаптическая задержка, под которой понимается промежуток времени между приходом входных сигналов и ответом модели нейрона,
является единственным видом временной задержки в схеме. Она принимается постоянной для всех видов входов любых нейронов. Введение постоянной задержки позволяет при построении нейронных сетей синхронизировать работу всех нейронов. С течением времени
структура входов и связей нейронов в сети не изменяется. В. И. Варшавским предложена обобщенная модель порогового нейрона [30].
В этой модели каждому из n входов ставится в соответствие двоичная переменная xi так, что
39
xi =
{
1 при возбуждении i-го входа,
0 при отсутствии возбуждения i-го входа.
Аналогично и выход нейрона может принимать лишь значения
yi =
{
1 − выход нейрона возбужден,
0 − выход нейрона не возбужден.
С учетом синаптической задержки, вызывающей различие на один
такт в значениях аргумента на входах (p) и на выходе (р+1), связь
между состоянием входов хi(р) и состоянием выхода нейрона у(р+1)
описывается уравнением
n
⎡
⎤
y( p + 1) = ⎢sign∑ λixi ( p) − θ ⎥ ,
⎢⎣
⎥⎦
i =1
где λi – «вес» i-гo входа, который может иметь любые числовые значения. Функция sign, как это общепринято в математике, определяется в виде
signz =
{
1 при z < 0,
0 при z ≥ 0.
С появлением мощных компьютеров и получением новых данных
по нейрофизиологии модели искусственного нейрона уточнялись и
принимали более сложные формы. В настоящее время наиболее распространенной считается модель искусственного нейрона, описанная в книге американского исследователя Ф. Уоссермена [79].
Рассмотрим эту модель более детально. Искусственный нейрон
имитирует в первом приближении свойства биологического нейрона.
На вход искусственного нейрона поступает некоторое множество сигналов, каждый из которых является выходом другого нейрона. Каждый вход умножается на соответствующий вес, аналогичный синаптической силе, и все произведения суммируются, определяя уровень
активации нейрона. На рис. 1.10 представлена модель, реализующая эту идею [79]. Хотя сетевые парадигмы весьма разнообразны, в
основе почти всех их лежит эта конфигурация. Здесь множество входных сигналов, обозначенных x1, x2, …, xn, поступает на искусственный нейрон. Эти входные сигналы, в совокупности обозначаемые вектором X, соответствуют сигналам, приходящим в синапсы биологического нейрона. Каждый сигнал умножается на соответствующий
вес ω1, ω2, …, ωn и поступает на суммирующий блок, обозначенный Σ.
Каждый вес соответствует «силе» одной биологической синаптической связи. Множество весов в совокупности обозначается вектором
W. Суммирующий блок, соответствующий телу биологического эле40
мента, складывающий взвешенные входы алгебраически, создавая
выход, будем называть NET. В векторных обозначениях это может
быть компактно записано: NET = XW.
32
311
21
21
ω2
ω1
ω3
∑
12345412
1
2 54161237
31
Рис. 1.10. Искусственный нейрон
Сигнал NET далее, как правило, преобразуется активационной
функцией F и дает выходной нейронный сигнал Y. Активационная
функция может быть пороговой и принимать значения 0 или 1 в зависимости от пороговой величины, линейной функцией, а также нелинейной, что дает большие возможности нейронной сети. Если блок
F сужает диапазон изменения величины NET так, что при любых
значениях NET значения Y принадлежат некоторому конечному интервалу, то F называется «сжимающей» функцией. В качестве «сжимающей» функции часто используется логистическая или «сигмоидальная» (S-образная) функция: F(x) = 1/(1+е–x).
По аналогии с электронными системами активационную функцию
можно считать нелинейной усилительной характеристикой искусственного нейрона [79]. Коэффициент усиления вычисляется как отношение
приращения величины OUT к вызвавшему его небольшому приращению величины NET. Он выражается наклоном кривой при определенном уровне возбуждения и изменяется от малых значений при больших
отрицательных возбуждениях (кривая почти горизонтальна) до максимального значения при нулевом возбуждении и снова уменьшается,
когда возбуждение становится большим положительным. Гроссберг
(1973 г.) обнаружил, что подобная нелинейная характеристика решает
поставленную им дилемму шумового насыщения. Каким образом одна
и та же сеть может обрабатывать как слабые, так и сильные сигналы?
Слабые сигналы нуждаются в большом сетевом усилении, чтобы дать
пригодный к использованию выходной сигнал. Однако усилительные
каскады с большими коэффициентами усиления могут привести к насыщению выхода шумами усилителей (случайными флуктуациями),
которые присутствуют в любой физически реализованной сети. Сильные входные сигналы в свою очередь также будут приводить к насыщению усилительных каскадов, исключая возможность полезного использования выхода. Центральная область логистической функции, имею41
щая большой коэффициент усиления, решает проблему обработки слабых сигналов, в то время как области с падающим усилением на положительном и отрицательном концах подходят для больших возбуждений. Таким образом, нейрон функционирует с большим усилением в
широком диапазоне уровня входного сигнала:
1
= F(NET).
1 + e −NET
Другой широко используемой активационной функцией является гиперболический тангенс: Y = th(x). По форме она сходна с логистической функцией и часто используется биологами в качестве математической модели активации нервной клетки. Подобно логистической функции, гиперболический тангенс является S-образной функцией, но он симметричен относительно начала координат, и в точке
NET = 0 значение выходного сигнала Y равно нулю. В отличие от
логистической функции гиперболический тангенс принимает значения
различных знаков, что оказывается выгодным для ряда сетей [79].
Рассмотренная простая модель искусственного нейрона игнорирует
многие свойства своего биологического двойника. Например, она не
принимает во внимание задержки во времени, которые воздействуют на
динамику системы. Входные сигналы сразу же порождают выходной
сигнал. И, что более важно, она не учитывает воздействий функции
частотной модуляции или синхронизирующей функции биологического нейрона, которые ряд исследователей считают решающими. Несмотря на эти ограничения, сети, построенные из этих нейронов, обнаруживают свойства, сильно напоминающие биологическую систему.
Y=
1.3.3. Нейронные сети
Хотя один нейрон и способен выполнять простейшие процедуры
распознавания, сила нейронных вычислений проистекает от соединений нейронов в сетях [79]. Простейшая сеть состоит из группы
нейронов, образующих слой (рис. 1.11).
ω11
11
3
12
1
12
ω21
1ω
21
ω12
ω22
∑
21
∑
22
1
ω21
∑
Рис. 1.11. Однослойная нейронная сеть: Ο – нейрон
42
21
Отметим, что вершины-круги служат лишь для распределения
входных сигналов. Они не выполняют каких-либо вычислений и поэтому не будут считаться слоем. По этой причине они обозначены
кругами, чтобы отличать их от вычисляющих нейронов, обозначенных квадратами. Каждый элемент из множества входов Х отдельным весом соединен с каждым искусственным нейроном. А каждый
нейрон выдает взвешенную сумму входов в сеть. В искусственных и
биологических сетях многие соединения могут отсутствовать, все
соединения показаны в целях общности. Могут иметь место также
соединения между выходами и входами элементов в слое.
Удобно считать веса элементами матрицы W. Матрица имеет m
строк и n столбцов, где m – число входов, а n – число нейронов. Например, ω23 – это вес, связывающий третий вход со вторым нейроном. Таким образом, вычисление выходного вектора N, компонентами которого являются выходы Y нейронов, сводится к матричному
умножению N = XW, где N и X – векторы-строки.
Хотя созданы сети всех конфигураций, какие только можно себе
представить, послойная организация нейронов копирует слоистые
структуры определенных отделов мозга. Оказалось, что такие многослойные сети обладают большими вычислительными возможностями, чем однослойные, и в последние годы были разработаны алгоритмы для их обучения.
Многослойные сети могут образовываться каскадами слоев [79].
Выход одного слоя является входом для последующего слоя. Подобная
сеть, снова со всеми соединениями, показана на рис. 1.12.
11
3
12
1
12
ω21
ω11
ω12
∑
ω22
∑
1
411
1
ω 21
ω23
∑
∑
21
∑
22
∑
21
1
4np
123345 5637589 123345 5637589
744675 ω 744675 4
Рис. 1.12. Двухслойная нейронная сеть
Многослойные сети не могут привести к увеличению вычислительной мощности по сравнению с однослойной сетью лишь в том случае,
если активационная функция между слоями будет нелинейной. Вычисление выхода слоя заключается в умножении входного вектора
на первую весовую матрицу с последующим умножением (если от43
сутствует нелинейная активационная функция) результирующего
вектора на вторую весовую матрицу: (XW1)W2. Так как умножение
матриц ассоциативно, то X(W1W2).
Это показывает, что двухслойная линейная сеть эквивалентна
одному слою с весовой матрицей, равной произведению двух весовых
матриц. Следовательно, любая многослойная линейная сеть может
быть заменена эквивалентной однослойной сетью. Однослойные сети
весьма ограничены по своим вычислительным возможностям, поэтому для расширения возможностей сетей по сравнению с однослойной
сетью необходима нелинейная активационная функция.
У сетей, рассматриваемых до сих пор, не было обратных связей,
т. е. соединений, идущих от выходов некоторого слоя к входам этого
же слоя или предшествующих слоев. Этот специальный класс сетей,
называемых сетями без обратных связей или сетями прямого распространения, представляет интерес и широко используется. Сети более
общего вида, имеющие соединения от выходов к входам, называются сетями с обратными связями. У сетей без обратных связей нет памяти, их выход полностью определяется текущими входами и значениями весов. В некоторых конфигурациях сетей с обратными связями предыдущие значения выходов возвращаются на входы; выход,
следовательно, определяется как текущим входом, так и предыдущими выходами. По этой причине сети с обратными связями могут
обладать свойствами, сходными с кратковременной человеческой
памятью, сетевые выходы частично зависят от предыдущих входов.
Для использования нейронных сетей любого вида необходим предварительный этап настройки или обучения, в ходе этого итеративного процесса производится корректировка весов сети для реализации
необходимого процесса принятия решения. При обучении, подобно
биологическим системам, которые они моделируют, эти нейронные
сети сами моделируют себя в результате попыток достичь лучшей
модели поведения. Обучение может быть с учителем или без него.
Для обучения с учителем нужен «внешний» учитель, который оценивал бы поведение системы и управлял ее последующими модификациями. При обучении без учителя сеть путем самоорганизации делает требуемые изменения. Рассмотрим простейший случай обучения персептрона.
Персептрон обучают, подавая множество образов по одному на его
вход и подстраивая веса до тех пор, пока для всех образов не будет
достигнут требуемый выход [79]. Допустим, что входные образы нанесены на демонстрационные карты. Каждая карта разбита на квадраты, и от каждого квадрата на персептрон подается вход. Если в
квадрате имеется линия, то от него подается единица, в противном
44
случае – нуль. Множество квадратов на карте задает, таким образом,
множество нулей и единиц, которое и подается на входы персептрона. Цель состоит в том, чтобы научить персептрон включать индикатор при подаче на него множества входов, задающих нечетное число,
и не включать в случае четного.
На рис. 1.13 показана такая персептронная конфигурация [79].
Допустим, что вектор X является образом распознаваемой демонстрационной карты. Каждая компонента (квадрат) X – (x1, x2, …, xn) –
умножается на соответствующую компоненту вектора весов W – (ω1,
ω2, ..., ωn). Эти произведения суммируются. Если сумма превышает порог Θ, то выход нейрона Y равен единице (индикатор зажигается), в противном случае он – ноль. Эта операция компактно записывается в векторной форме как Y = XW, а после нее следует
пороговая операция.
1
ω1
1
ω2
1
1
1
Θ
ω3
ω4
1
ω5
2
ω6
2
ω 17
1
Рис. 1.13. Персептронная система распознавания изображений
Для обучения сети образ X подается на вход и вычисляется выход
Y. Если Y правилен, то ничего не меняется. Однако, если выход неправилен, то веса, присоединенные к входам, усиливающим ошибочный результат, модифицируются, чтобы уменьшить ошибку.
Чтобы увидеть, как это осуществляется, допустим, что демонстрационная карта с цифрой 3 подана на вход и выход Y равен 1 (показывая нечетность). Так как это правильный ответ, то веса не изменяются. Если, однако, на вход подается карта с номером 4 и выход Y
равен единице (нечетный), то веса, присоединенные к единичным
входам, должны быть уменьшены, так как они стремятся дать не45
верный результат. Аналогично, если карта с номером 3 дает нулевой
выход, то веса, присоединенные к единичным входам, должны быть
увеличены, чтобы скорректировать ошибку. Этот метод обучения
может быть реализован следующим образом [73].
1. Подать входной образ и вычислить Y.
2. Если:
а) выход правильный, то перейти на шаг 1;
б) выход неправильный и равен нулю, то добавить все входы к
соответствующим им весам;
в) выход неправильный и равен единице, то вычесть каждый вход
из соответствующего ему веса.
3. Перейти на шаг 1.
За конечное число шагов сеть научится разделять карты на четные и нечетные при условии, что множество цифр линейно разделимо. Это значит, что для всех нечетных карт выход будет больше порога, а для всех четных – меньше. Отметим, что это обучение глобально, т. е. сеть обучается на всем множестве карт.
Важное обобщение алгоритма обучения персептрона, называемое
дельта-правилом, переносит этот метод на непрерывные входы и выходы. Чтобы понять, как оно было получено, шаг 2 алгоритма обучения персептрона может быть сформулирован в обобщенной форме с
помощью введения величины δ, которая равна разности между требуемым или целевым выходом T и реальным выходом Y: δ = T–Y.
Случай, когда δ = 0, соответствует шагу 2а, когда выход правилен и
в сети ничего не изменяется. Шаг 2б соответствует случаю δ > 0, а
шаг 2в – случаю δ < 0.
В любом из этих случаев персептронный алгоритм обучения сохраняется, если δ умножается на величину каждого входа хi и это
произведение добавляется к соответствующему весу. С целью обобщения вводится коэффициент «скорости обучения» η, который умножается на δхi, что позволяет управлять средней величиной изменения весов. В алгебраической форме это выглядит следующим образом:
Δi = ηδxi; ωi (n + 1) = ωi (n) + Δi,
где Δi – коррекция, связанная с i-м входом хi; ωi(n+1) – значение веса
i после коррекции; ωi(n) – значение веса i до коррекции.
Дельта-правило модифицирует веса в соответствии с требуемым и
действительным значениями выхода каждой полярности как для
непрерывных, так и для бинарных входов и выходов. Эти свойства,
расширяющие возможности нейронных сетей, позволили реализовать множество новых приложений и экспертных систем в различных прикладных областях.
46
1.4. Экспертные системы
В начале 80-х годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее
название «экспертные системы» (ЭС). Цель исследований по ЭС состоит в разработке программ, которые при решении задач, трудных
для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. В основном ЭС предназначены для решения практических задач, возникающих в слабо структурированной и трудно формализуемой предметной области.
1.4.1. Архитектура экспертных систем
Экспертные системы – это наиболее распространенный класс интеллектуальных систем, ориентированный на тиражирование опыта квалифицированных специалистов в областях, где качество принятия решений традиционно зависит от уровня экспертизы, например медицина, юриспруденция, геология, экономика, военное дело и
др. В целом процесс функционирования ЭС можно представить следующим образом: пользователь, желающий получить необходимую
информацию, через пользовательский интерфейс посылает запрос к
ЭС; решатель, пользуясь БЗ, генерирует и выдает пользователю подходящую рекомендацию, объясняя ход своих рассуждений при помощи подсистемы объяснений [35].
Наиболее существенным в отношении ЭС является то, что они
действуют чрезвычайно успешно. Уже существуют системы, превосходящие в медицинской диагностике искусных специалистов. То же
самое наблюдается при интерпретации масс-спектрограмм, предсказании возможности заболевания зерновых культур, поиске полезных ископаемых и во многих других областях. Среди причин, приведших экспертные системы к широкому использованию, можно
выделить следующие [82].
Интегрированность. Разработаны инструментальные средства
искусственного интеллекта (ИСИИ), легко интегрирующиеся с другими информационными технологиями и средствами (с CASE, СУБД,
контроллерами, концентраторами данных и т. п.).
Открытость и переносимость. ИСИИ разрабатываются с соблюдением стандартов, обеспечивающих открытость и переносимость.
Использование языков традиционного программирования и рабо!
чих станций. Переход от ИСИИ, реализованных на языках искусственного интелекта (ЛИСП, Пролог и т. п.), к ИСИИ, реализованным на
языках традиционного программирования (С, C++ и т. п.), упростил
47
обеспечение интегрированности, снизил требования приложений ИИ к
быстродействию ЭВМ и объемам оперативной памяти. Использование
рабочих станций (вместо ПК) резко увеличило круг приложений, которые могут быть выполнены на ЭВМ с использованием ИСИИ.
Архитектура клиент–сервер. Разработаны ИСИИ, поддерживающие распределенные вычисления по архитектуре клиент–сервер,
что позволило снизить стоимость оборудования, используемого в
приложениях, децентрализовать приложения, повысить надежность
и общую производительность (так как сокращается количество информации, пересылаемой между ЭВМ, и каждый модуль приложения выполняется на адекватном ему оборудовании).
Проблемно/предметно!ориентированность ЭС. Переход от разработок интеллектуальных систем общего назначения к проблемно/
предметно-ориентированным обеспечивает сокращение сроков разработки приложений; увеличение эффективности использования ИС;
упрощение и ускорение работы эксперта; повторную используемость
информационного и программного обеспечения (объекты, классы,
правила, процедуры).
В основе ЭС находится обширный запас знаний о конкретной проблемной области. В большинстве случаев эти знания организуются
как некоторая совокупность правил, которые позволяют делать заключения на основе исходных данных или предположений. Такой
подход к конструированию систем, опирающийся на использование
знаний, представляет собой революционное изменение с последствиями революционного характера, поскольку традиционное соотношение «Данные + Алгоритм = Программа» заменяется на новую архитектуру, основу которой составляют БЗ и «машина логического вывода», в результате получаем «Знания + Вывод = Система».
Рассмотрим основные характеристики экспертных систем. Специальная группа по ЭС Британского компьютерного сообщества предложила следующее формальное определение [82]. Экспертная система рассматривается как результат создания в компьютере основанной
на знаниях компоненты, соответствующей навыку эксперта, в такой
форме, которая позволяет системе дать разумный совет или принять
разумное решение о функции обработки данных. Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.14) [73].
База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином,
используемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (в первую очередь долгосрочных), хранимых в системе. База зна48
ний в экспертной системе предназначена для хранения долгосрочных (а не текущих) данных, описывающих рассматриваемую область, и правил, описывающих целесообразные преобразования данных этой области.
1234565789
55
2489
55
55
252
329
34
9
1 2 353
3
33
329
Рис. 1.14. Структура статической ЭС
Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которая
приводит к решению задачи. Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществляемый
пользователем-экспертом. Объяснительный компонент объясняет,
как система получила решение задачи (или почему она не получила
решение) и какие знания она при этом использовала, что облегчает
эксперту тестирование системы и повышает доверие пользователя к
полученному результату. Диалоговый компонент служит для организации дружественного интерфейса с пользователем как в ходе решения задач, так и в процессе приобретения знаний и объяснения
результатов работы.
В разработке ЭС участвуют представители следующих специальностей [73].
Эксперт в проблемной области, задачи которой будет решать ЭС.
Он определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС
знаний.
Инженер по знаниям – специалист по разработке ЭС. Помогает эксперту выявить и структурировать знания, необходимые для работы
ЭС; осуществляет выбор того инструментального средства, которое
наиболее подходит для данной проблемной области, и определяет способ представления знаний. Следует отметить, что отсутствие среди
участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.
49
Программист по разработке инструментальных средств, предназначенных для ускорения разработки ЭС. Разрабатывает ИС, содержащее все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.
Экспертная система работает в двух режимах: режиме приобретения знаний и режиме решения задачи (называемом также режимом
консультации или режимом использования ЭС) [73]. В режиме при!
обретения знаний общение с ЭС осуществляет (через посредничество
инженера по знаниям) эксперт. В этом режиме эксперт, используя
компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в
области экспертизы. Правила определяют способы манипулирования с данными, характерные для рассматриваемой области.
Отметим, что режиму приобретения знаний в традиционном подходе к разработке программ соответствуют этапы алгоритмизации,
программирования и отладки, выполняемые программистом. Таким
образом, в отличие от традиционного подхода в случае ЭС разработку
программ осуществляет не программист, а эксперт (с помощью ЭС),
не владеющий программированием.
В режиме консультации общение с ЭС осуществляет конечный
пользователь, которого интересует результат и (или) способ его получения. Необходимо отметить, что в зависимости от назначения ЭС
пользователь может не быть специалистом в данной проблемной области (в этом случае он обращается к ЭС за результатом), или быть
специалистом (в этом случае пользователь может сам получить результат, но он обращается к ЭС с целью либо ускорить процесс получения результата, либо возложить на ЭС рутинную работу). В режиме консультации данные о задаче пользователя после обработки их
диалоговым компонентом поступают в рабочую память. Решатель
на основе входных данных из рабочей памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи. ЭС при
решении задачи не только исполняет предписанную последовательность операции, но и предварительно формирует ее. Если реакция
системы не понятна пользователю, то он может потребовать дополнительного объяснения.
Первые ЭС, использовавшие практически, были статическими.
Они не учитывали изменения окружающего мира, происходящие за
время решения задачи. Более сложную архитектуру имеют динамические ЭС, по сравнению со статической ЭС здесь вводятся два новых
50
компонента: подсистема моделирования внешнего мира и подсистема связи с внешним окружением [73]. Последняя осуществляет связи с внешним миром через систему датчиков и контроллеров. Кроме
того, традиционные компоненты статической ЭС (база знаний и машина вывода) претерпевают существенные изменения, чтобы отразить временную логику происходящих в реальном мире событий.
1.4.2. Основные этапы разработки экспертных систем
В настоящее время сложилась определенная технология разработки ЭС, которая включает шесть основных этапов: идентификацию, концептуализацию, формализацию, выполнение, тестирование
и опытную эксплуатацию (рис. 1.15) [73].
123245
%#
82
878571
67895
2 475
28
58242
58
2
422
6875
28
72
42
2
87!88
"5
87!81
5
28
5488
8785775
28
57242
#77
2$
Рис. 1.15. Основные этапы разработки ЭС
Этап идентификации. Идентификация задачи заключается в составлении неформального (вербального) описания, в котором указываются: общие характеристики задачи; подзадачи, выделяемые
внутри данной задачи; ключевые понятия (объекты), их входные (выходные) данные; предположительный вид решения, а также знания,
относящиеся к решаемой задаче. В процессе идентификации задачи
инженер по знаниям и эксперт работают в тесном контакте. Начальное неформальное описание задачи экспертом используется инженером по знаниям для уточнения терминов и ключевых понятий. Эксперт корректирует описание задачи, объясняет, как решать ее и какие рассуждения лежат в основе того или иного решения. После нескольких циклов, уточняющих описание, эксперт и инженер по знаниям получают окончательное неформальное описание задачи.
51
Этап концептуализации. На данном этапе проводится содержательный анализ проблемной области, выявляются используемые
понятия и их взаимосвязи, определяются методы решения задач [73].
Этап завершается созданием модели предметной области (МПО),
включающей основные концепты и отношения. На этапе концептуализации определяются следующие особенности задачи: типы доступных данных; исходные и выводимые данные; подзадачи общей задачи; используемые стратегии и гипотезы; виды взаимосвязей между
объектами ПО, типы используемых отношений (иерархия, причина –
следствие, часть – целое и т. п.); процессы, возникающие в ходе решения; состав знаний, используемых при решении задачи; возможные типы ограничений и др.
Существует два подхода к процессу построения модели предметной области, которая является целью разработчиков ЭС на этапе концептуализации. Признаковый (или атрибутивный) подход предполагает наличие полученной от экспертов информации в виде троек
объект – атрибут – значение атрибута, а также наличие обучающей
информации. Этот подход развивается в рамках направления, получившего название формирование знаний или «машинное обучение»
(machine learning).
Второй подход, называемый структурным (или когнитивным),
заключается в выделении элементов ПО, их взаимосвязей и семантических отношений.
Для атрибутивного подхода характерно наличие наиболее полной информации о ПО: об объектах, их атрибутах и о значениях атрибутов. Кроме того, существенным моментом является использование дополнительной обучающей информации, которая задается группированием объектов в классы по тому или иному содержательному
критерию.
Структурный подход к построению МПО предполагает выделение
следующих когнитивных элементов знаний: понятия, взаимосвязи,
метапонятия, семантические отношения. Выделяемые понятия ПО
должны образовывать систему, под которой понимается совокупность
понятий, обладающая следующими свойствами: уникальностью (отсутствием избыточности); полнотой (достаточно полным описанием
различных процессов, фактов, явлений и т. д. предметной области);
достоверностью (валидностью – соответствием выделенных единиц
смысловой информации их реальным наименованиям) и непротиворечивостью (отсутствием омонимии).
Последним этапом построения МПО при концептуальном анализе
является установление семантических отношений между выделенными понятиями и метапонятиями. Установить семантические от-
52
ношения – это значит определить специфику взаимосвязи, полученной в результате применения тех или иных методов. Для этого необходимо каждую зафиксированную взаимосвязь осмыслить и отнести
ее к тому или иному типу отношений.
Существует около 200 базовых отношений, например: «часть –
целое», «род – вид», «причина – следствие», пространственные, временные и др. [73]. Для каждой ПО помимо общих базовых отношений могут существовать и уникальные отношения. Различные методы формирования системы понятий и метапонятий, установления
взаимосвязей и семантических отношений в разных сочетаниях применяются на этапе концептуализации при построении МПО.
Этап формализации. Теперь все ключевые понятия и отношения
выражаются на некотором формальном языке, который либо выбирается из числа уже существующих, либо создается заново. Выходом
этапа формализации является описание того, как рассматриваемая
задача может быть представлена в выбранном или разработанном
формализме. Сюда относится указание способов представления знаний (фреймы, сценарии, семантические сети и т. д.) и определение
способов манипулирования этими знаниями (логический вывод, аналитическая модель, статистическая модель и др.) и интерпретации
знаний.
На этапе формализации БЗ происходит выбор метода представления знаний. В рамках выбранного формализма осуществляется проектирование логической структуры базы знаний. Методы и модели
представления знаний изложены в подразд. 1.2.
Этап выполнения. Цель этого этапа – создание одного или нескольких прототипов ЭС, решающих требуемые задачи. Затем на
данном этапе по результатам тестирования и опытной эксплуатации
создается конечный продукт, пригодный для промышленного использования. Разработка прототипа состоит в программировании его компонентов или выборе их из известных инструментальных средств и
наполнении БЗ.
После разработки первого прототипа ЭС-1 круг предлагаемых для
решения задач расширяется и собираются пожелания и замечания,
которые должны быть учтены в очередной версии системы ЭС-2. Осуществляется развитие ЭС-1 путем добавления «дружественного»
интерфейса, средств для исследования БЗ и цепочек выводов, генерируемых системой, а также средств для сбора замечаний пользователей и средств хранения библиотеки задач, решенных системой.
Выполнение экспериментов с расширенной версией ЭС-1, анализ
пожеланий и замечаний служат отправной точкой для создания второго прототипа ЭС-2. Процесс разработки ЭС-2 итеративный. Он мо-
53
жет продолжаться от нескольких месяцев до нескольких лет в зависимости от сложности ПО, гибкости выбранного представления знаний и степени соответствия управляющего механизма решаемым задачам (возможно, потребуется разработка ЭС-3 и т. д.). При разработке ЭС-2, кроме перечисленных, решаются следующие задачи [73]:
– анализ функционирования системы при значительном расширении БЗ;
– исследование возможностей системы в решении более широкого
круга задач и принятие мер для обеспечения таких возможностей;
– анализ мнений пользователей о функционировании ЭС;
– разработка системы ввода-вывода, осуществляющей анализ или
синтез предложений ограниченного ЕЯ, позволяющей взаимодействовать с ЭС-2 в форме, близкой к форме стандартных учебников
для данной области.
Если ЭС-2 успешно прошла этап тестирования, то она может классифицироваться как промышленная ЭС.
Этап тестирования. В ходе данного этапа производится оценка
выбранного способа представления знаний в ЭС в целом. Для этого
инженер по знаниям подбирает примеры, обеспечивающие проверку
всех возможностей разработанной ЭС. Различают следующие источники неудач в работе системы: тестовые примеры, ввод-вывод, правила вывода, управляющие стратегии [73].
Показательные тестовые примеры являются наиболее очевидной
причиной неудачной работы ЭС. В худшем случае тестовые примеры
могут оказаться вообще вне предметной области, на которую рассчитана ЭС, однако чаще множество тестовых примеров оказывается
слишком однородным и не охватывает всю предметную область. Поэтому при подготовке тестовых примеров следует классифицировать
их по подпроблемам ПО, выделяя стандартные случаи, определяя
границы трудных ситуаций и т. п.
Ввод-вывод характеризуется данными, приобретенными в ходе
диалога с экспертом, и заключениями, предъявленными ЭС в ходе
объяснений. Методы приобретения данных могут не давать требуемых результатов, так как, например, задавались неправильные вопросы или собрана не вся необходимая информация. Кроме того, вопросы системы могут быть трудными для понимания, многозначными
и не соответствующими знаниям пользователя. Ошибки при вводе
могут возникать также из-за неудобного для пользователя входного
языка. В ряде приложений для пользователя удобен ввод не только в
печатной, но и в графической или звуковой форме.
Выходные сообщения (заключения) системы могут оказаться непонятны пользователю (эксперту) по разным причинам. Например,
54
их может быть слишком много или, наоборот, слишком мало. Также
причиной ошибок может являться неудачная организация, упорядоченность заключений или неподходящий пользователю уровень
абстракций с непонятной ему лексикой.
Наиболее распространенный источник ошибок в рассуждениях
касается правил вывода. Важная причина здесь часто кроется в отсутствии учета взаимозависимости сформированных правил. Другая
причина заключается в ошибочности, противоречивости и неполноте используемых правил. Если неверна посылка правила, то это может привести к употреблению правила в неподходящем контексте.
Если ошибочно действие правила, то трудно предсказать конечный
результат. Правило может быть ошибочно, если при корректности
его условия и действия нарушено соответствие между ними.
Нередко к ошибкам в работе ЭС приводят применяемые управляющие стратегии. Изменение стратегии бывает необходимо, например, если ЭС анализирует сущности в порядке, отличном от «естественного» для эксперта. Последовательность, в которой данные рассматриваются ЭС, не только влияет на эффективность работы системы, но и может приводить к изменению конечного результата. Так,
рассмотрение правила А до правила В способно привести к тому, что
правило В всегда будет игнорироваться системой. Изменение стратегии бывает также необходимо и в случае неэффективной работы ЭС.
Кроме того, недостатки в управляющих стратегиях могут привести к
чрезмерно сложным заключениям и объяснениям ЭС.
Критерии оценки ЭС зависят от точки зрения. Например, при тестировании ЭС-1 главным в оценке работы системы является полнота
и безошибочность правил вывода. При тестировании промышленной системы превалирует точка зрения инженера по знаниям, которого в первую очередь интересует вопрос оптимизации представления и манипулирования знаниями. И, наконец, при тестировании
ЭС после опытной эксплуатации оценка производится с точки зрения пользователя, заинтересованного в удобстве работы и получении практической пользы.
Этап опытной эксплуатации. На этом этапе проверяется пригодность ЭС для конечного пользователя. Пригодность ЭС для пользователя определяется в основном удобством работы с ней и ее полезностью. Под полезностью ЭС понимается ее способность в ходе диалога
определять потребности пользователя, выявлять и устранять причины неудач в работе, а также удовлетворять указанные потребности пользователя (решать поставленные задачи). В свою очередь, удобство работы с ЭС подразумевает естественность взаимодействия с ней
(общение в привычном, не утомляющем пользователя виде), гибкость
55
ЭС (способность системы настраиваться на различных пользователей, а также учитывать изменения в квалификации одного и того
же пользователя) и устойчивость системы к ошибкам (способность
не выходить из строя при ошибочных действиях неопытного
пользователя).
В ходе разработки ЭС почти всегда осуществляется ее модификация. Выделяют следующие виды модификации системы: переформулирование понятий и требований, переконструирование представления знаний в системе и усовершенствование прототипа.
56
2. РАСПОЗНАВАНИЕ ОБРАЗОВ
Способность «распознавать» считается основным свойством человеческих существ, как, впрочем, и других живых организмов. Образ представляет собой описание объекта. Каждое мгновение человек совершает акт распознавания, опознает окружающие объекты и
в соответствии с этим совершает определенные действия. В задачах
распознавания образов можно выделить два основных направления [77]:
1) изучение способностей к распознаванию, которыми обладают
человеческие существа и другие живые организмы;
2) развитие теории и методов построения устройств, предназначенных для решения отдельных задач распознавания образов в определенных прикладных областях.
Первое направление связано с такими дисциплинами как психология, физиология и биология, второе же имеет дело в первую очередь с техникой, вычислительными машинами и информатикой. Надо
отметить, что такое разделение весьма размыто, поскольку для разработки эффективных моделей искусственного интеллекта необходима тесная интеграция специалистов обоих направлений В данном
разделе речь будет идти о вычислительных машинах, информатике и
технических аспектах построения автоматических систем распознавания образов.
В соответствии с характером распознаваемых образов акты распознавания можно разделить на два основных типа: распознавание
конкретных объектов и распознавание абстрактных объектов [77].
Процесс, включающий распознавание зрительных и слуховых образов, можно определить как «сенсорное» распознавание. Процессы
этого типа обеспечивают идентификацию и классификацию пространственных и временных образов. С другой стороны, существуют процессы, которые обеспечивают распознавание абстрактных объектов,
и их можно определить как «понятийное» распознавание, в отличие
от зрительного или слухового распознавания. Примерами пространственных образов служат символы, отпечатки пальцев, синоптические карты, физические объекты и рисунки. В разряд временных образов входят речь, переменные сигналы, электрокардиограммы, характеристики цели и временные ряды.
С точки зрения психофизиологии, распознавание образов можно
рассматривать как процесс взаимодействия индивида с определенным физическим раздражителем. Когда индивид воспринимает образ, он реализует процесс индуктивного вывода и устанавливает ассоциативную связь между своим восприятием и определенными обобщенными понятиями или «ориентирами», установленными им на
57
основании прошлого опыта. В сущности, распознавание человеком
образов можно свести к вопросу оценки относительных шансов на
то, что исходные данные соответствуют тому или иному из известных множеств статистических совокупностей с учетом прошлого опыта, а также априорной информации. Следовательно, задачу распознавания образов можно рассматривать как задачу установления различий между исходными данными посредством поиска признаков (инвариантных свойств) на множестве объектов, образующих определенную совокупность. Проще говоря, распознавание образов можно
определить как отнесение исходных данных к определенному классу
с помощью выделения существенных признаков или свойств, характеризующих эти данные, из общей массы несущественных деталей.
К примеру, прогноз погоды можно интерпретировать как задачу
распознавания образов. Исходными данными в этом случае служат
синоптические карты. Система интерпретирует их, выделяя существенные признаки и формируя на их основе прогноз. Как задачу распознавания образов можно рассматривать и постановку медицинского
диагноза. Симптомы служат исходными данными для распознающей
системы, которая на основе их анализа идентифицирует заболевание. Система распознавания символов представляет собой систему
распознавания образов, в которую в качестве исходных данных вводятся оптические сигналы и которая идентифицирует названия символов. В системе распознавания речи произнесенное слово идентифицируется посредством анализа воспринятого системой звукового
сигнала [77].
Предмет распознавания образов объединяет ряд научных дисциплин; их связывает поиск решения общей задачи – выделить элементы, принадлежащие конкретному классу, среди множества размытых элементов, относящихся к нескольким классам. Под классом
образов понимается некоторая категория, определяющаяся рядом
свойств, общих для всех ее элементов. Образ – это описание любого
элемента как представителя соответствующего класса образов. В случае, когда множество образов разделяется на непересекающиеся классы, желательно использовать для отнесения этих образов к соответствующим классам какое-либо автоматическое устройство. Считывание и обработка погашенных банковских чеков являются примером задачи распознавания образов. Подобные задачи могут выполняться и людьми; машина, однако, справляется с ними много быстрее. С другой стороны, некоторые задачи распознавания таковы, что
человек едва ли в состоянии решать их. Примером задач такого рода
служит выделение из множества морских сигналов и шумов тона подводной лодки посредством анализа подводных звуковых сигналов [77].
58
Наиболее простым решением задачи распознавания считается применение к отдельным предъявленным образам ряда простых тестов
для выделения признаков каждого класса. Совокупность этих тестов
должна различать все допустимые образы из разных классов. Для примера рассмотрим следующие пять английских букв: C O I N S.
Эти буквы можно классифицировать, применив тесты на наличие
таких признаков, как замкнутая кривая, изгиб, двойной изгиб, вертикальный отрезок, короткий отрезок. Если следовать такому интуитивному подходу, то построение автоматической системы распознавания образов может показаться довольно простой задачей. Не
существует, однако, общей теории, позволяющей определить, какие
из всего множества мыслимых тестов следует применить к предъявленным образам. Очень ограниченное количество или небрежный
выбор тестов не дадут возможности получить характеристики распознавания предъявленных образов, достаточные для отнесения их
к соответствующим классам. Слишком большое количество тестов, с
другой стороны, может необоснованно усложнить вычисления. Отсутствует какое-либо общее правило для получения неких ориентиров,
способствующих определению набора таких тестов. Данный подход в
большой степени зависит от опыта и технической интуиции разработчика, поэтому зачастую не дает удовлетворительного решения задач
распознавания образов, встречающихся в практической деятельности.
Тщательное изучение задач, возникающих в процессе распознавания образов, позволило найти более эффективные подходы. В частности, использовать тот факт, что между образами и классами образов существует некое иерархическое упорядочение (рис. 2.1) [77].
1234567
45229547
234567
47 6255
6
42
1
1
89
2
297
7 527 9527
45229547
234567
942
1957
1
154937
7
527
Рис. 2.1. Иерархия отношений между образами и классами образов
Буквы алфавитов и цифры являются образами, если буквенноцифровые символы рассматриваются как класс образов. Многие информационные системы нуждаются в устройстве для распознавания
печатных букв и цифр, набранных различными шрифтами, и рукописных букв и цифр, написанных различными почерками. Это озна59
чает, что имеется 62 класса образов, представляющих 26 прописных
букв, 26 строчных букв и 10 цифр. Разнообразие наборных шрифтов
и способов написания определенной буквы или цифры порождает
образы, принадлежащие к определяющему данный символ классу.
Для того чтобы пояснить подход, остановимся на задаче распознавания письменных знаков. Конкретная буква или цифра вне зависимости от того, как она напечатана или написана, обладает рядом общих признаков, которые используются в качестве средств ее
идентификации. Буквы и цифры идентифицируются и классифицируются согласно отмеченным у них таким признакам. Следовательно, основные функции системы распознавания образов заключаются
в обнаружении и выделении общих признаков образов, описывающих объекты, принадлежащие к одному и тому же классу образов,
узнавании этого образа в любой другой обстановке и отнесении его к
одному из заданных классов.
2.1. Основные проблемы распознавания образов
Среди проблем, возникающих при построении автоматической
системы распознавания образов, можно выделить несколько основных и наиболее важных [77]. Первая проблема связана с представлением исходных данных измерений распознаваемого объекта – это
проблема чувствительности. Каждая измеренная величина является некоторой характеристикой образа или объекта. Допустим, например, что образами являются буквенно-цифровые символы. В таком случае в датчике может быть успешно использована измерительная сетчатка, подобно приведенной на рис. 2.2, а. Если сетчатка состоит из п элементов, то результаты измерений можно представить в
виде вектора измерений или вектора образа:
⎡ x1 ⎤
⎢x ⎥
X = ⎢ 2 ⎥,
⎢1 ⎥
⎢⎣ xn ⎥⎦
(2.1)
где каждый элемент xi принимает, например, значение 1, если через
i-ю ячейку сетчатки проходит изображение символа, и значение 0 в
противном случае. В последующем изложении будем называть векторы образов просто образами в тех случаях, когда это не приводит к
изменению смысла.
Второй пример измерений представлен на рис. 2.2, б. Здесь образами служат непрерывные функции (звуковых сигналов) переменной t. Если измерение значений функций производится в дискретных
60
a)
1
1
1
1
1
1
1
1
1
1
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
б)
21112 21122
21132
21112
11 12 13
11
1
Рис. 2.2. Две простые схемы порождения вектора образа:
а – измерительная сетчатка распознавания буквенно!цифровых
символов; б – непрерывные функции звуковых сигналов
точках t1, t2, ..., tn, вектор образа можно сформировать, приняв
x1 = f(t1), x2 = f(t2), …, xn = f(tn).
Векторы образов будут обозначаться прписными буквами, выделенными жирным шрифтом, например X, Y и Z. Условимся, что эти
векторы везде будут вектор-столбцами, как в уравнении (2.1). Эквивалентная запись X = (x1, х2,..., хn)′, где штрих обозначает транспонирование, будет также использоваться в тексте.
Векторы образов содержат всю поддающуюся измерению информацию об образах. Процесс измерения, которому подвергаются объекты определенного класса образов, можно рассматривать как процесс
кодирования, заключающийся в присвоении каждой характеристике образа символа из множества элементов алфавита {хi}. Когда измерения приводят к информации, представленной действительными числами, часто оказывается полезным рассматривать векторы
образов в качестве точек n-мерного евклидова пространства. Множество образов, принадлежащих одному классу, соответствует совокупности точек, рассеянных в некоторой области пространства
измерений.
Простой пример евклидова пространства приведен на рис. 2.3 для
случая двух классов, обозначенных ω1 и ω2 [77]. В этом примере предполагается, что классы ω1 и ω2 представ11
ω2
ляют соответственно группы футболистов и жокеев. Каждый «образ» характеризуется результатами двух изω1
мерений – ростом и весом. Векторы образов имеют, следовательно, вид
X = (x1, x2)′, где параметр x1 – рост,
12
а параметр х2 – вес. Каждый вектор
образа можно считать точкой дву- Рис. 2.3. Два непересекающихся
мерного пространства. Как следует класса образов
61
из рис. 2.3, эти два класса образуют непересекающиеся множества,
что объясняется характером измерявшихся параметров.
На практике, однако, далеко не всегда удается выбрать параметры измерения так, чтобы получить строго непересекающиеся множества. В частности, если для рассматриваемой задачи в качестве критериев разбиения
выбран рост и вес, может наблюдаться существенное пересечение классов,
представляющих профессиональных футболистов и баскетболистов [77].
Вторая задача распознавания образов связана с выделением характерных признаков или свойств из полученных исходных данных
и снижением размерности векторов образов. Эту задачу часто определяют как задачу предварительной обработки и выбора признаков.
Признаки класса образов представляют собой характерные свойства,
общие для всех образов данного класса. Признаки, характеризующие различия между отдельными классами, можно интерпретировать как межклассовые признаки. Внутриклассовые признаки, общие
для всех рассматриваемых классов, не несут полезной информации с
точки зрения распознавания и могут не приниматься во внимание.
Выбор признаков считается одной из важных задач, связанных с
построением распознающих систем. Получение полного набора различительных признаков для всех классов упрощает процесс распознавания и классификации образов, которые сводятся к процессу простого сопоставления или процедурам типа просмотра таблиц. В большинстве практических задач распознавания, однако, определение
полного набора различительных признаков оказывается делом исключительно трудным, если вообще не невозможным. К счастью, из
исходных данных обычно удается извлечь некоторые из различительных признаков и использовать их для упрощения процесса автоматического распознавания образов. В частности, размерность векторов измерений можно снизить с помощью преобразований, обеспечивающих минимизацию потери информации.
После того как данные, собранные о подлежащих распознаванию
образах, представлены точками или векторами измерений в пространстве образов, предоставим машине выяснить, какому классу образов
эти данные соответствуют – в этом и состоит третья основная задача
распознавания образов. Пусть машина предназначена для различения
М классов, обозначенных ω1, ω2, …, ωM. В таком случае пространство
образов можно считать состоящим из М областей, каждая из которых
содержит точки, соответствующие образам из одного класса. При этом
задача распознавания может рассматриваться как построение границ
областей решений, разделяющих М классов, исходя из зарегистрированных векторов измерений. Пусть эти границы определены, например, решающими функциями d1(X), d2(X), …, dM(X). Эти функции,
62
называемые также дискриминантными функциями, представляют
собой скалярные и однозначные функции образа X. Если di(X) > dj(X)
для всех i, j = 1, 2, ..., М, i ≠ j, то образ X принадлежит классу ω1.
Другими словами, если i-я решающая функция di(X) имеет наибольшее значение, то X ∈ ωi. Подобная схема автоматической классификации на основе процесса принятия решения показана на рис. 2.4.
Поступающий сигнал X обрабатывается с помощью набора генераторов решающих функций ГРФ [77].
123
1
123
11112
12112
1
2
123
123
11112
4567899
5
588
x ∈ ω1,
89 131123435678111129
1
12112
Рис. 2.4. Блок!схема системы классификации образов
Существует ряд способов получения решающей функции. Решающие функции могут быть определены на основе априорной информации о распознаваемых образах. Либо могут быть выдвинуты разумные допущения о виде решающих функций, если имеются лишь качественные сведения относительно образов. В последнем случае границы областей решений могут существенно отклоняться от истинных, поэтому необходимо создавать систему, способную приходить к
удовлетворительному результату посредством ряда последовательных корректировок.
Но, как правило, существуют лишь немногочисленные (если они
вообще имеются!) априорные сведения о распознаваемых образах.
В этих условиях при построении распознающей системы лучше всего
использовать обучающую процедуру. На первом этапе выбираются
произвольные решающие функции, и затем в процессе выполнения
итеративных шагов обучения эти решающие функции доводятся до
оптимального либо приемлемого вида. Классификацию объектов с
помощью решающих функций можно осуществлять самыми различными способами.
Решение задачи предварительной обработки и выделения признаков и задачи получения оптимального решения и классификации
обычно связано с необходимостью оценки и оптимизации ряда параметров. Это приводит к задаче оценки параметров. Кроме того, понятно, что и процесс выделения признаков, и процесс принятия решений могут быть существенно усовершенствованы за счет исполь63
зования информации, заключенной в контексте образов. Информация, содержащаяся в контексте, может быть измерена с помощью
условных вероятностей, лингвистических статистик и близких вариантов. На рис. 2.5 представлена функциональная блок-схема адаптивной системы распознавания образов [77]. Функциональные блоки выделены для удобства анализа, что отнюдь не означает их изоляцию и отсутствие межблочного взаимодействия. Хотя различия между
получением оптимального решения и предварительной обработкой или
выделением признаков несущественны, идея функционального разделения создает четкую картину, поясняющую задачу распознавания
образов.
9
245
354234
2347
626942
1234567 9939
56543 9 756 869
35
869
35
7
56
5
2312
84912
5292
Рис. 2.5. Функциональная блок!схема адаптивной системы распозна!
вания образов
Объекты (образы), подлежащие распознаванию и классификации
с помощью автоматической системы распознавания образов, должны обладать набором измеримых характеристик. Когда для целой
группы образов результаты соответствующих измерений оказываются аналогичными, считается, что эти объекты принадлежат одному
классу. Цель работы системы распознавания образов заключается в
том, чтобы на основе собранной информации определить класс объектов с характеристиками, аналогичными измеренным у распознаваемых объектов. Правильность распознавания зависит от объема различающей информации, содержащейся в измеряемых характеристиках, и эффективности использования этой информации.
2.2. Подходы к распознаванию образов
При построении систем автоматического распознавания образов
используют три основных способа описания и разделения классов
64
образов [77]. Первый способ основан на принципе перечисления членов класса. Когда класс характеризуется некоторыми общими свойствами, присущими всем его членам, построение системы распознавания может основываться на принципе общности свойств. Когда
при рассмотрении класса обнаруживается тенденция к образованию
кластеров в пространстве образов, построение системы распознавания может основываться на принципе кластеризации. Под кластером будем понимать группу объектов (образов), образующих в пространстве описания компактную в некотором смысле область. Теперь рассмотрим каждый из принципов более детально.
Принцип перечисления членов класса. При задании класса перечислением образов, входящих в его состав, необходимо реализовать
процесс автоматического распознавания образов сравнением их с эталоном [77]. Система распознавания должна запомнить множество
образов, принадлежащих одному классу. При предъявлении системе
незнакомых (новых) образов происходит последовательное сравнение их с хранящимися в памяти. Система распознавания образов
относит новый образ к тому классу, к которому принадлежал находящийся в памяти системы образ, совпавший с новым. Этот метод
позволяет строить недорогие системы распознавания, которые в отдельных прикладных областях не плохо справляются со своими задачами. Однако метод перечисления членов класса работает удовлетворительно, если выборка образов близка к идеальной.
Принцип общности свойств. В случае, когда класс задан с помощью свойств, общих для всех входящих в его состав членов, реализуется процесс автоматического распознавания с выделением и обработкой признаков. При этом делается допущение о том, что образы,
принадлежащие одному и тому же классу, обладают рядом общих
свойств или признаков, отражающих подобие образов. Эти общие
свойства вводятся в память системы распознавания. Когда системе
предъявляется неклассифицированный образ, то выделяется набор
описывающих его признаков. Система зачисляет предъявленный для
распознавания образ в класс, характеризующийся системой признаков, подобных признакам этого образа.
Очевидно, что эта концепция распознавания во многих отношениях превосходит распознавание по принципу перечисления членов
класса. Для запоминания признаков класса требуется значительно
меньше памяти, чем для хранения всех объектов, входящих в класс.
Поскольку признаки, характеризующие класс в целом, обладают
инвариантностью, принцип сопоставления признаков допускает вариацию характеристик отдельных образов. Процедура сопоставления с эталоном, с другой стороны, не допускает существенных вариа65
ций характеристик отдельных образов. Если все признаки, определяющие класс, можно найти по имеющейся выборке образов, то процесс распознавания сводится просто к сопоставлению по признакам.
Обращение к этому принципу распознавания часто связано с необходимостью развития методов выбора оптимальных признаков.
Принцип кластеризации. Класс можно рассматривать как кластер, когда образы некоторого класса представляют собой векторы,
компонентами которых являются действительные числа. Построение систем распознавания, основанных на реализации данного принципа, определяется взаимным пространственным расположением
отдельных кластеров. Если кластеры, соответствующие различным
классам, разнесены достаточно далеко друг от друга, то с успехом
можно воспользоваться сравнительно простыми схемами распознавания, например такими, как классификация по принципу минимального расстояния. Если же кластеры перекрываются, приходится обращаться к более сложным методам разбиения пространства
образов. Перекрытие кластеров является результатом неполноценности доступной информации и шумовых искажений результатов
измерения. Поэтому степень перекрытия часто удается уменьшить,
увеличивая количество и качество измерений, выполняемых над образами некоторого класса.
Для реализации основных принципов построения автоматических систем распознавания образов существуют три типа методологии: эвристическая, математическая и лингвистическая (синтаксическая). В реальности системы распознавания создаются на основе
комбинации этих методов [77].
Эвристические методы. За основу эвристического подхода взяты
интуиция и опыт человека; в нем используются принципы перечисления членов класса и общности свойств. Обычно системы, построенные такими методами, включают набор специфических процедур,
разработанных применительно к конкретным задачам распознавания. Необходимо отметить, что структура и качество эвристической
системы в значительной степени определяются одаренностью и опытом разработчиков, поскольку решение каждой конкретной задачи
требует использования специфических приемов разработки системы.
Математические методы. В основу математического подхода
положены правила классификации, которые формулируются и выводятся в рамках определенного математического формализма с помощью принципов общности свойств и кластеризации. Математические методы построения систем распознавания можно разделить
на два класса: детерминистские и статистические. Детерминистский
подход базируется на математическом аппарате, не использующем в
66
явном виде статистические свойства изучаемых классов образов. Примером детерминистского подхода могут служить итеративные алгоритмы обучения. Статистический подход основывается на математических правилах классификации, которые формулируются и выводятся в
терминах математической статистики. Построение статистического
классификатора в общем случае предполагает использование байесовского классификационного правила и его разновидностей. Это правило
обеспечивает получение оптимального классификатора в тех случаях,
когда известны плотности распределения для всех совокупностей образов и вероятности появления образов для каждого класса.
Лингвистические (синтаксические) методы. Если описание образов производится с помощью непроизводных элементов (подобразов) и их отношений, то для построения автоматических систем распознавания применяется лингвистический или синтаксический подход с использованием принципа общности свойств. Образ можно описать с помощью иерархической структуры подобразов, аналогичной
синтаксической структуре языка. Это обстоятельство позволяет применять при решении задач распознавания образов теорию формальных языков. Предполагается, что грамматика образов содержит конечные множества элементов, называемые переменными, непроизводными элементами и правилами подстановки. Характер правил
подстановки определяет тип грамматики. Среди наиболее изученных
грамматик можно отметить регулярные, бесконтекстные и грамматики непосредственно составляющих. Ключевыми моментами данного подхода являются выбор непроизводных элементов образа, объединение этих элементов и связывающих их отношений в грамматики образов и, наконец, реализация в соответствующем языке процессов анализа и распознавания. Такой подход особенно полезен при
работе с образами, которые либо не могут быть описаны числовыми
измерениями, либо столь сложны, что их локальные признаки идентифицировать не удается и приходится обращаться к глобальным
свойствам объектов.
Выбор метода синтеза системы еще не решает до конца проблему
составления конкретной программы и проблемы реализации. В большинстве случаев у нас в распоряжении имеются репрезентативные
образы, представляющие каждый из рассматриваемых классов.
В таких ситуациях можно воспользоваться методами распознавания,
называющимися «обучением с учителем» [77]. В схеме обучения с
учителем система «обучается» распознавать образы с помощью разного рода адаптивных схем. Ключевыми элементами такого подхода
являются обучающие множества образов, классификация которых
известна, и реализация соответствующей процедуры обучения.
67
В некоторых прикладных задачах принадлежность к определенным классам элементов обучающего множества неизвестна. В таких
случаях можно обратиться к методам распознавания образов, называющимся «распознаванием без учителя».
Как указывалось ранее, распознавание по схеме «обучение с учителем» характеризуется тем, что известна правильная классификация каждого обучающего образа. В случае «обучения без учителя»
требуется конкретно изучить классы образов, которые имеются в данной информации. Обучение происходит только на этапе построения
(или коррекции в связи с поступлением новой информации) системы
распознавания. Как только система, работая с обучающим множеством образов, добивается приемлемых результатов, ей предлагается реальная задача распознавания пробных объектов, взятых из той
среды, в которой системе предстоит работать. Качество распознавания в существенной степени определяется тем, насколько хорошо
обучающие образы представляют реальные данные, с которыми система будет сталкиваться в процессе нормальной эксплуатации.
2.3. Процедуры распознавания
2.3.1. Поэлементное распознавание
На примере поэлементного распознавания акустических образов
рассмотрим основные процедуры распознавания [55]. Для этого построим некоторый алфавит акустических образов, содержащий множество собственных функций:
Ψ = { ψ1, ψ2, ψ3, ..., ψi, ..., ψm},
где ψi – один из элементов множества Ψ, т. е. некоторый определенный образ; m – число образов во взятом алфавите.
Каждый образ имеет некоторое число реализаций, которые для
каждого образа образуют некоторое множество:
A = {a1, a2, a3,..., aj ,..., aT },
где aj – отдельная реализация; Т – число различных реализаций. Обычно Т >> m, т. е. число реализаций гораздо больше числа образов или
классов. Приведем для пояснения несколько примеров.
Пусть множество классов составляют русские гласные фонемы.
Число гласных 6: а, о, у, и, ы, э – это наиболее стабильные русские
фонемы. Каждая из гласных, например гласная о, включает множество реализаций: ведь эта фонема может быть произнесена на множество ладов (и записана множеством почерков). Множество произносимых звуков о и есть множество реализаций этого образа или этого
68
класса. Для другого образа, например образа и, будет другое множество реализаций. Справедливость приведенного неравенства очевидна: число реализаций заведомо больше числа классов.
Если образ выражается собственной функцией, то каждая реализация может быть изображена некоторой пси-функцией. Отсюда благодаря статистическому смыслу волновой функции следует, что всякая задача распознавания является статистической.
В самом деле, она ставится так: дана некоторая пси-функция ψx;
спрашивается, реализацией какого образа она является? Этот вопрос должен решаться по схеме процедуры распознавания. Чаще всего
решение дает лишь вероятность того, что сигнал относится к какому-то классу.
Множество реализаций данного образа образуется по эталону. За
эталон принимается реализация, в каком-то смысле наиболее близкая образу. Исходя из эталона строится совокупность реализаций.
Поясним примером, взятым из работы сцептрона [55]. Пусть дана
сцептронограмма, представляющая некоторую реализацию неизвестного нам образа. Имеется набор масок, соответствующих разным образам. Эти маски принимаются за эталонные. Практически исключен случай, чтобы сигнал в точности соответствовал эталону, т. е.
данная реализация совпала с эталонной. Однако возможно наложением масок и оценкой близости отнести реализацию к определенному
классу, образу если не с достоверностью, то с достаточной вероятностью. Математический смысл этого утверждения основан на статистическом характере пси-функции, квадрат модуля которой выражает плотность вероятности иметь те или иные значения признаков.
Признаки в данном случае – это собственные значения коммутирующих операторов, составляющих определенный набор, описывающий динамику объекта. Совокупность признаков составляет некоторый алфавит:
α = α1, α2, α3, ..., αk, ..., α N ,
где αk – некоторый конкретный признак, входящий в этот алфавит;
N – число признаков. Каждый признак, т. е. каждое собственное значение αk, может иметь целый ряд градаций. Например, для признака
αk можно построить множество градаций:
α1k, α2k, ..., α lk, ..., αkp ,
где αkl – некоторое отдельное значение признака αk; p – число градаций признака αk. Теперь можно привести в соответствие признаки и
реализации. Каждой реализации αj соответствует совокупность признаков:
69
α j = {α j1, α j2, ..., α jN }.
Для сонограмм, получаемых посредством сцептрона, основными
признаками будут частоты и амплитуды колебаний волокон. Некоторой реализации, т. е. некоторой фигуре на индикаторной плоскости сцептрона соответствует совокупность признаков. В эту совокупность входит набор собственных частот тех волокон, которые оказались приведенными в колебание, и амплитуды. Дополнительные градации могут вводиться, например, для амплитуд, которые принимают разные значения.
На примере изображения креста, получаемого с помощью сцептрона с формантной плоскостью, можно ясно себе представить соотношения, связывающие операторы,
пси-функции, реализации, признаки.
Операторами в данном случае являются
частота, амплитуда, фонемы в формантном выражении. Благодаря действию
схемы алгоритмов строятся полосы первой и второй формант, образующих
крест на формантной плоскости. Для
Рис. 2.6. Пересечение полос эталонной реализации место пересечения креста принимается таким, чтобы
в формантной плоскости
оно приходилось в центре некоторой области на плоскости, которая связывается с определенной фонемой
(рис. 2.6).
Эта область строится как геометрическое местонахождение пересечений крестов для всех реализаций данного класса, т. е. данной
фонемы. Иными словами, когда произносится гласная а, возникают
в поле зрения сцептрона кресты, имеющие различное положение, но
точки пересечения укладываются в некоторую область. Крест, пересечение которого находится в центре, будет представлять эталонную
последовательность [55].
Реализация образа математически выражается через пси-функцию,
которая есть вектор в пространстве Гильберта. Множество реализаций –
это также множество векторов в пространстве признаков. Указанные
векторы получаются, исходя из некоторого базиса, т. е. некоторого набора коммутирующих операторов, и системы собственных векторов этих
операторов, которые и образуют базисную систему. Собственные значения операторов являются аргументами пси-функции.
Задан какой-то вектор в пространстве Гильберта; по нему нужно
определить, какому собственному вектору он соответствует или к
какому собственному вектору он наиболее близок. Для этого надо
70
найти, исходя из пси-функции и ее параметров («извлечение признаков»), тот набор операторов, который образует базис. По этому набору определяется образ.
В большинстве случаев признаки, которые содержатся в распознаваемой реализации, могут быть извлечены из сигнала. Так, например, частотные и амплитудные признаки могут быть без труда
извлечены из заданной сонограммы. В других случаях определение
более сложных признаков, например формантных признаков гласных или шумовых признаков согласных, требует выполнения сложной программы анализа. Во всяком случае, после первого этапа процедуры распознавания получается неα2
которое слово, состоящее из цепочки
признаков. Такое слово можно представить как вектор в многомерном пространстве признаков. Для случая
N-мерного пространства признаков существует координатная система, на
α
N осях которой откладываются значения этих признаков. Признаки, извлеα1
ченные из данного сигнала, определя1
ют координаты некоторой точки в этом
N′-мерном пространстве. На рис. 2.7 Рис. 2.7. Область двумерного
для наглядности изображено двумер- пространства признаков
ное пространство признаков и построена точка, координатами которой служат признаки, извлеченные из сигнала. Из начала координат
проведем вектор, конец которого совпадает с этой точкой. Положение любой точки может быть фиксировано таким вектором; иногда в
литературе это называют пространством реализаций. Обозначим общее число признаков через N, а число градаций признаков через Р;
считая, что каждый признак имеет одинаковое число градаций, получим общее число реализаций признаков T = PN.
Один признак обозначается через α1 и нанесен по оси абсцисс; пусть
число его градаций будет пять. Другой признак α2 отложен по оси
ординат и имеет такое же число градаций. В результате получается
дискретная совокупность признаков, которая дает некоторую сетку
на плоскости, узлы соответствуют реализациям. Для каждой реализации признаков может быть построен вектор реализации. Заметим,
что при N = 2 каждой реализации соответствуют два признака, тогда
общее число реализаций Т = 52 = 25.
Число точек в пространстве признаков может быть достаточно велико, как и их плотность (число точек в единице объема), что позволяет
перейти к пределу и считать распределение признаков непрерывным.
71
2.3.2. Вероятность гипотезы
Чтобы оценить реализацию, необходимо получить набор гипотез
и ввести оценку этой гипотезы. Распределение признаков обычно
имеет случайный характер, поэтому следует ввести вероятности появления определенных признаков [55]. Например, значение частоты
вторичного максимума в спектре шума автомобиля. Частотные, амплитудные, временные характеристики акустического сигнала меняются случайным образом. Однако образ может при этом сохраняться, и вопрос заключается в том, чтобы его очертить и распознать.
Обычно признаки статистически связаны, и потому вероятности
не могут считаться вероятностями независимых событий. Приходится вводить так называемые условные вероятности или функции правдоподобия. Обозначим условную вероятность появления j-й реализации для i-го образа или функцию правдоподобия через P(aj|ψi). Эта
величина есть вероятность того, что появилась реализация aj, если
уже установлен класс ψi, т. е. при условии, что имеется класс ψi.
Введем еще одну вероятностную характеристику Р(ψi) – вероятность появления того или иного образа ψi, входящего в алфавит Ψ.
Теперь можно ввести так называемую апостериорную вероятность
гипотезы о принадлежности j-й реализации к i-му образу, т. е.
P(ψi | aj ).
Эта величина есть вероятность справедливости того предположения, что данной реализации aj соответствует образ ψi. В статистической теории распознавания вычисление вероятности гипотезы, введенной еще Байесом, является наиболее существенным. Согласно
байесовской схеме [26], апостериорная вероятность гипотезы о принадлежности данной реализации определенному образу
P(ψi | aj ) =
P(ψi ) P(aj | ψi )
m
∑ P(ψi )P(aj | ψi )
.
(2.2)
i =1
Суммирование в знаменателе производится по всем образам, по
всему их алфавиту. Введем теперь распределения вероятностей. Если
для образов существует алфавит из m слов, т. е.
Ψ = { ψ1, ψ2, ψ3, ..., ψi, ..., ψm},
и для каждого образа вероятность появления есть Р(ψi), то можно
ввести плотность распределения этой вероятности по образам, обозначив ее р(Ψ). Аналогично можно ввести функцию распределения
вероятности значения признаков для заданного образа ψi, т. е. P(A|ψi).
72
Смысл этой величины состоит в следующем. Для заданного образа
может иметь место ряд реализаций. P(aj|ψi) есть, как уже говорилось,
условная вероятность появления j-й реализации для i-го образа, иначе
говоря, функция правдоподобия. Функция правдоподобия имеет для
различных aj при заданном ψi различные значения, которые распределяются по алфавиту a, составленному из a1, a2, a3, …, aj, …, aT.
Если понимать под образами некоторые типичные сонограммы,
то эти изображения составляют алфавит Ψ, например алфавит гласных. Появление гласных может иметь разную вероятность – в звуках речи частота появления разных гласных различна. Если сонограмма описывает типичные шумы машин, соответствующие разным
типам или режимам, то вероятность появления того или иного типа,
класса тоже различна. Обозначим ее как Р(ψi). Распределение вероятности по классам, составляющим алфавит Ψ, выражается как
р(Ψ). Вероятность того, что при заданном условии сигнал относится к i-му образу и дает при этом реализацию aj, есть P(aj|ψi). Эта
функция правдоподобия означает вероятность появления той или
иной разновидности изображения сонограммы при подаче сигнала, принадлежащего одному и тому же образу. Так, для сигнала,
соответствующего звуку о, могут возникать самые различные изображения, представляющие его реализацию, и для каждого имеется значение вероятности. Чем больше это значение, тем более
«правдоподобно» изображение. Наконец, вероятность гипотезы о
принадлежности некоторой данной реализации определенному
образу, который находится по формуле (2.2), имеет следующий
смысл. Это есть вероятность того, что распознавание i-го образа в
j-й реализации соответствует истине. Например, некоторая сонограмма приписывается определенному образу – характерному шуму
двигателя или определенному звуку речи; гипотеза о принадлежности является, однако, только гипотезой, а не фактом и оценивается вероятностью.
В числителе правой части выражения (2.2) стоит произведение
Р(ψi)P(aj|ψi). Как известно, вероятность одновременного появления
двух событий равна произведению вероятностей этих событий. Данное произведение есть вероятность того, что образ есть ψi, и что при
этом условии появилась реализация aj. В знаменателе стоит сумма
всех таких произведений по всем номерам образов. Эта сумма выражает вероятность того, что реализация aj соответствует какому-нибудь образу. Вероятность гипотезы, естественно, строится как отношение этих двух вероятностей. Для удобства интерпретаций целесообразно разделить обе части равенства (2.2) на вероятность P(aj|ψi):
73
P(ψi | aj )
P(aj | ψi )
P(ψi )
=
m
∑
.
P(ψi )P(aj | ψi )
i =1
Получим отношение вероятности образа к полной вероятности
того, что aj является реализацией какого-либо образа данного списка. Данное отношение представляет собой относительную вероятность того, что заданный образ есть ψi.
Для оценки вероятности гипотезы нужно сопоставить и связать
вероятности образов и функции правдоподобия. Апостериорная вероятность гипотез P(ψi|aj) находится для всех m образов, так что получается некоторое распределение P(Ψ|aj). Это распределение позволяет решить, к какому именно образу относится данная реализация.
Поскольку распознавание трактуется как процесс статистический, возможны ложные, ошибочные результаты распознавания.
Для определения вероятности ошибки распознавания надо воспользоваться теоремой о сложении вероятностей. Легко видеть, что вероятность получения любой реализации из указанного списка равна
m
∑ P(aj ).
j =1
Результат определения принадлежности aj какому-либо образу
оценивается как некоторый максимум Р(ψi)P(aj|ψi), полученный при
переборке ψi, который можно обозначить как
maxψ P(ψi ) P(aj | ψi ).
Результат определения принадлежности любой из реализаций
какому-либо образу будет
m
∑ maxψ P(ψi )P(aj | ψi ).
j =1
Этому результату плюс вероятность ошибки Pe будет равна вероm
ятность любой реализации ∑ P(aj ); отсюда вероятность ошибки
j =1
Pe =
m
∑
j =1
=
m
m
∑ maxψ {P(ψi )P(aj | ψi )} =
j =1
∑ P(aj ) ⎡⎣1 − maxψ {P(ψi )P(aj | ψi )}⎤⎦ .
j =1
74
P(aj ) −
В эти выражения входит функция правдоподобия. Величина вероятности ошибки дает возможность определить надежность распознавания.
2.3.3. Процедуры принятия решения
Если получен набор апостериорных вероятностей соответствия
распознаваемой реализации тому или иному акустическому образу, то необходимо принять (определить), к какому образу относится данная реализация. При этом необходимо учитывать нулевой
случай, когда реализация не относится ни к какому из существующих образов.
Решающие процедуры выражаются определенными алгоритмами [55]. Эти алгоритмы или правила позволяют определять, к какому классу относится данная реализация. В ряде случаев весь
алфавит реализаций, относящихся ко всему множеству классов,
можно разбить на подмножества, каждое из которых относится к
определенному классу. Число подмножеств равно числу классов m.
Тогда алфавит
A = { A1, A2, A3, ..., Ai, ..., Am }.
Подмножества могут присоединяться, вычитаться и пересекаться
(рис. 2.8). Присоединение обозначается логическим символом ∪ и равноценно сложению; вычитание – символом \; пересечение – символом ∩
(оно равносильно умножению). Знак ∪ соответствует логическому ИЛИ,
а знак ∩ – И. На рис. 2.8 эти действия проиллюстрированы на плоскости. Каждое подмножество изображается контуром. В приложениях
встречаются обычно многомерные области реализаций.
12
12
12
11
11
11
Рис. 2.8. Присоединение, вычитание, пересечение подмножества
Если подмножества не пересекаются, то получаем
m
∩ Ai = 0.
i =1
Здесь 0 означает пустое множество, что возможно лишь при идеализации, как правило, некоторые подмножества обязательно пере-
75
крываются. Другим идеальным случаем является получение пустого
множества при соединении подмножеств:
m
∪ Ak = 0.
k =1
К таким подмножествам относятся реализации маловероятных
образов, если при оценке нужно исходить из некоторого минимума
вероятности, который при этом не достигается.
Теперь перейдем к вероятностям значений признаков [55]. Построим на плоскости координатную систему двух каких-либо признаков (рис. 2.9); возьмем переменныα2
ми α1 и α2. Двумерное изображение
системы признаков выбрано для простоты понимания. На плоскости
изображены контуры, соответствующие различным классам или образам. Точки внутри каждого из изображенных контуров дают значения
признаков, относящиеся к данному
α1
классу. Эти области предполагаютРис. 2.9. Плоскость признаков ся непересекающимися. Для каждой
области пунктиром показаны расширенные границы. Внутри пунктирного контура содержатся точки, координатами которых служат признаки, соответствующие реализации. Области реализаций превосходят области классов (образов), которые в них включены. При этом необходимо помнить, что
число элементов реализации больше числа элементов образов. Реализации перекрывают всю плоскость.
На границе между областями вероятности реализации должны
быть равны нулю. Точки на границе не должны относиться ни к той,
ни к другой области, а на самом деле относятся к обеим смежным,
поэтому вероятность P(aj) равна нулю. В многомерном случае вероятность равна нулю на многомерных гиперповерхностях, разделяющих области.
В идеальном случае разделения признаков по областям вероятность ошибки распознавания становится сколь угодно малой и сама
процедура распознавания является тривиальной – по координатам
признаков прямо находят область. Иными словами, строя вектор,
составляющими которого служат заданные признаки сигнала, находят образ соответственно координатам конца вектора. Однако в действительности практически во всех задачах распознавания области
пересекаются, и потому процедура принятия решения усложняется
76
[55]. При этом возникают и ошибки распознавания. Тогда решающими могут быть различные процедуры, между которыми иногда
трудно сделать обоснованный выбор. Наиболее часто применяемыми
критериями являются минимизации:
– средней вероятности ошибки распознавания;
– вероятности ошибки распознавания каждого образа;
– среднего риска распознавания;
– риска распознавания каждого образа и др., в том числе комбинации из указанных.
Для простоты рассмотрим случай, когда имеется только один признак, так как задача получается одномерной, а заданы всего два класса.
Обозначим признак через α, а классы через ψ1 и ψ2. Для каждого класса
может быть указано распределение вероятности признака. Это означает, что может быть указано, как изменяется вероятность признака в
зависимости от величины признака. Обозначим функцию распределения вероятностей признаков первого и второго образов через f1(α) и f2(α).
На рис. 2.10 изображены априорные распределения вероятности.
Пунктирная вертикаль должна быть построена так, чтобы разделить
классы один и два, что означает решение задачи опознания образов
ψ1 и ψ2: если это действительно гра112
ψ2
ница, которая приходится на ординату α0, то значение признака α < α0 дает
ψ1
класс ψ1. Значение признака α > α0
дает класс ψ2. Задача состоит в том,
чтобы найти эту границу при условии
α0
пересечения кривых распределения
α
вероятностей. Вот здесь могут быть
Рис. 2.10. Разделение классов
применены указанные выше критерии. Напомним, что если известна плотность вероятности как функция некоторого параметра, то вероятность для параметра, значения
которого ограничены определенными пределами, находится путем
интегрирования по параметру в указанных пределах.
Если принять разграничение классов таким, как показано на
рис. 2.10 с границей α0, то вероятности ошибок могут быть описаны
следующим образом. Решение в пользу образа ψ1 для α < α0 связано с
ошибкой, вероятность которой
∞
p1(e) =
∫ f1(α)dα.
α0
Решение в пользу образа ψ2 для значений признака α > α0 связано
с ошибкой, вероятность которой
77
α0
p2 (e) =
∫ f2 (α)dα.
−∞
Следуя известному критерию В. А. Котельникова, можно потребовать, чтобы для оптимальных условий соблюдался минимум вероятности суммарной ошибки [55]:
p(e) = P(ψ1) p1(e) + P(ψ2 ) p2 (e).
При этом предполагается, что вероятности ошибок p1 и p2 имеют
равную значимость (вес). Критерий Котельникова определяет выбор
значения α0, т. е. дает возможность разделения признаков по образам. Обозначив значение плотностей в точке α0 через f1(α0) и f2(α0),
имеем условия минимума в точке α0:
d
d
d
p(e) = 0 = P(ψ1 )
p1(e) + P(ψ2 )
p2 (e).
dα
dα
dα
Очевидно, что
d
p1 (e) |α=α0 = f1(α 0 )
dα
и
d
p2 (e) |α=α0 = −f2 (α0 ).
dα
Таким образом, критерий Котельникова требует такого граничного значения признака, чтобы выполнялось следующее условие:
P(ψ1)f1(α0 ) = P(ψ2 )f2 (α 0 ).
(2.3)
Можно ввести функции правдоподобия. Обозначим через α1 признак, который заведомо относится к образу ψ 1, а через α 2 – признак, который заведомо принадлежит к образу ψ 2. Тогда функция
правдоподобия, выражающая условную вероятность появления
реализации для первого образа, будет выражаться через f(α|α 1),
аналогично для второго образа это будет f(α|α2). Отношение правдоподобия есть
Λ(α) =
f (α | α1)
.
f (α | α2 )
При α = α0
Λ(α 0 ) = Λ 0 =
Из (2.3) следует
78
f1 (α0 )
.
f 2 (α 0 )
Λ0 =
P(ψ2 )
.
P(ψ1)
В рассматриваемой задаче строятся две гипотезы: первая – о принадлежности сигнала образу ψ1, вторая – образу ψ2. Обозначим эти
гипотезы I и II. Когда следует принимать ту или иную гипотезу? Решение должно приниматься, исходя из отношения правдоподобия.
Напишем условные вероятности той и другой гипотезы:
P(I | α) =
P(ψ1)f (α | α1)
|max;
f (α)
P(II | α) =
P(ψ2 )f (α | α2 )
|max,
f (α)
(2.4)
где введено обозначение
f (α) = P(ψ1)f (α | α1) + P(ψ2 )f (α | α2 ).
Эти формулы аналогичны формуле (2.2), причем сумма представлена в знаменателе всего двумя членами. Величину f(α) иногда называют плотностью признака при распознавании; f(α|α1) и f(α|α2) – функции правдоподобия. Возьмем отношение условных вероятностей
P(I | α)
гипотез
для α = α0. Как видно из (2.3) и (2.4):
P(II | α)
P(I | α0 )
= 1.
P(II | α0 )
Гипотеза о принадлежности сигнала образу ψ1 принимается, когда
P(I | α)
> 1,
P(II | α)
в противном случае, т. е. когда это отношение меньше единицы, принимается гипотеза II. Если неизвестны априорные вероятности образов или цена ошибок различна, критерий не применим. В этом случае
могут применяться другие критерии.
2.3.4. Риск принятия гипотезы
Введем понятие риска принятия той или иной гипотезы. Аналитически риск строится из условных вероятностей гипотез путем введения некоторых коэффициентов так называемых цен правильного
или ошибочного принятия гипотезы. По определению, риск есть математическое ожидание штрафов или цен. Обозначим риск принятия
гипотезы I через r(I|α), а риск принятия гипотезы II – через r(II|α).
79
Как и ранее, P(I|α) есть вероятность гипотезы I при условии значения
признака α, P(II|α) – вероятность гипотезы II. Коэффициенты, которые имеют название цены, обозначаются буквами v с двумя индексами,
которыми можно распорядиться следующим образом: v11 и v21 – это цены
правильного и ошибочного принятия гипотезы I; v22 и v12 – это цены правильного и ошибочного принятия гипотезы II.
Риск принятия первой гипотезы
r (I | α) = v11P(I | α) + v12 P(II | α);
риск принятия второй гипотезы
r (II | α) = v21P(I | α) + v22 P(II | α).
В этом случае критерий минимального среднего риска устанавливает определенный порог α0, которому соответствует Λ0. Для порогового значения α0 должно удовлетворяться выражение
P(ψ1)(v21 − v11)f1(α0 ) = P(ψ2 )(v12 − v22 )f2 (α 0 ),
отсюда
Λ0 =
f1(α 0 ) P(ψ2 )(v21 − v11)
=
.
f2 (α0 ) P(ψ1)(v12 − v22 )
(2.5)
Важным случаем является такой, когда возможны повторения измерений, притом многократные. Если это число повторений неограниченно, так что возможно одновременfα
ное определение допустимых значений
f2 (α)
f1 (α)
вероятностей ошибок p1(e) и p2(e), тогда
имеют место два пороговых значения α01
и α02. Оптимальным служит критерий
Неймана – Пирсона, согласно которому
α02
α 01
α
вероятность одной ошибки, скажем
Рис. 2.11. Пороги признаков p1(e), задается максимально допустимой и при этом вероятность второй
ошибки минимизируется [55]. Это дает одно пороговое значение α0.
Другое получается, если задаваться максимально допустимым значением вероятности второй ошибки и минимизировать вероятность
первой. Пороги признаков указаны на рис. 2.11.
Как установить пороговое значение, например, α02? По определению, вероятность ошибки p1(e) может быть записана так:
+∞
p1(e) =
∫ f1(α)dα.
−∞
Предполагаем, что априорные вероятности P(ψ1) и P(ψ2) нам неизвестны, так что нельзя воспользоваться (2.5). Однако введем такое
80
ограничение, чтобы вероятность ошибки при распознавании класса
ψ1 была ограничена некоторой величиной ε1. Для порогового значения можно принять равенство
∞
ε1 =
∫ f1(α)dα,
α02
которое дает возможность определить нижний предел интеграла, т. е.
α02. Совершенно так же другой порог α01 определяется из уравнения
α01
ε2 =
∫ f2 (α)dα.
−∞
Шкала признаков разбивается на три диапазона:
α ≤ α01, α 01 < α < α 02, α ≥ α 02.
Получается здесь два пороговых отношения правдоподобия, которые соответственно можно обозначить Λ01 и Λ02. Могут быть сделаны следующие выводы. Если Λ(α) ≤ Λ01, то подтверждается гипотеза первая. Если Λ(α) ≥ Λ02, то справедлива гипотеза вторая. В промежуточной области, когда Λ01 < Λ(α) < Λ02, ни та, ни другая гипотезы не могут быть приняты, и необходимо, если возможно, продолжать измерения. При этом предполагается, что признаки образа являются постоянными, а статистические колебания обусловлены
ошибками измерения, помехами. В противном случае этот метод последовательного наблюдения (в отличие от предыдущего, который может быть назван методом идеального наблюдения) не приводит к цели.
Поясним теперь эти методы на примере сцептрона [55]. Возьмем самую примитивную конструкцию сцептрона. Пусть волокна расположены в
одни ряд, так что их торцы образуют
пунктирную линию (рис. 2.12).
Собственные частоты колебаний волокон подобраны так, что они последо1234542
вательно возрастают слева направо.
Пусть волокна колеблются в направлении, перпендикулярном этой линии, Рис. 2.12. Линейный сцептрон
что на рисунке соответствует оси ординат. Ось ординат используется для нанесения плотности вероятности
колебания с амплитудой, превосходящей некоторый порог.
Процедура совпадает с той, которая выполняется при построении
гистограмм. Произведем многократные наблюдения, подавая на этот
анализатор сигнал одного и того же образа, например гласной у. Каж81
дая реализация может давать различия: некоторые волокна будут
возбуждаться при многих реализация, т. е. часто, другие – редко.
Если построить по точкам числа возбуждений каждого волокна, получится гистограмма, которая при достаточно тесном расположении
волокон дает некоторую кривую распределения. Нетрудно предвидеть, что эта кривая будет иметь формантные максимумы, характерные для гласной у. Для того чтобы не усложнять вопрос, предположим, что частотный диапазон настройки волокон ограничен диапазоном первой форманты всех гласных.
Пусть теперь на сцептрон подается сигнал, соответствующий другому образу, например гласной э. Тогда можно аналогичным образом
получить другую кривую распределения, у которой максимум будет
соответствовать средней частоте формант гласной э. Кривые, полученные для сигналов у и э, выражают те самые априорные распределения плотности вероятностей признаков первого и второго образов.
Необходимо иметь в виду, что каждая реализация состоит не из одного
значения, а из целого набора значений признака. Пусть, например, реализация, соответствующая гласной у, дает значения признака, т. е. частоты,
характеризующие сигнал: α21, α22, α23, …, α2k.Тогда функция правдоподобия будет выражаться через f(α|α21, α22, α23, …, α2k). Примем, что реализация другого образа – образа гласной э – дает совокупность значений
признака α11, α12, α13, …, α1k. Тогда соответствующая функция правдоподобия будет f(α|α11, α12, α13, …, α1k), а отношение правдоподобия
Λ(α) =
f (α | α21, α22, ..., α2k )
.
f (α | α11, α12, ..., α1k )
Для разделения области на части, позволяющие строить гипотезы, надо ввести граничные значения признака. Известно, что гласные у и э отличаются наборами частот: если говорить о первой форманте, то для гласной у этот набор сдвинут по сравнению с набором
для гласной э. Более отчетливая разница получилась бы, если бы
был взят еще другой признак, а именно амплитуда. Тогда различия в
частотах, соответствующих максимуму амплитуды (т. е. в средних
частотах формант), были бы более полными; но мы ограничились
рассмотрением только одного признака и для него получили распределение плотности вероятности.
Полученные кривые позволяют построить границу, применяя критерий идеального наблюдения (см. рис. 2.11). Если это значение будет α, то слева от границы пересечения функций должна приниматься гипотеза I о том, что образ соответствует гласной э, а если справа –
гипотеза II о том, что образ есть гласная у. Однако ввиду неравноцен82
ности вероятности ошибок более целесообразно разделение плоскости
на три области. Ограничивая вероятность ошибки некоторыми значениями ε1 и ε2, можно получить пограничные частоты α01 и α02, а также
пороговые значения отношений правдоподобия Λ01 и Λ02.
Приведенный пример служит также иллюстрацией того, что одного признака для распознавания недостаточно. Практически ошибки
распознавания будут очень велики, поскольку признаки реализаций
двух образов значительно перекрываются. Лучший результат может
быть получен при использовании двух признаков, например, не только частоты, но и амплитуды.
Приведем несколько общих соображений, которые относятся к
случаю, когда признаков несколько [55]. Пусть распознавание образов делается по набору N признаков: α = α1, α2, α3, …, αN, составляющих алфавит а. Если построить N-мерное пространство, то любая
реализация образа дает некоторый вектор в этом пространстве, причем проекции этого вектора будут давать набор каких-то значений
данных признаков. Обозначим этот вектор через букву А. Для классов или образов конец вектора должен лежать внутри определенных
многомерных областей. Обозначим множество векторов, концы которых находятся в области, соответствующей одному образу, т. е.
образу I, через А1; а множество векторов, концы которых приходятся
на область, соответствующую образу II, через А2. Тогда в зависимости от того, куда направлен вектор для данной реализации, можно
судить о принадлежности образу. В случае, если области А1 и А2 перекрываются, можно строить только гипотезы. Отношение правдоподобия при наличии двух образов I и II
Λ(α) =
f (α | A2 )
.
f (α | A1)
Пороговое значение Λ0 = Λ(α10, α12, …, αN0). Величина среднего риска
⎡
⎤
r = P(ψ1) ⎢v11 f1(A)dα1, ..., dα N + v21 f1(A)dα1, ..., dα N ⎥ +
⎢ B
⎥
B2
⎣
⎦
1
∫
∫
⎡
⎤
+ P(ψ2 ) ⎢v12 f2 (A)dα1, ..., dα N + v22 f2 (A)dα1, ..., dα N ⎥ .
⎢ B
⎥
B2
⎣
⎦
2
∫
∫
Полезно ввести некоторую матрицу цен правильного или ошибочного принятия гипотез. В общем случае, если число образов есть М, а
число признаков есть N, то матрица цен имеет вид
83
v11
v
W = 11
...
v2N1
v12
v11
...
v2N2
... v1M
... v2M
;
...
...
... v2NM
(2.6)
в частном случае (М = 2, N = 1) получаем матрицу, с элементами
которой мы уже встречались ранее:
v11 v12
.
v21 v22
2.3.5. Обучение распознаванию образов
Выше рассматривались вопросы обучения в процессе распознавания. Реализация считалась случайным сигналом, а распределение
плотности вероятности – зависимым от образа, подлежащего распознаванию. Если распознавание производится некоторым автоматом, то автомат должен выработать решение о классе или образе.
Так как решение есть некоторая функция от реализации, то правило
решения должно быть выбрано таким, чтобы было обеспечено наименьшее математическое ожидание штрафа или минимум функции риска.
При постановке задачи распознавания исходят из знания набора
условных вероятностей P(A|ψk) для всех распознаваемых образов
k = 1, 2, 3, .... Однако в действительности вероятности содержат еще
неизвестные параметры, которые можно обозначить одной буквой а.
Таким образом, процесс обучения должен позволить сделать переход
от условных вероятностей P(A)|ψk, a) к условной вероятности P(A)|ψk, V),
где под V понимаются сведения, полученные путем обучения.
Процесс обучения может представлять минимизацию риска. Риск
R можно записать в общем виде
R=
∑ v(k, d) p(k, d),
k, d
здесь v(k, d) – штраф (цена) в том случае, если образ в результате
решения принимается за d; p(k, d) – совместное распределение k и d.
Коэффициенты v(k, d) образуют элементы матрицы штрафа или цен
(2.6). Решающее правило применяется для того, чтобы найти решение d для каждого k. Можно написать, что d = f(A, V). Тогда
R=
∑ vV [k, f(A, V )]P(k, A, V ),
(2.7)
k, A
где P(k, A, V) = p(A, V)p(k| A, V). После подстановки правой части
этого выражения в (2.7) получим
84
R=
∑ p(A, V )∑ v[k, f (A, V )] p(k | A, V ) = ∑ p(A, V )R(A, V ).
A, V
A, V
k
Для минимизации риска надо так выбрать f(A, V), чтобы выражение R(A, V) было минимальным. Следуя байесовской трактовке, считаем заданным априорное распределение p(k). Тогда можно выразить
апостериорное распределение вероятностей гипотез, т. е. p(k|A, V),
через априорное распределение p(A|k, V). С другой стороны, p(A|k, V)
выражается через известные функции:
p(A | k, V ) = ∑ p(A, a | k, A) = ∑ p(A | a, k, A) p(a | k, A).
a
a
Можно положить p(A|a, k, V) = p(A|a, k), потому что при известном
a и независимости реализаций A величина V не влияет на их распределение. Кроме того, p(a|k, V) = p(a|V), так как указание образа не
дает сведений об a. Таким образом:
p(A | k, V ) = ∑ p(A | k, a) p(a | V ).
(2.8)
a
Величины, входящие в правую часть этого выражения, содержат
известные распределения. Заметим, что при увеличении длительности обучения влияние распределения p(a) на p(a|V) становится несущественным, и потому знание распределения p(a) не является необходимым. Таким образом, приходим к следующим выводам.
1. Для принятия решения надо знать распределение p(a|k, V).
2. До обучения задано лишь p(A|k, a), которое содержит неизвестные параметры a.
3. Было бы неверно искать наиболее вероятное значение этих параметров и подставить их. Вместо этого нужно найти апостериорное
(после обучения) распределение p(a|V) и затем воспользоваться (2.8),
т. е. усреднить p(A|k, a) по параметру a; в качестве весов (коэффициентов) при усреднении используется апостериорное распределение p(a|V).
Следует сделать одно общее замечание относительно применимости подобных теорий [55]. Акустические образы являются в действительности псевдообразами и не подчиняются строгому определению.
Если, скажем, можно строго определить образ печатной типографской буквы, то образ фонемы определить затруднительно. Еще труднее определить образ характерного шума машины, транспорта, энергосистемы. Под псевдообразами следует понимать не строго определенные классы, а те, которые можно устанавливать лишь с известной вероятностью. Не только реализации, но и сами классы (образы)
имеют статистический характер.
85
Человек способен с помощью слуха распознавать звуки речи с достаточной надежностью, однако и он делает ошибки. Высокая надежность обусловлена многовековой практикой языкового общения
человечества и длительным процессом обучения и самообучения речи
у ребенка. Надо лишь удивляться успехам техники, которые позволили в ряде случаев осуществить автоматическое распознавание звуков речи.
Еще более трудной задачей является распознавание характерных
шумов. Ведь речевые сигналы путем эволюции достигли такой формы, которая оказалась доступной для распознавания другими людьми; звуки речи явились результатом оптимального использования
голосовых данных для генерации разнообразных и членораздельных
сигналов. Понятно, что для шумов другого происхождения такой
эволюции не могло быть.
Определим общий принцип: никакие акустические сигналы, представляющие реализацию образов, не могут превзойти речевые сигналы по распознаваемости. Этот принцип имеет количественное выражение, полезное для критерия распознаваемости, и служит ограничением применимости теоретических методов распознавания.
Характер псевдообразов, присущий акустическим сигналам, проиллюстрируем так. Образ какой-нибудь печатной буквы может быть
искажен, например, буква напечатана криво, или не полностью, или
имеются помехи в виде кляксы и т. д. Поэтому задача распознавания
носит статистический характер: вводятся случайные ошибки, которые искажают образ. Однако при этом предполагается, что сам неискаженный образ существует как некоторая эталонная буква. Для
такой задачи весьма полезно применить статистическую теорию распознавания при наличии помех.
Для акустического псевдообраза никакого определенного эталона
установить нельзя – можно принять только некоторый условный
эталон. Разброс реализаций будет совершенно естественным, и происходит он вовсе не под воздействием помех (помехи могут действовать сами по себе). Поэтому в статистической теории распознавания
акустических образов приходится под помехами или шумом понимать все неопределенное и неизвестное [55].
Нет особого смысла строить прогнозы, касающиеся успешного
применения теории распознавания в акустике. Однако возникает сомнение в том, что перенос теории распознавания, полезной для распознавания типографских букв, на случай речевых сигналов является достаточно эффективным. Еще больше сомнений вызывает применимость таких методов для распознавания неречевых акустических
сигналов, где дело обстоит еще сложнее: такие сигналы, выражаясь
86
фигурально, недостаточно членораздельны. Возникает вопрос: а возможно ли вообще решение подобной задачи? Наиболее осторожным
ответом будет такой: не всякий псевдообраз можно распознать. Скорее всего, надо руководствоваться следующим правилом: из совокупности псевдообразов должны быть выделены такие, которые являются распознаваемыми.
Это правило, или этот принцип, как нам кажется, может внести
ясность в задачу автоматического распознавания акустических сигналов – ниоткуда не следует, что все эти сигналы должны быть распознаваемы. Что касается речевых сигналов, то их принципиальная
распознаваемость доказывается практикой слухового восприятия,
однако доказательство того, что автомат способен заменить человека, может быть найдено только практикой построения распознающих автоматов.
Имея в виду современный уровень техники, можно и здесь утверждать, что не всякий речевой сигнал пока что может быть опознан
автоматом. Стоит подчеркнуть существенную разницу в градациях:
распознавание букв – распознавание речевых сигналов – распознавание характерных шумов. По-видимому, невозможно сохранить для
этих областей одну и ту же теоретическую схему распознавания. Вероятно, различие между случаем распознавания характерных шумов и звуков речи еще более разительно, чем различие между распознаванием звуков речи и печатных букв или слов.
2.4. Особенности распознавания речевых образов
По сравнению другими образами речь обладает рядом существенных отличий, которые делают процесс распознавания речевых сигналов сложной фундаментальной задачей. Естественная речь обладает высокой степенью вариативности, динамичности и не допускает
простого и однозначного членения на элементы (фонемы, слова, фразы), поскольку эти элементы не имеют явных физических границ [72,
81]. Они вычленяются в сознании слушателя – носителя данного
языка в результате сложного многоуровневого процесса распознавания и понимания речи. Если попросить слушателя записать в виде
фонем незнакомую иностранную речь, то он совершит множество
ошибок членения слов и фраз, т. е. даже человек не может членить
речь без использования знаний лексики, грамматики, смысла [43].
Кроме того, существует проблема контекстной зависимости описания слов, т. е. параметрическое представление слова, произнесенного изолированно, существенно отличается от того же слова, сказанного во фразе, что значительно усложняет распознавание слов.
87
Преодолеть эти трудности можно только за счет аналогий с речевым поведением собеседников в сходных ситуациях. Для этого необходим этап имитационного моделирования, в котором участвуют два
человека – оператор и исполнитель. В результате должна быть получена необходимая информация для построения языка диалога (набор множеств равноценных команд для всех возможных действий),
структуры диалога и для системы понимания команд. В итоге должен быть выработан такой стиль общения, при котором переспросы
и ошибки сведены к минимуму.
Типовая структура речевого диалога человека с машиной в самом
общем виде показана на рис. 2.13 [14]. Процесс диалога обычно инициируется речевым актом. Человек принимает решение о том или
ином речевом акте на основе своих априорных знаний о теме и цели
диалога, о языке диалога, а также всей доступной текущей информации о ходе диалога, внешней среде и текущем времени.
123452678934
87
2987
2232
87
97
87
9787
895
77
97
"5# 2694
$%2# 2694
73
87
2987
72 1 2232
57679
97
87
12 1
79
99 1
7!
2232
97
87
9787
9787
999 7327
17787
4
2
9
87
64
54
32
1
7
2 9
Рис. 2.13. Типовая структура диалоговой системы
Модуль распознавания речи преобразует акустический речевой
сигнал в соответствующую последовательность слов. Эта последовательность слов поступает в подсистему понимания языка, которая
вырабатывает смысловое представление фразы в виде семантического фрейма, указателя типа смысла и др. Система понимания использует знания о языке ПО и текущей ситуации.
88
Анализ состояния проблемы речевого диалога показывает, что
наиболее острыми вопросами являются: понимание запросов пользователя в ситуативном контексте конкретной ПО, необходимость обработки спонтанной речи диктора, учет разнообразия голосов дикторов, учет изменений внешних условий и других аспектов применения. Кроме того, многочисленные попытки применения речевых систем выявили необходимость исследования и обеспечения робастности таких систем, т. е. способности противостоять разнообразным
случайным воздействиям. Таким образом, основными проблемами
речевого диалога можно считать проблемы адаптации, слитной речи
и робастности понимания.
Любая модель считается более гибкой и эффективной, если она
допускает возможность настройки к конкретным условиям эксплуатации. Это особенно важно, когда условия применения модели являются не жесткими и подвержены периодическим изменениям. Система распознавания речи должна быть адаптирована к следующим трем
основным факторам:
1) диктору, который посредством своего голоса осуществляет воздействие на систему;
2) среде, в которой происходит диалог между диктором и системой, а
именно акустическим условиям (шумы, акустика помещения и т. д.);
3) предметной области, т. е. понятиям, действиям и т. д.
Наиболее важным свойством адаптивной системы распознавания
речи является учет разнообразия голосов пользователей. Эти различия зависят от пола, индивидуальной формы речевого тракта (что
влияет на высоту голоса и тембр), от диалектов, от индивидуальной
манеры формирования звуков, интонаций и фраз, эмоционального
состояния и т. д. Кроме того, существует значительная вариативность произношения у любого диктора. Человек произносит одно и
то же слово каждый раз несколько по-разному. При этом существенным фактором является физиологическое и психологическое состояние диктора [80].
При использовании речевых технологий в диалоге с машиной неизбежно возникает проблема влияния акустической обстановки.
Внешние шумы, особенно непостоянного характера, значительно
ухудшают качество распознавания введенного сигнала. Для ослабления их влияния используются дифференциальные микрофоны,
специальные шумоизолирующие шлемы и т. п. Записанный сигнал
обрабатывают различными методами фильтрации, позволяющими
отделить полезный сигнал от шумовой составляющей. Среди них
можно отметить методы адаптивной фильтрации, основанные на спектральных преобразованиях сигнала [8].
89
Сегодня все более значимым требованием, которое предъявляется
к системам распознавания речи, является адаптация к ПО. В частности, адаптации может подвергаться модель языка, которая используется в ходе диалога между диктором и системой при решении конкретного круга задач [14]. Если говорить о задачах речевого управления какими-либо объектами, то изменение в логике управления
объектом или изменение данных объекта для организации более эффективного взаимодействия одновременно требует корректировки
взаимосогласованных данных как у человека, так и у системы. Отсутствие адаптации или настройки на этом уровне делает систему
неустойчивой, что приводит к дополнительным ошибкам.
Важным прототипом для создания надежных систем понимания
речи служат процессы речевой коммуникации между людьми. Напомним, что речевая коммуникация между людьми обладает поразительной устойчивостью, и приведем высказывание известных специалистов в области теории информации [23]: «Структура человеческого языка достаточно сложна и позволяет поэтому вести разговор,
не взирая на большое количество шумов и искажений. Осмысленная
передача информации может продолжаться даже тогда, когда утеряна значительная часть слогов. В этом смысле языки можно считать
примерами высоко эффективных исправляющих ошибки кодов, оказавшихся в результате эволюции хорошо приспособленными к нуждам человека». Экспериментальные исследования по сравнению устойчивости человеческого и машинного восприятия речи, безусловно, подтвердили первенство человека в этом вопросе [60].
Кроме того, робастность человеческого восприятия речи необходимо оценивать не только по отношению к ошибкам уровня слов.
Она значительно превосходит робастность технических систем в отношении увеличения длин фраз, увеличения числа видов знаний,
используемых в процессе понимания, и т. д. В течение всей жизни
человек учится говорить для того, чтобы более точно выразить свои
мысли. В процесс его обучения бессознательно вовлекается все, что
окружает нас, и происходит это абсолютно инстинктивно. Формализация речевой коммуникации нуждается в предварительном описании подсознательных механизмов, включая речеобразование, восприятие речи и понимание. Все эти сложнейшие физиологические процессы начали изучать в прошлом веке, в то время как человечество училось говорить в течение тысяч лет и продолжает этот процесс.
Обобщая сказанное, надо отметить, что устойчивость человеческого понимания речи во всех рассмотренных аспектах значительно
лучше, чем у автоматических систем. Необходимо признать, что наш
слух успешно решает одну из основных задач искусственного интел90
лекта – «как быть точным в отношении неточностей» или, иными
словами, «как получить надежный смысл из ненадежных слов».
Поэтому понять природу восприятия речи живыми системами очень
важно для прогресса в диалоге с машиной.
Полная модель восприятия речи должна обеспечивать преобразование речевого сигнала в представление смысла сообщения. Анализ
возможной структуры полной модели показывает, что она должна
состоять из ряда последовательных/параллельных блоков обработки информации. Одно из фундаментальных положений науки о языке заключается в том, что переход к смыслу сообщения возможен
лишь после того, как речевой сигнал преобразован в последовательность дискретных элементов.
Прежде всего, попытаемся определиться: что будем подразумевать
под смыслом услышанного предложения [52, 59, 68, 86]. Любая интеллектуальная информационная система использует поступающие
сообщения для формирования ответа пользователю, а также для обучения и настройки своих внутренних параметров и баз данных. Результат работы системы зависит от того, является ли сообщаемая
информация новой и не приходит ли она в противоречие с уже имеющимися сведениями. Для того чтобы обработать полученное сообщение, система должна иметь удобный способ представления сообщения (фразы/предложения).
В области обработки естественного языка принято выделять несколько уровней описания речевой коммуникации (рис. 2.14) [14].
3 1234567
2
9
859
6
86
3633
5
365
1
1234567
Рис. 2.14. Основные уровни речевой коммуникации
91
В первую очередь, следует заметить, что выделяются два базовых
уровня представления и обработки речи: высокий и низкий. Чем
ниже уровень, тем ближе к физическому описанию звукового сигнала. Подобная классификация от высокуровневого к низкоуровневому описанию применима ко всем типам взаимодействия и процессам, поскольку всегда можно выделить физические сигналы и
их смысловую интерпретацию. Рассмотрим, какие уровни обработки и какие виды знаний следует учитывать при моделировании
речевой коммуникации.
Акустический уровень. Речь, в первую очередь, – это последовательность звуков, которые создаются за счет изменения давления
воздуха посредством голосового тракта. Акустический уровень самый низкий, поскольку касается исключительно аудиосигнала. Изучение акустических процессов включает в себя запись, цифровую обработку, параметризацию акустического сигнала. При этом на каждом этапе возникают различные представления: сигнал, поступающий с микрофона (аналоговый или цифровой), волновые формы, спектральный анализ (преобразование Фурье, спектрограммы и т. д.).
Полезная информация (частота основного тона, энергия и кепстр)
может быть получена и при других видах обработки. В общем случае
акустический уровень занимается методами кодирования, параметрического представления речевого сигнала.
При моделировании и обработке речевого сигнала используется
ряд допущений. Голосовой тракт – это физический инструмент, он
обладает определенной инерцией и не допускает резких изменений
состояния, поэтому речевой сигнал следует рассматривать как квазистационарный сигнал, т. е. в течение некоторого времени характеристики сигнала остаются постоянными. По экспериментальным
данным было установлено, что в коротких временных окнах около
30 мс, за исключением коротких речевых актов, таких как паузы,
речь можно рассматривать как стационарный сигнал. Используя такое допущение при обработке речевого сигнала, производят предварительную сегментацию на последовательные участки равной длительности (до 30 мс). После этого параметризация уже ведется посегментно,
что значительно сокращает и упорядочивает выходные данные.
Фонетический уровень. Здесь в центре внимания находятся свойства речевого сигнала на уровне звуков, порожденных артикуляционной системой. Физический процесс речеобразования кратко может
быть описан следующим образом. Дыхание – это основной источник
энергии. Воздух проходит через голосовой тракт, и его различные
препятствия модулируют давление воздуха на выходе изо рта и носа.
Фонетика изучает, как люди управляют мышцами голосового тракта
92
для изменения его геометрических характеристик с помощью языка,
губ, зубов и других органов при произнесении конкретных звуков речи.
Фонологический уровень – это первый уровень, на котором появляются некоторые семантически значащие единицы. Действительно, если фонетика имеет дело с естественным порождением различных звуков, то фонология занимается анализом ограниченного числа отдельных звуков, возможных в определенном языке (фонемы),
ритма, с которым они порождаются в высказывании, мелодичности,
используемой в конкретной фразе, частоты основного тона каждой
произнесенной фонемы (просодия) и смыслового ударения во фразе.
В некоторых языках, например, таких как китайский, изменение
интонации может полностью изменить значение слова. Понятие «фонема» является весьма конструктивным, так как оно не только позволяет связать слово с соответствующими ему артикуляторными
жестами и речевым сигналом, но и связывает слуховое изображение
речевого сигнала с движениями. Не используя понятий, близких по
смыслу к фонемам, нельзя описать такие явления, как имитация
(речевое воспроизведение) услышанного бессмысленного звукосочетания или его буквенная запись. Этот уровень является переходным
между высокими и низкими уровнями, поскольку здесь одновременно приходится учитывать параметрическое представление речевого
сигнала, специфические особенности языка и просодические характеристики. Анализ частоты основного тона голоса иногда используется для определения эмоций в речевом сигнале, а также в различных интерактивных обучающих программах.
Лексический уровень. Как было сказано, в каждом языке существует конечное число различных звуков (фонем). Тем не менее, невозможно произнести произвольную последовательность звуков определенного языка и породить тем самым значащее слово. Поэтому
на лексическом уровне производится описание всех значащих последовательностей фонем, которые обозначают слова. В лингвистике этот
уровень иногда называют морфологическим уровнем, где исследуются
элементарные составные части слов, которые несут смысловую нагрузку. Здесь единицами описания являются слова или части слов (морфемы), высокоуровневая обработка ведется уже без привлечения физического аудиосигнала – только с текстом. Фонология связана как с лексикой, так и с фонетикой (см. рис. 2.14). Действительно, в определенных
языках (таких как корейский), различные просодические модели применяют к сходным последовательностям фонем, порождая различные
слова, а, следовательно, и различный смысл.
Синтаксический уровень. По аналогии с тем, что не всякая последовательность фонем может являться словом, следует отметить, что
93
и не всякая последовательность слов может являться предложением, и
существует некоторый набор правил, который ограничивает допустимые цепочки слов. Набор грамматических или стохастических правил, описывающих возможные комбинации слов, составляет
суть синтаксического уровня. Для каждого языка существует свой набор грамматик, который определяет функцию каждого слова в предложении и, таким образом, описывает его синтаксическую структуру.
В общем случае грамматические правила, описанные строгой лингвистикой, как ее учат в школе, характерны для письменной речи, но не
подходят для моделирования устной речи. Поэтому при автоматическом анализе устной речи грамматические правила следует использовать осторожно, поскольку они накладывают жесткие ограничения, в
результате чего понятные (но содержащие некоторые неточности) фразы могут быть отвергнуты системой. Уже в первых работах по вычислительной лингвистике были подняты проблемы несоответствия устной
и письменной речи и необходимости поиска более гибких, «мягких» подходов к оценке связей и структуры внутри предложения [14, 24, 59].
Семантический уровень. Даже если высказывание синтаксически правильно, нет гарантии, что оно несет в себе осмысленную информацию. Поэтому следующим шагом описания речевой коммуникации является проверка осмысленности предложения и извлечение смысла. На семантическом уровне начинается исследование контекстно-независимого значения слов, а также их комбинаций в предложении.
Прагматический уровень. Прагматика собирает и оценивает в
целом всю контекстно-зависимую информацию в процессе коммуникации. Здесь участвует не только текущая информация, получаемая
в процессе текущего речевого акта, но и все знания, которые имеют
участники диалога, и даже окружающие условия. Действительно,
собеседники не сразу понимают друг друга, если говорят о разных
вещах, хотя при этом воспринимают все слова и даже правильную
грамматическую структуру фразы. Такие ситуации часто возникают
при быстром переходе с темы на тему в ходе разговора или несоответствии общих знаний у собеседников. Эти знания прежде всего связаны с контекстом или социокультурным положением индивида. Иногда прагматический уровень разделяют на три подуровня [1]:
– чистый прагматический уровень – исследование различных значений, которые может донести отдельное высказывание, произнесенное в различных контекстах;
– уровень дискурса – связан с тем, как предшествующее высказывание влияет на интерпретацию следующего высказывания. Это может быть полезным для разрешения анафоры и других языковых неоднозначностей;
94
– уровень знаний о мире – иногда сводится к базовым знаниям и включает все, что человек знает о мире (небо синее, снег холодный и т. д.), а
также, что участник речевого общения знает об убеждениях и целях других участников.
Необходимо подчеркнуть, что речевое общение в естественной ситуации происходит в условиях разнообразных акустических помех и
искажений, при которых возникают потери информации. Для того
чтобы повысить точность распознавания смысла при описании речевого сигнала на всех уровнях от параметрического представления до
семантики, формируется не одна, а некоторый набор гипотез, которые постепенно отсекаются на последующих уровнях. За счет этого
даже сильно искаженные сообщения сохраняют вероятность быть
распознанными правильно.
В заключение раздела отметим, что практически все современные
системы автоматического распознавания речи имеют многоуровневую иерархическую структуру, учитывающую разного рода сведения
о языке и текущей ситуации. При недостатке информации или зашумленных окружающих условиях на выходе каждого уровня формируется не единственное решение (например, одна цепочка фонем),
а несколько возможных гипотез, выбор между которыми производится на следующем уровне обработки. Последние обзорные статьи по
автоматическому распознаванию речи свидетельствуют о том, что существует масса вопросов в этой области, на которые пока нет ответов.
95
3. МЕТОДЫ АВТОМАТИЧЕСКОГО РАСПОЗНАВАНИЯ РЕЧИ
Поскольку термины «распознавание» и «понимание» используются во многих областях, то во избежание недоразумений следует
сразу определиться, что будем считать распознаванием, а что – пониманием в речевых технологиях. Под распознаванием слитной речи
будем понимать представление речевого сигнала последовательнос!
тью слов, которая ему соответствует. Под смысловой интерпретацией или пониманием речи будем понимать представление смыс!
ла, передаваемого речевым сигналом, в некоторой канонической
форме, непосредственно пригодной для вызова в автоматической
системе действий, угодных человеку [32].
Параметры автоматической системы распознавания речи в первую очередь зависят от условий прикладной задачи: 1) уровня окружающего шума; 2) свойств канала передачи речи; 3) размера словаря; 4) типа ввода речи (изолированный или слитный ввод). Для распознавания изолированных слов необходимо, чтобы диктор делал
короткие паузы между словами, что замедляет ввод и ухудшает естественность, в то время как при вводе слитной речи этого не требуется.
Подходы к распознаванию слитной речи основаны на методах генерации гипотез фраз путем формирования составных эталонов или
моделей слов [16, 20 , 37, 41]. Однако это в общем случае приводит к
неприемлемому усложнению модели распознавания. Поэтому стали
использовать синтаксические или стохастические ограничения в ходе
генерации гипотетических фраз, чтобы существенно уменьшить число обрабатываемых гипотез [10, 45]. Но, с другой стороны, такие
модели могут распознавать только идеально построенные фразы, т. е.
фразы с частичными неточностями отвергаются уже на уровне распознавания цепочек слов и, следовательно, дальнейшее робастное
понимание невозможно. Таким образом, необходимо отказаться от
каких-либо синтаксических ограничений в процессе распознавания
слов и при этом избежать непомерного роста сложности, свойственной моделям генерации.
Кроме того, сложность проблемы распознавания речи, главным
образом, связана с вариативностью ее основных параметров, на которые влияет множество факторов. Прежде всего, это случайная компонента процесса речеобразования, которая приводит к многообразию описания одного и того же слова, произнесенного одним и тем же
диктором. Более существенный фактор – индивидуальное различие
речевых аппаратов разных дикторов. Далее надо отметить влияние
пола диктора, возрастных различий, диалектов, эмоционального и
физического состояния диктора. Значительное влияние вносит аку96
стический аспект, т. е. смена микрофона, расположение микрофона
относительно рта, акустическая обстановка в помещении.
Для решения проблемы вариативности речи на уровне параметрического представления сигнала стараются выбрать дикторонезависимые параметры. Кроме того, используют методы адаптации, позволяющие настроить систему на конкретный голос и акустическую
обстановку. Не менее важна адаптация к ПО и лексико-семантическим особенностям прикладной задачи.
С увеличением размера словаря точность распознавания слов существенно ухудшается, так как при этом появляются группы акустически подобных слов. Для решения проблемы стали привлекать
высокоуровневую информацию, обычно синтаксическую и семантическую в виде стохастических моделей языка. Одной из первых работ
в этой области была модель распознавания 5000 слов фирмы IBM на
основе сочетания акустико-лексической обработки с моделью языка, основанной на статистике биграмм и триграмм слов [9]. Такая
парадигма сохраняется и до наших дней. Основным направлением в
акустической обработке является техника скрытого марковского
моделирования, которая обеспечивает дикторонезависимость и обработку слитной речи. Сейчас наблюдаются многочисленные попытки применить эти системы для различных интеллектуальных приложений, таких как справочные системы, голосовое управление, системы перевода и др.
3.1. Определение границ речи
Для распознавания речи необходимо предварительно определить
ее границы в контексте окружающих шумов. Совершенно очевидно,
что точность распознавания изолированных слов существенно зависит от точности определения их границ. Для слитной речи также необходимо определять моменты начала и конца произнесения фразы.
Сложность определения границ речи связана с особенностями произношения конкретного диктора, с наличием в его речи шумов процесса артикуляции (придыхание, чмоканье и т. п.). Кроме того, очень
важен учет посторонних шумов. При разработке к методу определения границ речи предъявляются следующие основные требования:
– минимизация вероятности ложной тревоги при воздействии только шума с высоким уровнем;
– высокая вероятность правильного выделения речи даже в условиях значительного шума;
– высокое быстродействие для исключения задержек включения и
выключения распознавателя речи.
97
Традиционно в системах распознавания речи для определения границ речи используются методы, основанные на вычислении кратковременной энергии сигнала или спектральной энергии. Дополнительно
применяются методы, основанные на количестве нуль-пересечений
речевого сигнала, информации о длительности речевых фрагментов
и адаптивные пороговые значения для выделения речи. На практике
используются несколько основных методов определения речи в сигнале. Приведем некоторые из них.
Детектор речевой активности (Voice Activity Detector – VAD) [5], применяемый в телекоммуникационных сетях стандарта GSM, необходим
для определения периодов времени, когда пользователь говорит. Для
выполнения своих функций детектор VAD должен обладать малым временем реакции, чтобы не допускать потерь начальных слов и отсекать
бесполезные фрагменты молчания в конце предложений; в то же время
детектор VAD не должен срабатывать от воздействия фонового шума.
Детектор VAD оценивает энергию входного сигнала и, если она
превышает некоторый порог, активизирует передачу. Если бы детектор отбрасывал всю информацию до момента, пока энергия сигнала
не стала выше порога, то происходило бы отрезание начальной части
периода активности. Поэтому реализации VAD требуют сохранения
в памяти нескольких миллисекунд информации, чтобы иметь возможность запустить передачу до начала периода активности. В стандарте GSM принята схема VAD с обработкой в частотной области.
Структурная схема VAD приведена на рис. 3.1.
2121
123456278
9
5
5378
25
4
4
623
99
423
4
37
642
5
442
4
Рис. 3.1. Структурная схема VAD!детектора
Работа детектора основана на различии спектральных характеристик
речи и шума. Считается, что фоновый шум является стационарным в течение относительно большого периода времени, его спектр также медленно
изменяется во времени. VAD определяет спектральные отклонения входного воздействия от спектра фонового шума. Эта операция осуществляется инверсным фильтром, коэффициенты которого устанавливаются применительно к воздействию на входе только фонового шума. При наличии
на входе речи и шума инверсный фильтр осуществляет подавление компо98
нентов шума и, в целом, снижает его интенсивность. Энергия смеси сигнал+шум на выходе инверсного фильтра сравнивается с порогом, который
устанавливается в период воздействия на входе только шума. Этот порог
находится выше уровня энергии шумового сигнала. Превышение порогового уровня принимается за наличие на входе реализации (сигнал+шум).
Коэффициенты инверсного фильтра и уровень порога изменяются
во времени в зависимости от текущего значения уровня шума при
воздействии на входе только шума. Поскольку эти параметры (коэффициенты и порог) используются детектором VAD для обнаружения
речи, сам VAD не может на этой же основе принимать решение, когда
их изменять. Это решение принимается вторичным VAD на основе
сравнения огибающих спектров в последовательные моменты времени. Если они аналогичны для относительно длительного периода
времени, предполагается, что имеет место шум, и коэффициенты
фильтра и шумовой порог следует адаптировать к текущему уровню
и спектральным характеристикам входного шума.
На рис. 3.2 представлен детектор речи, предложенный Л. Рабинером и его коллегами [16], который использует измерения кратковременного значения энергии сигнала для определения границ речи.
В этом подходе модуль определения адаптивного порога оценивает
уровень акустического фонового шума и использует полученный
результат для выравнивания контура энергии. Явные выбросы значения энергии, которые происходят при наличии в сигнале речи,
определяются на основе выровненных значений энергии сигнала.
При этом на основе предварительно проведенных экспериментов
выбираются пороговые значения энергии, которые отделяют речь
от фонового шума.
123
89
55535
9322
92
2
4567
123
5
535
2
553322
23 35
32535
23563
3
Рис. 3.2. Алгоритм определения границ речевого сигнала, предложенный
Л. Рабинером
В многоканальном алгоритме выделения границ речи предлагается
кроме обычного микрофона применить дополнительные источники ин99
формации, такие как дополнительные микрофоны, фотодатчик, низкочастотный датчик звукового давления, датчик воздушного потока [46].
Суть многоканального алгоритма заключается в следующем. По
выходам датчиков (каналам) рассчитываются некоторые зависящие
от времени численные параметры (энергия сигнала, производная энергии и т. п.), по которым путем сравнения с некоторым фиксированным порогом можно судить о наличии или отсутствии речевого сигнала в данном канале. Временной интервал, на котором в каждой
точке зафиксировано превышение порога, называется «квазиречевым интервалом», а временной интервал, на котором в любой точке
значение рассчитанных параметров сигнала меньше порога, – «паузой».
Используя такие заранее заданные для каждого канала параметры
как максимальная длина «паузы» внутри речевого сегмента, минимальная длина максимального «квазиречевого интервала» внутри речевого
сегмента, максимальная длина «квазиречевого интервала» вне речевого сегмента, минимальная и максимальная длина речевого сегмента и
т. п., в каждом из каналов выделяются границы речевых сегментов.
Считаем, что зафиксирован факт речевого ответа, если существует момент времени t, который одновременно принадлежит речевым
сегментам на всех каналах. Тогда границы речевого сегмента на основе анализа всех каналов определяются путем объединения всех
речевых сегментов, содержащих момент времени t, во всех каналах.
Разработанный в СПИИРАН метод основан на вычислении энтропии
(как меры неопределенности или беспорядка в некотором распределении
[40]) спектра сигнала. Для определения границ речи используется свойство отличия значений энтропии для речевых сегментов и для фонового
шума. Отличительная черта данного подхода состоит в том, что этот показатель является малочувствительным к изменениям амплитуды сигнала. На рис. 3.3 представлена блок-схема данного алгоритма.
123456789
399
63
861
759
659689
3
3
859
399
393
5633
859
466766 9
6593923
859
345679
659689
859
396
93793
3
3
5633
859
Рис. 3.3. Алгоритм определения границ речи на основе энтропии спект!
ра сигнала
100
Для некоторых задач, в которых вид шума и его спектр мало меняются с течением времени, может оказаться эффективным дополнительное вычисление энтропии спектра для короткого участка звукового сигнала, содержащего только акустический фоновый шум без
включения речевых или иных звуковых фрагментов, и вычитание
энтропии для шума из полученных значений энтропии для анализируемого сигнала.
Основные трудности решения задачи определения границ речи обусловлены изменчивостью произнесения и разнообразием используемого словаря, наличием специфических пауз перед смычками внутри
слов, воздействием нестационарного шума. От точности определения границ речи принципиально зависит вся дальнейшая обработка
речи. Например, различные шумовые помехи, характерные в начальной фазе речи (причмокивание, прокашливание и др.), зачастую являются причиной значительного падения точности распознавания речи.
Таким образом, в ходе процедуры определения границ речи производится выделение определенного участка записанного с микрофона
сигнала, который будем считать речью, остальные участки объявляются шумовыми и исключаются из последующей обработки.
3.2. Параметрическое представление речевого сигнала
Физические параметры речи, которые мы исследуем при обработке сигнала, обычно непрерывно изменяются. Поскольку происходит
непрерывное движение органов речеобразования, то теоретически
возможно производить измерение через бесконечно малые промежутки времени. Однако, принимая в расчет объем памяти, необходимый
для хранения данных, и время на их обработку, а также то, что воспринимаем речь мы все-таки по дискретным единицам (фонемы, слова), то используют некоторые допущения. Прежде всего рассмотрим
основные понятия, принятые в теории цифровой обработки сигналов.
Сигнал, выражающий непрерывно изменяющуюся величину, называется аналоговым сигналом, а ступенчатое представление сигнала – дискретизацией. Дискретизация может производиться как по
времени, так и по значению величины сигнала. В первом случае ее
часто называют операцией получения выборки, во втором – кванто!
ванием. Если сигнал, подвергнутый дискретизации по времени и по
значению, затем представляется в цифровом виде, то такое преобразование аналогового сигнала в цифровой называется аналого!цифро!
вым преобразованием.
Аналоговый сигнал, полученный от датчика, посредством анало!
го!цифрового преобразователя (АЦП) преобразуется в числовые
101
значения в двоичной системе счисления, т. е. предстает в виде нулей
и единиц. Чтобы его воспроизвести, цифровой сигнал необходимо снова преобразовать в аналоговый. Этот процесс называется цифроана!
логовым преобразованием.
В процессе преобразования аналогового сигнала в цифровой очевидно, что чем шире интервал дискретизации выборки и грубее квантование, тем меньше требуется данных для того, чтобы представить
сигнал. Однако если сигнал представлен слишком малым объемом
данных, то возникает опасность потерять информацию, которую сигнал содержит. Одна из самых основных проблем, с которой мы с самого начала сталкиваемся при обработке сигналов, – проблема выбора интервала дискретизации выборки.
Аналого-цифровые и цифроаналоговые преобразователи являются общим элементом всех цифровых звуковых систем. С них начинается и ими заканчивается любая система цифровой обработки. Требования, предъявляемые к преобразователям в звуковой технике, в
некоторых отношениях отличаются от принятых в других областях
применения цифровой обработки. Особое внимание следует уделить
скорости обработки данных, поскольку ее снижение существенно
сказывается на стоимости и сложности частей системы, связанных с
хранением, передачей и обработкой информации. Однако при этом не
стоит забывать о качестве синтезированной речи и точности распознавания, поскольку от этого зависит естественность взаимодействия
пользователя с системой. Компромисс, к которому приводят многочисленные и противоречивые соображения, должен быть выбран
очень тщательно, поскольку ошибки в речевых системах широкого
применения обходятся достаточно дорого.
Методы цифровой обработки речевых сигналов для широкого круга
задач активно развиваются, начиная с середины прошлого столетия.
До середины 60-х годов почти все системы, предназначенные для обработки речевых сигналов, в основном строились в виде аналоговых
устройств. Вместе с тем в этот же период было создано несколько
систем на базе универсальных цифровых вычислительных машин.
Гибкость, присущая цифровым вычислительным машинам, естественным образом привела к постановке экспериментов с более сложными алгоритмами. По мере развития методов цифровой обработки
сигналов как за счет расширения возможностей цифровой аппаратуры, так и за счет создания новых алгоритмов становилось все более
очевидным, что цифровые методы и аппаратура должны существенно повлиять на процессы обработки речевых сигналов. В последнее
время цифровая обработка сигналов применяется практически во всех
современных системах обработки речи. Речевой сигнал, представлен102
ный в цифровой форме, далее проходит различные виды обработки,
прежде чем автоматическая система преобразует распознанную речь
в текст или соответствующее действие.
Важный вопрос, с которым в первую очередь сталкивается разработчик речевых технологий, – разработка оптимального метода параметрического представления сигнала, который позволил бы достаточно хорошо различать звуки и слова речи и в то же время обеспечил инвариантность к особенностям произношения конкретного диктора, к изменениям акустической обстановки. Из практики известно, что большинство ошибок распознавания слов происходит по причине вариаций громкости сигнала, которые происходят из-за неточной фиксации микрофона либо изменения громкости произношения.
Другой частой причиной ошибок являются случайные нелинейные
деформации формы спектра, которые постоянно присутствуют в речевом сигнале у одного и того же диктора. Поэтому одной из важнейших задач при создании робастных систем распознавания/понимания речи является выбор такого представления анализируемого сигнала, которое является достаточно адекватным его содержанию и в
то же время инвариантным (по мере возможности) к искажениям
масштаба сигнала и к деформациям спектра.
За всю историю создания систем распознавания речи было предложено несколько вариантов представления системы признаков, в разной мере удовлетворяющих указанному требованию [36, 64, 67]. Один
из них, основанный на сравнении энергии спектральных полос, был
предложен Л. Л. Мясниковым, который впервые применил систему
признаков, устойчивую к вариациям масштаба сигнала [54]. В его
электронном приборе речевой сигнал подавался на гребенку полосовых фильтров. После детектирования сигналы сравнивались попарно и вырабатывались признаки со значениями: «+» ,«–» ,0. В зависимости от полученной комбинации признаков срабатывало то или
иное реле, настроенное на определенную фонему. Эти признаки позволили достаточно уверенно распознавать «тянутые» звуки. Признаки, схожие по принципу формирования с вышеописанными, также применялись позднее уже для распознавания изолированных слов
[33]. В этом распознавателе используются двоичные признаки, которые получены путем знакового сравнения энергии сигнала в нескольких спектральных фильтрах. При этом вырабатывается знак
«+» для участков возрастания и «–» для участков снижения. Недостатком этого метода является неразличимость участков с отсутствием наклона (например, нулевой сигнал) и с отрицательным наклоном, что ведет к ошибкам. Также применялись троичные признаки
для распознавания изолированных слов [43], которые показали луч103
шие результаты по сравнению с двоичными. Эти методы достаточно
устойчивы к влиянию линейных и нелинейных деформаций спектра
сигнала, однако они являются слишком грубыми, поскольку не учитывают крутизну спектральной функции на различных участках.
Кроме того, существует широкий спектр методов параметрического представления сигнала на основе автокорреляционного анализа, аппаратной полосовой фильтрации, расчетного спектра, метода
коэффициентов линейного предсказания (КЛП) [43, 50, 76]. Сейчас
наиболее распространены два класса методов, использующих разновидности спектрального анализа и КЛП. Популярность этих методов объясняется тем, что они хорошо согласуются соответственно с
моделями слухового восприятия и речеобразования человека.
Речевой сигнал, как правило, записывается с частотой дискретизации 8 – 22 кГц. Эта последовательность цифровых отсчетов разделяется на сегменты речи длительностью 10–30 мс, примерно соответствующие квазистационарным участкам речи. Для каждого такого сегмента вычисляется вектор параметров (признаков), эти векторы составляют основу параметрического описания речи. Такой
анализ называется кратковременным.
При кратковременном анализе сигнала на каждой итерации рассматривается лишь один короткий сегмент сигнала, а остальная часть сигнала отбрасывается. В спектральной области такая процедура соответствует операции свертки спектра участка сигнала со спектром прямоугольного окна. Так как спектр прямоугольного окна имеет значительные боковые лепестки, то в результирующем кратковременном спектре
сигнала будет наблюдаться эффект значительной «утечки» энергии,
который может привести к маскированию слабых компонент спектра
сигнала. Использование весовых окон с другим распределением коэффициентов позволяет заметно уменьшить описанный эффект. При этом
из-за расширения основного лепестка в спектре весового окна наблюдается некоторое ухудшение разрешения дискретных частот в спектре сигнала. Так, для получившего широкое распространение весового окна
Хэмминга максимальный уровень боковых лепестков составляет 42,7 дБ,
а ширина основного лепестка вдвое больше ширины главного лепестка
спектрального представления прямоугольного окна.
Процедура предыскажения используется для устранения влияния
особенностей голосового аппарата на речевой сигнал. Простейший
способ выполнения такого предыскажения заключается в пропускании сигнала через фильтр с характеристикой 1 – μz, где 0,9 < μ < 1,0.
Набор полосовых фильтров является одним из фундаментальных понятий в обработке речевого сигнала. Концепция набора фильтров соответствует модели слухового аппарата человека. Спектральное описание
104
сигнала, получаемое с помощью системы фильтров, можно рассматривать как реакцию механической системы внутреннего и среднего уха на
воздействие сложного сигнала. При этом различные составляющие этих
колебаний заставляют вибрировать отдельные участки базилярной мембраны [65]. Поэтому формирование набора полосовых фильтров производится с учетом основных свойств слухового аппарата человека, который наилучшим образом приспособлен к задаче распознавания речи.
Изучение спектрального преобразования сигнала привело многих
исследователей к весьма сходным алгоритмам вычисления оптимального набора параметров [13, 16]. Эти алгоритмы включают в себя
предварительную обработку цифровых отсчетов, например предыскажающий фильтр, процедуру весового окна, быстрое преобразование Фурье (БПФ) над сегментами речи 10–20 мс, формирование набора перекрывающихся фильтров, расположенных эквидистантно
или по некоторому нелинейному закону, например, согласно Mel- или
Bark-шкале [65]. Отсчеты БПФ, включенные в каждый фильтр, пересчитываются с учетом треугольного окна, затем определяется интегральная энергия Sn в каждом фильтре и далее производится логарифмирование выхода каждого фильтра. Этот набор данных подвергается косинус-преобразованию, что в итоге приводит к так называемым кепстральным коэффициентам Cij [16, 18]. Кепстральные коэффициенты, полученные с использованием Mel-шкалы, называются мел-частотными кепстральными коэффициентами:
Cij =
N
⎡
⎤
∑ log(S(n))cos ⎢⎣ j ⎛⎜⎝ n − 12 ⎞⎟⎠ Nπ ⎥⎦, 1 ≤ j ≤ J,
n =1
где j – номер кепстрального коэффициента.
Техника линейного предсказания [50], основанная на авторегрессионном анализе, сегодня менее популярна в распознавании
речи, но все еще широко распространена в системах сжатия речи.
Основной принцип линейного предсказания основан на аппроксимации текущего отсчета речевого сигнала через линейную комбинацию соседних отсчетов. При линейном предсказании основная
задача анализа речи – найти коэффициенты этой линейной комбинации, которые дают минимальную ошибку предсказания на участке анализа сигнала. Коэффициенты предсказания – это весовые
коэффициенты, используемые в линейной комбинации, которые
вычисляются путем минимизации среднего квадрата разности между отсчетами речевого сигнала и их предсказанными значениями.
В общих чертах процесс вычисления вектора признаков с помощью КЛП представлен на рис. 3.4.
105
7
836
6751
79
64
76
274244
45
1234546671
89
4
8
1
8
75346
6542
Рис. 3.4. Типовая модель обработки сегмента речи с помощью КЛП
Основные положения метода линейного предсказания хорошо согласуются с моделью речеобразования, разработанной Фантом, поэтому метод линейного предсказания позволяет точно и надежно оценить
параметры этой линейной системы с переменными коэффициентами.
Для линейной модели речеобразования отсчет речевого сигнала s(n) связан с сигналом возбуждения u(n) простым разностным уравнением
p
s(n) = −
∑ aks(n − k) + u(n).
k =1
Более полное описание речи может быть получено путем объединения информации о речевом тракте и источнике возбуждения.
Поскольку для хранения параметрического представления речи требуется довольно большой объем памяти и, учитывая значительную случайную составляющую речи, целесообразно сжать эту информацию. Для
этой цели применяется техника векторного квантования (ВК) [48, 77].
Кроме того, ВК значительно упрощает алгоритмы распознавания речи.
Основная идея этой техники состоит в том, чтобы отобразить неограниченное множество векторов признаков речевого сигнала на конечное
множество наиболее типичных акустических состояний. Наиболее типичная схема реализации ВК представлена на рис. 3.5. При этом многомерный вектор параметров заменяется индексом соответствующего элемента кодовой книги. Кроме того, закреплением за элементом кодовой
4
9453
276535
853
6
784623
4
!554
79
4
276535
1234
56785929
595
27653 32
857 784
74
927
822964
7555 79
Рис. 3.5. Блок!схема обучения кодовой книги и классификации векторов
106
книги определенного звука устанавливается связь с фонетическим уровнем, что важно для последующей обработки.
Важным вопросом ВК является разработка соответствующей кодовой книги, необходимой для квантования, а также выбор меры
расстояния между векторами и процедуры выбора ближайшего элемента. При этом используют сравнение со всеми элементами кодовой
книги или иерархические процедуры кластеризации. Процесс построения кодовой книги известен также как процесс обучения или заполнения кодовой книги. Наиболее популярны сейчас методы k-средних и ISODATA [42].
Таким образом, в результате процедуры параметрического представления речи получаем речевой сигнал, описанный последовательностью некоторых векторов признаков, и далее переходим на более
высокий уровень описания речи – фонемы и слова.
3.3. Методы распознавания речи
Сравнение с эталоном. Ключевым вопросом в распознавании речи
является идентификация элементов речи, которая ведется или путем сравнения с эталонами (фонем, слов, словосочетаний) методами
динамического программирования (ДП), или посредством оценки
правдоподобия принадлежности данного сигнала к тому или иному
классу при статистическом моделировании на основе скрытых марковских моделей (СММ) [10, 13, 16, 31, 43].
Наиболее простой задачей является распознавание изолированных слов. Для этого необходимо предварительно определить границы слов в контексте окружающих шумов. Сложность определения
границ слов связана с особенностями произношения конкретного
диктора, с наличием в его речи шумов процесса артикуляции (придыхание, чмоканье и т. п.). Кроме того, важен учет посторонних шумов. Совершенно очевидно, что точность распознавания изолированных слов существенно зависит от точности определения их границ.
Основная трудность сравнения отрезков речи связана с вариативностью временного масштаба речи, с его нелинейными флюктуациями, поэтому алгоритмы сравнения тесно связаны с задачей нейтрализации деформаций темпа. Изменчивость темпа речи выражается в
неконтролируемых флюктуациях продолжительности звуков речи,
их участков и пауз. Для того чтобы сравнить слово с эталоном, надо
путем деформации оси времени совместить участки, соответствующие одним и тем же звукам, измерить остаточные различия между
ними и просуммировать эти частные расстояния, взятые с некоторыми весовыми коэффициентами.
107
Для нелинейного согласования речи наиболее широко использовались алгоритмы ДП, базирующиеся на фундаментальных работах
Беллмана [27]. Одна из первых публикаций по применению ДП в
распознавании речи принадлежит Т. Винцюку [34]. Детальное исследование модификаций этого метода было выполнено специалистами японской фирмы NEC [41]. Задача ДП сводится к поиску оптимального согласования двух отрезков речи A и B. Описания слов представлены в виде последовательностей векторов признаков:
A = {a1, a2, ..., aj , ..., ak };
B = {b1, b2, ..., bj , ..., bn }.
В пространстве признаков выбрана некоторая метрика d(i, j), позволяющая определить меру различия соответственно между векторами ai и bj. Затем находится оптимальная траектория на фазовой
плоскости (i, j), которая получается в процессе минимизации суммы
всех d(i, j), встречающихся на этой траектории, взятых с определенными весовыми коэффициентами. Работа алгоритмов ДП основана
на использовании рекуррентных уравнений (рис. 3.6).
⎧ g (i − 1, j − 2) + 2d(i, j − 1) + d(i, j),⎫
⎪
⎪
g (i, j) = min ⎨ g (i − 1, j − 1) + 2d(i, j),
⎬
⎪ g (i − 2, j − 1) + 2d(i − 1, j) + d(i, j).⎪
⎩
⎭
Рис. 3.6. Рекуррентное ДП!уравнение с двукратной степенью деформации
Разновидности этих уравнений непосредственно связаны с гипотезами о характере взаимных деформаций отрезков речи A и B. Исследование этого вопроса [41, 43] показало, что оптимальной деформацией является двукратная, что подтверждается минимумом ошибок при распознавании.
Основными недостатками данного подхода является дикторозависимость. Каждый новый пользователь системы, перед тем как ее
использовать, должен наговорить все слова, которые есть в словаре.
Для повышения точности распознавания при записи эталонов обычно пользователю приходилось повторять все слова по несколько раз.
По этой причине такой подход применялся для ограниченных приложений с малым словарем, например вызов определенного абонента
в мобильных телефонах или голосовое управление офисными программами. Также следует отметить, что такие системы были рас108
считаны, прежде всего, на распознавание изолированной речи, т. е.
система могла отреагировать только на отдельно произнесенные слова, которые она знала, или жестко определенные фразы, произнесенные целиком именно в том порядке слов, который записан в системе.
Эти ограничения накладывали ряд существенных неудобств при работе, которые не позволили распространиться этим системам достаточно широко. На смену методам сравнения с эталонами пришли более гибкие методы на основе СММ. Они довольно содержательны по
своей математической структуре, поэтому стали теоретическим фундаментом для различных областей исследований, не только языка.
СММ речевого сигнала позволяет решать не только задачи распознавания речи, но также улучшать качество сигнала, загрязненного
шумами и искажениями, моделировать источник речевого сигнала,
оптимизировать модель диалога.
Стохастическое моделирование речи. В настоящее время наиболее популярные системы распознавания слитной речи строятся на
основе СММ и искусственных нейронных сетей [13, 31, 61, 62, 79].
Теоретическую базу для статистического моделирования языковых
процессов заложил петербургский профессор А. А. Марков в начале
ХХ в. Сейчас методами марковского моделирования пользуются почти все исследователи речи в мире. Разновидность марковских моделей, называемая скрытая марковская модель, основанная на теории
дискретных случайных цепей, была впервые введена и изучена в конце 60-х – начале 70-х годов [16]. СММ – это дважды стохастический
процесс. Термин «дважды» используется для обозначения такой пары
процессов, один из которых является основным, но скрытым от нас и
наблюдаемым только через другой стохастический процесс. Модели
такого типа особенно удобны для описания речевого сигнала, поскольку в действительности давление звуковой волны, которое мы
измеряем, представляет собой только некоторый код основного символьного процесса, протекающего в ненаблюдаемых, практически
полностью недоступных участках мозга. В наблюдаемом акустическом процессе выявляются измеримые физические корреляты лингвистической структуры.
Классические постановки задачи распознавания образов [53] оперируют с неделимыми объектами, каждый из которых предполагается целиком принадлежащим к одному из конечного множества классов. Задача наблюдателя – определить скрытую принадлежность
объекта к тому или иному классу, анализируя вектор значений некоторых его признаков, число которых обычно принимается конечным.
Информацию о связи между значениями признаков объекта и его принадлежностью к определенному классу наблюдатель должен извлечь
109
из обучающей совокупности объектов, для которых известны как
значения их признаков, так и классы, либо только значения признаков. Разумеется, такой подход к анализу данных адекватен лишь
одному из двух аспектов двуединой задачи распознавания образов, а
именно, распознаванию класса наблюдаемых событий, рассматриваемого как внешнее проявление некоторого скрытого события. При
этом вынужденно предполагается уже решенной задача сегментации,
т. е. определения границ фрагментов, каждый из которых допустимо
рассматривать как единое целое.
При построении модели распознавания на основе СММ выбирают
ее основные параметры: тип модели (эргодическая, модель Бэкиса
(лево-правая модель) и др.), размер модели (число состояний), тип
наблюдаемых параметров (дискретные или непрерывные плотности
наблюдений). Выбранная структура модели затем используется для
каждой фонемы (или аллофона). СММ для слова получается путем соединения цепочки моделей фонем соответствующего алфавита (рис. 3.7).
Аналогичным образом соединяются модели слов друг с другом, образуя модели словосочетаний и предложений. Кружками обозначены
состояния, стрелками – переходы между ними. Каждому состоянию
соответствует набор векторов, наблюдаемых в этом состоянии, с вероятностью их наблюдения.
111
ϕ1
ϕ2
ϕ1
Рис. 3.7. Марковская модель слова, составленная из моделей фонем
Существует два режима работы с моделью – обучение и распознавание. СММ при обучении позволяет с помощью вероятности отразить те закономерности речи, которые не наблюдаются в сигнале.
При распознавании строятся всевозможные переходы в зависимости
от сигнала и определяется вероятность того, что в результате мы окажемся в конечном состоянии. Для полного определения дискретной
СММ λ некоторой речевой единицы необходимо задать следующие
параметры:
1) N – число состояний в модели. Хотя состояния скрыты от наблюдателя, в некоторых практических задачах состояниям или множествам состояний модели приписывается некий физический смысл.
Для обозначения множества состояний модели используется запись
S = {s1, s2, …, sN}, а состояние модели в момент t обозначается qt;
110
2) М – число различных символов наблюдения, которые могут
порождаться моделью, т. е. размер дискретного алфавита. Символы
наблюдения соответствуют физическому выходу моделируемой системы. Множество наблюдаемых символов обозначается как V = {v1,
v2, …, vM};
3) распределение вероятностей переходов между состояниями (или
матрица переходных вероятностей) A = {aij}, где aij = P[qt+1 = si|qt = sj];
4) распределение вероятностей появления символов наблюдения
в состоянии j: B = {bj(k)}, где bj(k) = P[vk_at_t|qt = sj];
5) начальное распределение вероятностей состояний π = {πi}, πi =
= P[q1 = si].
Проблема, возникающая при использовании дискретных марковских моделей, заключается в том, что в большинстве практических
задач наблюдения являются непрерывными сигналами (или векторами), и их квантование с помощью кодовых книг может иногда приводить к серьезным искажениям исходного сигнала. Поэтому часто
для распознавания речи используют СММ с непрерывными плотностями наблюдений. В таких моделях плотность наблюдений описывается следующим образом:
bi (O) =
M
∑ Cjmϑ[O, μ jm , Ujm ],
m =1
где О – моделируемый вектор наблюдений; Сjm – весовой коэффициент m-й компоненты в состоянии j; ϑ – произвольная логарифмически-вогнутая или эллиптически-симметричная плотность вероятности (например, гауссовская) с вектором средних значений μjm и ковариационной матрицей Ujm для m-составляющей в состоянии j. Как
правило, в качестве плотности вероятности на практике используется гауссовская плотность, поскольку позволяет с любой точностью
аппроксимировать произвольную непрерывную функцию плотности
вероятности, содержащую конечное число компонент.
Существуют три основные задачи, связанные с использованием
СММ [3].
Задача 1. Пусть задана последовательность наблюдений O =
= O1, O2, …, OT и модель λ. Как эффективно вычислить величину P(O|λ),
т. е. вероятность появлений этой последовательности наблюдений для
данной модели? Существует несколько способов оценки правдоподобия. Наиболее широко применяется алгоритм прямого-обратного хода
(Forward-Backward), а также различные лучевые алгоритмы.
Задача 2. Пусть заданы последовательность наблюдений O =
= O1, O2, …, OT и модель λ. Как выбрать последовательность состоя111
ний Q = q1, q2, …, qT, которая в некотором значимом смысле будет
оптимальной (например, наилучшим образом соответствовать имеющейся последовательности наблюдений)? Для решения этой задачи применяют алгоритм Витерби.
Задача 3. Каким образом нужно подстроить параметры модели λ,
для того чтобы максимизировать P(O|λ)? Задача обучения СММ является крайне важной, но в то же время наиболее трудной задачей.
Цель обучения акустических моделей, основанных на СММ, состоит в том, чтобы по заданной последовательности наблюдений O,
которая называется обучающей последовательностью, определить
метод такой подстройки параметров модели, чтобы для полученной
модифицированной модели λ вероятность появления этой последовательности P(O|λ) была максимальной. Не существует известного
аналитического выражения для параметров такой модели. Кроме
того, на практике, располагая некоторой последовательностью наблюдений в качестве обучающих данных, нельзя указать оптимальный способ оценки параметров. Тем не менее, используя итеративные процедуры, например метод Баума–Уэлча, ЕМ-метод (метод математического ожидания – модификации) или градиентные методы,
можно выбрать параметры модели таким образом, чтобы локально
максимизировать данную вероятность. Если итеративно повторять
процедуру переоценки параметров, используя на каждом новом шаге
значения параметров модели, полученные на предыдущем шаге, то
мы будем последовательно получать модели, для которых вероятность появления заданной последовательности наблюдений будет
увеличиваться. Процедуру переоценки следует продолжать до тех пор,
пока не будет достигнута некоторая предельная точка (по максимуму правдоподобия СММ).
Согласно теории, процедура переоценки должна давать значения
параметров СММ, которые соответствуют локальному максимуму
функции правдоподобия. При этом необходимо решить вопрос, как
выбирать начальные значения параметров заданной модели, для того
чтобы локальный максимум оказался глобальным максимумом функции правдоподобия. Однозначного ответа на этот вопрос на данный
момент не существует. Опыт показывает, что либо случайные (подверженные стохастичности и ограничениям ненулевых значений),
либо однородные начальные оценки параметров π и A почти во всех
случаях позволяют получать вполне приемлемые повторные оценки
для этих параметров. Что же касается параметра В, то хорошие начальные оценки являются полезными в случае дискретных символов
и необходимы в случае непрерывного распределения [16]. Такие начальные оценки могут получаться различными способами, включая
112
ручную сегментацию последовательностей наблюдений на состояния
с усреднением числа наблюдений в состояниях, сегментацию наблюдений по методу максимального правдоподобия с усреднением, сегментацию с использованием k-средних и т. д.
Для автоматического получения начальных оценок для плотностей распределения наблюдений чаще всего используют процедуру
k-средних, которая дает приемлемые начальные оценки этих параметров. Блок-схема процедуры показана на рис. 3.8. Предположим,
что у нас есть обучающее множество наблюдений и начальная оценка
всех параметров модели. Однако в отличие от обучающего множества, требуемого для переоценки, начальная оценка модели может
теперь выбираться произвольным образом или же на основе любой
имеющейся модели, соответствующей этим данным.
885858
98
λ
9958
9
591
8 8
123456789
59
195
559 12
29
35
319
83
!9
9
84
λ
9995
98
"5
559
98
Рис. 3.8. Сегментная обучающая процедура k!средних
После инициализации модели данное множество обучающих последовательностей наблюдения разбивается на состояния в соответствии с используемой моделью λ. Такое разбиение достигается посредством нахождения оптимальной последовательности состояний
с помощью алгоритма Витерби и последующего поиска в обратном
направлении вдоль оптимального пути.
Результатом разбиения каждой обучающей последовательности
является (для каждого из N состояний) оценка максимального правдоподобия для множества тех наблюдений, которые входят в каждое
из состояний st, в соответствии с данной текущей моделью. В том
113
случае, когда используются плотности дискретных символов, каждый из векторов наблюдений внутри какого-либо состояния кодируется с помощью кодовой книги размером М, и обновленная оценка
параметров bj(k) получается следующим образом:
b j (k) =
число векторов с индексом кодовой книги k в состоянии j
.
общее число векторов в состоянии j
В том случае, когда используются непрерывные плотности наблюдений, применяется сегментная процедура k-средних, с помощью
которой выполняется разбиение векторов наблюдений внутри каждого состояния st на M кластеров (на основе евклидовой меры искажения), где каждый кластер представляет одну из М смесей данной
плотности bj(Oj). В результате кластеризации новое множество значений параметров модели получается следующим образом:
Cjm =
число векторов, отнесенных к кластеру m состояния j
;
общее число векторов в состоянии j
εjm = среднее значение векторов, отнесенных к кластеру т состояния j;
U jm = выборочная ковариационная матрица векторов,
отнесенных к кластеру т состояния j.
С помощью этой процедуры разбиения на состояния обновленные
оценки коэффициентов aij могут быть получены как отношение числа переходов из состояния i в состояние j к общему числу переходов
из состояния i в любое другое состояние (включая и переход в себя).
Обновленная модель λ получается на основе новых параметров модели,
а переоценка всех параметров этой модели должна выполняться с помощью формальной процедуры повторного оценивания. Результирующая
модель затем сравнивается с предыдущей моделью посредством вычисления меры отклонения, которая отражает статистическое сходство этих
моделей. Если эта мера отклонения моделей превышает порог, старая модель λ заменяется новой моделью λ (для которой выполняется процедура
переоценки), и полностью повторяется цикл обучения. Если же мера отклонения не превышает данного порога, то полагается, что модель сходится, и сохраняются параметры последней модели.
Необходимо отметить, что для переоценки параметров модели одной последовательности наблюдений недостаточно, поскольку характер переходов между состояниями данной модели позволяет осуществить лишь небольшое число наблюдений для любого состояния
СММ. Следовательно, для того чтобы иметь достаточное количество
данных, позволяющих производить надежную оценку всех парамет-
114
ров модели, необходимо использовать некоторое множество последовательностей наблюдений. Для этой задачи разработан ряд речевых баз данных (корпусов), таких как TIMIT, ATIS, WSJ, RuSpeech
и др. При их создании учитывается множество факторов: характеристика диктора (национальность, пол, возраст), канал передачи данных (микрофон, телефон), уровень шума и др. Однако, как правило,
эти базы данных создаются для определенных прикладных задач и
имеют чрезвычайно высокую стоимость.
Для предварительной отработки методов автоматического обучения акустических моделей возможно использование небольшой акустической базы данных (около 20–30 дикторов), которую можно собрать и подготовить самостоятельно без значительных затрат. Данная речевая база данных должна содержать акустические файлы, а
также их фонетические транскрипции, разметку акустического сигнала по фонемам, словам и фразам. Для задачи обучения акустических моделей базовых фонетических единиц все операции по разметке
акустических данных можно произвести вручную.
В качестве базовых единиц при моделировании и распознавании
речи можно использовать различные фонетические единицы, такие
как фонемы, полуслоги и слоги, а также производные единицы, такие как дифоны или трифоны. В качестве единиц распознавания можно также использовать целые слова и даже группы из двух и более
слов (синтагмы). Чем эти единицы проще (например, фонемы), тем,
как правило, меньше таких единиц существует в языке, но более усложнены их структуры в слитной речи. Для распознавания средних
и больших словарей (порядка 1000 и более слов) использование речевых единиц меньше слова является обязательным, поскольку достаточно трудно построить адекватное обучающее множество для
СММ, моделирующих единицы размером, равным слову или больше.
Наиболее перспективным выглядит использование в качестве минимальной фонетической единицы трифона. Трифон достаточно стабильная речевая единица, возникающая из-за взаимопроникновения соседних звуков как до, так и после фонемы. Исследователи выделяют до
двух тысяч трифонов, которые могут встречаться в русском языке.
До этого момента рассматривалось только распознавание изолированной речи. При переходе к слитной речи возникают дополнительные сложности. В отличие от печатного текста или искусственных сигналов естественная речь не допускает простого и однозначного членения на элементы (фонемы, слова, фразы), поскольку эти элементы не имеют явных физических границ. Они вычленяются в сознании слушателя – носителя данного языка в результате сложного
многоуровневого процесса распознавания и понимания речи.
115
Границы слов в слитной речи определить невозможно без привлечения всей совокупности априорных знаний о языке, о его конкретном применении. Границы могут быть определены лишь в процессе
распознавания, посредством подбора оптимальной последовательности слов, наилучшим образом согласующейся с входным потоком
речи по акустическим, лингвистическим и прагматическим критериям. Поскольку этот подбор ведут одновременно с нормализацией темпа речи в условиях неопределенности границ слов, то для его осуществления применяют многоуровневую оптимизацию. Для распознавания слитной речи в основном используются методы сравнения эталонов речи и статистическое моделирование на основе СММ [64].
В последнем случае вместо эталона, представленного последовательностью N векторов, берется СММ с N числом состояний. Задача распознавания речи состоит в подборе оптимальной последовательности моделей слов, которая наиболее вероятна неизвестной последовательности входных слов. В итоге все эти методы опираются на тот
или иной способ построения гипотез фраз, используя для этого различные виды генеративных грамматик.
Важным компонентом понимания слитной речи является модель
языка, используемая при генерации гипотез фраз. Одной из самых
популярных статистических моделей являются N-граммы. Цель статистической модели состоит в оценке вероятности появления цепочки слов W = w1, w2, …, wq для распознаваемого сигнала. Исходя из
формулы P(W) = P(w1)P(w2|w1)…P(wq|w1…wq–1) остается посчитать
P(wj|w1…wj–1) для каждого j. Оценить вероятность появления слова в
зависимости от всей предыдущей цепочки пока что не представляется возможным вследствие вычислительной сложности задачи. Поэтому в N-граммной модели языка вероятность появления каждого
слова считается функцией от предшествующих N–1 слов. На сегодняшний день практически все коммерческие системы распознавания
речи используют N-граммную модель в той или иной форме. При этом
вероятность всего предложения вычисляется как произведение вероятностей входящих в него N-грамм. Самой простой является 1-граммная бинарная модель. В ней вероятность P(wj|wk) = 1, если такая
последовательность слов допустима в языке, и 0 в противном случае.
В общем же случае происходит оценка P(wj|w1…wj–1) как отношение
количества цепочек w1…wj к w1…wj!1 на обучающем множестве. Как
уже неоднократно отмечалось, на практике обучающие данные всегда неполны, т. е. значительная часть теоретически возможных
N-грамм либо вообще отсутствует, либо встречается слишком редко
для того, чтобы можно было применить стохастические методы для
оценки вероятности их появления. Если такая N-грамма встретится
116
во время работы, то правильный вариант распознавания будет отклонен или его вероятность будет существенно занижена. Для преодоления этого эффекта используются техники сглаживания, которые переопределяют вероятности N-грамм таким образом, что все
N-граммы получают отличные от нуля вероятности появления. При
этом вероятности появления не встречавшихся или редко встречавшихся N-грамм корректируются с учетом N-грамм меньшего порядка. Основным достоинством данного класса моделей оказывается возможность построения модели по обучающему корпусу достаточно
большого размера и относительно высокая скорость работы. Основной недостаток – отсутствие достаточного текстового материала, соответствующего реальной речи (спонтанной речи), для обучения систем распознавания естественной речи.
Другой подход к построению языковых моделей основан на использовании грамматических правил, описывающих корректные
предложения языка. Обычно правила для таких языковых моделей
строятся «вручную» экспертом, что сопряжено со значительными
трудностями. Однако точность такой модели оказывается существенно выше, чем точность простых грамматик типа N-грамм. При этом
обеспечивается достаточно высокая скорость грамматического разбора. К сожалению, эти языковые модели плохо подходят для обработки естественного языка, поскольку фразы, содержащие некоторые отклонения от правил, будут отвергнуты системой. Даже при
распознавании английского языка с его строгой грамматикой и порядком слов в предложении разработчики постепенно отказались от
этого метода. Для преодоления этих ограничений была разработана
вероятностная модель, сочетающая в себе преимущества обеих моделей. Она позволяет учитывать грамматические связи языка и использовать статистическую N-граммную модель, обеспечивающую «универсальность» построенной языковой модели.
Обучение системы производится в основном на трех уровнях:
1) обучение акустических моделей фонем, 2) обучение статистических моделей языка и 3) обучение модели менеджера диалога. В связи с важностью проблемы обучения и с учетом того, что при настройке всех уровней системы используются методы обучения одного класса, следующий подраздел посвящен методам обучения.
3.4. Методы обучения систем распознавания
Система распознавания, как и ее биологический прообраз, должна
обучаться, т. е. улучшать свою работу под воздействием окружающей
среды, изменяющей ее параметры. Существует множество определений
117
термина «обучение». Это процесс передачи и усвоения знаний, умений,
навыков деятельности, основное средство подготовки человека к жизни и труду. Применительно к обучению технических систем наиболее
подходит следующее [42]: «Обучение – это процесс, при котором свободные параметры системы адаптируются в результате ее непрерывной
стимуляции внешним окружением. Тип обучения определяется тем способом, которым производятся изменения параметров».
В современной литературе кроме термина «обучение» также используются равноправные понятия «тренировка» и «настройка параметров». В общем случае можно выделить два основных вида обучения: контролируемое обучение (supervised learning) и самообучение (self-organized learning). Первый вид подразумевает наличие
«учителя», который наблюдает реакцию системы и направляет изменения ее параметров. Во втором случае система самоорганизуется
под действием внешней среды и изучает ее самостоятельно, без помощи «учителя». Самообучение – более сложный процесс, и его результаты существенно зависят от типа решаемой задачи. В основном самообучение применятся при настройке параметров искусственных
нейронных сетей. При решении задач управления обычно используется контролируемое обучение. Существует две разновидности контролируемого обучения: прямое контролируемое обучение и стимулируемое обучение (reinforcement learning). Так как первый вид появился раньше второго и более распространен, его обычно называют просто контролируемое обучение (рис. 3.9).
2
42
75289
7452
2
7
282
27
12345675289
27
1
7
Рис. 3.9. Схема прямого контролируемого обучения
Учитель обладает знаниями о внешней среде, представленными в
виде набора образцов вход-выход. Пара таких образцов называется
тренировочным шаблоном, который включает в себя, соответственно, входной и выходной шаблоны. Множество пар данных называется тренировочным набором шаблонов.
В процессе обучения учитель и система подвергаются воздействию
со стороны внешней среды, т. е. на их входы поступает тренировочный сигнал, совпадающий с одним из входных шаблонов. Учитель
118
сообщает системе, какова должна быть правильная (желаемая) реакция на поступившее воздействие, выдавая соответствующий выходной шаблон. На основании величины ошибки между реальным и
желаемым выходами по определенному правилу проводится настройка параметров системы. Повторяя этот процесс итеративно, можно
настроить систему так, что она будет эмулировать учителя, т. е. его
знания о внешней среде перейдут к ней.
Типичными задачами, решаемыми с помощью прямого обучения,
являются аппроксимация неизвестной функции, описываемой набором данных, и идентификация динамического объекта. В этих задачах известны входные сигналы и правильная реакция на них, т. е.
тренировочный набор шаблонов.
Стимулируемое обучение не использует знания учителя о желаемом выходе, вместо этого обучение проводится по результату оценки
совершаемого сетью преобразова2112
ния вход-выход. Поэтому в неко1112 8 89
торых источниках reinforcement
learning переводится как «обучение
123456
11
789
3
с подкреплением». Оценку выпол31
132849
няет внешнее окружение после по583
21
дачи на вход системы тренировочного воздействия (рис. 3.10). При
Рис. 3.10. Схема стимулируемого
этом настройка параметров провообучения
дится так, чтобы максимизировать скалярный индекс этой оценки, называемый стимулом
(reinforcement signal).
Стимулируемое обучение началось с изучения психологии животного (термин «стимулируемое обучение» был фактически заимствован из исследований по обучению животных Марвина Минского). Особый вклад в теорию стимулируемого обучения был сделан исследователями из двух различных областей: теории управления и эмпирического обучения. Активное исследование методов оптимального управления и контроля началось в 1950-х годах с исследований Ричарда Беллмана, в которых он развивал алгоритм ДП, обеспечивающий
рекурсивное решение задач оптимального управления [14]. До сих
пор уравнение Беллмана используется как отправная точка для большинства алгоритмов стимулируемого обучения.
Наиболее характерным примером системы стимулируемого обучения является адаптивная система управления. В ней обучаемой частью является контроллер, а объект управления, внешние воздействия
и сигналы задания выступают его внешней средой. В результате воздействия из этой среды контроллер вырабатывает определенный
119
управляющий сигнал, который переводит объект управления в новое состояние. При этом качество управления можно оценить лишь
по выходному сигналу объекта. Так как требуемая реакция контроллера, обеспечивающая заданное состояние объекта, заранее неизвестна, то нельзя сформировать тренировочный набор шаблонов и, следовательно, применить прямое контролируемое обучение. В этом случае возможно лишь стимулируемое обучение контроллера по качеству работы всей системы управления в целом, т. е. по оценке состояния внешней среды.
Возможны две реализации стимулируемого обучения: с непосредственным стимулированием и с задержанным стимулированием.
В первом случае оценка работы и соответствующая ей настройка параметров проводится на каждом шаге работы системы обучения. Во
втором случае, при задержанном стимулировании, настройка выполняется так, чтобы максимизировать суммарную оценку работы системы на определенной последовательности шагов.
Хотя непосредственное стимулирование более свойственно классическим схемам адаптивного управления, в последнее время большое внимание уделяется методам задержанного стимулирования.
Для сходимости метода непосредственного стимулирования необходимо, чтобы каждое последующее положение внешней среды определялось лишь ее предыдущим положением и предыдущим воздействием. При задержанном обучении условия более гибкие. С другой стороны, гораздо проще сформулировать критерий, определяющий оптимальное поведение системы управления в целом, по результатам
какого-то действия, чем критерий, направляющий ее движение на
каждом шагу. В общем, можно заметить, что система, обучающаяся
лишь по результатам своего взаимодействия с внешней средой, является более интеллектуальной, чем использующая дополнительную информацию учителя.
Еще одним хорошим примером стимулируемого обучения является шахматная игра: когда шахматист делает ход, его решение управляется как ожидаемыми возможными ответными ходами, так и в
соответствии с интуитивными суждениями. Это может принудить
игрока к выполнению, со стороны казалось бы, непродуманного движения (преднамеренно потерять своего ферзя, например), чтобы получить большую награду позже (победить в игре). В течение прошлых
20 лет парадигма стимулируемого обучения была применена к широкому диапазону проблем. Система обучения TD-Gammon, использованная Джеррай Тезором в игре трик-трак, позволила обыграть даже
самых сильных мировых гроссмейстеров [14].
120
Формально решение проблемы стимулируемого обучения может
рассматриваться как последовательный процесс, в течение которого
система и ее окружающая среда действуют друг на друга в каждый
дискретный момент времени t = t0, t1, t2, t3, … (см. рис. 3.10). Каждый раз на шаге t (который будем называть изменением этого времени) система получает некоторое наблюдение о состоянии внешней
среды st ∈ S = {si} (состояние места) и соответственно выбирает действие at ∈ S = {si} (набор возможных действий в состоянии st). На
следующем шаге система числовую оценку rt+1 своего действия at и
его внутренние переключатели переводиит в состояние st+1. При каждом изменении t агент получает отображение состояния с вероятностями выполнения каждого возможного последующего действия. Такая разметка (mapping) представляет собой режим работы системы
или стратегию πt(s, a) и определяет вероятность выполняемого действия в состоянии s и πt(s) = a, если стратегия детерминирована. Алгоритм стимулируемого обучения определяет, как агент обновляет
его стратегию в результате его опыта. Цель системы состоит в том,
чтобы максимизировать ожидаемую общую сумму оценки за время t.
Таким образом, оптимальная стратегия π* должна выбрать во время t1 такое действие, которое максимизирует совокупную функцию
оценки {rt+1}t>t1. Эту функцию называют стимулом Rt. В простейшем
случае стимул представляет собой сумму оценок
Rt = rt +1 + rt +2 + ... + rT .
(3.1)
Это выражение предполагает, что взаимодействие между системой и окружающей средой заканчивается во время T (в предельном
состоянии sT). Если же мы имеем дело с непрерывными задачами, где
взаимодействие никогда не заканчивается, то стимулирование может быть бесконечным и, таким образом, его максимизация не может служить объективной функцией для того, чтобы изучить оптимальную стратегию. Поэтому введено понятие суммарного стимула с
учетом коэффициента забывания
Rt = rt +1 + γrt +2 + γ 2rt+3 + γ 3rt+ 4 + ... + rT =
∞
∑ γ krt+k+1,
(3.2)
k=0
где γ – коэффициент забывания, 0 < γ < 1; коэффициент забывания
учитывает, что чем дальше система «заглядывает» в будущее, тем
меньше у него уверенность в оценке. Если γ = 0, система заинтересована только в максимизации непосредственно наблюдаемых оценок,
если же γ приближается к 1, то вклад последующих оценок учитывается строже. Если набор оценок ограничен, то значение суммарного
стимула конечно.
121
Большинство алгоритмов стимулируемого обучения основано на
оценке двух функций значений для данной стратегии π: (3.1) – функция значений состояний Vπ и (3.2) – функция значений действий
Qπ. Значение Vπ(s) вычисляется как ожидаемый стимул, начиная с
состояния s и с учетом стратегии π, и оценивает, насколько полезно
быть системе в состоянии s согласно стратегии π:
V π (s) = Eπ [Rt | st = s].
Значение Qπ(s, a) выполняемого действия в состоянии s при стратегии π оценивается по тому, насколько хорошо система выполняет
действие в состоянии s, и определяется как ожидаемый результат,
начинающийся с s, с учетом действия a, и далее следуя стратегии π:
Q π (s, a) = Eπ [Rt | st = s, at = a].
Оптимальная стратегия π* является стратегией, приводящей к
максимальному значению V*(s) для всех состояний. Соответственно
система, следуя оптимальной стратегии, должна выбирать в каждом
состоянии действие, которое имеет максимальное значение Q*(s, a).
Процесс обучения часто основан на вычислении этих значений путем
многошаговой оптимизации, поэтому каждое состояние и каждая пара
состояние–действие должны быть получены бесконечное число раз для
оценивания Vπ и Qπ. Все же, если система обучения фактически взаимодействует с реальной окружающей средой, то она не должна отклониться слишком сильно от стратегии, которая приводит к приемлемому поведению, и, таким образом, должна использовать то, чему уже обучена.
Было несколько предложений решения этой проблемы, и два из них
широко используются: ε-greedy-метод и softmax-метод. В первом методе система выбирает действия согласно следующей стратегии:
⎧arg max Q π (st, a) с вероятностью (1 − ε),
⎪⎪
a
at = ⎨
ε
.
⎪любое a ∈ A с вероятностью
| A|
⎪⎩
Это означает, что система выбирает «нежадное» действие с вероятностью ε и каждое из возможных действий в этом случае имеет
равную вероятность. Чем больше ε, тем выше скорость поиска. С другой стороны, softmax-метод принимает во внимание ценность каждого действия, для того чтобы выбрать следующее и не выполнять
слишком часто действия, ведущие к негативной оценке. При выборе
действия в методе softmax используются распределения Больцмана
и Гиббса, для того чтобы вычислить вероятность возникновения действия как функцию его значения:
122
P(at = a | st = s) =
e
Qtπ−1 (s, a)/ τ
∑e
Qtπ−1 (s, b)/ τ
.
b∈ A
Параметр τ – это положительное число, названное температурой.
Когда она имеет высокое значение, все действия могут быть одинаково вероятными, а когда температура равняется нулю, система всегда
выбирает оптимальное действие, заданное текущей стратегией с наибольшим значением. Со временем температура постепенно понижается, чтобы уменьшить поиск оптимального действия. Это сильно
напоминает отжиг металла, поэтому для описания такого подхода
часто используют термин «имитация отжига». В металле, нагретом
до температуры, превышающей его точку плавления, атомы находятся в сильном беспорядочном движении. Как и во всех физических
системах, атомы стремятся к состоянию минимума энергии (единому
кристаллу в данном случае), но при высоких температурах энергия
атомных движений препятствует этому. В процессе постепенного
охлаждения металла возникают все более низкоэнергетические состояния, пока в конце концов не будет достигнут глобальный минимум. При высоких температурах вероятность появления событий
приближается к единице для всех энергетических состояний. Таким
образом, высокоэнергетическое состояние почти столь же вероятно,
как и низкоэнергетическое. По мере уменьшения температуры вероятность высокоэнергетических состояний уменьшается по сравнению
с низкоэнергетическими. При приближении температуры к нулю становится весьма маловероятным, чтобы система находилась в высокоэнергетическом состоянии. Единственным недостаток машины
Больцмана является длительное обучение системы.
Рассмотрим, каким образом решаются проблемы стимулируемого
обучения в рамках процессов марковского моделирования. Вначале
определим математическую структуру и свойства сети Маркова. Сеть
Маркова называется однородной, если состояние и оценка во время
t+1 зависят только от предыдущих состояний и действий во время t:
P(st +1, rt +1 | st, at, st −1, at−1, ..., s1, a1) = P(st+1, at+1 | st, at ).
Такую вероятностную схему называют однородной сетью Марко!
ва с дискретным числом состояний – ее однородность состоит в том,
что ее вероятностные свойства остаются постоянными в любой момент времени.
Решение задачи стимулируемого обучения, удовлетворяющего
свойству Маркова, называют Markov Decision Process (MDP). MDP
123
полностью определен кортежем {S, A, τ , ℜ}, где S – пространство
состояний, A – набор действий, τ – распределение вероятности перехода по пространству состояний, ℜ – ожидаемое распределение оценок. Пара {τ, ℜ } определяет один шаг работы системы:
τass′ = P(st +1 = s′ | st = s, at = a);
ℜass′ = E[rt +1 | st = s, at = a, st+1 = s′].
MDP может быть описан в виде графа с двумя типами узлов: узлы
состояний и узлы действий (рис. 3.11). Направленные дуги представляют собой переходы с соответствующими весами, являющимися вероятностью возникновения перехода. Поощрения также определены.
τas12s1
τas12s2 ℜa2
s1s2
13
ℜas12s1
21
π(s1, a1 )
23
τas11s2
π(s1, a2 )
ℜas11s2
π(s2 , a3 )
11
12
ℜas11sT
τas11sT
ℜas23s2
τas23s2
ℜas23sT
τas23sT
21
Рис. 3.11. Представление узлов!переходов MDP:
– узлы действий
– узлы состояния;
В соответствии с определением MDP, функция состояний может
быть представлена следующим образом:
⎡∞
⎤
V π (s) = Eπ ⎡⎣ Rt | st = s ⎤⎦ = Eπ ⎢ γ krt +k +1 | st = s ⎥ =
⎢⎣ k=0
⎥⎦
∞
⎡
⎤
= Eπ ⎢rt+1 + γ γ krt+ k+2 | st = s ⎥ =
k =0
⎣⎢
⎦⎥
∑
∑
=
∏
a∈ A
⎛
⎡ ∞
⎤⎞
τass′ ⎜ ℜass′ + γEπ ⎢ γ γ krt +k +2 | st = s ⎥ ⎟ =
⎜
⎟
s′∈S
⎣⎢ k=0
⎦⎥ ⎠
⎝
=
π(s, a)
τass′ ℜass′ + γV π ( s′ ) .
π(s, a)
∑
∏
a∈ A
∑
∑
s'∈S
(
)
(3.3)
В то же время функция действий может быть переписана следующим образом:
124
⎡∞
⎤
Q π ( s, a ) = Eπ ⎣⎡ Rt | st = s, at = a ⎦⎤ = Eπ ⎢ γ krt+k +1 | st = s, at = a ⎥ =
⎣⎢k =0
⎦⎥
∑
∞
⎡
⎤
= Eπ ⎢rt+1 + γ γ krt+ k+2 | st = s, at = a ⎥ =
k=0
⎣⎢
⎦⎥
∑
=
⎛ a
⎡ ∞ k
⎤⎞
a
π
τass′ ⎜ ℜss
γ rt+ k+2 | st = s ⎥ ⎟ =
τass′ ℜss
′ + γEπ ⎢ γ
′ + γV (s′) . (3.4)
⎜
⎟
⎢
⎥
′
s ∈S
⎣ k=0
⎦ ⎠ s'∈S
⎝
∑
∑
∑
(
)
Выражения (3.3), (3.4) называют уравнениями Беллмана для Vπ
и Qπ. Вычисление Vπ(s) для всех состояний позволяет оценить стратегию π, и таким образом может быть выбрана оптимальная стратегия. Действительно, стратегия π1 будет лучше или равна стратегии
π2, если ее ожидаемая оценка по всем состояниям больше или равна
оценке стратегии π2. Это означает, что π1 ≥ π2, только если Vπ1(s) ≥
≥ Vπ2(s) для всех состояний s. Поскольку цель состоит в том, чтобы
найти оптимальную стратегию π* ≥ π∀π, которая ведет к максимальным значениям V*(s) и Q*(s, a), то можно написать следующий вывод:
V * (s) = maxQ π* (s, a) = max
a∈ A
Q* (s, a) =
∑ τass′ ( ℜssa ′ + γV π (s′) );
a∈ A s′∈S
⎛ a
⎞
*
τass′ ⎜ ℜss
′ + γ maxQ (s′, a′) ⎟ .
∑
a∈ A
⎝
⎠
′
(3.5)
s ∈S
Выражения (3.5) являются выражениями оптимальности Беллмана для V* и Q*. Предполагая, что все параметры τ и R изученного
процесса MDP известны, выражение (3.3) определяет работу системы |S| через линейные уравнения с неизвестным Vπ(s). Точная оценка
стратегии π может быть получена с помощью итеративного решения
этих уравнений. Этот процесс называют методом ДП. В качестве итеративного правила будет использовано уравнение Беллмана для
Vkπ+1(s) =
a
π
τass′ ( ℜss
′ + γVk (s′) ).
∏ π(s,a) ∑
′
a∈ A
s ∈S
Как только Vπ(s) вычислен, то может быть вычислен и Qπ(s, a) при
помощи выражения (3.4). Отметим, что Vπ(s) показывает, насколько хорошо стратегия π удовлетворяет переходу из состояния s, а Qπ(s,
a) показывает, какое действие a нужно совершить в состоянии s. Очевидно, что если Qπ(s, a) ≥ Vπ(s), то стратегия должна быть обновлена,
чтобы выбрать действие a в состоянии s (π(s) = a). Таким образом,
125
второй шаг оптимальной стратегии обучения (после оценивания) –
это обновление стратегии или усовершенствование стратегии:
π′ ( s ) = arg max Q ( s, a ).
Как только стратегия обновлена, она оценивается снова, и итеративный процесс, состоящий из цикла оценивания-усовершенствования, идет до тех пор, пока процесс существенного улучшения не завершится.
Другим подходом к поиску оптимального решения является метод Монте-Карло. Термин «Монте-Карло» используется для определения семейства методов, который обеспечивает приближенное решение разнообразных математических проблем, применяя статистические методы к экспериментальным данным. Метод был введен в
1944 г. физиками при анализе экспериментов с игрой в рулетку. Было
получено статистическое распределение случайного выбора чисел.
Разработанный подход дал возможность проанализировать более
сложные физические явления. В нашем случае он определяет семейство методов, в которых система обучается по непосредственному взаимодействию с окружающей средой, и в конце каждого шага могут
быть получены приближенные значения импульсов.
Применение метода Монте-Карло позволяет оценить значение
функции состояния Vπ(s) только путем измерения и усреднения импульса, полученного от первого появления состояния s или (s, a).
Таким образом, после каждого шага обновляется оценка действия и
модифицируется стратегия:
Q π ( s, a ) = average ( R ( s, a ) );
π′ ( s ) = arg max Q ( s, a ).
a
Можно продемонстрировать, что метод Монте-Карло приводит к
тем же самым значениям, что и итеративный метод ДП, поскольку
рассматриваются все пары состояние–действие бесконечное число раз,
и при этом стратегия обучения является оптимальной. Главный недостаток метода Монте-Карло состоит в том, что стратегия обновляется только раз и в конце каждого шага, поэтому скорость обучения
не высока.
Метод обучения на основе временного различия (Temporal difference –
TD) [14] объединяет идеи методов Монте-Карло и ДП. Методы TD,
как и методы Монте-Карло, обучаются путем взаимодействия со средой, не зная при этом точной модели динамики окружающей среды.
Как методы ДП, методы TD обновляют оценки, не ожидая конца шага
(производится самонастройка). Действительно, во время t+1 систе126
ма обновляет параметры на основе импульса rt+1. Самый простой
метод TD, где обновление основано на текущем значении импульса и
последующей оценке:
Vt +1 ( st ) = Vt ( st ) + α ( rt +1 + γVt ( st +1 ) − Vt ( st ) );
Qt +1 ( st, at ) = Qt ( st, at ) + α ( rt +1 + γQt ( st +1, at +1 ) − Qt ( st, at ) ).
Всякий раз, когда мы находимся в состоянии s, его оценка (и оценка
действия) немедленно обновляется, приближаясь к rt+1+γVt(st+1)
(или rt+1+γQt(st+1, at+1) для оценки действия).
TD-метод является частным случаем более общего класса алгоритмов, называемых TD(λ), где может учитываться и большее число
шагов, тогда правило обновления оценок будет выглядеть следующим образом:
Vt +1 ( st ) = Vt ( s ) + α ( rt +1 + γVt ( st +1 ) − Vt ( st ) et ( s ) ), ∀s ∈ S,
(3.6)
где et(s) – критерий оценки пригодности состояния s во время t. Таким образом, все оценки состояния обновляются на каждом шаге.
Критерий пригодности определяется как
⎧γλ
⎪ et −1 ( s ) + 1, если s = st;
et ( s ) = ⎨
⎪⎩ γλet −1 ( s ) иначе,
(3.7)
где 0 ≤ λ ≤ 1.
В формулах (3.6) и (3.7) α является положительным параметром
квантования, называемым скоростью обучения. Можно также показать, что TD-метод сходится к оптимальным оценкам после того, как
каждая пара состояние–действие будет пройдена бесконечное число раз.
TD-метод, который использует правило обновления (3.7), называют алгоритмом SARSA, поскольку он основан на кортеже (st, at, rt+1, st+1, at+1).
Можно заметить, что et(s) экспоненциально убывает, если состояние s не посещается. Это означает, что важность импульса rt+1, полученного вовремя t+1 при переходе из состояния st в состояние st+1,
выполненного по оценке состояния s, уменьшается, когда это s посещено спустя только некоторое время после t. То же самое правило
обновления может быть определено для оценки действия, чтобы получить алгоритм SARSA(λ):
⎧γλ
⎪ et−1 ( s, a ) + 1, если s = st и a = at;
et ( s, a ) = ⎨
⎪⎩ γλet−1 ( s, a ) иначе.
В этом случае стратегия обновляется при выборе действия с максимальной оценкой, а также с использованием ε-greedy- и softmax127
стратегии для обновленной оценки действия. Конечно, методы TD
сходятся быстрее, чем Монте-Карло, так как непосредственное поощрение используется для обновления всех оценок состояний и действий для уже посещенных пар состояние–действие.
Одним из самых важных крупных достижений в области стимулируемого обучения было развитие алгоритма TD без стратегий, который обучает оптимальную стратегию. Такой метод известен как
метод Q-обучения [14]. Самое простое правило обновления для
Q-обучения (Q-обучение с одним шагом) определено как
(
)
Qt +1 ( st, at ) = Qt ( st, at ) + α rt +1 + γ max Qt ( st +1, a ) − Qt ( st, at ) .
a
Можно продемонстрировать, что какое бы действие ни было выбрано в состоянии st (соответственно, какой бы ни была следующая
стратегия), оцененная стратегия является оптимальной. Это означает, что какой бы стратегии мы ни следовали, правило обновления
приведет к оцениванию Qt * ( s, a ) для всех пар состояние–действие,
если каждая пара появлялась достаточное число раз. Критерий пригодности может быть использован в рамках Q-обучения, ведущего к
Q(λ)-методам. Известны два различных метода: Уоткинса Q(λ) и Пенга Q(λ) [14]. Метод Пенга более трудный для применения и не гарантирует сходимости, поэтому здесь представлен только метод Уоткинса. Согласно Уоткинсу, правило обновления и критерий пригодности выглядят следующим образом:
(
)
Qt +1 ( st, at ) = Qt ( s, a ) + α rt +1 + γ max Qt ( st +1, a ) − Qt ( st, at ) et ( s, a );
a
⎧1, если s = st и a = at;
⎪
et ( s, a ) = ⎨0, если s = st и a ≠ at;
⎪ γλe
⎩ t −1 ( s, a ) иначе.
Этот метод достаточно прост в применении и обеспечивает быструю сходимость процесса обучения.
Частный случай метода MDP, названный факторный MDP, был
предложен в работе [3]. В нем каждое состояние и действие представлены как ряд переменных, а именно переменных состояния и переменных действия. Факторизованный MDP формально определен кор-
{{
α
тежем S
}
M
α=1
{ }
, Aβ
N
β=1
}
, τ, ℜ , в котором:
– τ, ℜ определяются заранее;
– Sα – ряд всех возможных значений переменных состояния α;
– Aβ – ряд всех возможных значений переменных состояния β.
128
Тогда состояние представляется с помощью М-кортежей, а действие – N-кортежей. Это дает то преимущество, что можно независимо использовать переменные состояния и действия для решения проблем MDP и построения топологии сети. При использовании факторного представления переменные действия влияют только на определенные переменные состояния, что в свою очередь обеспечивает легкую переоценку переходных вероятностей сети.
Структура MDP также подходит для моделирования диалога между человеком и компьютером, поскольку этот процесс может рассматриваться как последовательный. Диалог определен как переход взаимодействия между двумя собеседниками. Кроме того, каждый участник выполняет действия, произнося предложения (речевые акты),
и изменяет состояние диалога, обновляя его знания. При этом действия предпринимаются согласно более или менее определенной стратегии, выбранной в соответствии с целью диалога.
Идея формального описания речевых диалоговых систем в структуре MDP впервые была предложена в работе [11]. Как объяснено
позже, взаимодействие человека с компьютером может также рассматриваться как факторный MDP согласно определенным предположениям.
Хотя можно утверждать, что взаимодействие человека с компьютером может быть смоделировано как MDP, важно помнить, что один
из участников диалога – машина, которая извлекает намерения человека в условиях различных шумов и делает это, надо признаться,
не совсем точно. Поэтому моделирование диалога тоже будет не всегда точным, а входные данные частично зашумлены. Для решения
такой проблемы была определена другая парадигма, названная частично наблюдаемый марковский процесс (Partially Observable Markov
Decision Process – POMDP) [14].
Этот подход предполагает, что процесс остается марковским в некоторых состояниях, которые не могут наблюдаться непосредственно, но влияют на другие состояния, которые изменяются и могут быть
зарегистрированы в тот же момент времени t. Данное скрытое и наблюдаемое состояния в момент времени t являются независимыми от
всех других скрытых или наблюдаемых переменных. Скрытый процесс Маркова называют основным процессом. Метод POMDP определен кортежем (A, S, O, τ, ℜ, ο):
– переменные (A, S, τ, ℜ) остаются теми же, что и ранее;
– O = {oi} является множеством наблюдений;
– ο является функцией наблюдения, которая дает для каждого
действия и получающегося состояния распределение вероятности по
возможным наблюдениям. Это фактически дает вероятность получе-
129
ния наблюдения o такое, что действие, выполненное во время t, оказалось a, что привело к действию s′: Osa′o.
POMDP может также быть факторным при добавлении множества
{ }
K
δ
оценок наблюдения ο
к остальным множествам. Для решения
δ=1
POMDP были предложены несколько методов, включая методы ДП,
а также приближенные решения. Метод POMDP работает несколько
лучше, чем MDP, но его вычислительная сложность оказалась слишком высокой. Действительно, решение POMDP является чрезмерно
сложным для насыщенных пространств, больших, чем 15 состояний, что является сильным ограничением метода. Кроме того, создание POMDP требует работы экспертов проблемной области для оценки функции наблюдения. Все эти проблемы делают невозможным
использование POMDP в структуре методологии построения проблемно-независимых речевых диалоговых систем.
Метод обучения на основе БС (иногда называемых сетями дове!
рия) – это направленный ациклический граф, задающий отношения
между переменными в вероятностной структуре. В таком графе узлы
представляют собой стохастические переменные, а дуги показывают
зависимости между переменными. Сеть строится так, чтобы отразить известные зависимости между переменными с помощью связей
(дуг). Также для сети должны быть определены условные вероятности переходов для каждой переменной, обусловленные всеми возможными переходами по графу.
Для легкого понимания БС попробуем рассмотреть более простой
пример [14]. Представим себе следующую ситуацию: человек идет по
саду и видит, что трава влажная. Поскольку установлена система
разбрызгивания воды, то трава может быть влажной по двум причинам: или работал разбрызгиватель воды, или шел дождь. Также следует учесть, что разбрызгиватель включен чаще, когда на небе солнечно (это даже можно автоматизировать), а если небо пасмурное,
то более вероятно, что был дождь. С учетом этих базовых знаний
необходимо решить, что является наиболее вероятной причиной
влажности травы? Этот пример может быть представлен в виде БС
(рис. 3.12), в которой заданы априорные знания об условных вероятностях.
В этом примере определены четыре логические переменные (C – для
пасмурного неба, S – для разбрызгивателя воды, R – для дождливой погоды, W – для мокрой травы). Следует заметить, что заданы все условные
вероятности, в то время как действительно необходима только половина
из них, поскольку, согласно правилу, сумма вероятностей каждого ряда
(зависимых событий) должна быть равна единице. Таким образом, что-
130
122 3455 122 3435
678
678
542
2 12643455 12643435
5
678
678
3
679
67
95
4
857
2
1
123456
74585
2 12443455 12443435
67
5
67
67
3
67
64 12743455 72643435
55
67
67
35
67
679
53
67
679
33
676
6799
Рис. 3.12. Пример байесовской сети для модели разбрызгивателя воды
бы полностью определить данную БС, не8
обходимы девять параметров. Так как в
6
7
этом примере все переменные являются бу4
левыми, полное распределение перемен5
2
3
ных по области определено 24–1 = 15 со
вместными распределениями P(C, S, R,
1
W). На первый взгляд, экономия не кажет9
ся большой, однако, рассматривая топологию сети на рис. 3.13, где все переменные являются также булевыми, можно ви- Рис. 3.13. Байесовская сеть
с 12 переменными
деть, что 212–1 совместных распределений
будут необходимы для описания такой БС-структуры. Вот почему БС
часто рассматривают как компактное представление вероятностных
свойств задачи. Это сокращение сделано благодаря выдвинутым предположениям об условно-независимых переменных при построении сети.
Фактически, структура БС использует и теорию вероятности, и
теорию графов для определения условной независимости между переменными. Например, в БС водного разбрызгивателя W условно независимо от C при наблюдениях E={R, S}, поскольку R и S идут вдоль
пути, идущего от C к W, и ни R, ни S не имеют сходящихся стрелок.
Это означает, например, что идет дождь и состояние травы не зависит от состояния неба. Таким же образом R условно не зависит от S
при наблюдении E = C, так как верхняя дуга, идущая от R до S, проходит через C, и нижняя дуга содержит W, которая имеет входящие
стрелки, но W не принадлежит E.
Наиболее общая задача, в которой используется БС, – это логиковероятностный вывод. Например, рассматривая сеть на рис. 3.12,
131
предположим, что трава оказалась влажной. Есть две возможные
причины: или шел дождь, или только что работал разбрызгиватель.
Что более вероятно? Используем правило Байеса для вычисления
апостериорной вероятности каждой причины:
P(S = t | W = t)
=
P(S = t | W = t) =
P(W = t)
∑ P(C = с,
c,r
∑ P(C = с,
R = r, S = t, W = t)
R = r, S = s, W = t)
;
c,r
P(R = t | W = t)
=
P(R = t | W = t) =
P(W = t)
∑ P(C = с,
c,r
∑ P(C = с,
R = t, S = s, W = t)
R = r, S = s, W = t)
.
c,r
Вывод основан на вычислении совместной вероятности, которая
может быть легко получена за счет предположений независимости,
сделанных при построении сети:
P(W, S, R, C) = P(W | S, R, C) ⋅ P(R | S, C) ⋅ P(S | C) ⋅ P(C) =
= P(W | S, R ) ⋅ P(R | C) ⋅ P(S | C) ⋅ P(C).
За счет этих предположений и из рис. 3.12 совместное распределение вероятностей можно записать следующим образом:
P(W = w) =
=
∑∑∑
c
=
s
∑∑∑ P(C = c, R = r, S = s, W = w) =
c
s
r
P(C = c) ⋅ P(R = r | C = c) ⋅ P(S = s | C = c) ⋅ P(W = w | S = s, R = r ) =
r
∑ P(C = c)∑ P(S = s | C = c)∑ P(R = r | C = c) ⋅ P(W = w | S = s, R = r ).
c
s
r
Все это обеспечивает желаемый результат:
P(S = t | W = t) = 0,430;
P(R = t | W = t) = 0,708;
P(W = t) = 0,6471.
Таким образом, трава влажная с вероятностью 0,6471 и наиболее
вероятной причиной влажности является дождь. Этот процесс называют восходящим выводом, или диагностическим процессом, поскольку он соответствует некоторым наблюдаемым свидетельствам, на основе чего была выведена более вероятная причина. Заметим, что даже
если некоторые события не определены как непосредственно зависи-
132
мые в сети, то S и R достаточно, чтобы объяснить W. Таким образом
можно, например, вычислить вероятность работы разбрызгивателя,
учитывая, что идет дождь и трава влажная:
P(S = t | R = t, W = t) = 0,1945.
Наконец, можно вычислить вероятность влажной травы, когда
небо облачно. Такое рассуждение называют причинным, или нисходящим рассуждением:
P(C = t, W = t)
=
P(C = t)
P(C = t, R = r, S = s, W = t) 0,3726
=∑
=
= 0,7452.
P(C = t)
0,5
r,s
P(W = t, C = t) =
В заключение следует еще раз отметить, что проблема обучения
является основной в области искусственного интеллекта, и от ее решения во многом зависит точность и эффективность работы систем.
133
4. МЕТОДЫ ПОНИМАНИЯ РЕЧИ
В ДИАЛОГОВЫХ СИСТЕМАХ
Здесь сразу надо оговориться, что главный аспект понимания –
смысловая интерпретация, т. е. перевод цепочки слов с выхода распознавателя в смысловое представление. Сложность этого процесса
вытекает из уже обсуждавшейся выше проблемы многообразия искажений входной речи за счет внешних факторов, фонетических и
синтаксических неточностей и ошибок распознавателя. Конечной
целью слухового восприятия речи является не узнавание слов, а понимание смысла высказывания, понимание цели говорящего. Для
автоматической системы понимание сводится к смысловой интерпретации, к возможности выполнить конкретное задание говорящего [43].
Существуют различные точки зрения на термин «понимание».
Наиболее распространенная состоит в том, что если на статистически достоверном материале компьютер воспринимает входное сообщение пользователя в соответствии с его ожиданиями, то он «понимает» пользователя. Согласно положениям работы [58], можно выделить следующие уровни машинного понимания: синтаксический
(понимание формы), семантический (понимание содержания), прагматический (понимание целей общения).
Поскольку машинный процесс реализуется по аналогии с человеческим, то обратимся к прототипу. Человек воспринимает речь, рассматривая себя и происходящее речевое действие в определенном контексте.
Он пользуется всей доступной априорной информацией о естественном
языке и окружающей действительности. Эта информация позволяет ему
устранить такие проблемы понимания как многозначность, омонимия,
синонимия, оговорки, синтаксические и грамматические ошибки. Недопонимание возникает в тех случаях, когда знаки естественного языка имеют различный смысл в зависимости от контекста и синтаксиса.
Однозначная интерпретация знаков достигается за счет их однозначного соотнесения с реальными событиями или ситуациями.
Помимо неоднозначности при понимании речи возникает терминологическая путаница, обусловленная богатой иерархией понятий
конкретной ПО. Здесь причины неверного анализа естественного языка находятся в концептуальной сфере, связанной с иерархией понятий и объектов ПО, а также отношениями между этими объектами.
Эта проблема проявляется в ситуации общения, когда между пользователем и системой возникает недопонимание, обусловленное разногласиями в представлении о ПО.
Таким образом, основной проблемой понимания речи является
проблема отображения ЕЯ из внешнего представления во внутреннее
134
машинное представление. В процессе восприятия речи человек
пользуется априорной информацией о языке и окружающей среде:
синтаксической, семантической и прагматической. Основной интерес представляют методы их представления, а также механизмы анализа этих видов информации в системе автоматического понимания
речи. Поэтому проанализируем основные подходы к представлению
и обработке ЕЯ на основе этих видов информации.
4.1. Представление и обработка естественного языка
За последние десять лет сделано немало аналитических обзоров
по обработке естественного языка и способам его представления.
К ним относятся работы М. Г. Мальковского, А. С. Нариньяни,
Д. Ш. Сулейманова, С. А. Шарова [49, 56, 75, 87]. Исследователи,
как правило, выделяют три подхода к представлению и обработке
естественного языка:
1) лингвистический, ориентированный на извлечение семантикосинтаксических конструкций ЕЯ и построение максимально полных
моделей языка;
2) экспериментальный (семантико-прагматический), ориентированный на построение модели мышления;
3) прагматический, где язык рассматривается как средство достижения определенных целей.
Лингвистические системы используют грамматику, описывающую возможные синтаксические структуры ЕЯ. Как правило, в
основе синтаксического анализа находятся лингвистические теории, которые описывают способ представления последовательности элементов предложения через грамматическую структуру компонентов.
Наиболее значимой теорией построения идеальной синтаксической модели, которая послужила основой создания большинства лингвистических систем, является теория трансформационных грамматик (ТГ), которую называют также генеративной грамматикой, разработанная Н. Хомским [52] в начале 50-х годов прошлого столетия.
Центральная идея теории состоит в том, что поверхностные формы любого языка могут быть представлены как результат взаимодействия
нескольких подсистем: набора синтаксических правил (ограничений)
и набора семантических правил. Основное внимание обращается на
синтаксический уровень, который описывается автономно. Синтаксические правила определяют правильное расположение слов в предложениях, а семантические правила отвечают за то, чтобы правильно интерпретировать конкретное расположение слов в предложении.
135
По мнению Хомского, теория ТГ описывает универсальную часть
структуры языкового аппарата человека, не зависящую от конкретного языка.
Одной из первых компьютерных реализаций ТГ, упомянутых в
работе [22], является система MITRE transformational parser. Использование сложных алгоритмов, методов программирования на
маломощных компьютерах, доступных в первой половине 60-х годов, привело к тому, что скорость анализа была крайне низкой:
36 мин на среднее предложение длиной около 11 слов. Среди поздних
реализаций ТГ-теории следует отметить систему PARSIFAL.
Теория ТГ послужила основой при создании модели «Смысл–
Текст» [84]. Описание языка в этой модели устанавливает соответствие между смыслом и текстами данного языка, выражающими этот
смысл. Язык рассматривается как система кодов, соответствующая
системе смыслов. Описание компьютерных реализаций теории
«Смысл–Текст» содержится в работе [25].
Поскольку грамматические модели на основе правил являются
более точными, но и более жесткими, чем быстрые стохастические
модели, то оправдано вероятностное обобщение этих моделей. Обобщенные модели позволяют использовать как более глубокие связи,
существующие в естественном языке, так и обычный N-граммный
подход, обеспечивающий «универсальность» построенной языковой
модели [21].
Необходимо отметить, что подобные модели могут дать лишь оценку синтаксической правильности высказывания, но не ведут к извлечению смысла. Однако пренебрегать этим синтаксическим уровнем анализа нельзя, поскольку он позволяет отсечь или выявить абсолютно неприемлемые гипотезы. Еще один вид естественно-языкового анализа, сочетающий в себе стохастический и эвристический
подходы к обработке ЕЯ на основе синтаксической, а также семантической информации, является ассоциативный анализ [43].
Экспериментальные системы обработки естественно-языковых
текстов, как правило, основаны на семантических моделях языка.
Семантический уровень гораздо меньше обеспечен теорией и практическими разработками. Традиционной задачей семантики считается
снятие неоднозначности синтаксического анализа – структурной и
лексической. Для этого используется аппарат селективных ограничений, который привязан к рамкам предположений, т. е. вписывается в синтаксическую модель. Помимо этой функции семантический
анализ оценивает фразу на осмысленность, поскольку не всякое правильное в синтаксическом отношении высказывание может иметь
какой-либо смысл.
136
Грамматики на семантическом уровне в чистом виде представлены в парсере Й. Уилкса [78]. В модель семантической предпочти!
тельности включена тезаурусная информация, правила вывода «по
здравому смыслу», понятие псевдотекста, декомпозиция лексем на
семантические примитивы – все то, что должно указывать на семантическую связность в трудном лингвистическом материале (например, метафоре). Эта модель является логической и направлена на
получение смысла высказывания через грамматический разбор ЕЯ.
Для построения ограничений используются либо семантические сети,
либо семантические условия, содержащиеся в синтаксических правилах грамматики.
Семантические модели представления и обработки ЕЯ занимаются извлечением семантических конструкций, при этом не уделяется
достаточного внимания соотнесению этих данных с реальной задачей и сферой применения системы понимания. Наличие естественноязыковой семантической сети или фрейма еще не дает модели использования языка в рамках конкретной задачи.
В рассмотренных ранее лингвистических подходах решение общей проблемы понимания ЕЯ базируется на лингвистическом анализе входного текста, т. е. модель понимания основана на ограничениях естественного языка. Семантические модели занимаются извлечением семантических структур ЕЯ, однако построение лингвистических моделей изначально исходит из утверждения [75]: «... для
того чтобы допускать возможность реальной компьютерной реализации, лингвистическая теория должна обладать высокой степенью
формализации и полноты». При этом часто упускается из виду, что
решение проблемы построения естественно-языковых моделей лежит
не столько в области создания полных формализмов описаний ЕЯ,
сколько в области концептуального осмысления подхода к построению лингвистической модели. Таким подходом считают четкое базирование модели на прагматике системы, объединяющей всех участников вокруг целевой обработки ЕЯ. Под участниками подразумевают все привлекаемые ресурсы и субъекты: пользователя, обрабатываемый ЕЯ, предметную область, контекст и т. п.
Таким образом, в прагматически!ориентированных моделях
подход к представлению ЕЯ основан не только на ограничениях
естественно-языковой модели, но и на ограничениях ПО. Предмет!
ной областью называются все объекты и события, которые составляют основу общего понимания необходимой для решения задачи
информации.
С появлением проблемно-ориентированных систем, т. е. систем
для решения узкого класса задач, стало очевидным, что при построе137
нии оптимальной модели понимания ЕЯ необходимо учитывать цель
и сферу ее применения. В зависимости от целей говорящего и смыслового восприятия слушающего высказывание может иметь несколько
значений. Тогда сложность понимания ЕЯ определяется не только
структурой и особенностями входного текста, но и представлением о
ПО, в рамках которой осуществляется взаимодействие.
По мере накопления опыта разработки и эксплуатации диалоговых систем появилась проблема неопределенности, связанная с описанием структуры диалога, механизмов восприятия и обработки речевых актов. В первую очередь, это связано с недостаточным описанием практических приложений систем человеко-машинного взаимодействия, что свидетельствует о необходимости комплексного подхода к построению модели языка и ПО. Таким образом, в прагматически-ориентированных системах наряду с моделью естественного
языка необходимо строить МПО, учитывающую всю доступную априорную информацию о языке и ПО, в связи с чем появились работы
по построению моделей предметных областей.
С развитием технологии моделирования ПО стало ясно, что выбор
формы представления данных напрямую зависит от специфики данных, внутренних связей и закономерностей. Поэтому появилась необходимость в построении МПО для определенного класса задач, которая позволит учесть ограничения естественного языка.
При анализе ЕЯ используются лингвистические знания о конкретном языке, а также знания о конкретной ПО. Интеллектуальная
система представляет лишь некоторое подмножество реальной ПО.
От того, насколько полно и правильно отражена эта предметная область в системе, зависит качество ее работы. МПО представляет собой систему средств для отражения тех сущностей, объектов, действий реального мира, которые отображены в данной интеллектуальной системе. При построении МПО для систем понимания речи
необходимо изучить специфику данных ПО и привлечь всю необходимую информацию для разрешения проблем, связанных с пониманием, а именно, проблемы неоднозначности естественно-языкового
высказывания.
Как правило, МПО представляет собой описание БЗ на концептуальном уровне [85]. Основным критерием выбора средств описания
ПО является удобство отображения структуры МПО. Попытки описать знания о мире и его явлениях в формализованном виде, пригодном для компьютерного использования, привели к возникновению
новой области исследований в ИИ – онтологии. Поскольку онтология является средством представления знаний, то необходимо привести определение понятия «знания», использующегося в этом под138
ходе. Знания – это система представлений о ПО в виде сущностей,
т. е. вещей, явлений, процессов, и их проявлений в форме фактов, а
также их отношений или объектов их связей. Впервые в области информационных технологий этот термин применил Т. Грубер [7]: «Онтология – это точная спецификация концептуализации». Здесь концептуализация является абстрактной, упрощенной точкой зрения
на мир, которая представлена для некоторых целей. На концептуализацию и, следовательно, на онтологию может влиять определенная предметная область и определенная задача. Знания ПО описывают фактическую ситуацию в предметной области, онтология ПО задает ограничения на структуру и содержание знаний. Онтология
включает в себя словарь, средствами которого описываются знания,
и саму описываемую структуру. Посредством словаря онтология накладывает ограничения на используемую семантику [69].
В самом простом случае онтология описывает иерархию связных понятий. В более сложных случаях добавляются подходящие аксиомы,
выражающие связи между понятиями и ограничивающие их интерпретацию. Онтология должна, прежде всего, обеспечивать словарь понятий
(терминов) для представления и обмена знаниями о ПО и множество связей (отношений), установленных между понятиями в этом словаре.
Язык представления онтологий должен быть достаточным для
описания концептов ПО; быть легко используемым на существующих платформах; давать возможность неспециалистам легко строить концептуальные модели. Приведем несколько наиболее распространенных языков, опустив детали синтаксиса. Knowledge
Interchange Format (KIF) – язык обмена знаниями. KIF является логически-функциональным языком и обладает широким набором математических функций, логических операций и описателей для формирования метазнаний. Другой вариацией в области концептуального моделирования является язык Unified Modelling Language
(UML). На сегодняшний день существует достаточно много языков
представления онтологий, при этом большинство разработок по организации и хранению данных основывается на языке XML (eXtended
Markup Language). XML разработан как открытый, расширяемый и
понятный язык, который представляет собой стандарт консорциума
W3C. В настоящее время разработано несколько стандартов расширения этого языка: XML DTD и XML Schema. С помощью этих языков можно задавать грамматику, одним из таких языков является
RDF (Resource Description Framework). На основе XML и RDF создано несколько стандартных языков онтологий: SHOE (Simple HTML
Ontology Extensions); OIL (Ontology Inference Layer); DAML (DARPA
Agent Markup Language).
139
Популярность языка XML обусловлена его универсальностью,
поскольку он предназначен для описания структур любой степени
вложенности [17]. Такие структуры легко могут быть встроены в Webстраницу, так как XML очень легко интегрируется с HTML. Формат
XML удовлетворяет критериям расширяемости онтологии и в то же
время позволяет ввести набор понятий, достаточный для моделирования необходимой модели мира в задаче речевого взаимодействия.
Модель ПО в первую очередь отражает знания об объектах, которые в общем случае состоят из описания свойств (характеристик) и
классов объектов. На концептуальном уровне такую модель принято
называть онтологией предметной области. По мнению одного из
ведущих специалистов по обработке речи А.С. Нариньяни, в идеале
онтология должна представлять собой МПО, что возможно лишь для
полностью формализованных областей, т. е. она должна служить
основой семантико-прагматической МПО. Однако на сегодняшний
день далеко не все области могут быть формализованы и представлены в виде онтологии, как это требуется для МПО.
Структура организуемого пространства имеет иерархическую форму, как правило, не потому что это соответствует пути организуемого пространства, а из-за невозможности отражения всех измерений
этого пространства на бумаге. Поэтому пока что в системах понимания речи онтология используется как классификация понятий ПО.
Такая онтология может использоваться для разрешения терминологической неоднозначности ЕЯ, поскольку может учитывать синонимию и накладывать ограничения на использование естественного
языка, а также для извлечения дополнительной семантико-прагматической информации, необходимой для решения конкретной задачи.
В области ИИ онтология занимает все более важное место при формализации и представлении информации. В трактовке А. С. Нариньяни онтология может быть представлена как семантика и прагматика в
проекции на язык [57]. Онтоло123456784
4346784
гия накладывает семантические и
прагматические ограничения на
языковую модель (рис. 4.1).
Поскольку онтология может
иметь достаточно большую сте956
7
пень ветвления и глубину, необ8
ходимо учесть эффект транзиРис. 4.1. Онтология для проблемно! тивности на большом участке онориентированных моделей обработ! тологии. Как отмечено в работе
ки языка
[70]: «Онтологии и тезаурусы, в
140
которых используются формальные выводы с большим количеством
шагов, не имеют смысла, поскольку транзитивность на тезаурусных
отношениях работает только на ”коротких” дистанциях». Поэтому
использование онтологии для решения общей проблемы понимания,
т. е. в качестве полного отображения ЕЯ возможно не всегда. Использовать же онтологию с небольшой степенью ветвления выгодно для решения частных проблем понимания, например проблемы терминологической путаницы.
Иерархическое представление является формально логическим,
что не всегда соответствует прагматической части знаний ПО. Поэтому прагматика должна быть представлена более гибкой моделью,
например функциональной моделью состояний объекта в виде ориентированного графа или семантической сети. Функциональная модель отражает возможные состояния системы или ее действия в данной ПО. В основе функциональной модели находится прагматическая
информация, поскольку такая модель строится в соответствии с реальными ситуациями, возникающими в процессе решения задачи.
Таким образом, онтология, представленная в виде дерева понятий, терминов и имен ПО, является эффективным средством разрешения терминологической неоднозначности на уровне слов, а также, обладая свойством транзитивности, позволяет установить связи
между понятиями при понимании речи.
В результате проведенного анализа моделей представления естественного языка и ПО были выявлены основные виды структурированных источников представления априорной информации: модель
языка и модель предметной области. Анализ существующих подходов к обработке ЕЯ в системах понимания речи показал важность
использования всех видов априорной информации о языке и ПО. Опыт
лингвистических теорий породил удобные средства представления и
обработки ЕЯ в виде семантико-синтаксической модели. Однако проблема надежного автоматического понимания естественно-языковых
высказываний остается нерешенной. Причина кроется, в первую очередь, в том, что модели строятся не «от задачи», а «от языка». Прагматически-ориентированный подход показал необходимость комплексного представления априорной информации о языке и ПО в системе автоматического понимания речи с учетом целей и сферы ее применения.
Таким образом, обзор подходов к представлению и обработке ЕЯ показал, что существует ряд средств эффективного семантического анализа, которые применяются в системах автоматического понимания
речи. Еще одним важным аспектом речевой коммуникации является
моделирование диалога и построение диалоговых систем.
141
Известно, что имеется пробел между полноценным дискурсом человеческого диалога и возможностями компьютерной системы. Тем
не менее, предпринят ряд попыток построения механизма дискурса.
В частности, диалоги смешанной инициативы в системе речевого диалога и теория сценариев позволяют моделировать способы построения интерпретации дискурса [88]. Сценарии представляют типичные последовательности случаев, которые составляют обычный порядок действий в определенном контексте. Формально, это варианты фреймов для специальных целей обработки ЕЯ, которые включают следующие группы:
– роли и свойства (люди и объекты);
– предпосылки (запуска сценария);
– эффекты (сопровождающие сценарии);
– действия (которые могут быть выражены в отдельном выражении в устной форме).
Однако сценарии представляют собой обособленные единицы, и
части одного сценария не могут быть перенесены в другой. Отношения в сценариях не могут быть обобщены в правила, которые можно
применить в других ситуациях. И, наконец, сценарии определяют,
что случилось, но не указывают намерения или цели.
Шенк и Абельсон предположили, что люди создают схемы или,
как они их называли, сценарии, для переживания типичных событий [88]. Они привели весомые эмпирические доказательства существования таких структур знания. Однако первоначальная формулировка теории была ограничена неподвижностью сценариев. В частности, она не могла объяснить упорядоченное поведение в новых
или неожиданных ситуациях, не могла объяснить и того, как люди
распознают целенаправленное поведение в ситуациях, для которых
у них нет сценария (например, медицинская операция или ограбление банка).
Для того чтобы устранить эти ограничения, Шенк модифицировал свою теорию и создал динамическую теорию памяти. Она включает в себя понятие об организованных блоках памяти. Эти блоки
представляют из себя кластеры событий, которые называются сценами. Сцены – это собрание высокоорганизованных компонентов.
Организованные блоки памяти объединяют в себе набор сцен и добавляют специфические контекстуальные сведения. Введение понятия блоков памяти и сцен сделало теорию более гибкой, так как сцены могут перестраиваться как угодно. Кроме организованных блоков памяти существует еще более высокий уровень организации, называемый точками тематической организации (ТТО), которые меньше связаны с конкретными ситуациями и обычно относятся к глав142
ным темам всей последовательности эпизодов. ТТО играют важную роль
в напоминании личности о том, что она должна делать. Теория Шенка
имеет целый ряд проблем, связанных с тем, что она в какой-то мере
лишена принципов, т. е. обычно несложно создать схему или сценарий
для любой наблюдаемой модели поведения. Другими словами, теория
прекрасно объясняет поведение в момент его проявления или постфактум, но обладает ограниченными возможностями предсказания.
Использование знаний о ПО, диалоге и дискурсе в прикладной
информационной системе очень важно для обработки лингвистических данных: это также может улучшить эффективность обработки
и живучесть системы. Наиболее важными вопросами при построении
системы речевого диалога являются:
– модульность диалога: можно ли его разбить на маленькие, управляемые поддиалоги;
– режимы взаимодействия: может ли система быть пассивной в
диалоге и рисковать, сильно смещая фокус диалога, ориентируясь
на пользователя, или система может управлять диалогом;
– цели: как определить цель пользователя;
– планы: какие планы может использовать система, пытаясь достичь определенной цели пользователя.
Все эти вопросы встают перед разработчиком диалоговых систем.
4.2. Проектирование диалоговых систем
Диалог между людьми, впрочем, как и диалог между человеком и
машиной, не ограничивается только обменом информацией с помощью
речи. Следует отметить, что в общем случае взаимодействие осуществляется многомодально [14]. Это значит, что когда человек включается
в диалог, он объединяет информацию, пришедшую от его чувств, совмещая ее со знаниями контекста, для того чтобы понять собеседника (машину или человека). Для передачи намерения существует множество
способов помимо речи: жесты, картинки и др. Информация приходит
дополнительно из разных источников, и иногда она даже избыточна.
Многомодальность прежде всего используется для обеспечения естественности и эргономичности взаимодействия. За счет многомодальности пользователь может получать/передавать различными способами
(жесты, хмыканье) дополнительную информацию или использовать
избыточную информацию для улучшения производительности (чтение
по губам). Базовая архитектура диалоговой системы представлена на
рис. 4.2. Показаны типичные потоки информации от пользователя к
системе с использованием любых видов модальностей (жесты, речь, ввод
с клавиатуры, движение мышью и др.). Информация обрабатывается и
143
6639
$44
8692
#64
8692
429
693
834
7
4"23
8363
62
322
#59249
94
!66395
9298345
73
693
!839249
436"67
123245
6 7489
973243
83"7343
Рис. 4.2. Базовая архитектура диалоговой системы
затем передается в подсистему, которая управляет диалогом и решает,
что делать дальше. На основе этого решения генерируется соответствующая ответная информация, которая передается пользователю. Обработка входных данных и генерация ответа производятся рядом подсистем, которые будут рассмотрены подробно.
Также следует принять во внимание, что входы и выходы диалоговой системы обычно зашумлены. Шум может быть нескольких типов. Во-первых, дополнительный фоновый шум, который может возникать в процессе передачи данных от источника к приемнику, например посторонние разговоры во время синтеза или записи речи,
блики от солнечного света на дисплее или тень на лице пользователя
при видеонаблюдении и т. д. Во-вторых, шумы, возникающие при
передаче сигналов по каналам связи. Здесь можно отметить различные электромагнитные шумы, возникающие в цепях вычислительных машин, а также потери от дополнительного кодирования сигналов при передаче их на удаленные расстояния.
Поскольку человек начинает собирать информацию из внешнего
мира при помощи своих ощущений, входные сигналы должны быть,
в первую очередь, собраны и трансформированы соответствующими
сенсорными системами. Датчики могут быть разных видов, напри144
мер видеокамеры, массивы микрофонов, сенсорные клавиатуры,
джойстики, клавиатуры, сенсорные перчатки и др. Эти устройства
обычно конвертируют аналоговые сигналы в цифровые, а затем передают их на обработку компьютерам или специализированным вычислительным устройствам. Подсистема, которая предназначена для получения входных сигналов, обычно также отвечает за их предварительную
обработку, включая устранение шумов и извлечение признаков.
Процесс удаления шума может производиться как до, так и после
процедуры параметрического представления сигнала. В случае акустического сигнала полезно использовать методы удаления шума в
исходном сигнале для того, чтобы улучшить точность извлеченных
признаков. При распознавании жестов шум привнесенных движений вокруг пользователя может быть подавлен сегментацией переднего и заднего планов, который применяется как к исходному сигналу, так и к полученным признакам.
Операция извлечения признаков (параметрического представления)
направлена на уменьшение объема данных, которые должны быть обработаны последующими подсистемами. Например, полный видеопоток является не только слишком большим объемом данных для обработки в системе диалога, но и содержит массу избыточной информации,
если его нужно использовать только для распознавания жестов. Фактически часто используются только некоторые характерные параметры
(например, для видео – это параметры интересующей области и ее движения), которые передаются остальной системе дальше.
Характерные признаки извлекаются из исходного входного сигнала и передаются ко второй подсистеме, которая предназначена для
выявления целей пользователя (семантический уровень). Как уже
было сказано, мультисенсорный ввод данных может быть избыточным или дополняющим. Хотя некоторые многомодальные системы
используют очень примитивные технологии слияния данных, большинство эффективных систем использует комплекс статистических
моделей для получения цели и намерения пользователя. Описанные
ранее методы обучения, а также общие статистические методы часто
применяют в многомодальных системах, поскольку они способны учитывать зависимости между потоками различных входных данных.
Фильтры Калмана и СММ являются частными случаями динамических сетей Байеса, кроме того, сейчас разрабатывается концепция асинхронных СММ для совместной обработки аудио-видеосигнала [2].
Традиционные методы семантического разбора, как правило, опираются на следующую идею: «понимание есть способность ответить
на все вопросы, связанные с входным высказыванием». Этот принцип обычно сводится к необходимости скрупулезного заполнения всех
145
слотов семантического фрейма, что ведет к усложнению модуля управления диалогом, к переспросам и к необоснованному замедлению
хода диалога. В действительности человек обычно использует интуитивное чувство ситуации и способен понимать различные сокращения,
идиомы, профессиональный жаргон. Иными словами, существует некоторый разумный уровень полноты диалоговых фраз, в принципе достаточный для их надежного понимания без переспросов. Поэтому статистические данные, с достаточной полнотой отражающие речевое поведение человека, могут быть полезными в решении этой проблемы.
Рассмотрим главный модуль диалоговых систем – менеджер диа!
лога (МД), который отвечает за обработку как входных, так и выходных сообщений на концептуальном уровне и, собственно, отвечает за процесс коммуникации. После того как стало понятно намерение пользователя, система должна принять решение, что делать дальше. Этот модуль координирует взаимодействие с пользователем, а
также с остальным окружением. Во-первых, система должна взаимодействовать с базами данных, например для поиска информации, необходимой или менеджеру для продолжения обмена с пользователем, или
самому пользователю. Во-вторых, менеджер может взаимодействовать
с другими устройствами для того, чтобы собрать информацию, не касающуюся пользователя (например, температуру воздуха, время дня и
т. д.), но которая помогает принять решение относительно выполнения следующего действия. Эти всевозможные внешние устройства обеспечивают дополнительную информацию (прагматический уровень), собранную в БЗ, которая на рис. 4.2 называется «Знания о мире».
После того как МД принял решение относительно следующего действия, необходимо передать эту информацию пользователю. Этот
процесс начинается с порождения набора концептов, которые выражают эту информацию. Действительно, когда от одного человека чтото требуется другому человеку в ходе диалога, первый вначале думает о том, что было сказано, и затем выдает серию идей или концептов, выражающих результаты его размышлений. До того как произносить какие-то слова или жестикулировать, человек в первую очередь
строит концептуальную структуру того, что необходимо ответить. По
этому же принципу модуль генерации смысла ответа строит набор концептов, которые должны быть переданы пользователю каким-либо способом. Этот процесс иногда называют планированием. И, наконец, последний модуль в диалоговой системе предназначен для синтеза ответа
понятными пользователю средствами, такими как речь, звуки, картинки и др. Проблеме синтеза различных модальностей также посвящены
многочисленные исследования и получены более впечатляющие результаты, чем в распознавании. К сожалению, обсуждение методов синтеза
146
выходит за рамки данной книги, поэтому приведем лишь ссылки на ряд
основных публикаций в этой области [12, 28, 38, 62, 71].
Продолжая обсуждение проблем диалоговых систем, отметим, что
реакция системы на ввод пользователя зависит от определенного
пользовательского намерения, а также от специфики решаемой задачи. Поэтому МД является еще более зависимой от задачи частью
системы и в основном проектируется для решения определенной прикладной задачи в ограниченной ПО.
Менеджер диалога принимает решение о том, что делать системе,
на основе результатов ранних блоков, истории диалога, информации, которую можно найти в базе «знаний о мире», и своей внутренней стратегии (отображение состояний в действия). Попробуем рассмотреть основные аспекты, связанные с построением оптимального
МД, а именно, его оптимальной стратегии. Критерий оптимальности в случае диалоговых стратегий не является однозначным, поэтому до сих пор не существует окончательного определения оптимальности, несмотря на огромное число исследований, проведенных в последнее время в области оценивания систем речевого диалога. Более
того, существует несколько проблем в построении МД, таких как глубина контекста, которую следует учитывать (тесно связана со способом
мышления в диалоге); внутреннее представление состояния; возможные действия, которые может выполнить МД; допустимый системой
уровень инициативы пользователя; адаптация системы к окружению и
пользователю; надежность взаимодействия. Все это должно быть учтено и реализовано в результате построения оптимального МД.
До исследований возможности построения автоматических систем речевого диалога были проведены исследования в области человеко-машинного диалога в целом. Основная цель состояла в разработке теории диалога, включая, по меньшей мере, теорию кооперативного проблемно-ориентированного диалога, в котором участники взаимодействуют для достижения некоторой определенной цели.
Не все исследователи согласны с тем, что диалог человека с человеком должен служить моделью для человеко-машинных диалогов, так
как люди адаптируют свое поведение во время разговора с машиной.
Тем не менее, в области построения систем речевого диалога применяются четыре подхода на основе модели человеческого общения:
диалоговые грамматики, сценарные модели, модели диалоговых игр
и модели совместных действий.
Диалоговые грамматики – это первый подход, разработанный для
моделирования диалогов [14]. Процесс понимания естественного
языка использует некоторый набор правил, устанавливающих последовательные и иерархические ограничения на приемлемые диало147
ги, такие, как синтаксические грамматические правила, накладывающие ограничения на грамматическую допустимость высказывания.
Заметим, что для построения диалоговых систем была разработана специальная (но очень похожая на теорию речевых актов) теория диалоговых актов. Самым большим недостатком диалоговых грамматик (за
счет чего, собственно, они и просты) является то, что для истории текущего состояния используется только предыдущее высказывание (предыдущий речевой акт или акт диалога). Наверное, поэтому разработано
столь мало успешных систем на основе этой модели.
Сценарные модели основаны на наблюдении, что люди выполняют действия не случайно, а, скорее, планируют свои действия для
достижения различных целей, и в случае коммуникативных действий
(речевых актов) их цели включают изменение ментального состояния слушателей. Сценарные модели диалога предполагают, что речевой акт говорящего – это часть сценария, и слушающий должен
обнаружить его и ответить в соответствии с основным планом сразу
по предыдущему высказыванию. Другими словами, при извлечении
цели из высказывания система должна учитывать весь диалог и интерпретировать высказывание в контексте сценария. Эти модели оказались более сильными, чем диалоговые грамматики, однако получение цели и принятие решения в контексте сценарных диалогов иногда бывает очень затруднительным. Тем не менее, модели диалога на
основе сценариев используются в системах речевого диалога.
Теория диалоговых игр – это попытка учесть идеи сценарных моделей и диалоговых грамматик в одной структуре. Предположим, что
диалоги состоят из череды так называемых игр. Каждая игра составлена из последовательности ходов, которые возможны в соответствии
с набором правил (похожих на грамматики), и вся игра запланирована участвующими агентами (как в модели, основанной на сценариях). Таким образом, агенты совместно используют знания (представления и цели) в ходе диалога, и игры могут быть вложенными (возможны поддиалоги) для достижения подцелей. В этой структуре ходы
часто приравниваются к речевым актам. Модель довольно формально
определяет ходы, допустимые для каждого из участников в данный момент игры (по правилам и в соответствии с целью), и таким образом
моделируются диалоги. Эта модель доведена до реализации и используется при проектировании некоторых диалоговых систем [11].
Предыдущие подходы рассматривали диалог как результат взаимодействия генератора сценария (пользователя) и распознавателя
сценария (компьютера), работающих согласованно, но это не объясняет, почему участники задают уточняющие вопросы, используют
подтверждающие высказывания и т. д. Другая модель диалога рас148
сматривает диалог как совместную деятельность, в которой агенты
делают что-то вместе. Участие в диалоге требует от участников наличия списка совместных соглашений для понимания друг друга, и это
служит причиной того, что уточнения и подтверждения столь распространены в диалогах. Это семейство моделей диалога вызывает
большой интерес, и уже применялось в нескольких системах [14].
Описанные модели диалога могут использоваться в системах речевого диалога для того, чтобы объяснить семантику и построить внутреннее состояние. Теперь рассмотрим методы, направленные на управление диалогом. В основном выделяют четыре метода: 1) метод доказательства теорем; 2) конечный автомат; 3) метод заполнения форм;
4) метод самоорганизации. Рассмотрим кратко каждый из этих методов.
Метод доказательства теорем был разработан для управления речевым диалогом с ограниченными параметрами [14]. В основе метода лежит идея о том, что система пытается доказать, что проблема решена
(теорема). Как и в математическом доказательстве, здесь существует несколько шагов, и на каждом шаге система может использовать аксиомы
(заведомо известные) или дедукцию. Если на данном шаге знания о мире
не способны обеспечить аксиомы для управления диалогом, которые позволяют продолжить доказательство, и оно не может быть выведено из
других аксиом, то аксиома рассматривается как потерянная, и система
запрашивает у пользователя новую информацию. Если пользователь не
может предоставить информацию, то решается новая теорема: «Пользователь может предоставить релевантную информацию». Затем производится обучение поддиалога. Этот метод был применен в Прологе как метод на основе правил, который подходит для логического программирования. Основной недостаток метода состоит в том, что стратегия является заранее фиксированной (как и шаги доказательства).
В методах конечных автоматов диалог представлен как сеть переходов состояний, где переходы между состояниями диалога специфицируют все возможные пути по сети.
В каждом состоянии действие выбрано в соответствии со стратегией
диалога, и результат действия ведет
к новому переходу между состояниями. Рассмотрим следующий пример. Пусть задан простой диалог,
цель которого – поиск первого имени и последнего имени пользователя некоторой системы. Возможны Рис. 4.3. Пример речевого диалога
четыре состояния (рис. 4.3):
с четырьмя состояниями
149
– нет известных значений;
– первое имя известно, последнее – неизвестно;
– последнее имя известно, первое – неизвестно;
– оба имени известны.
На рисунке каждый круг представляет возможные состояния, возможные переходы между состояниями представлены направленными дугами. В каждом круге показаны два квадрата, содержащие булевы переменные, указывающие, известно (∨) или неизвестно (×) значение (первое имя в верхнем квадрате, последнее имя – в нижнем).
В начальном состоянии ни одно значение не известно (верхнее состояние), и цель состоит в том, чтобы достичь состояния, в котором
оба значения известны (нижнее состояние). В каждом состоянии система управления диалогом выбирает между несколькими действиями, такими как предсказание обоих значений, первого имени или
последнего имени, или завершение диалога.
Основным недостатком этих методов является то, что все возможные диалоги должны быть известны и описаны заранее. Тем не менее, методы переходных состояний уже широко используются в системах диалога, поскольку обеспечивают простую форму моделирования диалога, так как задача может быть напрямую отображена в
структуре диалога. Метод конечного автомата легок в понимании и
более нагляден для разработчика, поскольку визуальное, глобальное и эргономичное представление других методов управления отнюдь не «дружественное» пользователю. Визуальное представление
конечного автомата является гораздо более точным, поскольку диалог описан как набор состояний, связанных переходами. Модель конечного автомата не может описать системы, где диалог ведет пользователь. Однако в большинстве диалогов система является ведомой
или используется стратегия со смешанной инициативой. Большинство приложений, таких как заполнение анкеты, запрос к базе данных или справочные системы, более успешно работают таким способом. Поэтому данный метод является наиболее популярным. Даже
если другие методы (самоорганизующиеся) определенно более гибкие, то вложенные поддиалоги более удобно разработать с помощью
конечного автомата.
Методы заполнения форм называют также фреймовыми методами. Они чаще используются в приложениях, связанных с передачей
информации от пользователя к системе речевого диалога, когда информация может быть представлена как набор пар атрибут–значение. Структура атрибут–значение может рассматриваться как форма и пользователь должен определить значения каждого поля (атрибут, слот, фрейм) формы. Каждое пустое поле можно использовать
150
для передачи подсказок. Стратегия диалога нацелена на полное заполнение формы и поиск значений для всех полей на основе высказываний пользователя.
В отличие от предыдущих методов управления диалогом семейство самоорганизующегося управления не требует предварительной
спецификации всех путей диалога. Каждое действие системы и реакция пользователя требуют построения новой конфигурации, которая ассоциируется с определенным поведением. Нет никакой необходимости знать, какая конфигурация имеет место. Это в основном относится к диалоговому управлению событиями. Одна из наиболее
известных попыток использовать этот вид управления диалогом была
предпринята Philips в языке HDDL (Harald’s Dialogue Description
Language), но затраты на его создание и развитие были столь высоки, что он не получил широкого распространения.
Другим важным вопросом построения стратегии диалога является степень инициативы, допустимая для пользователя в каждом состоянии диалога. Действительно, кажется очевидным, что управление диалогом будет более простым, если система всецело управляет
ходом диалога до тех пор, пока пользователь удовлетворен, и если
требуется, то он может взять инициативу на себя. Можно выделить
три стратегии диалога по степени инициативы системы:
– активный режим – только система может задавать последовательности определенных вопросов пользователю. Пользователь может ответить на эти вопросы и предоставить только запрашиваемую
информацию;
– пассивный режим – инициативу проявляет только пользователь, и он запрашивает информацию у системы. Система может корректно интерпретировать пользовательский запрос и ответить на
определенные вопросы без особых уточнений;
– смешанный режим – пользователь и система совместно управляют диалогом, чтобы достичь цели пользователя. Пользователь может предоставлять дополнительную информацию, которую у него еще
не запросили, или просить систему выполнять определенные действия
до тех пор, пока система способна управлять состояниями диалога,
не отклоняясь от правильного пути диалога. Система может также
брать управление на себя, поскольку в некоторых случаях (из-за шума
или по другой причине) модули обработки входных сигналов могут
давать сбои или недостаточно точную информацию.
Подсознательно можно установить, что системы со смешанной
инициативой могут лучше работать с точки зрения пользователя.
Тем не менее, некоторые исследования показали, что пользователи
иногда предпочитают системы речевого диалога с активным режи151
мом, поскольку в них выше уровень достижения цели [14]. Другие
исследования показали, что инициативные системы имеют большую
производительность с неопытными пользователями. Версия той же
системы со смешанной инициативой показала худшие результаты
для пользователей любого уровня. Действительно, эти результаты
подчеркивают, что люди адаптируют свое поведение, потому что знают, что они взаимодействуют с машиной, и идут на некоторые ограничения в диалоге для того, чтобы, в конце концов, достичь цели
(например, заказать билет на самолет или получить справку о ближайших рейсах).
Немаловажную роль в управлении диалогом играет определение
уровня доверия системы [14]. При этом выполняется контроль за
возможными ошибками, сделанными подсистемами, отвечающими
за обработку входных данных. Действительно, иногда полезно вводить некоторые подтверждения или проверки поддиалогов с целью
повышения уровня уверенности системы. Заметим, что такие поддиалоги есть и в человеческих диалогах, которые позволяют устранить
различные виды непонимания (как речевого сигнала, так и смысла).
Тем не менее, выбор стратегии подтверждения не тривиален. Разработчик должен решить два основных вопроса: когда и как система
должна включать подтверждение поддиалога. Не существует простых
ответов на эти вопросы, поскольку исследователи приходят к различным выводам.
Прежде всего, разработчик должен решить, когда включать подтверждение поддиалога. Некоторые разработчики утверждают, что
это нужно пользователю для того, чтобы обнаружить проблему понимания, и что найденная информация всегда должна получить подтверждение. С другой стороны, объективное измерение уровня доверия системы может помочь принять решение. Отдельные системы используют уровень доверия подсистемы автоматического распознавания
речи, когда для принятия решения необходимо получить от пользователя подтверждение правильности распознавания входной фразы.
Затем идет вопрос, как на каждом уровне можно получить информацию о неуверенности системы. Более того, поскольку полная система диалога имеет подсистему понимания естественного языка, то
необходимо учитывать также доверие к смыслу и контексту, для того
чтобы улучшить общее доверие и решить, какой вопрос следует задать для подтверждения. Если выявлена необходимость в подтверждении, то МД может выбрать между двумя возможными методами
подтверждения:
1) явным подтверждением – когда система просит пользователя
подтвердить распознанную информацию;
152
1) неявным подтверждением – когда информация, нуждающаяся
в подтверждении, комбинируется с запросом, связанным с получением следующей части информации. Такое потверждение основано на
инстинктивной реакции пользователя на любую некорректную информацию.
Явное подтверждение работает надежнее. Однако необходимо учитывать, что эта надежность обеспечивается за счет естественности и
эффективности взаимодействия, поскольку увеличивает длину диалога. С другой стороны, неявное подтверждение может вызвать путаницу, что приведет к потере надежности управления пользователем. Если же информация распознана корректно, неявное подтверждение имеет существенные преимущества по скорости и удобству взаимодействия. Итак, выбор между одной из двух стратегий все еще
зависит от уровня доверия входной информации. Большинство систем использует неявное подтверждение, когда система имеет достаточно хороший уровень доверия информации. Явное подтверждение
используется при низком уровне доверия.
Проблема оценки эффективности явных подтверждений является предметом отдельных исследований. Очевидно, что они должны
иметь вопросительную интонацию, а не утвердительную, и детали,
которые необходимо подтвердить, должны быть в конце подтверждающего сообщения – они не должны следовать за вопросом «Это
верно?», поскольку пользователь довольно много успевает сказать
до или в течение такого вопроса.
4.3. Методы обучения стратегии диалога
Возвращаясь к началу этого раздела, напомним, что диалог рассматривается как процесс взаимодействия между двумя агентами.
Это последовательный процесс, в течение которого два агента пробуют достигнуть цели в рамках определенной задачи. Чтобы достичь
взаимной цели, агенты обмениваются устными сообщениями, содержащими намерения, до тех пор, пока задача не закончена или один
из агентов не отказался продолжать диалог. Хотя сложно говорить о
критерии оптимальности для диалога между людьми, в частном случае диалоги, ориентированные на конкретную задачу и направляемые целью диалога, должны иметь возможность оценивания взаимодействия и стратегий, которые использует каждый из агентов.
Следовательно, должна быть возможность обучения стратегии согласно критерию оптимальности. Не всегда легко определить показатели качества диалога и получить такой критерий. Кроме того,
получение речевых данных (реплик реальных диалогов) для обуче-
153
ния стратегии проблемно-ориентированного диалога – это очень сложная задача, требующая оптимизации.
К настоящему моменту разработаны многочисленные методы обучения
благодаря исследованиям, которые проводились в области искусственного интеллекта более полувека. Некоторые из задач, которые мы уже упоминали ранее, используют парадигму обучающих алгоритмов – это задачи
сравнения с эталоном, принятия решения и т. д. Их объединяет то, что
достаточно сложно найти аналитическое решение, поэтому используются
методы статистического моделирования и мягких вычислений.
Можно выделить два основных класса методов обучения: управляемое и неуправляемое обучение (или с учителем и без него). В управляемом обучении агенту предъявляются пары: входные данные – решение.
При этом обучаемый агент пытается обеспечить правильные решения
для новых подобных входных данных. Нейронные сети широко используются как обучающие агенты в методах сравнения эталонов при распознавании речи или рукописного текста. Для обучения модели диалога широко применяются методы стимулирующего обучения, описанные в разд. 4. В качестве входных данных используются ситуации, а
выходных – ответные действия диалоговой системы. Рассмотрим обучение стратегии диалога с учетом методов управления диалогом.
В рамках задачи обучения стратегии модель диалоговой грамматики не подходит, так как цель алгоритмов стимулирующего обучения состоит в том, чтобы подобрать определенные ситуации к действиям, а не получать общие правила о том, что сделать в общих
случаях. Другие способы, такие как сценарная модель или теория диалоговых игр, подходят больше, но они не рассматривают диалог как
единое целое. Каждый переход в диалоге является частью плана, но при
этом не делается никаких попыток исправить ход поддиалога. Таким
образом, единственным приемлемым подходом остается метод совместной активности, в котором проектировщик пробует оптимизировать
полный диалог, принимая во внимание возможные недоразумения, вероятные ошибки модулей распознавания и понимания речи и т. д. В
этом случае диалоговая система может также рассматриваться как агент,
пытающийся оптимизировать каждый диалог в целом шаг за шагом
согласно поступающим устным сообщениям пользователя.
При описании общей структуры стимулирующего обучения в разд. 2
было показано, что марковские сети, позволяющие описать процесс в
виде графа, лучше всего подходят для представления моделей диалога.
Тогда, применяя методы стимулирующего обучения к проблемам обучения оптимальной стратегии диалога, требуется определить диалог как
марковский процесс, который описан в терминах состояний, действий,
оценок и стратегии [11]. При этом действия будут определяться экспер154
том в зависимости от специфики рассматриваемой задачи речевого диалога, а пространство состояний и оценочные параметры будут вырабатываться по взаимодействию с окружающей средой. Действительно, параметры сети, имеющие численные значения, будут постепенно настраиваться по мере поступления данных, а пространство состояний будет построено благодаря упорядочиванию событий, классифицированных модулем распознавания и удовлетворяющих модели задачи.
Разумеется, существует много способов построения пространства
состояний [14], и часто утверждается, что пространство состояний
сильно зависит от решаемой задачи, но некоторые общие соображения следует принять во внимание:
– каждое состояний должно содержать достаточно информации
об истории диалога, чтобы соблюдалось свойство однородности сети;
– пространства состояний часто рассматриваются как информационные в том смысле, что они построены благодаря информации,
которую МД может извлечь из окружающей среды;
– описание состояния должно содержать достаточно информации
для того, чтобы дать точное представление о ситуации, с которой
должно быть связано действие;
– пространство состояний должно быть как можно меньше, так
как скорость работы алгоритмов стимулирующего обучения пропорциональна числу состояний в марковской сети.
4451
4
3
46
8
65
1611
123456
7256829
45
33
{ciout }
49
58
8
{ciin }
4345 1
8
8
47
65
24
32
1
51
42
{ciwk }
122122 132122
41
11
4
24
1112
Рис. 4.4. Процесс обучения стратегии диалога
155
Общая структура обучения стратегии диалога представлена на рис. 4.4.
Для построения пространства состояний следует учесть следующие
данные. Во-первых, известно параметрическое представление задачи. Во-вторых, модуль обработки входных данных обеспечивает данные о наблюдениях. В-третьих, модель пользователя может предоставлять информацию о состоянии пользователя и уровне экспертизы.
Набор действий определяет все возможные ответные реакции, которые сможет выполнить обученная система диалога. Следует отметить, что действия могут быть различных типов. Например, существуют такие вспомогательные элементарные действия как генерация подсказки, загрузка грамматики речи, начало распознавания
речи и т. д. С другой стороны, начало диалога и следование определенной стратегии до конца взаимодействия – это тоже действия.
Вначале обычно выполняются несколько элементарных действий,
не требующих оптимизации очередности исполнения.
Кроме того, выделяются два типа групп действий в зависимости
от объекта их воздействия: действия направлены на пользователя
или на окружающий мир. Последовательность элементарных действий, направленных на пользователя, обычно начинается с подсказки и строится на базе теории речевых актов. Например, пользователю задается некоторый вопрос, затем эта же информация поступает в
блок распознавания речи, чтобы сформировать там необходимую
высокоуровневую информацию и уже ожидать один из наиболее вероятных ответов пользователя.
Получив от пользователя устное сообщение, система обрабатывает его и определяет переход в новое состояние согласно полученной
информации от пользователя. Так как эти последовательности действий зафиксированы в схеме обучения стратегии, то задача эксперта – определить все возможные действия. Кроме того, существуют
некоторые общие действия, которые используются большинством
диалоговых систем. Действия общего характера, которые относятся
к пользователю, могут быть следующими.
Приветствие – действие, с помощью которого система сообщает
пользователю о своих способностях и его возможностях по работе с
системой (обычно строится в виде открытого вопроса). Во время этого действия производится общая инициализация диалоговой системы: загрузка словарей, баз данных и знаний, необходимых для распознавания речи, обработки текста и генерации адекватных ответных действий, например: Система: «Добро пожаловать в нашу систему заказа билетов на поезд! Как я могу Вам помочь?»
Уточняющий вопрос – действие, с помощью которого система ограничивает предметную область диалога, тем самым направляя
156
пользователя на конкретную проблему и сокращая набор возможных ответов. В принципе, это действие направлено на повышение точности работы модуля обработки входных сообщений. Чем быстрее система сможет понять намерение пользователя (суть запроса), тем скоре
сможет выработать соответствующее ответное действие (выдать интересующую информацию) и в итоге достичь конечной цели диалога, например: Система: «Пожалуйста, сообщите Ваш город отправления».
Открытый вопрос – действие, которое может быть исполнено как
системой, так и пользователем, направлено на запрос дополнительной информации. При этом не предъявляются строгие ограничения
на содержание ответа, например: Система: «Как я могу помочь Вам?»
Явное подтверждение – действие, с помощью которого система
просит подтвердить определенную информацию, полученную на основе предыдущего сообщения пользователя. Обычно такое действие
требует простых ответов «Да» или «Нет», например: Система: «Вы
сказали, что Вы хотите билет в Санкт-Петербург, правильно?»
Неявное подтверждение – действие, которое может быть исполнено как системой, так и пользователем, содержит неявный запрос
на подтверждение полученной ранее информации, а также запрос
новой информации. Это делается путем повторения информации,
извлеченной из предыдущего сообщения. При этом ожидается, что
агент инстинктивно заметит неправильную информацию и поправит
ее или, в случае отсутствия ошибок, сообщит новые данные, например: Система: «Когда Вы хотите поехать в Санкт-Петербург?»
Окончательное подтверждение – по окончании диалога или поддиалога система может попросить подтвердить все переменные, полученные в ходе диалога, например: Система: «Пожалуйста, подтвердите свой запрос: Вы запрашивали билет в одну сторону из Москвы в
Санкт-Петербург на следующую субботу».
Изменение условий – в случае невозможности выполнения действия
по запрашиваемых условиям производится отказ и предложение изменить некоторые параметры запроса. Это имеет место, когда система,
обработав входные данные и сформулировав запрос к своим информационным базам данных, не смогла найти удовлетворительного ответа,
например: Система: «На поезда из Москвы в Санкт-Петербург на следующую субботу мест нет. Хотели бы Вы изменить дату отправления?»
Восстановление поддиалога – иногда диалог проходит затруднительно, так как ответы пользователя часто бывают непоследовательны, а также вследствие ошибок распознавания/понимания речи.
В этом случае возникают ситуации, когда система принимает решение о необходимости начать диалог заново или с какого-то определенного поддиалога. Такой поддиалог может содержать простую под157
сказку пользователю для ответа на последний вопрос или может быть
более сложным, чтобы оценить, насколько пользователь и система
понимают друг друга; например: Система: «Дата отправления может
начинаться с завтрашнего дня и до 1 января 2007 года».
Утвердительная подсказка – система передает информацию пользователю, чтобы обновить его знания. При этом система не ожидает в
ответ никакой специальной реакции пользователя и продолжает оставаться в текущем состоянии поддиалога (чаще всего в начале диалога).
Это действие направлено на быстрое оказание помощи, например: Система: «Поезд, который Вы запросили, прибывает на 2-й путь».
Окончание диалога – в конце сессии диалога система сообщает о
завершении диалога и переходит в изначальное состояние для работы с новым пользователем, например: Система: «Ваш билет будет
доставлен Вам сегодня вечером. Спасибо, что Вы воспользовались
автоматизированной системой заказа билетов».
Действия, адресованные системе, обычно ограничиваются типичными вопросами, которые заранее содержатся в системе и на которые
существуют заранее подготовленные формы ответов. В зависимости
от запросов пользователя меняется только содержание ответного действия. При этом общая структура действий остается неизменной.
В заключение отметим, что разработка диалоговых систем является
комплексной задачей, и при разработке структуры диалога прежде всего учитываются знания экспертов ПО. При этом не только структура
диалога, но и сами фразы, задаваемые диалоговой системой, должны
быть тщательно подобраны, чтобы сократить время диалога до минимума. Так как цель многих диалоговых систем – обеспечить пользователя интересующей информацией, то можно использовать в качестве
критерия оптимальности стратегии диалога среднее время успешного
взаимодействия, т. е. время, за которое пользователь проходит все этапы диалога и по завершении получает необходимую информацию.
4.4. Современные диалоговые системы
Одним из самых перспективных направлений применения диалоговых систем является разработка новых сервисов, систем и услуг, которые могли бы максимально использовать различные коммуникационные способности человека. Использование речевых технологий особенно актуально в телекоммуникационных приложениях. Распознавание
речи впервые было использовано в телекоммуникационных сетях около 10 лет назад. Необходимость внедрения технологий распознавания/
понимания речи в телекоммуникациях была обусловлена двумя причинами [15]: уменьшением стоимости услуг за счет автоматизации функ-
158
ций сопровождающего персонала и получением дополнительных доходов за счет предоставления пользователю дополнительных интеллектуальных сервисов, которые не использовались ранее из-за высокой стоимости их сопровождения и обслуживания.
Эти и другие положительные факторы требуют скорейшего развития и применения речевых технологий. В области телекоммуникаций существует две основные модели организации телефонных сетей
для предоставления абонентам возможности для общения между собой, а также для получения необходимых сервисных услуг: телефонная сеть общего пользования – ТфОП (или POTS – Plain Old Telephony
Services Network) и сеть пакетной коммутации каналов (Packet
Network). Многолетняя эволюция ТфОП и сетей пакетной коммутации привела к появлению коммуникационной сети, которая используется в настоящее время. Основная проблема такой телекоммуникационной сети состоит в том, что ТфОП и пакетные сети объединены достаточно слабо. То есть те сервисы, которые доступны пользователю в простой ТфОП, недоступны для пользователей персональных компьютеров, подключенных к сети пакетной коммутации, и
наоборот. Это приводит к дополнительным расходам, а также низкой производительности объединенной сети, так как обе сети часто
предоставляют пользователю одинаковые услуги и сервисы (служба
каталогов Directory Service, Call-центры и т. д.).
Перспективная интеллектуальная телекоммуникационная сеть
(рис. 4.5) [4] должна прийти на смену текущей архитектуре. В новой
архитектуре реализуется более тесная интеграция между ТфОП и пакетными сетями посредством шлюза, который служит для преобразо-
52774 6
22 256247
1234567
123456789
7553
457789 1
7553 !"
123456789
7553
6 43729
324 2389
57
Рис. 4.5. Перспективная интеллектуальная телекоммуникационная сеть
159
вания потока информации из ТфОП в пакетную сеть и наоборот. Отличительной особенностью новой архитектуры является присутствие интеллектуальной обработки информации на локальном уровне (т. е. на
персональных компьютерах, телефонах, и т. д.), а также распределенная интеллектуальная обработка (опирается на использование активных баз данных Active User Registry). Интеллектуальные сервисы в такой архитектуре должны быть сосредоточены на шлюзе, что позволит
наиболее эффективно использовать сервисы при помощи любых терминальных устройств, подключенных к ТфОП или пакетной сети. Так
как на данный момент большинство таких устройств составляют обычные телефонные трубки, то все создаваемые интеллектуальные сервисы
должны уметь распознавать и понимать речь.
Среди многих примеров телекоммуникационных сервисов, которые были использованы для автоматизации процесса обслуживания
клиентов, можно выделить следующие [39].
Автоматизация операторских функций. Например, такие системы как
Voice Recognition Call Processing (VRCP) фирмы AT&T или Automated
Alternate Billing System (AABS) фирмы Bell Northern Research позволили
автоматизировать часть операторских функций. Система VRCP способна
обрабатывать такие вызовы как составление квитанций и счетов, запрос
визитных карточек. VRCP в настоящее время используется в США, обрабатывая свыше миллиарда запросов в год.
Автоматизация справочной системы. Были разработаны системы
помощи операторам справочных систем для задачи определения номера
телефона в ответ на речевой запрос пользователя. Компании NYNEX и
Nortel разработали свои собственные системы, которые могли распознавать названия городов для облегчения оператору процесса поиска населенного пункта на карте. Системы, разработанные Bellcore и Ameritech
(система ACNA), позволили клиенту телефонной компании получать
название некоторой организации (например, магазина) и ее адрес по продиктованному системе номеру телефона интересующей организации.
Информационные сервисы в автоматизированных Call!центрах.
Существующие Call-центры позволяют абонентам получать при помощи телефона доступ к информации о результатах спортивных соревнований, прогнозе погоды, осуществлять заказ билетов, бронирование номера в гостинице и т. д. В настоящее время начинают внедряться автоматизированные Call-центры, которые могут поддерживать некоторый интеллектуальный речевой диалог с абонентом. Так,
например, система American Airlines Dial-a-Flight позволяет автоматизировать продажу и заказ авиабилетов, а также получение справочной информации о рейсах по телефону. По данным на 2002 г., око160
ло 81% американских компаний имеет собственный или арендует внешний Call-центр, в которых занято свыше 1,55 млн операторов [44].
Голосовые банковские услуги. В начале 90-х годов в Японии фирма NTT разработала систему ANSER (Automatic Answer Network
System for Electrical Requests), которая обеспечивает речевой интерфейс для доступа к кредитным картам, банковским счетам клиентов,
сообщает остатки на счете, позволяет осуществлять перевод средств
с одного счета на другой и т. д. В настоящее время система ANSER
установлена более чем в 70 японских городах и обслуживает более 600
банков. Система ежегодно обрабатывает порядка 360 млн звонков.
Голосовые порталы. Голосовой портал – это новый и специфический тип Интернет-портала. Он предоставляет пользователям возможность получать и управлять информацией, размещенной в Интернет,
при помощи голоса. Абонент может использовать необходимый ему сервис как посредством телефона, так и голосового Web-броузера, которые, используя протоколы WAP или http, могут получить доступ к голосовому порталу и соответственно базам данных с различной информацией. Наиболее привлекательны голосовые порталы для авиакомпаний, финансовых компаний, предприятий с круглосуточной работой по
доставке товаров. Кроме того, с помощью голосового портала появляется возможность узнать данные, нужные и актуальные для каждого
конкретного пользователя в конкретный момент времени. Например,
при поездке на машине: система GPS (Global Positioning System) передает информацию голосовому порталу о местоположении, а система на
сервере делает соответствующий запрос в базу данных и выдает информацию о пробках, погоде, ближайших магазинах. При этом водителю
не нужно отвлекаться от дороги и смотреть на карту, чтобы узнать, как
ему доехать до конкретного пункта назначения. Вместо этого водитель
может сказать: «Маршрут до “Астории”», – и бортовой компьютер озвучивает информацию о проезде с учетом пробок и аварий. На основе
этих технологий фирмами TellMe, BeVocal, Webversant и др. разработаны голосовые порталы для различных прикладных задач. По данным
аналитической группы Allied Business Intelligence, в США в 2001 г. существовало около 4 млн голосовых порталов, а в 2005 г. их число возросло до 17 млн.
Для того чтобы пользователь мог применить речь при работе с
сетью Интернет, на Web-сервере устанавливается специализированное программное обеспечение для распознавания/понимания, а также синтеза речи. Такое программное обеспечение разрабатывается
Microsoft (встраивается в NET и реализуется на базе Speech Software
Developer’s Kit, предназначенного для интеграции речевых технологий в любые приложения посредством интерфейса Speech API), IBM
161
(система WebSphere Voice Server) и некоторыми другими компаниями.
Для того чтобы иметь стандартизированный доступ к этим программам
и технологиям, осуществляющим распознавание и синтез речи, были
разработаны и стандартизированы специализированные языки гипертекстовой разметки с поддержкой речевых тегов: SALT (поддерживается Microsoft, Intel, Philips), VoiceXML (развитием языка занимается
Форум VXML, в который входят AT&T, Lucent Technologies, Motorola и
несколько десятков более мелких фирм), VoxML (от Motorola), VTML
(от AT&T). Все они предполагают добавление к существующим языкам
Web-разметки HTML и XML специальных конструкций для организации голосового диалога. Среди всех этих языков наиболее популярны в
настоящее время VoiceXML, который предназначен для использования
в телефонии, и SALT, который может использоваться для организации
многомодального взаимодействия (звук, графика, текст и речь одновременно) пользователя с компьютером.
При создании различных автоматизированных информационных центров важное значение приобретает разработка голосовых порталов. На
рис. 4.6 приведена архитектура стандартного голосового портала для
доступа к ресурсам Интернет с использованием технологии VoiceXML.
626
678 6
284
9
2
9
2
46
1234
5678
123453
9
2
6
2
66 666
66
6789
6 6 67
7667
Рис. 4.6. Пример организации работы голосового портала
162
Необходимо отметить, что сама технология VoiceXML не распознает и не синтезирует речь, а только стандартизует голосовой сценарий поведения программы, а для реального выполнения распознавания и/или синтеза речи, а также доступа к базам данных с информацией вызывается специальное серверное программное обеспечение
(например, WebSphere Voice Server), которое может совершенно ничего не знать о существовании языка разметки.
Для того чтобы пользователь мог использовать компьютер с микрофоном для доступа к ресурсам Интернет, на персональном компьютере пользователя должен быть установлен также голосовой броузер или Web-навигатор (дополнение к обычному Web-броузеру для организации голосового
управления). Например, такие системы как Conversa Web или IBM’s
VoiceType Connection for Netscape позволяют работать «без рук» с броузерами Microsoft Internet Explorer и Netscape Navigator соответственно.
Кроме телекоммуникационных приложений существует масса задач, где речевые технологии могли бы быть полезны. Для того чтобы
классифицировать круг задач, где сегодня применяются диалоговые
системы, рассмотрим таблицу.
Основные типы прикладных систем речевого диалога
Цель приложения
Выполняемые функции или предоставляемые услуги
Альтернатива
Стенографирование, генерация документов
клавиатурному вводу
Доступ к информации и Доступ к Интернет-ресурсам. Осуществление
банковских переводов. Использование
передача речевых
сообщений по телефону естественного речевого диалога. Голосовая почта.
Мгновенное обновление трафика для выбора
маршрута. Бесконтактное управление мобильным
телефоном
Образование
Обучение детей произношению звуков речи и
различных слов. Обучение иностранным языкам
взрослых (машины часто произносят слова более
точно, чем учитель – не носитель языка)
Исправление дефектов Демонстрация движения языка при произнесении
речи, сгенерированная на компьютере
речи
Чтение текстов для людей со слабым зрением.
Решение слуховых и
Синтез речи по жестам. Обучающие системы
визуальных проблем
интерактивного аудио-визуального взаимодействия
для детей с отставаниями в развитии
Безопасность
Верификация и идентификация диктора по голосу
Развлечение
Игрушки разговаривают уже много лет, но сейчас
они уже понимают, кто с ними говорит, и могут
приветствовать Вас по имени
163
Приведем несколько примеров наиболее успешных систем речевого диалога. Технологии речевого взаимодействия сегодня особенно
активно развиваются в биологии и медицине, поскольку именно эти
области обладают детально специфицированными моделями знаний.
Сервис по уходу за диабетиками Dias-Net-PN (Diabetes Advisory
System -Personal Networked) – консультационная система, которая
предоставляет помощь в диагностике диабета, а также лечении болезни и ее осложнений [14]. Система предназначена как для медицинских работников, так и для пациентов, которые могут взаимодействовать с системой посредством компьютера или мобильного телефона. Общая структура пользователей системы представлена на
рис. 4.7. Проведенные исследования показали высокую эффективность сети Dias-Net-PN. Были найдены решения, ориентированные
на специальные нужды пользователей.
8349
3
348
65
8
6
6
743865
641
443
123456789
48
8741
4
49
8
63
Рис. 4.7. Консультационная система Dias!Net!PN
Другая медицинская система Medical Studio основана на многомодальной платформе. Эта платформа разработана на основе компонентных объектов. Она поддерживает полную поточную обработку, в том
числе обработку входных данных, визуальное наблюдение, управление
предоперационным планированием и управление во время операции.
На основе данной платформы могут создаваться системы помощи проведения различных операций на основе аудиоинформации, видеонаблюдения и автоматической обработки данных. Компоненты данной
платформы, разработанные в сотрудничестве нескольких исследовательских центров и медицинских клиник, за счет своей универсальности
могут широко применяться в различных областях медицины [6].
164
Автоматизированный многоязычный Call-центр AMITIES
(Automated multilingual interaction with information and services) разработан при поддержке Пятой европейской рамочной программы и
американского агентства DAPRA. Проект создавался как крупномасштабная, экспериментальная диалоговая (в человекоподобной
форме) система с использованием информационного материала, полученного по фактическим и целенаправленным диалогам типа человек-человек. Оказалось, что получение реальных данных в достаточных количествах – это длинный и сложный процесс, который затрудняется, в том числе, юридическими препятствиями.
В рамках проекта EMBASSI ведется разработка систем интеллектуальной поддержки (assistance) в различных областях (дом, автомобиль,
общественный терминал и др.). Система помощи управления автомобилем выполняет операции с GPS и различные функции развлечений
(радио, голосовые игры и др.) за рулем. Система также занимается мониторингом концентрации внимания водителя. Разработчиками определены основные стадии человеческих действий, в соответствии с которыми разработан сценарий развития человеко-машинного взаимодействия. Исследования показали, что такой вид помощи востребован и
особенно полезен в неблагоприятных погодных условиях.
Система бронирования авиабилетов Mercury разработана в 2000 г.
Она обеспечивает доступ к базе данных полетов в режиме реального
времени и позволяет пользователю планировать поездку, а также
узнавать стоимость билетов в крупнейших аэропортах мира. Управление стратегией диалога основано на наборе упорядоченных правил
механизма диалогового взаимодействия. В данный момент система
активно разрабатывается, а отдельные модули, разработанные в рамках проекта Mercury, такие как интерпретация даты и времени, могут использоваться и в других приложениях.
В недалеком будущем пользователям будут также доступны новые интеллектуальные сервисы.
Технология интеллектуальных агентов. AT&T ведет разработку системы Wildfire, которая по замыслу разработчиков должна предоставить возможность клиентам вести речевой диалог с интеллектуальным агентом для управления телефонными звонками, сообщениями, специальными клиентскими сервисами (например, каждое
утро получать через Интернет и сообщать клиенту прогноз погоды),
а также иметь способность адаптироваться к предпочтениям и требованиям пользователя.
Системы предоставления помощи клиенту. Целью таких диалоговых систем является организация предоставления необходимой
165
помощи пользователю по работе некоторой системы без необходимости навигации по сложным конструкциям всевозможных меню или
понимания сложной терминологии конкретной системы.
Системы диктовки речи для создания и обработки различных
документов.
Многомодальный интеллектуальный помощник. Фирмы Sun
Microsystems, Nuance и BeVocal поставили задачу разработать новую
многомодальную (объединяющую речь, тактильную, визуальную
информацию, а также, возможно, и жесты) архитектуру/систему
VoiceTone для мобильных и настольных компьютеров, а также телефонов, которая сможет стать настоящим помощником человека, общаясь с ним в естественной для человека форме.
166
ЗАКЛЮЧЕНИЕ
Подводя итоги, следует отметить нерешенные проблемы речевого
диалога, а также подходы, которые считаются наиболее перспективными. Основной проблемой является отсутствие формальных методов параллельной обработки различных элементов речи. Хотя и были
различные попытки применить методы и языки программирования
для параллельной обработки в языковых технологиях, результаты
все еще неубедительны. Для прогресса в языковых технологиях крайне необходима более детальная проработка различных формальных
подходов на основе строгих математических моделей. На основе анализа исследований в области человеко-машинной коммуникации
можно выделить следующие ключевые проблемы:
– создание методов и алгоритмов робастного понимания речи. Здесь
хорошим ориентиром могут служить механизмы восприятия человека, которые игнорируют многие виды речевых неточностей и вырабатывают «точный смысл из неточных слов»;
– создание моделей интеграции всех основных видов информации
в ходе процесса понимания речи;
– разумную степень полноты входной информации. Традиционные методы семантического разбора обычно опираются на идею «понимание есть способность ответить на все вопросы, связанные с входным высказыванием». Этот принцип обычно сводится к необходимости скрупулезного заполнения всех слотов семантического фрейма,
что ведет к усложнению модуля управления диалогом, к переспросам
и к необоснованному замедлению хода диалога. Человек обычно использует интуитивное чувство ситуации и способен понимать различные сокращения, идиомы, профессиональный жаргон. Иными
словами, существует некоторый разумный уровень полноты диалоговых фраз, в принципе достаточный для их надежного понимания
без переспросов. Поэтому статистические данные, с достаточной полнотой отражающие речевое поведение человека, могут быть полезными при решении этой проблемы;
– усовершенствование модулей распознавания слов в части более
быстрой адаптации к голосу, акустической обстановке и конкретной
прикладной задаче.
Таким образом, существующие модели понимания речи пока еще
значительно уступают речевым способностям человека, что свидетельствует об их недостаточной адекватности и ограничивает применение речевых технологий в промышленности и быту. Для решения
глобальной проблемы человеко-машинного взаимодействия стали
использовать дополнительные виды каналов передачи информации
167
(речь, артикуляция губ, жесты, направление взгляда и т. д.). В результате стали разрабатываться так называемые многомодальные
интерфейсы. Такие интерфейсы свойственны межчеловеческому общению. Здесь мы сами выбираем, какой канал, для передачи какого
типа информации нам наиболее удобно использовать в данный момент. Такие интерфейсы позволяют обеспечить наиболее эффективное и естественное для человека взаимодействие с различными автоматизированными средствами управления и коммуникации.
В настоящее время за рубежом многомодальные интерфейсы уже
используются в некоторых прикладных областях: картографических системах, системах виртуальной реальности, медицинских системах, робототехнике, Web-приложениях и т. д. Помимо этого многомодальный интерфейс может быть полезен в мобильных устройствах, где использование обычной клавиатуры невозможно. В карманных персональных компьютерах сейчас используются системы
распознавания рукописного текста. Комбинирование таких систем с
голосовым вводом позволит обмениваться информацией с пользователем более эффективно. Также использование многомодальных интерфейсов актуально в смартфонах («умных» телефонах), в которых
в настоящее время возможен раздельный ввод с помощью голоса, неэргономичной клавиатуры или сенсорного экрана. Оптимальное совместное использование этих коммуникативных каналов позволит
пользователю более оперативно и надежно обмениваться информацией с такими устройствами.
В многомодальных системах информация от различных видео-,
аудио-, тактильных коммуникативных каналов будет непрерывно
отслеживаться и обрабатываться, создавая реальное или виртуальное окружение, позволяющее удовлетворить желания пользователя
и оперативно адаптироваться к текущей задаче и другим прикладным аспектам. Адаптивные многомодальные системы позволят создавать новые многофункциональные устройства и обеспечат требуемую гибкость использования персональных и мобильных систем.
В России научные исследования по данному направлению начались совсем недавно, и их успешная реализация усложняется тем,
что необходимо объединять усилия различных исследовательских
групп, занимающихся отдельно обработкой речи, видеоизображений,
почерка и т. д. в различных научно-исследовательских институтах.
В 2003 г. группа речевой информатики СПИИРАН начала фундаментальные и прикладные работы по исследованию многомодальных
интерфейсов и систем в рамках Европейского научного сообщества
SIMILAR, финансируемого ЕС по программе FP6.
168
Для развития многомодальных систем необходимы более интеллектуальные, надежные многомодальные архитектуры, которые
только начинают разрабатываться. Будущие многомодальные интерфейсы должны также объединять входную информацию от множества разнородных источников. Эти информационные источники должны содержать информацию, получаемую от широкого спектра различных сенсоров, пассивных и активных форм пользовательского
ввода. Наконец, будущие многомодальные интерфейсы, особенно мобильные, должны иметь способность адаптироваться к пользователю,
задаче, текущему диалогу и окружающим условиям. Успех в разработке многомодальных интерфейсов зависит от успехов когнитивной науки в области человеческого восприятия и передачи информации.
Будущие многомодальные интерфейсы дадут пользователю большие возможности по выражению своих действий и команд, а также
лучшие средства для управления процессом визуализации мультимедийного вывода информации. Для этого необходимо понимать, как
влияет способ представления информации (графические дисплеи,
синтез речи, аудиовывод) на пользовательский ввод.
Многомодальные интерфейсы только начинают подбираться к
уровню восприятия человеческой сенсорной системы. Но они уже распознают и идентифицируют действия, язык и людей, которые говорят, видят, слышат или как-то взаимодействуют с системой доступными способами.
169
Библиографический список
1. Allen J. Natural Language Understanding. Benjamin / California:
Cummings. Second Edition. 1994.
2. Bengio S. Multimodal Speech Processing Using AsynchroNus
Hidden Markov Models // Information Fusion. 2004. N 5(2) P. 81–89.
3. Boutilier C., Dean T., Hanks S. Decision-Theoretic Planning:
Structural Assumption and Computational Leverage // Journal of AI
Research. 1999. Vol. 11. P. 1–94.
4. Cox R. V. et all. On the Applications of Multimedia Processing to
Communications: Proc. of the IEEE. May 1998. Vol. 86. N 5. P. 755–824.
5. Freeman D., Sonthcott С., Boyd I. A Voice Activity Detector for the
Pan-European Digital Cellular Mobile Telephone Service // Digitized Speech
Communication via Mobile Radio: IEEE Colloquium. 1988. P. 6/1–6/5.
6. Gemo M., Kitney R. Medical applications. Similar Dreams.
Multimodal Interfaces in Our Future Life: Presses Universitaires de
Louvan, 2005. P. 63–75.
7. Gruber T. R. A Translation Approach to Portable Ontology
Specifications // Knowledge Acquisition Journal. 1993. Vol. 5. P. 199–220.
8. Hermansky H., Morgan N. RASTA Processing of Speech // IEEE
Transactions on Speech and Audio Processing. October 1994. Vol. 2. N 4.
P. 578–589.
9. Jelinek F. The Development of an Experimental of Discrete Dictation
Recognizer: Proc. of IEEE. 1985. Vol. 73. N 11. P. 1616–1624.
10. Kosarev Yu. A., Ronzhin A. L. Quantitative methods in speech
processing. Chapter in Quantitative Linguistics. Berlin: HSK; New York:
DeGruyter, 2005. Vol. 27. P. 834–846.
11. Levin E., Pieraccini R. A Stochastic Model of Computer-Human
Interaction for Learning Dialogue Strategies: Proc. of the 5th European
Conference on Speech Technologies (Eurospeech’97). Rhodes, Greece.
1997. P. 1883–1886.
12. Oviatt S. L. Multimodal interfaces // The Human-Computer
Interaction Handbook: Fundamentals, Evolving Technologies and
Emerging Applications; Eds. J. Jacko and A. Sears. Lawrence Erlbaum
Assoc. NJ: Mahwah, 2003. Chap.14. P. 286–304.
13. Picone J. Signal Modeling Techniques In Speech Recognition:
Proc. of the IEEE. 1993. Vol. 81. N. 9. P. 1215–1247.
14. Pietquin O. A framework for unsupervised learning of dialogue
strategies: Presses Universitaites de Louvain, 2004. 246 p.
15. Rabiner L. R. Applications of Speech Recognition in the Area of
Telecommunications: Proc. of the IEEE Workshop on Automatic Speech
Recognition and Understanding. 1997. P. 501–510.
170
16. Rabiner L., Juang B. Fundamentals of Speech Recognition.
New Jersey: Prentice-Hall, Englewood Cliffs, USA, 1993. 507 p.
17. Standard of XML. http://www.w3.org/XML/
18. Strom N. Continuous Speech Recognition in the WAXHOLM
Dialogue System. STL QPSR, 1996. P. 67–95.
19. Turing A. M. Computing machinery and intelligence // Mind.
1950. Vol. 59. P. 422–460.
20. Varile G., Zampolli A. Survey of the State of the Art in Human
Language Technology. Cambridge University Press, 1997.
21. Wang Ye!Yi. A Robust Parser for Spoken Language
Understanding: Proc. of the 7th European Conference on Speech
Technologies (Eurospeech’99). Vol. 5. P. 2055–2058.
22. Winograd T. Language as Cognitive Process. Syntax. AddisonWesley, 1983. Vol. 1.
23. Wozencraft J., Reiffen B. Sequential decoding // Technology
Press and Wiley. N.-Y., 1961.
24. Zadeh L. A fuzzy-algorithmic approach to the definition of
complex or imprecise concepts // International Journal of Man-Machine
Studies. 1976. Vol. 8. N. 3. P. 249–291.
25. Лингвистический процессор для сложных информационных систем / Ю. Д. Апресян, И. М. Богуславский, Л. Л. Иомдин и др. М.:
Наука, 1992.
26. Барабаш Ю. Л. и др. Вопросы статистической теории распознавания. М.: Сов. радио, 1967. 400 с.
27. Беллман Р. Динамическое программирование. М.: Изд-во
иностр. лит., 1960. 400 с.
28. Бондарко Л. В. Звуковой строй современного русского языка.
М.: Просвещение, 1977. 175 с.
29. Будущее искусственного интеллекта / Под ред. К. Е. Левити!
на, Д. А. Поспелова. М.: Наука, 1991. 302 с.
30. Быков А. П., Вейц А. В. От нейрона к искусственному мозгу.
М.: Наука, 1971.
31. Винцюк Т. К. Анализ, распознавание и интерпретация речевых сигналов. Киев: Наук. думка, 1987. 264 с.
32. Винцюк Т. К. Два основных пути создания систем распознавания и смысловой интерпретации слитной речи // Автоматическое
распознавание слуховых образов: Тез. докл. 11-го Всесоюзного семинара. Ереван, 1980. С. 221–225.
33. Винцюк Т. К., Скрипник А. Г. Модуль анализатора речи СРД «Речь2»: Тез. докл. 16-го Всесоюзного семинара (АРСО – 16). 1991. C. 250–251.
34. Винцюк Т. К. Распознавание слов устной речи методами динамического программирования // Кибернетика. 1968. № 1. С. 15–22.
171
35. Гаврилова Т. А., Хорошевский В. Ф. Базы знаний интеллектуальных систем. СПб.: Питер, 2001. 384 с.
36. Голд Б. Рэйдер Ч. Цифровая обработка сигналов: Пер. с англ.
М.: Сов. радио, 1973. 368 с.
37. Джелинек Ф. Распознавание непрерывной речи статистическими методами // ТИИЭР. 1976. Т. 64. № 4. С. 131–160.
38. Златоустова Л. В., Потапова Р. К., Трунин!Донской В. Н.
Общая и прикладная фонетика. М.: МГУ, 1986. 304 с.
39. Иванова Т. И. Компьютерные технологии в телефонии. М.:
Эко-Трендз, 2002. 297 с.
40. Карпов А. А. Робастный метод определения границ речи на
основе спектральной энтропии // Искусственный интеллект. 2004.
№ 4. С. 607–613.
41. Като Я. Система распознавания связной речи фирмы NEC //
Зарубежная радиоэлектроника. 1980. № 4. С. 108–120.
42. Классификация и кластер / Под ред. Дж. В. Райзина. М.: Мир,
1980. 389 с.
43. Косарев Ю. А. Естественная форма диалога с ЭВМ. Л.: Машиностроение, 1989. 143 с.
44. Крестьянинов С.В. Интеллектуальные сети и компьютерная
телефония. М.: Радио и связь, 2001. 240 с.
45. Левинсон С. Е. Структурные методы автоматического распознавания речи // ТИЭР. 1985. Т. 73. № 11. С. 100–129.
46. Мазуренко И. Л. Многоканальная система распознавания
речи //Нейрокомпьютеры и их применение: Сб. тр. VI Всероссийской
конф. М., 2000. С. 222–225.
47. Маккаллок У. С., Питс. В. Логическое исчисление идей, имитирующих нервную активность// Нейрокомпьютер. 1992. № 3, 4. С. 40–53.
48. Макхоул Дж., Рукос С., Гиш Г. Векторное квантование при
кодировании речи // ТИЭР. 1985. Т. 73. № 11. С. 19–61.
49. Мальковский М. Г. Диалог с системой искусственного интеллекта. М.: МГУ, 1985. 214 с.
50. Маркел Д. Д., Грей А. Х. Линейное предсказание речи: Пер. с
англ. М.: Связь, 1980. 308 с.
51. Маслов С. Ю. Теория дедуктивных систем и ее применение.
М.: Радио и связь, 1986. 133 с.
52. Методы автоматического распознавания речи: В 2 кн. / Под
ред. У. Ли. М.: Мир, 1983. 716 c.
53. Моттль В. В., Мучник И. Б. Скрытые марковские модели в
структурном анализе сигналов. М.: Физматлит, 1999. 351 с.
54. Мясников Л. Л. Объективное распознавание звуков речи //
ЖТФ. 1943. № 3. С. 109–115.
172
55. Мясников Л. М., Мясникова Е. Н. Автоматическое распознавание звуковых образов. Л.: Энергия, 1970. С. 98–118.
56. Нариньяни А. С. Искусственный интеллект: стагнация или
новая перспектива? // Шестая нац. конф. по искусственному интеллекту: Сб. тр.; В 3 т. / РАИИ. Пущино. Россия. 1998. Т. 1. С. 15–29.
57. Нариньяни А. С. ТЕОН: Тезаурус +Онтология // Междунар. семинар «ДИАЛОГ 2001»: Сб. тр. / Аксаково, 2001. Т. 1.
C. 199–154.
58. Организация взаимодействия человека с техническими средствами АСУ: В 7 кн. Кн. 6. Персональные автоматизированные информационные системы и дисплейные комплексы / Под ред. В. Н. Черверикова. М., 1991. 143 с.
59. Пиотровский Р. Г. Текст, машина, человек. Л.: Наука, 1975.
327 с.
60. Покровский Н. Б. Расчет и измерение разборчивости речи. М.:
Связь, 1962. 391 с.
61. Попов Э. В. Общение с ЭВМ на естественном языке. 2-e изд. //
Сер. Науки об искусственном. М.: Едиториал УРСС, 2004. 360 с.
62. Потапова Р. К. Речь: коммуникация, информация, кибернетика. 2003. 568 с.
63. Представление и использование знаний / Под ред. Уэно. М.:
Мир, 1989. 220 c.
64. Рабинер Л., Шафер Р. Цифровая обработка речевых сигналов.
М.: Радио и связь, 1987.
65. Распознавание слуховых образов / Под ред. Н. Г. Загоруйко.
Новосибирск: Наука, 1970. – 340 с.
66. Розенблат Ф. Принципы нейродинамики. Персептроны и теория механизмов мозга. М.: Мир, 1965. 196 c.
67. Сапожков М. А. Речевой сигнал в кибернетике и связи. М.:
Связьиздат, 1963. 452 с.
68. Селфридж М. Интегральная обработка обеспечивает надежное понимание: Пер. с англ. // Новое в зарубежной лингвистике.
М.: Прогресс, 1989. Вып. 24. С. 161–208.
69. Смирнов А. В., Пашкин М. П., Шилов Н. Г., Левашова Т. В.
Онтологии в системах искусственного интеллекта: способы построения и организации // Новости искусственного интеллекта. 2002.
№ 1. Ч. 1. C. 3–13.
70. Сокирко А. Семантические словари в автоматической обработке
текста (по материалам системы ДИАЛИНГ): Дис. ... канд. техн. наук.
http://www.aot.ru/docs/sokirko/sokirko-candid-2.html#2-3-1
71. Сорокин В. Н. Синтез речи. М.: Наука, 1992. 392 с.
173
72. Сорокин В. Н. Теория речеобразования. М.: Радио и связь, 1985.
73. Сотник С. Л. Основы проектирования систем искусственного
интеллекта: Конспект лекций. 1998. http://ermak.cs.nstu.ru/islab/
maberials.php3?page=materiala.
74. Станкевич Л. А. Интеллектуальные технологии и представление знаний. Интеллектуальные системы: Учеб. пособие / СПбГТУ.
СПб., 2000.
75. Сулейманов Д. Ш. Аналитический обзор отечественных и зарубежных работ обработки естественного языка в аспекте прагматически-ориентированного подхода // Информационные технологии.
Казань. http://www.kcn.ru/tat_en/science/ittc/vol000/st.doc
76. Трунин!Донской В. Н. Опознавание набора слов с помощью
цифровой вычислительной машины // Работы по технической кибернетике / ВЦ АН СССР. М., 1967. С. 37–51.
77. Ту Дж., Гонсалес Р. Принципы распознавания образов. М.:
Мир, 1978.
78. Уилкс Й. Анализ предложений английского языка. Ч. 1 //
Новое в зарубежной лингвистике. М., 1983. Вып. XII. С. 208–226.
79. Уоссерман Ф. Нейрокомпьютерная техника. Теория и практика: Пер. с англ. М.: Мир, 1992. 237 с.
80. Ушакова Т. Н. Проблема внутренней речи в психологии и психофизиологии // Психологические и психофизиологические исследования речи. М.: Наука, 1985. C. 13–26.
81. Фант Г. Акустическая теория речеобразования: Пер. с англ.
М.: Наука, 1964. 284 с.
82. Форсайт Р. Экспертные системы. Принципы работы и примеры. М.: Радио и связь, 1987. 224 с.
83. Хант Д. Искусственный интеллект. М.: Мир, 1986. 560 с.
84. Холоденко А. Б. Использование лексических и синтаксических
анализаторов в задачах распознавания для естественных языков //
Интеллектуальные системы. 1999. Т. 4. Вып. 1–2. С. 185–193.
85. Цаленко М. Ш. Моделирование семантики в базах данных.
М.: Наука, 1989. 287 c.
86. Чистович Л. А. и др. Физиология речи. Восприятие речи человеком // Сер. Руководство по физиологии. Л.: Наука, 1976. 388 с.
87. Шаров С. А. Средства компьютерного представления лингвистической информации: Обзор. URL: http://nl-web/
88. Шенк Р., Бирнбаум Л., Мей Дж. К интеграции семантики и
прагматики: Пер. с англ. // Новое в зарубежной лингвистике. М.:
Прогресс, 1989. Вып. 24. С. 32–47.
89. Эндрю А. Искусственный интеллект. М.: Мир, 1985.
174
Оглавление
Предисловие ..............................................................................
1. Методы искусственного интеллекта ...........................................
1.1. Основные понятия и направления развития интеллектуальных
систем ....................................................................................
1.1.1. Определение искусственного интеллекта ....................
1.1.2. Этапы развития интеллектуальных систем .................
1.1.3. Основные направления исследований
в области искусственного интеллекта ........................
1.2. Модели представления знаний ............................................
1.2.1. Правила .................................................................
1.2.2. Фреймы .................................................................
1.2.3. Семантические сети .................................................
1.2.4. Логика предикатов ..................................................
1.2.5. Нечеткие знания .....................................................
1.3. Нейронные сети .................................................................
1.3.1. Биологический нейрон .............................................
1.3.2. Искусственный нейрон .............................................
1.3.3. Нейронные сети .......................................................
1.4. Экспертные системы ..........................................................
1.4.1. Архитектура экспертных систем ...............................
1.4.2. Основные этапы разработки экспертных систем ...........
2. Распознавание образов .............................................................
2.1. Основные проблемы распознавания образов ...........................
2.2. Подходы к распознаванию образов .......................................
2.3. Процедуры распознавания ..................................................
2.3.1. Поэлементное распознавание ....................................
2.3.2. Вероятность гипотезы ..............................................
2.3.3. Процедуры принятия решения .................................
2.3.4. Риск принятия гипотезы ..........................................
2.3.5. Обучение распознаванию образов ...............................
2.4. Особенности распознавания речевых образов .........................
3. Методы автоматического распознавания речи .............................
3.1. Определение границ речи ...................................................
3.2. Параметрическое представление речевого сигнала ................
3.3. Методы распознавания речи ................................................
3.4. Методы обучения систем распознавания ...............................
4. Методы понимания речи в диалоговых системах .........................
4.1. Представление и обработка естественного языка ....................
4.2. Проектирование диалоговых систем ....................................
4.3. Методы обучения стратегии диалога ....................................
4.4. Современные диалоговые системы .......................................
Заключение ...............................................................................
Библиографический список .........................................................
3
5
5
5
9
13
16
16
18
24
27
31
33
34
37
42
47
47
51
57
60
64
68
68
72
75
79
84
87
96
97
101
107
117
134
135
143
153
158
167
170
175
Учебное издание
Ронжин Андрей Леонидович
Ли Изольда Валерьевна
МЕТОДЫ ИСКУССТВЕННОГО
ИНТЕЛЛЕКТА И АВТОМАТИЧЕСКОГО
РАСПОЗНАВАНИЯ РЕЧИ
Учебное пособие
Редактор А. Г. Ларионова
Верстальщик И. С. Чернышев
Сдано в набор 13.11.06. Подписано к печати 28.12.06.
Формат 60х84 1/16. Бумага офсетная. Печать офсетная. Усл. печ. л. 11,0.
Уч.-изд. л. 10,5. Тираж 100 экз. Заказ №
Редакционно-издательский центр ГУАП
190000, Санкт-Петербург, Б. Морская ул., 67
Документ
Категория
Без категории
Просмотров
41
Размер файла
1 147 Кб
Теги
ronzhin
1/--страниц
Пожаловаться на содержимое документа