Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Архитектура и принцип функционирования ЭС

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 17.5.2024

6. Архитектура и принцип функционирования ЭС

Экспертные системы (ЭС) - первый продукт, появившийся на рынке как итог 30-летней изыскательской работы в области искусственного интеллекта (ИИ). ЭС представляют собой программы для компьютера, которые могут воспроизводить процесс решения проблемы человеком-экспертом. В настоящее время интерес к ЭС со стороны промышленности чрезвычайно возрос, поскольку они способны дать средства, стимулирующие повышение производительности труда и увеличение прибыльности производства.

6.1. Феномен экспертных систем

Экспертная система – вычислительная система, в которой представлены знания специалистов в некоторой конкретной узкоспециализированной предметной области и которая в рамках этой области способна принимать решения (решать задачи) на уровне эксперта-профессионала.

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

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

  1.  Мощность ЭС обусловлена в первую очередь мощностью базы знаний и возможностью ее пополнения и только во вторую очередь - используемыми ею методами (процедурами).
  2.  Знания, позволяющие эксперту (или ЭС) получать качественные и эффективные решения задач, являются в основном эвристическими, экспериментальными, неопределенными, правдоподобными. Причина этого заключается в том, что решаемые задачи являются неформализованными или слабоформализованными. Необходимо также подчеркнуть, что знания экспертов имеют индивидуальный характер, т.е. свойственны конкретному человеку.
  3.  Учитывая неформализованность решаемых задач и эвристический, личностный характер используемых знаний, пользователь (эксперт) должен иметь возможность непосредственного взаимодействия с ЭС в форме диалога.

В связи с тем, что основным источником мощности 'ЭС являются знания, ЭС должны обладать способностью приобретать знания. Процесс приобретения знаний можно разделить на: 1) получение знаний от эксперта; 2) организацию знаний, обеспечивающую эффективную работу системы; 3) представление знаний в понятном системе виде. Процесс приобретения знаний осуществляется на основе анализа деятельности эксперта, решающего реальные задачи, так называемым "инженером по знаниям" (knowledge engineer).

Отметим специфику приложений ЭС по сравнению с другими приложениями ИИ и отличия приложений ИИ от систем обработки данных.

В системах ИИ и в ЭС в частности решаются, как правило, неформализованные задачи, т. е. ЭС и системы ИИ не отвергают и не заменяют традиционного подхода к разработке программ, ориентированного на решение формализованных задач. Следуя Ньюэллу и Саймону, к неформализованным (в их терминологии ill-structured) относятся такие задачи, которые обладают одной или несколькими из следующих характеристик:

  1.  задачи не могут быть заданы в числовой форме;
  2.  цели не могут быть выражены в терминах точно определенной целевой функции;
  3.  не существует алгоритмического решения задач;
  4.  алгоритмическое решение существует, но его нельзя использовать из-за ограниченности ресурсов (время, память).

Неформализованные задачи обычно обладают следующими особенностями:

  1.  ошибочностью, неоднозначностью, неполнотой и противоречивостью исходных данных;
  2.  ошибочностью, неоднозначностью, неполнотой и противоречивостью знаний о проблемной области и о решаемой задаче;
  3.  большой размерностью пространства решения, т. е. перебор при поиске решения весьма велик;
  4.  динамически изменяющимися данными и знаниями.

ЭС и системы ИИ отличаются от систем обработки данных тем, что в них используется символьный (а не числовой) способ представления, символьный вывод и эвристический поиск решения (а не готовое решение).

Специфика приложений ЭС по сравнению с другими системами ИИ состоит в следующем.

  1.  ЭС применяются для решения трудных практических (не "игрушечных") задач.
  2.  По качеству и эффективности решения ЭС не уступают решениям эксперта-человека.
  3.  Решения ЭС обладают "прозрачностью", т.е. могут быть объяснены пользователю на качественном уровне (в отличие от решений, полученных с помощью числовых алгоритмов, и в особенности от решений, полученных статистическими методами). Это качество ЭС обеспечивается их способностью рассуждать о своих знаниях и умозаключениях.
  4.  ЭС способны пополнять свои знания в ходе диалога с экспертом.
  5.  Круг задач, для решения которых используются ЭС, ограничен следующими: интерпретация символов или сигналов (составление смыслового описания по входным данным), предсказание (определение вероятных последствий наблюдаемых ситуаций), диагностика (определение нарушений /заболеваний по симптомам), планирование действий, конструирование конфигураций объектов по заданным ограничениям, контроль (сравнение наблюдаемого поведения с планируемым), отладка (нахождение и устранение неисправностей), исправление (устранение неисправностей), инструктаж, управление поведением системы (интерпретация, предсказание, исправление, контроль ).

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

Можно выделить ряд характеристик экспертных систем:

  1.  Экспертная система ограничена определенной сферой экспертизы.
  2.  Экспертная система способна рассуждать при сомнительных данных. 
  3.  Экспертная система способна объяснить ход своих рассуждений.
  4.  Знания и механизм вывода в экспертной системе четко отделены друг от друга (т.е. знания выражены явно, а не воплощены в способе поиска решения). 
  5.  Экспертная система строится так, чтобы имелась возможность постепенного ее наращивания по мере развития знаний о предмете экспертизы. 
  6.  Чаще всего знания экспертной системы представляются в виде множества правил, называемых также продукциями 
  7.  В качестве решения экспертная система выдает не таблицы из цифр, не графики, не картинки на экране, а обоснованный совет относительно решения поставленного вопроса.
  8.  ЭС основывается на применении методов искусственного интеллекта.
  9.  Экспертная система экономически выгодна (это требование к ее работе.)

Ниже приводится краткий (и далеко не исчерпывающий) список областей, в которых применялись ЭС :

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

помощь химикам в нахождении верной последовательности реакций для создания новых молекул;

отладка программного и аппаратного обеспечения ЭВМ в соответствии с индивидуальными требованиями заказчика;

диагностика и обнаружение неполадок в телефонной сети на основании тестов и сообщений о неисправностях;

идентификация и ликвидация неполадок в локомотивах;

помощь геологам в расшифровке данных, полученных с помощью контрольного оборудования во время бурения скважин;

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

помощь навигаторам в расшифровке данных от подводных звукоулавливателей, установленных на дне океана;

получение молекулярной структуры химического вещества на основании опытов;

изучение и суммирование больших объемов быстро изменяющихся данных, которые не в состоянии - из-за скорости их изменения - прочитать человек, например, телеметрических данных с искусственных спутников системы LANDSAT.

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

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

большое разнообразие методов построения ЭС, отсутствие единого подхода к построению таких систем;

для каждого нового применения ЭС обычно применяют новые не только информационные, но и системотехнические средства;

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

затруднительна добыча знаний у экспертов для вложения этих знаний в ЭС.

6.2. Архитектура экспертных систем

Архитектура экспертной системы вытекает из принципов, сформулированных на стр. 15. В соответствии с первыми двумя теоретическими принципами ЭС включает две компоненты: решатель (процедуры вывода) и динамически изменяемая база знаний. Выбор в качестве основы для реализации решателя систем продукций предопределяет наличие в ЭС также рабочей памяти. Третий, практический принцип предъявляет к системе следующие требования:

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

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

Итак, типичная экспертная система состоит из следующих компонентов (рис. 6.1):

решателя (интерпретатора);

рабочей памяти (РП), называемой также базой данных (БД);

базы знаний (БЗ);

компонентов приобретения знаний;

объяснительного компонента;

диалогового компонента.

 

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

База знаний (БЗ) в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.

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

    Машина логического вывода может реализовывать рассуждения в виде:

  1.  дедуктивного вывода (прямого, обратного, смешанного);
  2.  нечеткого вывода;
  3.  вероятностного вывода;
  4.  унификации (подобно тому, как это реализовано в Прологе);
  5.  поиска решения с разбиением на последовательность подзадач;
  6.  поиска решения с использованием стратегии разбиения пространства поиска с учетом уровней абстрагирования решения или понятий, с ними связанных;
  7.  монотонного или немонотонного рассуждения,
  8.  рассуждений с использованием механизма аргументации;
  9.  ассоциативного поиска с использованием нейронных сетей;
  10.  вывода с использованием механизма лингвистической переменной.

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

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

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

     

   

Рис. 6.1. Статическая структура ЭС

В разработке ЭС участвуют представители следующих специальностей:

эксперт в проблемной области, задачи которой будет решать ЭС;

инженер по знаниям - специалист по разработке ЭС (используемую им технологию (методы) называют технологией (методами) инженерии знаний);

программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭС.

Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.

Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.

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

Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.

Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).

В режиме приобретения знаний общение с ЭС осуществляет (через посредничество инженера по знаниям) эксперт. В этом режиме эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют способы манипулирования с данными, характерные для рассматриваемой области.

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

В режиме консультации общение с ЭС осуществляет конечный пользователь, которого интересует результат и (или) способ его получения. Необходимо отметить, что в зависимости от назначения ЭС пользователь может не быть специалистом в данной проблемной области (в этом случае он обращается к ЭС за результатом, не умея получить его сам), или быть специалистом (в этом случае пользователь может сам получить результат, но он обращается к ЭС с целью либо ускорить процесс получения результата, либо возложить на ЭС рутинную работу). В режиме консультации данные о задаче пользователя после обработки их диалоговым компонентом поступают в рабочую память. Решатель на основе входных данных из рабочей памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи. ЭС при решении задачи не только исполняет предписанную последовательность операции, но и предварительно формирует ее. Если реакция системы не понятна пользователю, то он может потребовать объяснения:

"Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".

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

Рис. 6.2. Структура динамической ЭС

На рис. 6.2 показано, что в архитектуру динамической ЭС по сравнению со статической ЭС вводятся два компонента: подсистема моделирования внешнего мира и подсистема связи с внешним окружением. Последняя осуществляет связи с внешним миром через систему датчиков и контроллеров. Кроме того, традиционные компоненты статической ЭС (база знаний и машина вывода) претерпевают существенные изменения, чтобы отразить временную логику происходящих в реальном мире событий.

Подчеркнем, что структура ЭС, представленная на рис. 6.1 и 6.2, отражает только компоненты (функции), и многое остается "за кадром”.

Схема ЭС, приведенная на рис 6.1, является весьма обобщенной и ни в коей мере не претендует на универсальность. Архитектура реальных ЭС различается в первую очередь по следующим характеристикам:

  1.  способ представления данных и знаний;
  2.  состав используемых знаний;
  3.  методы работы интерпретатора.

Выбор тех или иных характеристик при проектировании ЭС определяется в основном свойствами решаемых задач и свойствами системы.

6.3. Автоматическое рассуждение. Основные механизмы дедукции (логического вывода).

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

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

Прямая цепочка рассуждений.

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

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

ЭС на базе прямой цепочки рассуждений чаще всего применяются в планировании или проектировании.

Обратная цепочка рассуждений.

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

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

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

ЭС, основанные на обратной цепочке рассуждений, как правило, применяются при диагностике или классификации.

6.4. Объяснительный компонент

 

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

для конечных пользователей, которые хотели бы, перед тем как согласиться с советом, предлагаемым системой, и принять соответствующее решение (последствия которого иногда могут быть необратимыми, как, например, при использовании ЭС  в медицине, военном деле, при управлении некоторыми производственными объектами и т.п.), проверить, каким образом и на основании  таких знаний система пришла к тому или иному выводу;

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

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

Требования, предъявляемые к объяснениям в ЭС:

информативность объяснения для пользователей, возможность в зависимости от ситуации выдавать абстрактные или конкретизированные объяснения;

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

Известны три способа реализации объяснительной функции ЭС :

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

6.5. Категории экспертных систем

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

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

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

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

Следующая категория - системы диагностики и ремонта. Программы этого типа в основном используются в медицине. Наиболее ранняя ЭС такого рода -MYCIN, помогающая врачу диагностировать (и лечить) заболевания крови. Подобные системы применяются и в иных целях, например при ремонте электрического оборудования.

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

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

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

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

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

