Авторы: В.А. Крисилов, С.М. Побережник, Р.А. Тарасенко
Источник: http://storage.library.opu.ua/online/periodic/opu_1998_2(6)/1_14.htm
В.А. Крісілов, С.М. Побережник, Р.О. Тарасенко. Порівняльний аналіз моделей подання знань в інтелектуальних системах. Розглянуто базові моделі подання знань в інтелектуальних системах. Запропоновано кілька формальних критеріїв для їх порівняння та класифікації. Коротко описано застосування різних моделей на практиці.
V.A. Krisilov, S.M. Poberezhnik, R.A. Tarasenko. Comparative analysis of the knowledge re-presentation models in artificial intelligence systems. The paper presents the basic models of knowledge representation. Some formal nriteries for comparison and classification are proposed. Practical application of different models is briefly described.
В настоящее время известно значительное количество программных систем, используемых для решения таких сложных задач, как оценка ситуации и выбор решения при управлении сложными процессами; оценка и выбор оптимальных проектных решений; техническая и медицинская диагностика; оценка кредитных и инвестиционных рисков; прогнозирование финансово-экономических параметров: доходности предприятия, курсов валют, биржевых цен и т.п. В силу интеллектуального характера решаемых задач, а также того, что самим системам присущи способность достигать высокого качества формируемых решений, а также обучаться и объяснять свои решения, такие системы называются интеллектуальными и объединяют достаточно широкий круг программных продуктов. К ним относятся и экспертные системы (expert systems), системы для численного обоснования принятия решения (decision support systems), системы для распознавания образов (текстов, изображения, речи) и некоторые другие.
В программировании в целом наметилась быстро развивающаяся тенденция к интеллектуализации. Так, сейчас практически все популярные программные продукты в большей или меньшей степени приобрели черты интеллектуальности. Запоминание действий пользователя, подсказки и рекомендации по оптимальному использованию соответствующих режимов самих программ, сложные ассоциативные поиски, оптимизация кода при программировании, сложные механизмы обеспечения корректности данных при вводе и хранении вот неполный перечень признаков "поумнения" современных программных средств. А это, в свою очередь, является немаловажной предпосылкой дальнейшего прогресса в разработке интеллектуальных систем (ИС).
Одной из основных проблем при создании ИС является выбор модели представления знаний [1]. Именно модель представления знаний определяет архитектуру, возможности и свойства системы, а также методы приобретения знаний ИС. В настоящее время известен ряд базовых моделей представления знаний и их модификаций это представление с помощью фактов и правил, исчисления предикатов, нейронные сети, семантические сети, фреймы. Каждая из моделей позволяет получить интеллектуальную систему с некоторыми преимуществами, делая ее более эффективной в конкретных условиях, облегчая ее понимание и требуемые модификации. Таким образом, почти всегда перед разработчиком возникает задача, на базе какой модели представления знаний строить данную интеллектуальную систему применительно к данной конкретной задаче.
С учетом данных, встречающихся в различных источниках, можно предложить следующий перечень критериев оценки моделей представления знаний: уровень сложности (абстрактности) элемента знаний, с которыми работает модель; универсальность представления знаний возможность описания знаний из различных предметных областей; естественность и наглядность представления знаний при использовании; способность модели к обучению и формированию новых, непротиворечивых знаний; размерность модели по объему памяти, необходимому для хранения элемента модели; удобство разработки системы на основе модели.
Проведем анализ современных моделей представления знаний по указанным критериям.
Модель представления знаний с помощью фактов и правил построена на использовании выражений вида
Если текущая ситуация (факты) в задаче удовлетворяет или согласуется с частью правила ЕСЛИ, то выполняется действие, определяемое частью ТО [2]. Это действие может оказаться воздействием на окружающий мир или же повлиять на управление программой (например, вызвать проверку и запуск некоторого набора других правил), или может сводиться к указанию системе добавить новый факт или гипотезу в базу данных.
Сопоставление частей ЕСЛИ правил с фактами может породить так называемую цепочку выводов дерево решений [3]. Один из главных недостатков метода представления знаний с помощью правил значительные затраты времени на построение цепочки вывода. При частом использовании какого-либо дерева решений система редуцирует ("сжимает") дерево решений до нового правила и вводит его в базу знаний. Это действие называют продукцией правил. Правило такого рода имеет значительно большую размерность, чем исходные правила. Системы, построенные на основе продукционных моделей, более эффективны по затратам памяти и по быстродействию, чем системы, основанные просто на правилах.
По уровню абстрактности элемента знаний модель работает с простейшими составляющими знания фактами и правилами. Модель направлена на решение простых, однородных задач и приводит к резкому падению эффективности решения таких проблем, которые состоят из нескольких разнородных задач. Серьезнейшим недостатком является невозможность эффективно описать правила с исключениями. Объем памяти, необходимый для хранения элемента знаний модели конструкции ЕСЛИ ТО, мал в силу его простоты. Однако база знаний, описывающая реальную, даже не очень сложную задачу, должна содержать сотни и тысячи правил [4].
Одной из первых была система DENDRAL, созданная для формирования заключения о структурах химических соединений на основании масс-спектрометрии. Не менее известными экспертными системами, основанными на описанной модели, являются: MYCIN система для диагностирования бактериальных инфекций; INTERNIST (позже CADUCEUS) система-консультант в области общей терапии.
Эффективность этих ИС объясняется довольно просто. Продукционная модель накладывает ряд ограничений на решаемую задачу, объем знаний и некоторые другие параметры ИС. Создатели первых подобных систем строили их в рамках этих ограничений и получили эффективные и удобные решения. Каждая из перечисленных ИС охватывает узкую и сравнительно хорошо определенную предметную область. Разработанные системы настолько понравились пользователям, что были предприняты попытки применения данного подхода к другим областям знаний с аналогичными свойствами. Из системы MYCIN извлечена проблемно-независимая часть в форме "пустой" системы MYCIN, названной EMYCIN. Последняя использована, например, при создании систем PUFF (обеспечение активной медицинской помощи при респираторных заболеваниях), SACOM (расчеты механических структур), CLOT (измерение состава крови) и т.д.
Модель представления знаний с помощью логики предикатов использует в своей основе математический аппарат одного из разделов математической логики, называемый символьной логикой [5]. Основными формализмами представления предикатов являются "терм", устанавливающий соответствие знаковых символов описываемому объекту, и предикат для описания отношения сущностей в виде реляционной формулы, содержащей в себе термы. Когда говорится "предикат", то обычно имеется в виду, что в него входит терм-переменная. Например, таким предикатом является ОТЕЦ (X,Y). Пусть "Иван", "Василий" это термы. Когда же между ними имеется отношение "отец" и "ребенок", то это отношение описывается как ОТЕЦ (ИВАН, ВАСИЛИЙ).
Предикат, все термы которого являются термами-константами, называется высказыванием.
По уровню абстрактности элемента знаний эта модель, как и предыдущая, работает с простейшими составляющими знания фактами и правилами. Модель универсальна, однако, также, как и модель представления знаний с помощью фактов и правил, не может быть использована для создания ИС, которые должны одновременно манипулировать специальными знаниями из разных предметных областей.
Способности модели к обучению находятся на среднем уровне. С помощью логики предикатов можно, определяя произвольным образом знания, выяснить, имеются или отсутствуют противоречия между новыми и уже существующими знаниями. Объем памяти, необходимый для хранения элемента знаний предиката или предикатной формулы, мал в силу его простоты. Однако, база знаний, описывающая реальную, даже не очень сложную предметную область, должна содержать значительное количество указанных элементов.
Модель привлекает разработчиков высокой модульностью, легкостью внесения в систему дополнений и изменений, простотой механизма логического вывода и часто применяется в промышленных ИС.
Одна из первых эффективных ИС была создана Хаммондом и Серготом. В этой системе устройство Query-the-User комбинируется с оболочкой экспертных систем (APES), предусмотрены также средства для структурирования запросов на естественном языке. Система реализована на микро-Прологе, а очень гибкий инструмент, называемый APE-the-User, предназначен для построения экспертных систем. Она с успехом использована для создания юридических экспертных систем.
Начало современным моделям представления знаний с помощью сетей нейронов положено в работе Маккаллока и Питтса [6], где авторы сделали первую попытку эмулировать человеческие способности классифицировать и распознавать образы. В их формализме нейроны имеют состояния {0, 1} и пороговую логику перехода из состояния в состояние. Каждый нейрон определяет взвешенную сумму состояний остальных нейронов и сравнивает ее с порогом, чтобы определить свое собственное состояние. Дальнейшее развитие этого направления связано с тем, что Розенблат ввел в модель нейрона способность связей к модификации, что сделало ее обучаемой. Эта модель названа персептроном [7].
Новый виток быстрого развития моделей нейронных сетей, который начался 9-10 лет тому назад, связан с работами Карпентера и Гроссберга [8], и, в особенности, Хопфилда [9], а также под влиянием многообещающих успехов оптических технологий и зрелой фазы развития СБИС для реализации новых архитектур.
В основу искусственных нейронных сетей положены следующие черты живых нейронных сетей, позволяющие им хорошо справляться с нерегулярными задачами: простой обрабатывающий элемент нейрон; очень большое число нейронов участвует в обработке информации; один нейрон связан с большим числом других нейронов; изменяющиеся по весу связи между нейронами; массированная параллельность обработки информации.
По структуре связей сети делятся на два больших класса: однослойные и многослойные. Подходы к обучению однослойных и многослойных сетей различны. В однослойных часто удается выразить веса связей через параметры задачи (так обстоит дело с моделью Хопфилда и однослойной машиной Больцмана). Обучение многослойных сетей состоит в том, что на основе набора примеров {входное состояние ® выходное состояние} итеративно подбираются веса всех связей так, чтобы каждое входное состояние вызывало соответствующее выходное.
Итак, в рамках данного подхода элементом знания является состояние сети вектор состояний всех нейронов сети, что можно считать средним уровнем абстрактности представления знаний. Для решения конкретной задачи необходимо организовывать сети со значительным числом нейронов. Небольшой объем памяти, необходимый для хранения нейрона, позволяет эффективно пользоваться такими сетями.
Основными преимуществами нейросетей является их высокая адаптивность, а также их способность к обработке зашумленной и неполной информации. Однако переобучение или дообучение сети затрагивает только значения весовых коэффициентов на межнейронных соединениях. Создание же алгоритма обучения так же, как и проектирование структуры сети, являются творческими задачами, выполняемыми специалистами высокой квалификации для конкретных задач. Еще один недостаток нейронных сетей ненаглядность представления знания: образы, запомненные сетью при обучении, закодированы в виде состояний всех нейронов, а процесс принятия решения не может быть представлен в виде наглядных конструкций ЕСЛИ - ТО.
Модель может применяться для решения задач распознавания образов практически в любой предметной области, например, при решении задач прогнозирования сложных процессов. Так, по заказу Chemical Bank фирма Logica (США) разработала и внедрила систему для прогнозирования динамики биржевых курсов. Был достигнут высокий процент достоверности прогноза около 60 %. Mellon equity Associates подразделение Mellon Bank в Питсбурге внедрила у себя систему Neural-Works Professional II /Plus 5.0 фирмы Neural-Ware. Основные решаемые задачи: распределение фондов и специальная селекция акций.
Нейронные сети могут быть реализованы как программно, так и аппаратно. В настоящий момент на компьютерном рынке предлагается широкий спектр аппаратных средств, обладающих различными функциями, возможностями и, естественно, ценой [10]. Среди нейроБИС, которых насчитывается несколько десятков типов, выделяются модели фирмы Adaptive Solutions (США) и Hitachi (Япония).
Большинство сегодняшних нейрокомпьютеров представляют собой просто персональный компьютер или рабочую станцию, в состав которых входит дополнительная нейроплата. К их числу относятся, например, компьютеры серии FMR фирмы Fujitsu. Однако наибольший интерес представляют специализированные нейрокомпьютеры, непосредственно реализующие принципы нейронных сетей. Типичными представителями таких систем являются компьютеры семейства Mark фирмы TRW (первая реализация персептрона, разработанная Розенблатом, называлась Mark I). Другой интересной моделью является нейрокомпьютер NETSIM, созданный фирмой Texas Instruments на базе разработок Кембриджского университета. Его топология представляет собой трехмерную решетку стандартных вычислительных узлов на базе процессоров 80188.
Модель представления знаний с помощью семантических сетей состоит из вершин, называемых узлами, соответствующих объектам, концепциям или событиям, и связывающих их дуг, описывающих отношения между рассматриваемыми объектами [11]. Дуги могут быть определены разными методами. Обычно для представления иерархии используются дуги типа IS-A (отношение "является") и HAS-PART (отношение "имеет часть"). Они также устанавливают иерархию наследования в сети, т.е. элементы более низкого уровня в сети могут наследовать свойства элементов более высокого уровня, что экономит память, поскольку информацию о наследуемых свойствах не нужно повторять в каждом узле сети.
Выводы на семантических сетях реализуются через отношения между элементами, однако, они таят в себе угрозу возникновения противоречий.
Модель универсальна и легко настраивается. Характерная особенность семантической сети наглядность знаний как системы.
Семантические сети применены в системе CASNET (Caysal Associational NETwork). Целью разработки были исследования стратегий медицинской диагностики, в основу которых положены психологические и функциональные модели болезней. На основе семантических сетей также разработана известная система PROSPECTOR, предназначенная для оказания помощи геологам-изыскателям и способная давать три типа "советов": оценку местности на предмет существования определенных залежей, оценку геологических ресурсов региона и выбор участков местности, наиболее благоприятных для бурения. Программа создана компанией SRI International (совместно с консультантами по геологии) и организацией U.S. Geological Survey.
Серьезным недостатком систем CASNET и PROSPECTOR является их неудовлетворительная способность объяснить свои решения.
Модель представления знаний с помощью фреймов предложена Марвином Минским, который описывает их следующим образом [12]: "Фрейм это структура данных, представляющая стереотипную ситуацию, вроде нахождения внутри некоторого рода жилой комнаты или сбора на вечеринку по поводу рождения ребенка. Каждому фрейму присоединяются несколько видов информации. Часть этой информации о том, как использовать фрейм. Часть о том, чего можно ожидать далее. Часть о том, что следует делать, если эти ожидания не подтвердятся".
Фреймовая модель по своей организации во многом похожа на семантическую сеть. Она является сетью узлов и отношений, организованных иерархически: верхние узлы представляют общие понятия, а подчиненные им узлы частные случаи этих понятий. В системе, основанной на фреймах, понятие в каждом узле определяется набором атрибутов-слотов (например, имя, цвет, размер) и значениями этих атрибутов (например, "Запорожец", красный, маленький). Каждый слот может быть связан со специальными процедурами, которые выполняются, когда информация в слотах (значения атрибутов) меняется. С каждым слотом можно связать любое число процедур.
Описание некоторой предметной области в виде фреймов обладает высоким уровнем абстрактности. Фреймовая система не только описывает знания, но и позволяет человеку описывать метазнания, т.е. правила и процедуры обработки знаний, выбора стратегий, приобретения и формирования новых знаний. Модель является универсальной, поскольку существуют не только фреймы для обозначения объектов и понятий, но и фреймы-роли (отец, начальник, пешеход), фреймы-ситуации (тревога, рабочий режим устройства) и др.
Обучение фреймовых систем затруднено. Приобретение новых знаний возможно только в системах со сложной структурой фреймов. Создание таких систем требует серьезных затрат времени и средств, но они позволяют формировать новые знания на уровне понятий. При этом проблема устранения противоречивых знаний должна решаться самой системой. Для хранения элемента модели требуются значительные объемы памяти, определяемые сложностью конкретного фрейма.
Одной из наиболее известных ИС, построенных на основе фреймов, является система MOLGEN, предназначенная для планирования экспериментов в области молекулярной генетики. Необходимо отметить, что речь идет о планировании, а не о решении аналитических задач, т.е. невозможно полностью описать цель задачи перед началом ее решения. При такой постановке вопроса редуцировать пространство поиска с помощью простых методов не представляется возможным.
В настоящее время концепция фреймов быстро развивается и расширяется, благодаря развитию методов объектно-ориентированного программирования [13]. Практически во всех современных языках программирования появились специальные структурно-функциональные единицы (объекты, классы), обладающие основными признаками фреймов.
Итак, сделаем некоторые выводы. Каждая из известных моделей представления знаний обладает как минимум тремя недостатками из приведенного списка: недостаточный универсализм, сложность получения новых знаний, возможность получения противоречивых знаний; сложность наращивания модели, значительная размерность модели, отсутствие наглядности в представлении знаний.
Именно поэтому в последнее время значительное внимание в инженерии знаний уделяется сочетанию разных моделей. Все больше создается ИС, основанных на таких, казалось бы, несовместимых подходах, как нейронные сети и фреймы, семантические сети и логика предикатов и т.п. Учитывая все сказанное, можно сделать вывод о высокой актуальности исследований в этой области, а также о необходимости разработки новых подходов в изучении моделей представления знаний в интеллектуальных системах.