Задачи проектирования сходны с задачами планирования в том, что в них компонуется некий набор первичных элементов (объектов). Примером ЭС, предназначенной для решения таких задач, может служить ХСОN - система, разработанная фирмой DЕС для подбора конфигурации компьютера VАХ. Ежегодный объем продаж этих компьютеров очень велик. Каждый заказ имеет свои индивидуальные особенности. Заказчики могут выбирать различные варианты программного и аппаратного обеспечения. Кроме того, аппаратное и программное обеспечение не является независимым. Иногда выбор одного варианта ограничивает применение других возможных вариантов. К примеру, определенная операционная система требует минимальной емкости памяти.

Для любого заказа необходимо составить детальный и последовательный (непротиворечивый) список, который должен охватывать все желания клиента. Эта важная работа трудна и утомительна для человека. В качестве вспомогательного средства и была разработана ЭС ХСОN. В настоящее время подбор конфигурации компьютера VАХ осуществляется подобным способом. Экономия при внедрении ХСОН по сообщению DЕС составляет 18 млн. дол, ежегодно.

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

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

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

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

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

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

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

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

ЭС классифицируются также по поколениям:

первое ( решение задач с помощью правил "если ..., то ..." );

второе (умение обучаться, развиваться самостоятельно).

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

Для сопоставления возможностей ЭС первого и второго поколения рассмотрим их основные черты, которые отображает структура ЭС.

Они могут быть разбиты на следующие классы:

представление знаний;

механизм вывода;

интерфейс пользователя;

объяснение полученных результатов;

приобретение знаний и обучение.

Ограничения, присущие ЭС первого поколения, состоят в следующем.

Представление знаний:

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

используется какая-либо одна модель представления знаний: продукции, семантические сети или фреймы;

метода представления знаний позволяют описывать лишь статические предметные области;

модели представления знаний ориентированы на относительно простые и хорошо структурированные области;

отсутствуют знания о границах области компетентности системы, за пределами которой система оказывается неработоспособной;

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

Механизм вывода:

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

реализация вывода только при условии полноты знаний и данных;

неумение проводить вывод с учетом связи объектов или фактов в пространстве и во времени;

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

неспособность найти приближенный ответ, если для вывода точного решения нет всех требуемых данных или отсутствуют подходящие правила вывода (как, например, при попытке решить нестандартную задачу); несоответствие схемы вывода ЭС схеме рассуждений эксперта;

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

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

Интерфейс пользователя:

отсутствие средств настройки на конкретного пользователя;

жесткость диалога - ответы пользователя должны быть представлены в строго определенном виде и формате;

сведения, получаемые ЭС от пользователя в процессе экспертизы, не запоминаются, поэтому если они потребуются в следующем сеансе работы, то их придется вводить заново;

несогласованность вопросов, задаваемых системой пользователю в процессе проведения экспертизы: хотя каждый вопрос в отдельности вполне логичен, в их последовательности может отсутствовать целенаправленность;

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

Объяснение полученных результатов:

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

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

Приобретение знаний и обучение:

пополнение знаний системы и контроль их непротиворечивости "вручную";

обязательность приведения знаний эксперта к виду, который требует модель представления знаний в данной ЭС;

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

отсутствие способности к обучению.

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

Представление знаний:

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

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

система имеет не только модель предметной области, но и модель самой себя, что позволяет ей эффективно определять границы своей компетентности;

одним из компонентов ЭС является база данных с неполной информацией;

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

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

Механизм вывода:

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

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

способность системы по мере необходимости ослаблять или усиливать в задаче принятые допущения;

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

Интерфейс пользователя:

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

Приобретение знаний и обучение:

имеются средства управления процессом наполнения ЭС знаниями и настройки на предметную область, позволяющие выбирать модель представления знаний, в наибольшей степени соответствующую структуре знаний эксперта;

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

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

Отделение знаний от структур управления

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

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

6.6. Методология построения экспертных систем

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

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

  1.  процедурные языки программирования, ориентированные на обработку символьной информации (LISP, INTERLISP и др. );
  2.  языки инженерии знаний, т.е. языки, ориентированные на разработку ЭС (например, языки PROLOG и OPS_5);
  3.  средства автоматизации процесса конструирования, использования и модификации ЭС (например, RLL, HEARSAY-III, и др.);
  4.  пустые (базовые) ЭС, т.е. ЭС, не содержащие знаний ни о какой проблемной области (например, EMYCIN, KAS и др.).

В приведенной классификации инструментарии расположены в порядке убывания трудоемкости, требуемой для создания с их помощью прототипа. При использовании инструментария первого типа в задачу разработчика входит программирование всех компонент ЭС на языке довольно низкого уровня. Использование инструментария второго типа позволяет значительно повысить уровень языка, что, как правило, влечет за собой снижение эффективности. Инструментальные средства третьего типа позволяют разработчику не программировать некоторые или все компоненты ЭС, а выбирать их из заранее составленного набора. Обычно инструментарии этого типа подразделяют на средства, автоматизирующие построение ЭС (например, RLL, HEARSAY-III), и средства, автоматизирующие процесс приобретения знаний (например, TEIRESIAS).

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

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

Необходимо подчеркнуть, что при широком толковании в понятие "инструментарий" включают не только программные, но и аппаратные средства. Наибольшее распространение получила аппаратная реализация диалектов языков LISP и PROLOG, т.е. разработка ЭВМ, внутренним языком которых является LISP или PROLOG.

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

Перед тем, как перейти к рассмотрению отдельных этапов разработки ЭС, перечислим специальности участников данного процесса:

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

Рис. 6.3. Этапы разработки экспертной системы

Этап идентификации.

На данном этапе решаются следующие задачи :

определяются участники процесса проектирования и их роли;

идентифицируется проблема;

определяются ресурсы и цели.

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

Идентификация проблемы заключается в составлении неформального (вербального) описания решаемой проблемы. В этом описании указываются:

  1.   общие характеристики проблемы;
  2.   подпроблемы, выделяемые внутри данной проблемы;
  3.   ключевые понятия и отношения;
  4.   входные данные;
  5.   предположительный вид решения;
  6.   знания, релевантные решаемой проблеме.

При проектировании ЭС типичными ресурсами являются: источники знаний, время разработки, вычислительные средства и объем финансирования.

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

Этап концептуализации.

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

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

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

Этап формализации.

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

Процесс формализации зависит от трех основных факторов:

  1.  структуры пространства поиска, характеризующей особенности решаемой задачи;
  2.  модели, лежащей в основе проблемы;
  3.  свойств данных рассматриваемой проблемы.

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

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

  1.  данные достоверны (надежны и точны) / недостоверны (ненадежны и неточны);
  2.  данные полны (достаточны), согласованы, неизбыточны / неполны, несогласованы, избыточны;
  3.  данные характеризуются / не характеризуются коэффициентом определенности;
  4.  интерпретация данных зависит / не зависит от порядка их появления во времени.

Большое значение имеют также способ и стоимость приобретения данных.

Этап выполнения

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

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

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

При разработке ЭС-2 решаются следующие задачи:

  1.  расширение круга задач, решаемых системой, для того, чтобы собрать пожелания и замечания, которые будут учтены в очередной версии системы (ЭС-2);
  2.  осуществление структурирования знаний;
  3.  анализ функционирования системы при значительном расширении базы знаний;
  4.  исследование возможностей системы в решении более широкого круга задач и принятие мер для обеспечения таких возможностей;
  5.  анализ мнения пользователей о недостатках системы, о том, какую дополнительную помощь пользователь хочет получать от системы и т.п.;
  6.  разработка системы ввода/вывода, осуществляющей анализ/синтез предложений ограниченного естественного языка, что дает пользователю возможность взаимодействовать с ЭС-2 в форме, близкой к форме стандартных учебников для данной области знаний.

Этап тестирования

В ходе этого этапа осуществляется оценка выбранного способа представления знаний и всей системы в целом. Задача инженера по знаниям заключается в подборе примеров, обеспечивающих всестороннюю проверку ЭС. Обычно выделяют следующие источники неудач в работе системы: 1) тестовые примеры; 2) ввод/вывод; 3) правила вывода; 4) управляющие стратегии.

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

Этап опытной эксплуатации

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

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

Модификация системы

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

Стадии ЭС и инструментариев

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

1) демонстрационный прототип; 2) исследовательский прототип; 3) действующий прототип; 4) промышленная система; 5) коммерческая система.

Демонстрационный прототип - ЭС, которая решает часть требуемых задач, демонстрируя жизнеспособность метода ЭС. При наличии развитых инструментальных средств для разработки демонстрационного прототипа требуется в среднем примерно 3 месяца. Демонстрационный прототип работает при наличии в базе знаний порядка 50-100 правил.

Исследовательский прототип - ЭС, которая решает все требуемые задачи, но неустойчива в работе и неполностью проверена. На доведение ЭС до стадии исследовательского прототипа уходит примерно 1-2 года. Исследовательский прототип обычно имеет в базе знаний 200-500 правил, описывающих проблемную область.

Действующий прототип надежно решает все задачи, но для решения сложных задач может требовать чрезмерно много времени и памяти. Доведение ЭС до стадии действующего прототипа требует примерно 2-3 года, при этом количество правил в базе знаний увеличивается до 500-1000 правил.

Промышленная система обеспечивает высокое качество решений всех задач при минимуме времени и памяти. Процесс преобразования действующего прототипа в промышленную систему состоит в расширении знаний (до 1000-1500 правил) и в переписывании ЭС с использованием более эффективных инструментальных средств. Доведение ЭС до стадии промышленной системы требует примерно 2-4 года.

Обобщение задач, решаемых ЭС на стадии промышленной системы, позволяет перейти к стадии коммерческой системы, т. е. к системе, пригодной не только для собственного использования, но и для продажи различным потребителям. Доведение до стадии коммерческой системы требует примерно 3-6 лет; при этом база знаний системы увеличивается до 1000-3000 правил.

Программные инструментальные средства по степени их отработанности обычно классифицируются на три стадии:

  1.  экспериментальные системы;
  2.  исследовательские системы;
  3.  коммерческие системы.

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

6.7.Современное состояние разработки экспертных систем

и инструментальных средств для их построения

С целью иллюстрации уровня развития ЭС рассмотрим наиболее известные системы и инструментальные средства. Системы будут охарактеризованы следующими параметрами: 1) стадия системы; 2) область приложения и класс решаемых задач; 3) состав знаний и способ их представления; 4) процедуры (механизм) вывода; 5) средства общения с пользователем; 6) объяснительные способности; 7) способности  к приобретению знаний.

Промышленная экспертная система DENDRAL

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

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

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

В первых редакциях система DENDRAL имела минимальные объяснительные способности и простейший язык общения. Процесс приобретения знаний весьма трудоемок и слабо автоматизирован. Для устранения этого недостатка была разработана система MetaDENDRAL, автоматизирующая процесс приобретения правил DENDRAL.

Системы MYCIN, TEIRESIAS, EMYCIN

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

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

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

Диалог с пользователем - специалистом ведется на ограниченном английском языке. От пользователя не требуется знаний в области программирования. В связи с ограниченностью предметной области используется простой лингвистический процессор, поскольку оказалось достаточным понимать смысл предложений на уровне ключевых слов. Система обладает объяснительными способностями: анализируя процесс получения решения, она может отвечать на вопросы о том, ПОЧЕМУ был использован некий факт или КАК этот факт был установлен. Система обладает способностью модифицировать старые правила и приобретать новые. Для развития объяснительных способностей системы MYCIN и автоматизации приобретения знаний была построена инструментальная система TEIRESIAS.

Стремление использовать подход, примененный в MYCIN, для более широкого круга приложений привело к созданию инструментальной системы EMYCIN (Empty MYCIN, т.е. пустой MYCIN), которая является версией MYCIN, не зависящей от проблемной области. Таким образом, EMYCIN является базовой системой, предназначенной, в первую очередь, для решения задач диагностики. EMYCIN позволяет применить процедуры вывода к такой предметной области, знания о которой могут быть записаны в виде правил MYCIN. Система EMYCIN находится на исследовательской стадии.

Системы PROSPECTOR и KAS

ЭС PROSPECTOR достигла стадии промышленной системы. Областью приложения системы PROSPECTOR  является геология. Задача системы - помочь геологу определить наличие месторождения руды заданного вида на основе геологических данных. Качество решений, получаемых системой, не уступает качеству решений, даваемых экспертом-геологом. Знания об области экспертизы представлены в виде моделей, каждая из которых соответствует месторождению определенного типа. Правила имеют вид "условие действие ( Х><Y )". Условие и действие суть утверждения о проблемной области, которые могут быть истинными (от 1 до 0) и ложными (от 0 до -1). Условие является булевской комбинацией утверждений. Действие состоит из одного утверждения. Все утверждения представляются в виде семантических сетей с пространствами, которые представляют собой обобщение троек, использованных в MYCIN.

Для работы с неопределенными знаниями с каждым утверждением связано значение вероятности, т.е. мера, оценивающая степень истинности утверждения. Вероятность логического утверждения (т.е. утверждения, содержащего булевские операции) вычисляется исходя из вероятности компонент этого утверждения по правилам Заде для размытых множеств. Вероятность простого утверждения (т.е. утверждения, не содержащего булевские операции) определяется или из ответа пользователя, или по правилу Байеса. X и Y в правиле указывают, как модифицировать вероятность утверждения в действии правила: X используется тогда, когда условие истинно (т.е. вероятность условия находится в диапазоне 0-1), Y - когда условие ложно (т.е. вероятность в диапазоне 0-(-1)).

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

Общение системы с пользователем осуществляется в виде обмена простыми предложениями английского языка. Объяснительные способности подобны способностям MYCIN. Для упрощения процесса приобретения знаний системой PROSPECTOR разработана система KAS. В процессе приобретения знаний KAS подсказывает пользователю пропущенные им обязательные компоненты новых знаний. Ядром KAS является сетевой редактор, в котором имеются знания о процессах, происходящих в PROSPECTOR. Именно эта способность KAS позволяет ей при приобретении знаний осуществлять их проверку с точки зрения как формы, так и содержания.

KAS может рассматриваться как не зависящая от проблемной области версия PROSPECTOR, она соотносится с PROSPECTOR так же, как EMYCIN с MYCIN. KAS позволяет использовать процедуры вывода PROSPECTOR в проблемных областях, знания о которых могут быть представлены в виде правил, используемых в системе PROSPECTOR.

Экспертная система CADUCEUS

Первоначальное название этой системы INTERNIST. Система находится на стадии действующего прототипа. Областью экспертизы является диагностика внутренних болезней человека. Система содержит информацию о 500 болезнях, что составляет 80 % всех известных терапевтических заболеваний. База данных CADUCEUS - самая большая среди баз данных существующих ЭС. В системе хранятся знания приблизительно о 100000 ассоциативных связях между симптомами и болезнями. Система используется в клинической практике и для обучения студентов-медиков. Качество решений системы высокое. Знания системы включают два основных типа данных: болезни и их проявления (анамнез, симптомы, признаки, лабораторные данные). Между этими типами данных установлен ряд отношений. Каждой болезни сопоставлен ассоциативный список ее проявлений. Существует и обратный список, т. е. для каждого проявления указаны болезни, при которых оно встречается. Связям между болезнями и проявлениями присвоены весовые коэффициенты (от 1 до 5). Болезни организованы в иерархическое дерево, а также связаны причинными, временными и ассоциативными отношениями. Знания представляются в виде сетей с использованием коэффициента определенности. При поиске решения система комбинирует стратегию, "направляемую данными", со стратегией, "направляемой целями". Данные о пациенте используются для порождения некоторых гипотез (целей). Эти гипотезы используются для порождения других гипотез, которые либо подтверждаются, либо используются для изменения исходных гипотез. В процессе поиска решения используются знания о таксономии болезней и о причинных взаимоотношениях между ними. В рассуждениях системы учитывается фактор неопределенности знаний.

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

Коммерческая экспертная система R1

Областью приложения системы R1 является вычислительная техника. На основании заказа пользователя, приобретающего требуемую ему конфигурацию вычислительной системы VAX-11/780 фирмы DEC, система R1 выполняет следующие функции: 1) определяет, не содержит ли заказ пользователя несовместимых компонент системы VAX, и выявляет компоненты, недостающие для функционирования заказываемой конфигурации; 2) выдает в виде диаграммы конечную конфигурацию VAX, которая используется техническими службами при установке системы заказчику; 3) учитывает при построении диаграммы накладываемые заказчиком ограничения (на желаемый порядок расположения компонент, на типы и длину кабелей, связывающих устройства и т.п.).

Сложность задач, решаемых системой R1, обусловлена сложностью системы VAX-11, состоящей из 420 компонент, и многочисленностью правил, ограничивающих возможные способы взаимодействия компонент. Система R1 превосходит эксперта-человека по качеству работы  и по времени решения задачи (R1 безошибочно определяет конфигурацию за 2,5 минуты, а эксперт-человек, затрачивая на работу несколько часов, допускает ошибки, обнаруживаемые только после установки системы).

Знания в системе представляются в виде правил: "условие действие". В системе используется примерно 3000 правил. Правила можно рассматривать как операции, преобразующие состояния. Условная часть каждого правила описывает свойства состояния, к которому правило применимо. Часть "действие" определяет, как текущее состояние должно быть преобразовано.

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

Инструментальная коммерческая система OPS_5

ОРS_5  является языком для представления знаний, использующим правила. В его основе лежит разработанный ранее язык OPS [25], сконструированный для исследований в области искусственного интеллекта и психологии сознания. Первым опытом  применения OPS в области разработки ЭС явилась система R1. Знания в OPS_5 состоят из элементов данных и правил. Элемент данных является вектором (списком значений) или объектом, с которым связывают пары "атрибут - значение". Правила имеют вил "условие действие", где "условие" есть образец, задающий неполное описание элементов данных, а "действие" - одна или несколько операций над данными.

OPS_5 определяет только общую схему процедуры вывода, не определяя частных стратегий. Этот язык позволяет программисту использовать символы и представлять отношения между символами, но ни символы, ни отношения не имеют для OPS предопределенных значений. Значения определяются с помощью продукционных правил, записанных программистом. Процедуры вывода заданы в виде интерпретатора, реализующего продукционную систему. Цикл работы интерпретатора состоит из стандартных этапов: сопоставление, разрешение конфликта, выполнение. Достоинством OPS_5 является использование единых средств для представления знаний и механизмов управления. Кроме того, в OPS_5 реализован мощный и эффективный метод сопоставления образцов, что позволяет решать сложные задачи с минимальным перебором. К числу недостатков OPS_5 относится отсутствие развитых средств для реализации интерфейса, объяснения и приобретения знаний.

Инструментальная система ROSIE

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

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

За счет использования английского синтаксиса взаимодействие с пользователем осуществляется в ROSIE в удобной форме. Объяснительные способности подобны способностям MYCIN. Основное ограничение ROSIE - недостаточные способности системы по модификации своих правил и процедур вывода.

Инструментальная система HEARSAY-III

HEARSAY-III - комплекс программных средств, независимых от проблемной области и предназначенных для построения ЭС. HEARSAY-III находится на исследовательской стадии. По своей общей структуре HEARSAY-III является модификацией системы понимания речи HEARSAY-II. HEARSAY-III управляет взаимодействием независимых источников знаний. Взаимодействие между модулями и правилами в HEARSAY-III осуществляется только через обратную область памяти, называемую "классной доской" (blackboard). Подобно OPS_5, система HEARSAY-III имеет весьма неразвитые средства для взаимодействия с пользователем, для объяснения своих действий и для приобретения знаний. Основной причиной этих недостатков HEARSAY-III является отсутствие внешнего языка высокого уровня для представления знаний.

Инструментальная исследовательская система RLL

RLL представляет собой структурированный набор программных средств, предназначенных для конструирования, использования и модификации ЭС. RLL может рассматриваться как ЭС, предметной областью которой является построение ЭС. База знаний RLL содержит общую информацию о программировании и конкретную информацию о разрабатываемой системе. Факты в RLL представляются в виде фреймов. В виде фреймов представляются также все понятия, слоты, механизмы наследования, управляющие структуры и правила. Кроме слотов, соответствующих "условию" и "действию", в правилах имеются слоты, задающие различную метаинформацию), которая используется при работе системы (например, "приоритет", "среднее время работы", "дата создания правила" и т.п.). Система RLL, содержит набор полезных конструкций (различные типы управляющих механизмов, слотов, схем наследования и метолов ассоциаций). RLL организует свои конструкции в библиотеку и представляет пользователю средства для работы с этой библиотекой. Сила RLL обусловлена общностью используемых информационных структур и алгоритмов. RLL может рассуждать о своих собственных действиях и данных. За достигнутую гибкость гад, расплачивается памятью, а не временем.

Подобно OPS_5 и HEARSAY-III, RLL обладает недостаточно мощными средствами для взаимодействия с пользователем, для объяснения своих действий и приобретения знаний.

6.7.1Тенденции развития экспертных систем

1. Переход к массовому выпуску промышленных и коммерческих ЭС.

2. Расширение сферы использования ЭС за счет :

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

б) аппаратной реализации ЭС, обеспечивающей значительное повышение их вычислительной мощности.

3. Создание интегральных (гибридных) ЭС, объединяющих методы ЭС с базами данных и с пакетами прикладных программ.

4. Создание устройств, невосприимчивых к ошибкам, путем включения в их состав аппаратно реализованных ЭС, выявляющих и устраняющих ошибки.

6.8.Представление знаний в ЭС

6.8.1. Основные понятия

Первый, и основной вопрос, который надо решить при представлении знаний, это вопрос определения состава знаний, т. е. определение того, "ЧТО представлять"  в ЭС. Важность вопроса "ЧТО представлять" определяется тем, что решение именно этой проблемы обеспечивает адекватное отображение моделируемой сущности в системе. Второй вопрос касается того "КАК представлять" знания. Необходимо отметить, что проблемы "ЧТО представлять" и "КАК представлять" не независимы.

Вопрос "КАК представлять" можно разделить на две в значительной степени независимые задачи:

  1.  как организовать (структурировать) знания и
  2.  как представить знания в выбранном формализме.

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

Итак, в круг вопросов, решаемых при представлении знаний, включаются следующие:

  1.  определение состава представляемых знаний;
  2.  организация знаний;
  3.  представление знаний, т.е. определение модели представления;
  4.  использование выбранного представления.

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

6.8.2. Состав знаний экспертной системы

Рассмотрим вопрос о том, какими (по составу) знаниями должна обладать ЭС для выполнения стоящих перед ней задач.

Состав знаний зависит: 1) от проблемной области; 2) от структуры ЭС; 3) от требований и целей пользователей; 4) от языка общения.

В соответствии с общей схемой ЭС (см. рис. 6.1) для ее функционирования требуются следующие знания:

  1.  знания о процессе решения задачи, т. е. управляющие знания, используемые интерпретатором;
  2.  знания о языке общения и способах организации диалога, используемые лингвистическим процессором;
  3.  знания о способах представления и модификации знаний, используемые компонентой приобретения знаний;
  4.  поддерживающие структурные и управляющие знания, используемые объяснительной компонентой.

Зависимость состава знаний от требований пользователя проявляется в следующем:

  1.  какие задачи (из общего набора задач) и с какими данными хочет решать пользователь;
  2.  каковы предпочтительные способы и методы решения;
  3.  при каких ограничениях на количество результатов и способ их получения должна быть решена задача;
  4.  каковы требования к языку общения и к организации диалога;
  5.  какова степень общности/конкретности знаний о проблемной области, доступная пользователю;
  6.  каковы цели пользователей.

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

Предметные области могут быть статическими, т. е. неизменяемыми, и динамическими, т.е. изменяемыми. Если быть точным, то практически любая предметная область является изменяемой. Вопрос в том, представляются ли эти изменения в ЭС. Примерами медицинских систем, не учитывающих динамику предметной области, являются MYCIN, INTERNIST, CASNET, PIP, PUFF и др.

Динамические области (точнее, представления, учитывающие динамику области) можно разделить на следующие типы:

  1.  представления, в которых учитываются только изменения местоположения объектов в пространстве, но сами объекты считаются неизменными во времени;
  2.  представления, в которых учитываются изменения объектов (их свойств) во времени, но не рассматриваются изменения пространственных отношений между объектами;
  3.  представления, в которых учитываются как изменения объектов во времени, так и изменения пространственных взаимоотношений между ними.

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

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

Задачи, решаемые в предметной области, требуют соответствующих знаний. Не касаясь специфики решаемых задач, их можно классифицировать на следующие типы: 1) задачи анализа предметной области; 2) задачи преобразования предметной области; 3) задачи определения (выбора) предметной области.

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

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

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

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

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

Итак, проблемную область можно обобщенно охарактеризовать следующим набором слабо зависимых параметров:

  1.  точность/ошибочность данных и знаний;
  2.  полнота/неполнота данных и знаний;
  3.  статическая/динамическая область;
  4.  тип решаемых задач.

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

Рис. 6.4. Структура знаний в базе знаний

Интерпретируемые знания можно разделить на предметные знания, знания о представлении и управляющие знания. Знания о представлении содержат информацию о том, каким образом (в каких структурах) в системе представлены интерпретируемые знания.

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

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

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

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

6.8.3.Организация знаний

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

  1.  организация знаний по уровням представления и по уровням детальности;
  2.  организация знаний в рабочей памяти;
  3.  организация знаний в базе знаний.

Организация знаний по уровням представления и по уровням детальности

С точки зрения организации знания целесообразно рассматривать, по крайней мере, в двух аспектах: 1) по уровням представления, 2) по уровням детальности. Каждый из аспектов образует свою иерархию уровней.

Для того чтобы ЭС могла управлять процессом поиска решения, была способна приобретать новые знания и объяснять свои действия, она должна уметь не только использовать свои знания, но и обладать способностью "понимать" и исследовать их. Говоря иными словами, ЭС должна иметь знания о том, как представлены ее знания о проблемной области. Если знания о проблемной области назвать знаниями нулевого уровня представления, то первый уровень представления содержит метазнания, т. е. знания о том, как представлены во внутреннем мире системы знания нулевого уровня. Первый уровень содержит знания о том, какие средства используются для представления знаний нулевого уровня. Знания первого уровня играют существенную роль при управлении процессом решения, при приобретении и объяснении действий системы. В связи с тем, что знания первого уровня не содержат отсылок к знаниям нулевого уровня, знания первого уровня не зависимы от проблемной области.

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

Выделение уровней детальности позволяет рассматривать знания с различной степенью подробности. Количество уровней детальности  во многом определяется спецификой решаемых задач, объемом знаний и способом их представления. Выделяется не менее трех уровней детальности, отражающих: 1) общую организацию знаний, 2) логическую организацию, 3) физическую организацию  отдельных структур знаний. Введение нескольких уровней детальности обеспечивает дополнительную степень гибкости системы, т. к, позволяет производить изменения на одном уровне, не затрагивая другие. Изменения на одном уровне детальности могут приводить к дополнительным изменениям на том же уровне, что оказывается необходимым для обеспечения согласованности структур данных и программ. Однако наличие различных уровней препятствует распространению изменений с одного уровня на другие.

Организация знаний в рабочей памяти

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

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

Данные в РП в простейшем случае являются константами и (или) переменными. При этом переменные могут трактоваться как характеристики некоторого объекта, а константы - как значения соответствующих характеристик. Если в РП  требуется анализировать одновременно несколько различных объектов, описывающих текущую проблемную ситуацию, то необходимо указывать, к каким объектам относятся рассматриваемые характеристики. Одним из способов решения этой задачи является явное указание того, к какому объекту относится характеристика. Это приводит к появлению в РП объектов со списками свойств, содержащими имена характеристик и их значения. Так, например, в MYCIN используется тройка: "объект - атрибут - значение".

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

Организация знаний в базе знаний

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

Показателем интеллектуальности системы с точки зрения представления знаний считается способность системы использовать в нужный момент необходимые (релевантные) знания. Системы, не имеющие средств для определения релевантных знаний, неизбежно сталкиваются с проблемой "комбинаторного взрыва". Можно утверждать, что эта проблема является одной из основных причин, ограничивающих сферу применения ЭС. С точки зрения доступа к знаниям можно выделить три аспекта проблемы: связность знаний (и , в частности, данных); механизм доступа к знаниям и способ сопоставления.

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

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

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

Операции сопоставления весьма разнообразны. Можно выделить следующие их формы: синтаксическое сопоставление, параметрическое сопоставление, семантическое сопоставление и принуждаемое сопоставление. В случае синтаксического сопоставления соотносят формы (образцы), а не содержание объектов. Термин "форма" (образец) употребляется в классическом смысле. Чтобы упростить процесс сопоставления, все образцы хранятся в едином каноническом представлении. Успешным считается сопоставление, в результате которого образцы оказываются идентичными. Обычно считается, что переменная одного образца может быть идентична любой константе (или выражению) другого образца. Иногда на переменные, входящие в образец, накладывают требования, определяющие тип констант, с которыми они могут сопоставляться. Результат синтаксического сопоставления является бинарным: образцы сопоставляются или не сопоставляются. В параметрическом сопоставлении вводится параметр, определяющий степень сопоставления. В случае семантического сопоставления соотносятся не образцы объектов, а их функции. В случае принуждаемого сопоставления  один сопоставляемый образец рассматривается с точки зрения другого. В отличие от других типов сопоставления здесь всегда может быть получен положительный результат. Вопрос состоит в "силе" принуждения. Принуждение могут выполнять специальные процедуры, связываемые с объектами. Если эти процедуры не в состоянии осуществить сопоставление, то система сообщает, что успех может быть достигнут только в том случае, если определенные части рассматриваемых сущностей можно считать сопоставляющимися.

6.8.4.Модели представления знаний

Часто вопрос выбора модели представления знания сводят к обсуждению баланса между декларативным и процедурным представлением (ДП и ПП). Различие между ДП и ПП можно выразить как различие между "ЗНАТЬ ЧТО" и "ЗНАТЬ КАК". ПП основано на предпосылке, что интеллектуальная деятельность есть значение проблемной области, вложенное в программы, т.е. знание о том, как можно использовать те или иные сущности. ДП основано на предпосылке, что знание неких сущностей ("ЗНАТЬ ЧТО") не имеет глубоких связей с процедурами, используемыми для обработки этих сущностей. При использовании ДП считается, что интеллектуальность базируется на некотором универсальном множестве процедур, обрабатывающих факты любого типа, и на множестве специфических фактов, описывающих частную область знаний. Основное достоинство ДП по сравнению с ПП заключается в том, что в ДП нет необходимости указывать способ использования конкретных фрагментов знания. Простые утверждения могут использоваться несколькими способами, и может оказаться неудобным фиксировать эти способы заранее. Указанное свойство обеспечивает гибкость и экономичность ДП, т.к. позволяет по-разному использовать одни и те же факты.

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

Все многообразие моделей представления знаний можно разбить на два типа: логические и эвристические. В основе логических моделей представления знаний лежит понятие формальной системы (теории).

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

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

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

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

Модули, управляемые образцами

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

Каждый управляемый образцом модуль (УОМ) состоит из механизмов исследования и модификации одной или нескольких структур данных. Диапазон УОМ может колебаться в широких пределах: от простого продукционного правила до процедуры произвольной степени сложности, вызываемой по образцу. Каждый УОМ на очередном шаге работы анализирует данные рабочей памяти, проверяя наличие структур, которые сопоставляются с его образцом. Системы, построенные на основе управляемых образцами модулей, называют системами вывода, управляемыми образцами [69]. Функции управления в этих системах осуществляет интерпретатор.

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

  1.  Разделение постоянных знаний, хранимых в базе знаний, и временных знаний, хранимых в рабочей памяти.
  2.  Структурная независимость модулей. Это свойство облегчает модификацию и совершенствование системы, что чрезвычайно важно для ЭС, постоянно модифицирующих свои знания. Кроме того, независимость модулей упрощает объединение программ, написанных разными авторами.
  3.  Отделение схемы управления от модулей, несущих знания о проблемной области. Данное свойство позволяет применять различные схемы управления.

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

Рис. 6.5. Классификация систем, управляемых образцами

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

Большинство систем, управляемых образцами, удовлетворяет следующему ограничению: все исследования данных рабочей памяти в каждом модуле объединены и предшествуют всем действиям по модификации данных. Таким образом, модуль разделяется на две части: предусловие, исследующее данные, и действие, модифицирующее данные. Модули, имеющие такое деление, называют правилами [69], а системы, использующие такие правила, называют системами, основанными, на правилах. Разделение операции исследования и модификации данных облегчает отладку системы.

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

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

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

Итак, представление знаний в виде УОМ и продукционных правил обладает следующими достоинствами:

  1.  модульностью организации знаний;
  2.  независимостью правил, выражающих самостоятельные "куски" знаний;
  3.  легкостью и естественностью модификации знаний;
  4.  отделением управляющих знаний, что позволяет применять различные управляющие стратегии;
  5.  возможностью создания для ряда приложений управляющих механизмов для автоматического решения задач.

Основным недостатком данного подхода является его более низкая эффективность по сравнению с методами традиционного программирования.

6.9.Теоретические аспекты извлечения знаний

6.9.1. Стратегии получения знаний

В литературе по ЭС получили распространение несколько терминов: приобретение, добыча, извлечение, получение, выявление, формирование знаний. В англоязычной специальной литературе в основном используются два: acquisition (приобретение) и elicitation (выявление, извлечение, установление).

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

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

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

Таким образом, можно выделить три стратегии проведения стадии получения знаний при разработке ЭС (см. рис. 6.6):

  1.  использованием ЭВМ при наличии подходящего программного инструментария; тогда мы будем говорить о приобретении знаний;
  2.  с использованием программ обучения при наличии репрезентативной (т.е. достаточно представительной) выборки примеров принятия решений в предметной области и соответствующих пакетов прикладных программ; тогда мы будем говорить о формировании знаний;
  3.  без использования вычислительной техники путем непосредственного контакта инженера по знаниям и источника знаний (будь то эксперт, специальная литература или другие источники); в этом случае мы будем говорить об извлечении знаний; эта стратегия наиболее актуальна.

Рис. 6.6. Три стратегии получения знаний

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

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

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

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

  1.  уровень манипулирования;
  2.  уровень "рефлексивной игры";
  3.  уровень правового общения;
  4.  уровень нравственного общения.

Предлагается следующая структурная модель общения при извлечении знаний: участники общения (партнеры); средства общения (процедура); предмет общения (знания).

В соответствии с этой структурой выделяют три "слоя" психологических проблем, возникающих при извлечении знаний: контактный слой, процедурный слой, когнитивный (познавательный) слой.

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

Проблема "общего кода" возникает из-за различия языков, на которых говорят аналитик (инженер по знаниям) и эксперт.

Язык аналитика состоит из трех компонентов:

  1.  терминов предметной области, которые он почерпнул из специальной литературы в период подготовки;
  2.  общенаучной терминологии из его "теоретического багажа";
  3.  бытового разговорного языка.

Язык эксперта состоит из:

  1.  специальной терминологии, принятой в предметной области;
  2.  общенаучной терминологии;
  3.  бытового языка:
  4.  неологизмов, созданных экспертом за время работы (его профессиональный жаргон).

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

Под понятийной структурой понимают "энциклопедию", в которой все термины объяснены в словарных статьях со ссылками на другие термины.

Рис. 6.7. Схема получения общего кода

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

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

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


Рис. 6.8. Пример соответствия понятийной структуры иерархии универсального предметного кода

Словарь пользователя. Лингвистические результаты, отнесенные к слоям общего кода и понятийной структуры, направлены на создание адекватной базы знаний. Для разработки пользовательского интерфейса необходима дополнительная доработка словаря общего кода с поправкой на доступность и "прозрачность" системы.

Гносеологический аспект.

Гносеология, - это раздел философии, связанный с теорией познания или теорией отражения действительности в сознании человека.

Инженерия знаний как наука, если можно так выразиться, дважды гносеологична - сначала действительность (О) отражается в сознании эксперта 1), а затем деятельность и опыт эксперта интерпретируются сознанием инженера по знаниям 2), что служит уже основой для построения третьей интерпретации (Pz) - поля знаний экспертной системы (рис. 6.9). I1, I2, I3 - процессы отображения.

Рис. 6.9. Гносеологический аспект извлечения знаний

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

ФАКТ ОБОБЩЕННЫЙ ФАКТ ЭМПИРИЧЕСКИЙ ЗАКОН ТЕОРЕТИЧЕСКИЙ ЗАКОН.

Такой подход полностью согласуется со структурой научного знания, которое имеет два уровня:

  1.  эмпирический (наблюдения, явления);
  2.  теоретический (законы, абстракции, обобщения).

Но теория - это не только стройная система обобщения научного знания, это также некоторый способ производства новых знаний. Основными методологическими критериями научности, позволяющими считать научным и само новое знание, и способ его получения, являются: 1) внутренняя согласованность и непротиворечивость; 2) системность; 3) объективность; 4) историзм.

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

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

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

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

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

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

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

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

Рис. 6.10. Классификация методов извлечения знаний

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

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

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

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

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

  1.  описание и обобщение фактов;
  2.  установление связей;
  3.  построение идеализированной модели;
  4.  объяснение и предсказание явлений.

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

  1.  ошибочность, фрагментарность знаний (из-за нарушений принципа системности или ошибок в выборе фокуса внимания);
  2.  противоречивость знаний (из-за естественной противоречивости природы и общества, из-за неполноты извлеченных знаний, из-за некомпетентности эксперта);
  3.  ошибочная классификация (из-за неправильного определения числа классов или неточного описания класса);
  4.  ошибочная атрибуция, т.е. приписывание объекту свойств, которыми он не владеет (из-за неглубокой проработки знаний о предметной области);
  5.  ошибочный уровень обобщения (из-за чрезмерной детализации или обобщенности классов объектов);
  6.  ошибочная модель (из-за неадекватных когнитивных структур).


7. Системы распознавания образов (идентификации)

7.1.Понятие образа

Образ, класс — классификационная группировка в системе классификации, объединяющая (выделяющая) определенную группу объектов по некоторому признаку.

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

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

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

В литературе, посвященной проблеме обучения распознавания образов (ОРО), часто вместо понятия образа вводится понятие класса.

7.2.Проблема обучения распознаванию образов (ОРО)

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

Рассмотрим пример задач из области ОРО.

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

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

Рис.  7.

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

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

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

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

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

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

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

7.3. Геометрический и структурный подходы.

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

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

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

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

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

.

Рис.  7.. Два образа

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

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

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

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

7.4.Гипотеза компактности

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

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

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

7.5.Обучение и самообучение. Адаптация и обучение

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

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

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

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

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

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

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

7.6. Перцептроны

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

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

Рис. 7.

В наиболее простом виде перцептрон () состоит из совокупности чувствительных (сенсорных) элементов (S-элементов), на которые поступают входные сигналы. S-элементы случайным образом связаны с совокупностью ассоциативных элементов (А-элементов), выход которых отличается от нуля только тогда, когда возбуждено достаточно большое число S-элементов, воздействующих на один А-элемент. А-элементы соединены с реагирующими элементами (R-элементами) связями, коэффициенты усиления (v) которых переменны и изменяются в процессе обучения. Взвешенные комбинации выходов R-элементов составляют реакцию системы, которая указывает на принадлежность распознаваемого объекта определенному образу. Если распознаются только два образа, то в перцептроне устанавливается только один R-элемент, который обладает двумя реакциями — положительной и отрицательной. Если образов больше двух, то для каждого образа устанавливают свой R-элемент, а выход каждого такого элемента представляет линейную комбинацию выходов A-элементов:

,        (7.)

где Rj — реакция j-го R-элемента; xi — реакция i-го A-элемента; vij — вес связи от i-го A-элемента к j-му R элементу; j — порог j-го R-элемента.

Аналогично записывается уравнение i-го A-элемента:

,       (7. )

Здесь сигнал yk может быть непрерывным, но чаще всего он принимает только два значения: 0 или 1. Сигналы от S-элементов подаются на входы А-элементов с постоянными весами равными единице, но каждый А-элемент связан только с группой случайно выбранных S-элементов. Предположим, что требуется обучить перцептрон различать два образа V1 и V2. Будем считать, что в перцептроне существует два R-элемента, один из которых предназначен образу V1, а другой — образу V2. Перцептрон будет обучен правильно, если выход R1 превышает R2, когда распознаваемый объект принадлежит образу V1, и наоборот. Разделение объектов на два образа можно провести и с помощью только одного R-элемента. Тогда объекту образа V1 должна соответствовать положительная реакция R-элемента, а объектам образа V2 — отрицательная.

Перцептрон обучается путем предъявления обучающей последовательности изображений объектов, принадлежащих образам V1 и V2. В процессе обучения изменяются веса vi А-элементов. В частности, если применяется система подкрепления с коррекцией ошибок, прежде всего учитывается правильность решения, принимаемого перцептроном. Если решение правильно, то веса связей всех сработавших А-элементов, ведущих к R-элементу, выдавшему правильное решение, увеличиваются, а веса несработавших А-элементов остаются неизменными. Можно оставлять неизменными веса сработавших А-элементов, но уменьшать веса несработавших. В некоторых случаях веса сработавших связей увеличивают, а несработавших — уменьшают. После процесса обучения перцептрон сам, без учителя, начинает классифицировать новые объекты. Если перцептрон действует по описанной схеме и в нем допускаются лишь связи, идущие от бинарных S-элементов к A-элементам и от A-элементов к единственному R-элементу, то такой перцептрон принято называть элементарным -перцептроном. Обычно классификация C(W) задается учителем. Перцептрон должен выработать в процессе обучения классификацию, задуманную учителем.

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

Теорема 1. Класс элементарных -перцептронов, для которых существует решение для любой задуманной классификации, не является пустым.

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

Теорема 2. Если для некоторой классификации C(W) решение существует, то в процессе обучения -перцептрона с коррекцией ошибок, начинающегося с произвольного исходного состояния, это решение будет достигнуто в течение конечного промежутка времени.

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

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

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

7.7. Нейронные сети

7.7.1. История исследований в области нейронных сетей

Возвратимся немного назад, и рассмотрим историю исследований нейронных сетей.

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

Способность нейронной сети к обучению впервые исследована Дж. Маккалоком и У. Питтом. В 1943 году вышла их работа “Логическое исчисление идей, относящихся к нервной деятельности", в которой была построена модель нейрона, и сформулированы принципы построения искусственных нейронных сетей.

Крупный толчок развитию нейрокибернетики дал американский нейрофизиолог Френк Розенблатт, предложивший в 1962 году свою модель нейронной сети — персептрон. Воспринятый первоначально с большим энтузиазмом, он вскоре подвергся интенсивным нападкам со стороны крупных научных авторитетов. И хотя подробный анализ их аргументов показывает, что они оспаривали не совсем тот персептрон, который предлагал Розенблатт, крупные исследования по нейронным сетям были свернуты почти на 10 лет.

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

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

7.7.2. Нейронные сети: основные положения

В последние десятилетия в мире бурно развивается новая прикладная область математики, специализирующаяся на искусственных нейронных сетях (НС). Актуальность исследований в этом направлении подтверждается массой различных применений НС. Это автоматизация процессов распознавания образов, адаптивное управление, аппроксимация функционалов, прогнозирование, создание экспертных систем, организация ассоциативной памяти и многие другие приложения. С помощью НС можно, например, предсказывать показатели биржевого рынка, выполнять распознавание оптических или звуковых сигналов, создавать самообучающиеся системы, способные управлять автомашиной при парковке или синтезировать речь по тексту. В то время как на западе применение НС уже достаточно обширно, у нас это еще в некоторой степени экзотика – российские фирмы, использующие НС в практических целях, наперечет [1].

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

Модели НС могут быть программного и аппаратного исполнения. В дальнейшем речь пойдет в основном о первом типе.

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

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

  Рис. 7.4 Общий вид нейрона

НС. Каждый нейрон характеризуется своим текущим состоянием по аналогии с нервными клетками головного мозга, которые могут быть возбуждены или заторможены. Он обладает группой синапсов – однонаправленных входных связей, соединенных с выходами других нейронов, а также имеет аксон – выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Общий вид нейрона приведен на рисунке 7.4. Каждый синапс характеризуется величиной синаптической связи или ее весом wi, который по физическому смыслу эквивалентен электрической проводимости.

Текущее состояние нейрона определяется, как взвешенная сумма его входов:

(7.4)

Выход нейрона есть функция его состояния:

y = f(s) (7.5)

Нелинейная функция f называется активационной и может иметь различный вид, как показано на рисунке 7.5. Одной из наиболее распространеных является нелинейная функция с насыщением, так называемая логистическая функция или сигмоид (т.е. функция S-образного вида):

(7.6)

Рис. 7.5 Активационные функции

При уменьшении a сигмоид становится более пологим, в пределе при a =0 вырождаясь в горизонтальную линию на уровне 0.5, при увеличении a сигмоид приближается по внешнему виду к функции единичного скачка с порогом T в точке x=0. Из выражения для сигмоида очевидно, что выходное значение нейрона лежит в диапазоне [0,1]. Одно из ценных свойств сигмоидной функции – простое выражение для ее производной.

(7.7)

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

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

Рис. 7.6. Нейронная сеть

собой, причем обработка взаимодействия всех нейронов ведется послойно.

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

, j=1...3 (7.8)

Очевидно, что все весовые коэффициенты синапсов одного слоя нейронов можно свести в матрицу W, в которой каждый элемент wij задает величину i-ой синаптической связи j-ого нейрона. Таким образом, процесс, происходящий в НС, может быть записан в матричной форме:

Y=F(XW) (7.9)

где X и Y – соответственно входной и выходной сигнальные векторы, F( V) – активационная функция, применяемая поэлементно к компонентам вектора V.

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

Выбор структуры НС осуществляется в соответствии с особенностями и сложностью задачи. Для решения некоторых отдельных типов задач уже существуют оптимальные, на сегодняшний день, конфигурации. Если же задача не может быть сведена ни к одному из известных типов, разработчику приходится решать сложную проблему синтеза новой конфигурации. При этом он руководствуется несколькими основополагающими принципами: возможности сети возрастают с увеличением числа ячеек сети, плотности связей между ними и числом выделенных слоев; введение обратных связей наряду с увеличением возможностей сети поднимает вопрос о динамической устойчивости сети; сложность алгоритмов функционирования сети (в том числе, например, введение нескольких типов синапсов – возбуждающих, тромозящих и др.) также способствует усилению мощи НС. Вопрос о необходимых и достаточных свойствах сети для решения того или иного рода задач представляет собой целое направление нейрокомпьютерной науки. Так как проблема синтеза НС сильно зависит от решаемой задачи, дать общие подробные рекомендации затруднительно. В большинстве случаев оптимальный вариант получается на основе интуитивного подбора.

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

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

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

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

Развивая дальше вопрос о возможной классификации НС, важно отметить существование бинарных и аналоговых сетей. Первые из них оперируют с двоичными сигналами, и выход каждого нейрона может принимать только два значения: логический ноль ("заторможенное" состояние) и логическая единица ("возбужденное" состояние). К этому классу сетей относится и рассмотренный выше перцептрон, так как выходы его нейронов, формируемые функцией единичного скачка, равны либо 0, либо 1. В аналоговых сетях выходные значения нейронов способны принимать непрерывные значения, что могло бы иметь место после замены активационной функции нейронов перцептрона на сигмоид.

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

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

Наконец, мы можем более подробно рассмотреть вопрос обучения НС, для начала – на примере перцептрона с рисунка 7.4.

Рассмотрим алгоритм обучения с учителем.

1. Проинициализировать элементы весовой матрицы (обычно небольшими случайными значениями).

2. Подать на входы один из входных векторов, которые сеть должна научиться различать, и вычислить ее выход.

3. Если выход правильный, перейти на шаг 4.

Иначе вычислить разницу между идеальным и полученным значениями выхода:

Модифицировать веса в соответствии с формулой:

где t и t+1 – номера соответственно текущей и следующей итераций; n – коэффициент скорости обучения, 0<n Ј1; i – номер входа; j – номер нейрона в слое.

Очевидно, что если YI > Y весовые коэффициенты будут увеличены и тем самым уменьшат ошибку. В противном случае они будут уменьшены, и Y тоже уменьшится, приближаясь к YI.

4. Цикл с шага 2, пока сеть не перестанет ошибаться.

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


8. Системы распознавания естественного языка

8.1. Введение

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

Первая задача состоит в том, чтобы компьютер мог "понять" то, что ему говорит человек, то есть он доложен уметь извлекать из речи человека полезную информацию. Пока что, на нынешнем этапе, эта задача сводится к тому, чтобы извлечь из речи смысловую ее часть, текст (понимание таких составляющих, как скажем, интонация, пока вообще не рассматривается). То есть эта задача сводится к замене клавиатуры микрофон. Вторая задача состоит в том, чтобы компьютер воспринял смысл сказанного. Пока речевое сообщение состоит из некоего стандартного набора понятных компьютеру команд (скажем, дублирующих пункты меню), ничего сложного в ее реализации нет. Однако вряд ли такой подход будет удобнее, чем ввод этих же команд с клавиатуры или при помощи мыши. Пожалуй, даже удобнее просто щелкнуть мышкой по иконке приложения, чем четко выговаривать (к тому же мешая окружающим): "Старт! Главное меню! Ворд!" .В идеале компьютер должен четко "осмысливать" естественную речь человека и понимать, что, к примеру, слова "Хватит!" и "Кончай работу!" означают в одной ситуации разные понятия, а в другой - одно и то же . Третья задача состоит в том, чтобы компьютер мог преобразовать информацию, с которой он оперирует, в речевое сообщение, понятное человеку.

Пока окончательное решение существует только для третьей. По сути, синтез речи - это чисто математическая задача, которая в настоящее время решена на довольно хорошем уровне. И в ближайшее время, скорее всего, будет совершенствоваться только ее техническая реализация. Уже есть разного рода программы для чтения вслух текстовых файлов, озвучкой диалоговых окон. пунктов меню и могу засвидетельствовать, что с генерацией разборчивых текстовых сообщений они справляются без проблем. Препятствием для окончательного решения первой задачи служит то, что никто до сих пор толком не знает, каким образом можно расчленить нашу речь, чтобы извлечь из нее составляющие, в которых содержится смысл. В том звуковом потоке, который мы выдаем при разговоре, нельзя различить ни отдельных букв, ни слогов: даже, казалось бы, одинаковые буквы и слоги в разных словах на спектрограммах выглядят по-разному. Тем не менее многие фирмы уже имеют свои методики (увы, тщательно скрываемые), позволяющие худо-бедно решить эту задачу. Во всяком случае, после предварительной тренировки современные системы распознавания речи работают довольно сносно и делают ошибок не больше, чем делали оптические системы распознавания печатных символов лет пять-семь назад. Что касается второй задачи, то она, по мнению большинства специалистов, не может быть решена без помощи систем искусственного интеллекта. Большие надежды есть на появление так называемых квантовых компьютеров. Если же подобные устройства появятся, это будет означать качественный переворот в вычислительных технологиях. Поэтому пока удел речевого интерфейса - всего лишь дублирование голосом команд, которые могут быть введены с клавиатуры или при помощи мыши. А здесь его преимущества сомнительны. Впрочем, есть одна область, которая дли многих может оказаться очень привлекательной. Это речевой ввод текстов в компьютер. Действительно, чем стучать по клавиатуре, гораздо удобнее продиктовать все компьютеру, чтобы он записал услышанное в текстовый файл. Здесь вовсе не требуется, чтобы компьютер осмысливал услышанное, а задача перевода речи в текст более или менее решена. Недаром большинство выпускаемых ныне программ "речевого интерфейса" ориентированы именно на ввод речи.

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

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

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

Становление современной компьютерной индустрии проходило под флагом графического интерфейса, альтернативы которому в круге задач, решаемых сегодня компьютерами, не существует. Массовые приложения: САПР, офисные и издательские пакеты, СУБД составляют основной объем интеллектуальной начинки компьютеров, оставляя в их нынешнем виде очень мало места для применения альтернативных моделей пользовательского интерфейса, в том числе и речевого.

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

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

Для объективной оценки прогресса технологии распознавания речи сравните характеристики систем, реализованных в рамках проекта к 1976 году и систем, продвигаемых на рынок в настоящее время. Возникает два вопроса. Почему не нашли достойного применения разработки двадцатилетней давности и почему за такой продолжительный период не произошло видимого качественного сдвига в характеристиках конкретных систем? Ответ на I первый вопрос частично изложен выше: основная проблема - в области применения. Можно добавить, высокие требования данной технологии к вычислительным ресурсам не являлись основным препятствиям к ее широкому внедрению. Возникновение схожих проблем у разработчиков графических систем привело к созданию и массовому применению графических аппаратных ускорителей, а не отказу от оконного интерфейса. При этом разрабатываемые peчевые адаптеры не превосходят по себестоимости графических. Ответ на второй вопрос напрямую связан с первым. Технология, не находящая применения, не может себя прокормить и обеспечить свой рост. Кроме того, вполне возможно, что ориентация большинства исследовательских центров на увеличение распознаваемого словаря является ошибочной как с точки зрения применимости, так и с точки зрения научной перспективности. Еще в 1969 году в своем знаменитом письме редактору журнала Акустического общества Америки Дж. Пиес, сотрудник фирмы Bell Laboratories, указал на отсутствие явного прогресса в то время и возможности такого прогресса технологии распознавания речи в ближайшем будущем в связи с неспособностью компьютеров анализировать синтаксическую, семантическую и прагматическую информацию, содержащуюся в высказывании. Имеющийся барьер может быть преодолен только с развитием систем искусственного интеллекта - направлением, натолкнувшимся в 70-х на барьер сложности и находящемся в настоящее время практически в полном забвении. Трудно надеяться на дальнейшее улучшение характеристик устройств речевого ввода, учитывая, что уже в 70-х годах их способность распознавать звуки речи превосходила человеческую. Данный факт был подтвержден серией экспериментов по сравнению уверенности распознавания человеком и компьютером слов иностранного языка и бессмысленных цепочек звуков. При отсутствии возможности подключения прагматических (смысловых), семантических и других анализаторов человек явно проигрывает.

Для иллюстрации приведенных выше, возможно, несколько спорных утверждений рассмотрим перспективу и основные проблемы применения систем речевого ввода текстов, особенно активно продвигаемых в последнее время. Для сравнения: спонтанная речь произносится со средней скоростью 2,5 слов в секунду, профессиональная машинопись - 2 слова в секунду, непрофессиональная -0,4. Таким образом, на первый взгляд, речевой ввод имеет значительное превосходство по производительности. Однако оценка средней скорости диктовки в реальных условиях снижается до 0,слова в секунду в связи с необходимостью четкого произнесения слов при речевом вводе и достаточно высоким процентом ошибок распознавания, нуждающихся в корректировке. Речевой интерфейс естественен для человека и обеспечивает дополнительное удобство при наборе текстов. Однако даже профессионального диктора может не обрадовать перспектива в течение нескольких часов диктовать малопонятливому и немому компьютеру. Кроме того, имеющийся опыт эксплуатации подобных систем свидетельствуете высокой вероятности заболевания голосовых связок операторов, что связано с неизбежной при диктовке компьютеру монотонностью речи.

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

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

8.1.1 Примеры системы обработки естественного языка

Самый успешный на сегодня проект коммерческого применения распознавания речи - телефонная сеть фирмы AT&. Клиент может запросить одну из пяти категорий услуг, используя любые слова. Он говорит до тех пор, пока в его высказывании встретится одно из пяти ключевых слов. Эта система в настоящее время обслуживает около миллиарда звонков в год. Данный вывод находится в противоречии с устоявшимися широко распространенными стереотипами и ожиданиями. Несмотря на то, что одним из наиболее перспективных направлений для внедрения систем распознавания речи может стать сфера компьютерных игр, узкоспециализированных реабилитационных программ для инвалидов, телефонных и информационных систем, ведущие разработчики речевого распознавания наращивают усилия по достижению универсализации и увеличения объемов словаря даже в ущерб сокращению процедуры предварительной настройки на диктора. А между тем именно эти приложения представляют очень низкие требования к объему распознаваемого словаря наряду с жесткими ограничения, налагаемыми на предварительную настройку. Более того распознавание спонтанной слитной речи практически топчется на месте с 70-х годов в силу неспособности компьютера эффективно анализировать неакустические характеристики речи. Даже Билл Гейтс, являющий собой смысле идеал прагматизма, оказался не свободен от исторически сложившихся стереотипов. Начав в 95-96 году с разработки собственной универсальной системы распознавания речи провозгласил очередную эру повсеместного внедрения речевого интерфейса. Средства речевого планируется включить в стандартную поставку новой версии - чисто офисной операционной системы.

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

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

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

8.1.2. Методы озвучивания речи

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

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

Компилятивный синтез осуществляется путем склейки нужных единиц компиляции из имеющегося инвентаря. На этом принципе построено множество систем, использующих разные типы единиц и различные методы составления инвентаря. В таких системах необходимо применять обработку сигнала для приведения частоты основного тона, энергии и длительности единиц к тем, которыми должна характеризоваться синтезируемая речь. Кроме того, требуется, чтобы алгоритм обработки сигнала сглаживал разрывы в формантной (и спектральной в целом) структуре на границах сегментов. В системах компилятивного синтеза применяются два разных типа алгоритмов обработки сигнала: LР (сокр. англ. Linear Рreduction - линейное предсказание) и РSOLA (сокр. англ. Рitch Sуnchronous Оvеrlap аnd Аdd). LP-синтез основан в значительной степени на акустической теории речеобразования, в отличие от РSOLA-синтеза, который действует путем простого разбиения звуковой волны, составляющей единицу компиляции, на временные окна и их преобразования. Алгоритмы РSOLA позволяют добиваться хорошего сохранения естественности звучания при модификации исходной звуковой волны.

8.1.3. Наиболее распространенные системы синтеза речи

Наиболее распространенными системами синтеза речи на сегодня, очевидно, являются системы, поставляемые в комплекте со звуковыми платами. Если ваш компьютер оснащен какой-либо из них, существует значительная вероятность того, что на нем установлена система синтеза речи - увы, не русской, а английской речи, точнее, ее американского варианта. К большинству оригинальных звуковых плат Sound Blaster прилагается система Сreative Техt-Аssist, а вместе со звуковыми картами других производителей часто поставляется программа Моnо1оgue компании First Byte.

TextAssist представляет собой реализацию формантного синтезатора по правилам и базируется на системе DECTalk, разработанной корпорацией Digital Eguipment при участии известного американского фонетиста Денниса Клана (к сожалению, рано ушедшего из жизни). DECTalk до сих пор остается своего рода стандартом качества для синтеза речи американского варианта английского. Компания Сrеаtive Technologies предлагает разработчикам использовать ТехtАssist в своих программах с помощью специального ТехtАssistАpi(ААРI). Поддерживаемые операционные системы – семейства Windows. Новая версия ТехtАssist, объявленная фирмой Аssotiative Computing, inс. и разработанная с использованием технологий DЕСTа1k и Сrеаtivе, является в то же время многоязычной системой синтеза, поддерживая английский, немецкий, испанский и французский языки. Это обеспечивается прежде всего использованием соответствующих лингвистических модулей, разработчик которых - фирма Lеrnout& Наuspie Sреесh Рrоducts, признанный лидер в поддержке многоязычных речевых технологий. В новой версии будет встроенный редактор словаря, а также специализированное устройство ТехtRеаdеr с кнопочным управлением работой синтезатора в разных режимах чтения текста.

Программа Моnо1оguе, предназначенная для озвучивания текста, находящегося в буфере обмена МS Windows, использует систему РrоVоiсе. РrоVоiсе - компилятивный синтезатор с использованием оптимального выбора режима компрессии речи и сохранения пограничных участков между звуками, разновидность ТD-РS0LА. Рассчитан на американский и британский английский, немецкий, французский, латино-американскую разновидность испанского и итальянский языки. Инвентарь сегментов компиляции - смешанной размерности: сегменты - фонемы или аллофоны. Компания First Вуtе позиционирует систему РrоVоicе и программные продукты, основанные на ней, как приложения с низким потреблением процессорного времени. FirstByte также предлагает рассчитанную на мощные компьютеры систему артикуляторного синтеза РrimoVox для использования в приложениях телефонии. Для разработчиков: Моnо1оguе Win32 поддерживает спецификацию Мicrosoft SAPI.

Мода на свободно распространяемые продукты не миновала и области приложений синтеза речи. МВR0LA- так называется система многоязычного синтеза, реализующая особый гибридный алгоритм компилятивного синтеза и работающая как под РС/ Windows, так и под Sun4. Впрочем, система принимает на входе цепочку фонем, а не текст, и потому не является, строго говоря, системой синтеза речи по тексту. Формантный синтезатор Тru-Voicе фирмы Сеntigram Cоmmunication Соrporation(США) близок к описанным выше системам по архитектуре и предоставляемым возможностям, однако он поддерживает больше языков: американский английский, латино-американский, испанский, немецкий, французский, итальянский. Кроме того, в этот синтезатор включен специальный препроцессор, который обеспечивает быструю подготовку для чтения сообщений, получаемых по электронной почте, факсов и баз данных.

8.2. Речевой вывод информации

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

С точки зрения пользователя, наиболее разумное решение проблемы синтеза речи - это включение речевых функций (в перспективе - многоязычных, с возможностями перевода) в состав операционной системы. Точно так же, как мы пользуемся командой РRINT, мы будем применять команду ТАLК или SРЕАК. Такие команды появятся в меню общеупотребительных компьютерных приложений и в языках программирования. Компьютеры будут озвучивать навигацию по меню, читать (дублировать голосом) экранные сообщения, каталоги файлов, и т. д. Важное замечание: пользователь должен иметь достаточные возможности по настройке голоса компьютера, в частности, при желании, суметь выключить голос совсем.

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

8.3. Автоматический компьютерный синтез речи по тексту

8.3.1. Методы синтеза речи

Теперь, после оптимистического описания ближайшего будущего, давайте обратимся собственно к технологии синтеза речи. Рассмотрим какой-нибудь хотя бы минимально осмысленный текст. Текст состоит из слов, разделенных пробелами и знаками препинания. Произнесение слов зависит от их расположения в предложении, а интонация фразы - от знаков препинания. Более того, довольно часто и от типа применяемой грамматической конструкции: в ряде случаев при произнесении текста слышится явная пауза, хотя какие-либо знаки препинания отсутствуют. Наконец, произнесение зависит и от смысла слова! Сравните, например, выбор одного из вариантов "за 'мок" или " замо 'к" для одного и того же слова "замок".

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

8.3.2. Обобщенная функциональная структура синтезатора

Структура идеализированной системы автоматического синтеза речи состоит из нескольких блоков.

  •  Определение языка текста
  •  Нормализация текста
  •  Лингвистический анализ: синтаксический,морфемный анализ и т.д.
  •  Формирование просоидических характеристик
  •  Фонемный транскриптор
  •  Формирование управляющей информации
  •  Получение звукового сигнала

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

8.3.3. Модуль лингвистической обработки

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

8.3.4. Лингвистический анализ

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

Кроме того, следует корректно рассматривать случаи графической омонимии: одна и та же последовательность буквенных символов в различных контекстах порой представляет два различных слова/словоформы и читается по-разному (ср. выше приведенный пример слова "замок"). Часто удается решить проблему неоднозначности такого рода путем грамматического анализа, однако иногда помогает только использование более широкой семантической информации.

Для языков с достаточно регулярными правилами чтения одним из продуктивных подходов к переводу слов в фонемы является система контекстных правил, переводящих каждую букву/буквосочетание в ту или иную фонему, то есть автоматический фонемный транскриптор. Однако чем больше в языке исключений из правил чтения, тем хуже работает этот метод. Стандартный способ улучшения произношения системы состоит в занесении нескольких тысяч наиболее употребительных исключений в словарь. Альтернативное подходу "слово-буква-фонема" решение предполагает морфемный анализ слова и перевод в фонемы морфов (то есть значимых частей слова: приставок, корней, суффиксов и окончаний). Однако в связи с разными пограничными явлениями на стыках морфов разложение на эти элементы представляет собой значительные трудности. В то же время для языков с богатой морфологией, например, для русского, словарь морфов был бы компактнее. Морфемный анализ удобен еще и потому, что с его помощью можно определять принадлежность слов к частям речи, что очень важно для грамматического анализа текста и задания его просодических характеристик. В английских системах синтеза морфемный анализ был реализован в системе МIТAK, для которой процент ошибок транскриптора составляет 5%.

Особую проблему для данного этапа обработки текста образуют имена собственные.

8.3.5. Формирование просодических характеристик

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

Формирование просодических характеристик, необходимых для озвучивания текста, осуществляется тремя основными блоками, а именно: блоком расстановки синтагматических границ (паузы), блоком приписывания ритмических и акцентных характеристик (длительности и энергия), блоком приписывания тональных характеристик (частота основного тона). При расстановке синтагматических границ определяются части высказывания (синтагмы), внутри которых энергетические и тональные характеристики ведут себя единообразно и которые человек может произнести на одном дыхании. Если система не делает пауз на границах таких единиц, то возникает отрицательный эффект: слушающему кажется, что говорящий (в данном случае - система) задыхается. Помимо этого, расстановка синтагматических границ существенна и для фонемной транскрипции текста. Самое простое решение состоит в том, чтобы ставить границы там, где их диктует пунктуация. Для наиболее простых случаев, когда пунктуационные знаки отсутствуют, можно применить метод, основанный на использовании служебных слов. Именно эти методы используются в системах синтеза Рго-Sе-2000, Infovox-5А-101 и DЕСTаLк, причем в последней просодически ориентированный словарь, помимо служебных слов, включает еще и глагольные формы.

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

8.3.6. Cинтезатор русской речи

В качестве примера рассмотрим разработку "Говорящая мышь" клуба голосовых технологий научного парка МГУ. (Известно, что в некоторых российских организациях и компаниях ведутся аналогичные разработки, однако подробных сведений в печати обнаружить не удалось.

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

8.3.7. Язык формальной записи правил синтеза

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

8.3.8. Интонационное обеспечение

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

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

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

8.3.9. Аллофонная база данных

Необходимый речевой материал был записан в следующем режиме оцифровки: частота дискретизации 22 кГц с разрядностью 16 бит.

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

8.3.10. Лингвистический анализ

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

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

Готовый акустический сигнал преобразуется в формат данных, принятый для вывода звуковой информации. Используются два формата: WAV (Waveform Audio File Format), являющийся одним из основных, или VОХ (Voice File Format), широко используемый в компьютерной телефонии. Вывод также может осуществляться непосредственно на звуковую карту.

8.3.11. Инструментарий синтеза русской речи 

Упоминавшийся выше инструментарий синтеза русской речи по тексту позволяет читать вслух смешанные русско-английские тексты. Инструментарий представляет собой набор динамических библиотек (DLL), в который входят модули русского и английского синтеза, словарь ударений русского языка, модуль правил произнесения английских слов. На вход инструментария подается слово или предложение, подлежащее произнесению, с выхода поступает звуковой файл в формате WAV или VOX, записываемый в память или на жесткий диск.

8.4. Cистема распознавания речи

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

Акустическая модель отвечает за представление речевого сигнала.Лингвистическая модель интерпретирует информацию, получаемую от акустической модели, и отвечает за представление результата распознавания потребителю.

8.4.1. Акустическая модель 

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

8.4.2. Лингвистическая модель 

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

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

Далее, на морфологическом уровне, оперируют со слогоподобными единицами речи более высокого уровня, чем фонема. Иногда они называются морфемами. Они накладывают ограничение уже на структуру слова, подчиняясь закономерностям моделируемого естественного языка. Лексический ярус охватывает слова и словоформы того или иного естественного языка, то есть словарь языка, так же внося важную априорную информацию о том, какие слова возможны для данного естественного языка. Семантика устанавливает соотношения между объектами действительности и словами, их обозначающими. Она является высшим уровнем языка. При помощи семантических отношений интеллект человека производит как бы сжатие речевого сообщения в систему образов, понятий, представляющих суть речевого сообщения. Отсюда следует вывод, что система должна быть "умной". Чем лучше у нее будет построена модель семантических связей, эквивалента "системы мысленных образов", тем больше вероятность правильно распознать речь.

8.5. Классификация систем распознавания речи

Классификация по назначению:

  •  командные системы
  •  системы диктовки текста

По потребительским качествам:

  •  диктороориентированные (тренируемые на конкретного диктора)
  •  дикторонезависимые
  •  распознающие отдельные слова
  •  распознающие слитную речь.

По механизмам функционирования:

  •  простейшие (корреляционные) детекторы
  •  экспертные системы с различным способом формирования и обработки базы знаний
  •  вероятностно-сетевые модели принятия решения, в том числе нейронные сети.

Заключение

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

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

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


9. Системы машинного зрения

Введение

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

Компанией "Бит" была разработана специальная технология распознавания символов, которая получила название "Фонтанного преобразования" , а на ее основе - коммерческий продукт, получивший высокую оценку. Это система оптического распознавания Fine Reader. Сегодня на рынке представлена уже третья версия продукта, которая работает не только с текстом, но и с формами, таблицами, а разработчики уже колдуют над новой четвертой версией Fine Reader, которая будет распознавать не только печатный но и рукописный текст.

9.1. Основные принципы или целостность восприятия

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

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

Так, читая предложение, человек узнает буквы, воспринимает слова, связывает их в синтаксические конструкции и понимает смысл.

В технических системах любое решение при распознавании текста принимается неоднозначно, а путем последовательного выдвижения и проверки гипотез и привлечения как знаний о самом исследуемом объекте, так и общего контекста. Целостное описание класса объектов восприятия отвечает двум условиям: во - первых, все объекты данного класса удовлетворяют этому описанию, а во- вторых, ни один объект другого класса не удовлетворяют ему. Например, класс изображений буквы "К" должен быть описан так, чтобы любое изображение буквы "К" в него попадало, а изображение всех других букв - нет. Такое описание обладает свойством отображаемости, то есть обеспечивает воспроизведение описываемых объектов: эталон буквы для системы OCR позволяет визуально воспроизвести букву, эталон слова для распознавания речи позволяет произнести слово, а описание структуры предложения в синтаксическом анализаторе позволяет синтезировать правильное предложение. С практической точки зрения отображаемость играет огромную роль, поскольку позволяет эффективно контролировать качество описаний.

Существует два вида целостного описания: шаблонное и структурное.

В первом случае описание представляет собой изображение в растровом или векторном представлении, и задан класс преобразований (например, повтор, масштабирование и пр.).

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

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

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

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

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

Ныне одним из лидеров в области генетического программирования является группа исследователей из Стэндфордского университета (Stanford University), работающая под руководством профессора Джона Коза. Генетическое программирование вдохнуло новую жизнь в хорошенько уже подзабытый язык LISP (List Processing), который создавался группой Джона Маккарти (того самого, кто в 60-е годы ввел в наш обиход термин "искусственный интеллект") как раз для обработки списков и функционального программирования. Кстати, именно этот язык в США был и остается одним из наиболее распространенных языков программирования для задач искусственного интеллекта.

9.2. Распознавание символов

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

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

9.2.1.Шаблонные системы

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

9.2.2.Структурные системы

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

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

9.2.3.Признаковые системы

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

9.2.4. Структурно-пятенный эталон

Фонтанное преобразование совмещает в себе достоинства шаблонной и структурной систем и, по нашему мнению, позволяет избежать недостатков, присущих каждой из них по отдельности. В основе этой технологии лежит использование структурно-пятенного эталона. Он позволяет представить изображения в виде набора пятен, связанных между собой n-арными отношениями, задающими структуру символа. Эти отношения (то есть расположение пятен друг относительно друга) образуют структурные элементы, составляющие символ. Так, например, отрезок - это один тип n-арных отношений между пятнами, эллипс -другой, дуга - третий. Другие отношения задают пространственное расположение образующих символ элементов.

В эталоне задаются:

- имя;

- обязательные, запрещающие и необязательные структурные элементы;

- отношения между структурными элементами;

-отношения, связывающие структурные элементы с описывающим прямоугольником символа;

- атрибуты, используемые для выделения структурных элементов;

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

- атрибуты, используемые для оценки качества элементов и отношений;

- позиция, с которой начинается выделение элемента (отношения локализации элементов).

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

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

В качестве отношений используются связи между структурными элементами, которые определяются либо метрическими характеристиками этих элементов (например, <длина больше>), либо их взаимным расположением на изображении (например, <правее>,<соприкасается>).

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

Конкретизирующие параметры используются также для вычисления <качества> конкретного структурного элемента изображения и <качества> выполнения данного отношения./DT>

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

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

<Распознавание с использованием структурно-пятенного эталона происходит следующим образом. Эталон накладывается на изображение, и отношения между выделенными на изображении пятнами сравниваются с отношениями пятен в эталоне. Если выделенные на изо-бражении пятна и отношения между ними удовлетворяют эталону некоторого символа, то данный символ добавляется в список гипотез о результате распознавания входного изображения./DT>

9.3. Система  машинного чтения от Cognitive Technologies

Работает система по принципу <одной кнопки>. Это означает, что при нажатии кнопки <Сканируй и Распознавай> запускается весь процесс обработки документа: сканирование, фрагментация страницы на текстовые и графические блоки, распознавание текста, проверка орфографии и формирование выходного файла. Но что за всем этим стоит? Интеллектуальный алгоритм позволяет автоматически подобрать оптимальный уровень яркости сканера (адаптивное сканирование) в зависимости от фона документа, со-хранить иллюстрации (или, в зависимости от решаемой задачи, удалить ненужные графические элементы для максимального сокращения последующего редактирования).

В CuneiForm используется несколько методов подобного сопоставления. Во-первых, образ каждого символа раскладывается на отдельные элементы - события. К примеру, событием является фрагмент от одной линии пересечения до другой. Совокупность событий представляет собой компактное описание символа.

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

В CuneiForm'96 мы впервые применили алгоритмы самообучения (или адаптивного распознавания). Принцип их работы состоит в следующем. В каждом тексте присутствуют четко и нечетко пропечатанные символы. Если после того как система распознала текст (как это делает обычная система, например предыдущая версия OCR CuneiForm 2.95), выясняется, что точность оказалась ниже пороговой, производится дораспознавание текста на основе шрифта, который генерируется системой по хорошо пропечатанным символам. Здесь разработчики соединили достоинства двух типов систем распознавания: омни- и мультишрифтовые. Напомним, что первые позволяют распознавать любые шрифты без дополнительного обучения, вторые же более устойчивы при распознавании низкокачественных текстов. Результаты применения Cunei-Form'96 показали, что использование самообучающихся алгоритмов позволяет поднять точность распознавания низкокачественных текстов в четыре-пять раз! Но главное, пожалуй, в том, что самообучающиеся системы обладают гораздо большим потенциалом повышения точности распознавания.

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

Сегодня наряду с задачами повышения точности распознавания на передний план выходят вопросы расширения сфер применения OCR-технологий, соединения технологий распознавания с архивными системами. Иными словами, мы переходим от монопрограммы, выполняющей функции ввода текста, к автоматизированным комплексам, решающим задачи клиента в области документооборота. Вот уже около полугода CuneiForm поставляется в комплекте с сервером распознавания CuneiForm OCR Server, предназначенным для коллективного ввода данных в организациях, а электронный архив <Евфрат>, включающий модуль распознавания, за короткое время приобрел большую популярность.

С таким прицелом создавался и комплект CuneiForm'96i Professional, существенно изменивший представления о системах распознавания в целом.

9.4. Распознавание рукописных текстов

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

И все же сегодня мы можем признать, что основные этапы разработки технологии распознавания рукописных (отдельные символы, написанные от руки) символов уже пройдены. В арсенале Cognitive Technologies имеются технологии распознавания всех основных типов текстов: стилизованных цифр, печатных символов и <рукопечатных> символов. Но технологии ввода <рукопечатных> символов потребуется еще пройти стадию адаптации, после чего можно будет заявить, что инструментарий для потокового ввода документов в архивы действительно реализован полностью.

Резюме

Динамичное развитие новых компьютерных технологий (сетевые технологии, технологии <клиент-сервер>, и т. д.) нашли свое отражение и в состоянии сектора электронного документооборота. Если раньше в продвижении технологий бесклавиатурного ввода делался упор на преимущества их персонального использования, то сегодня на первый план выходят преимущества коллективного и рационального использования технологий ввода и обработки документов. Иметь одну, обособленную систему распознавания сегодня уже явно недостаточно. С распознанными текстовыми файлами (как бы хорошо они распознаны ни были) нужно что-то делать: хранить в базе данных, осуществлять их поиск, передавать по локальной сети, и т. д. Словом, требуется взаимодействие с архивной или иной системой работы с документами. Таким образом, система распознавания превращается в утилиту для архивных и иных систем работы с документами.

С появлением сетевых версий систем сканирования (режим потокового сканирования OCR CuneiForm) и распознавания (сервер распознавания CuneiForm OCR Server) документов нашей компании уже удалось реализовать некоторые преимущества коллективного использования таких технологий в организациях разного масштаба. По этой причине, с нашей точки зрения, актуальным был бы разговор о комплексном решении компаниями проблемы автоматизации работы с документами в организациях самого различного ранга. Что касается Cognitive Technologies, то представляемый ею электронный архив <Евфрат> (система включает в себя возможность ввода документов с помощью OCR CuneiForm), новые утилиты, встроенные в OCR CuneiForm'96, и технологии, используемые при реализации крупных проектов, продолжают линию компании, направленную на расширение применения систем ввода информации и разработку технологий автоматизации работы с документами


Библиографический список 

  1.  Логический подход к искусственному интеллекту. / Под ред. Гаврилова Г.П. - М.: Мир,1990.
  2.  Эндрю А. Искусственный интеллект / А. Эндрю. Под ред. Поспелова Д.А. - М.: Мир, 1985.
  3.  Перспективы развития вычислительной техники.Кн.2. Интеллектуализация ЭВМ.М., 1989
  4.  Уинстон П. Искусственный интеллект/ П. Уинстон. М.,1980.
  5.  Хант Э. Искусственный интеллект. М.,1978.
  6.  Экспертные системы. Принципы работы и примеры: Пер. с англ./ А. Брукинг, П. Джонс, Ф. Кокс. – М.: Радио и связь, 1987. –224 с: ил.
  7.  Аверкин А.Н. и др .Обобщенные стратегии в решателях проблем.
  8.  Кирсанов Б.С., Попов Э.В. Отечественные оболочки экспертных систем для больших ЭВМ / Искусственный интеллект: Справочник. - Т. 1.- М.: Радио и связь, 1990
  9.  Уотермен Д. Руководство по экспертным системам: Пер. с англ. / Д. Уотермен. М.: Мир, 1989.- 388 с.
  10.  Построение экспертных систем / Под ред. Ф. Хайес-Рота, Д. Уотермена, Д. Лената.- М.: Мир, 1987
  11.  Гаврилова Т.А. Извлечение и структурирование знаний для экспертных систем./ Т.А. Гаврилова, К.Р. Червинская  - М.: Радио и связь, 1992
  12.  Ф.Уоссермен Ф., Нейрокомпьютерная техника/ Ф.Уоссермен - М.,Мир, 1992.


Оглавление

[1] 6. Архитектура и принцип функционирования ЭС

[1.1] 6.1. Феномен экспертных систем

[1.2] 6.2. Архитектура экспертных систем

[1.3] 6.3. Автоматическое рассуждение. Основные механизмы дедукции (логического вывода).

[1.4] 6.4. Объяснительный компонент

[1.5] 6.5. Категории экспертных систем

[1.6] 6.6. Методология построения экспертных систем

[1.7] 6.7.Современное состояние разработки экспертных систем

[1.8] и инструментальных средств для их построения

[1.8.1] 6.7.1Тенденции развития экспертных систем

[1.9] 6.8.Представление знаний в ЭС

[1.9.1] 6.8.1. Основные понятия

[1.9.2] 6.8.2. Состав знаний экспертной системы

[1.9.3] 6.8.3.Организация знаний

[1.9.4] 6.8.4.Модели представления знаний

[1.10] 6.9.Теоретические аспекты извлечения знаний

[1.10.1] 6.9.1. Стратегии получения знаний

[2]
7. Системы распознавания образов (идентификации)

[2.1] 7.1.Понятие образа

[2.2] 7.2.Проблема обучения распознаванию образов (ОРО)

[2.3] 7.3. Геометрический и структурный подходы.

[2.4] 7.4.Гипотеза компактности

[2.5] 7.5.Обучение и самообучение. Адаптация и обучение

[2.6] 7.6. Перцептроны

[2.7] 7.7. Нейронные сети

[2.7.1] 7.7.1. История исследований в области нейронных сетей

[2.7.2] 7.7.2. Нейронные сети: основные положения

[3]
8. Системы распознавания естественного языка

[3.1] 8.1. Введение

[3.1.1] 8.1.1 Примеры системы обработки естественного языка

[3.1.2] 8.1.2. Методы озвучивания речи

[3.1.3] 8.1.3. Наиболее распространенные системы синтеза речи

[3.2] 8.2. Речевой вывод информации

[3.3] 8.3. Автоматический компьютерный синтез речи по тексту

[3.3.1] 8.3.1. Методы синтеза речи

[3.3.2] 8.3.2. Обобщенная функциональная структура синтезатора

[3.3.3] 8.3.3. Модуль лингвистической обработки

[3.3.4] 8.3.4. Лингвистический анализ

[3.3.5] 8.3.5. Формирование просодических характеристик

[3.3.6] 8.3.6. Cинтезатор русской речи

[3.3.7] 8.3.7. Язык формальной записи правил синтеза

[3.3.8] 8.3.8. Интонационное обеспечение

[3.3.9] 8.3.9. Аллофонная база данных

[3.3.10] 8.3.10. Лингвистический анализ

[3.3.11] 8.3.11. Инструментарий синтеза русской речи

[3.4] 8.4. Cистема распознавания речи

[3.4.1] 8.4.1. Акустическая модель

[3.4.2] 8.4.2. Лингвистическая модель

[3.5] 8.5. Классификация систем распознавания речи

[4]
9. Системы машинного зрения

[4.1] Введение

[4.2] 9.1. Основные принципы или целостность восприятия

[4.3] 9.2. Распознавание символов

[4.3.1] 9.2.1.Шаблонные системы

[4.3.2] 9.2.2.Структурные системы

[4.3.3] 9.2.3.Признаковые системы

[4.3.4] 9.2.4. Структурно-пятенный эталон

[4.4] 9.3. Система  машинного чтения от Cognitive Technologies

[4.5] 9.4. Распознавание рукописных текстов

[5]
Библиографический список

[6]
Оглавление

PAGE  110




1. тема окон. Студентки группы- 2ДД39 Уткиной Любови
2. на тему- Формування комплексу маркетингу підприємства FRESH Виконала- ст
3. Экономика СССР в годы Великой Отечественной войн
4. Захист прав і свобод людини та карний процес
5. тематизация знаний о компании и ее бизнеспроцессах в наглядной графической форме более удобной для аналитич
6. Лабораторная работа Урок КВН на тему Занимательное материаловедение
7. чезними захопленими територіями
8. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата технічних наук Київ ~.2
9. Редонт и ортопласт 2
10. Реферат экологические проблемы в строительной индустрии
11. права человека одно из наиболее часто употребляемых сочетаний
12. Практика использования СМИ в связях с общественностью
13. вв славяне освоили Европу
14. Психолог в школе и работа с родителями
15. Реферат на тему- ЧИНА ЛУЧНА ЧИСТЕЦЬ БОЛОТЯНИЙ ЧИСТЕЦЬ ЛІСОВИЙ ЧИНА ЛУЧНА горошок жовтий горошок жур
16. Мысли на миллион Участник УО Вопрос Итого
17. контрольна робота складається з відповідей на два теоретичні питання які визначаються за першою літерою пр
18. Реферат Зачет диф
19. политическое движение в 1860х1880х гг
20. это уже не случайно