В настоящее время промышленности требуются информационные системы, которые, с одной стороны, могут использовать большое количество знаний, передаваемых специалистами, а с другой — способны вступать в диалог и объяснять свои собственные выводы. Это предполагает наличие эффективного управления большой по объему и хорошо структурированной базой знаний, строгое разграничение между различными уровнями знаний, наличие множества удобных представлений для правил, схем предикатов или прототипов и четко определенный процесс обмена информацией между различными источниками. Представлением и обработкой знаний в компьютерных системах занимаются исследователи в области инженерии знаний, введенное в
Постановка и решение любой задачи связаны с определенной предметной областью. Так, решая задачу составления расписания обработки деталей на металлорежущих станках, мы вовлекаем в предметную область такие объекты, как конкретные станки, детали, интервалы времени и общие понятия «станок», «деталь», «тип станка» и т.д.
Языки, предназначенные для описания предметных областей, называются языками представления знаний. Универсальным языком представления знаний является естественный язык. Однако использование естественного языка в системах машинного представления знаний наталкивается на ряд препятствий, главным из которых является отсутствие формальной семантики естественного языка. Кроме того, необходимо определить, что такое «знания» и «данные».
Данными называют информацию фактического характера, описывающую объекты, процессы и явления предметной области, а также их свойства. В процессах компьютерной обработки данные проходят следующие этапы преобразований:
- исходная форма существования данных (результаты наблюдений и измерений, таблицы, справочники, диаграммы, графики и т.д.);
- представление на специальных языках описания данных, предназначенных для ввода и обработки исходных данных в ЭВМ;
- базы данных на машинных носителях информации.
Для того чтобы поместить знания в информационную систему, их необходимо представить определенными структурами данных, соответствующих выбранной среде разработки интеллектуальной системы. Поэтому при разработке информационной системы сначала осуществляются накопление и представление знаний, причем на этом этапе обязательно участие человека, а затем знания представляются определенными структурами данных, удобными для хранения и обработки в ЭВМ. Знания в ИС существуют в следующих формах:
- исходные знания (правила, выведенные на основе практического опыта, математические и эмпирические зависимости, отражающие взаимные связи между фактами; закономерности и тенденции, описывающие изменение фактов с течением времени; функции, диаграммы, графы и т. д.);
- описание исходных знаний средствами выбранной модели представления знаний (множество логических формул или продукционных правил, семантическая сеть, иерархии фреймов и т. п.);
- представление знаний структурами данных, которые предназначены для хранения и обработки в ЭВМ;
- базы знаний на машинных носителях информации.
Ученые предлагают различные определения понятия «знания».
Знания — это формализованная информация, на которую ссылаются или используют в процессе решения задачи.
Знания — это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области.
Знания — это хорошо структурированные данные, или данные о данных, или метаданные.
Знание о предметной области — это описание объектов, их окружения, необходимых явлений, фактов, а также отношений между ними.
Знания в области искусственного интеллекта — это комплексные отношения объектов, представленные посредством интенсионального описания объектов (интенсиональное значение). Исследования в области баз данных обеспечивают эффективный доступ к большим массивам экземпляров типа объекта (экстенсиональное значение).
Общение с компьютерной системой на уровне знания предопределяет возможность ввода и использования ею некоторой совокупности взаимосвязанной информации. Сложность понятия «знание» заключена в множественности его носителя и неразрывности с понятием «данные». Выделяют несколько уровней формализации знания о предметной области: знания в памяти человека; знания в форме языковой модели предметной области, используемые человеком и зафиксированные на физических носителях с использованием контекстно-зависимых языков, графических образов и т.п.; знания, формализованные при использовании в ЭВМ; фактографические сведения или данные.
Исследователи в области искусственного интеллекта различными способами классифицируют знания:
- фактические и стратегические знания. Фактические знания — основные закономерности предметной области, позволяющие решать конкретные производственные, научные и другие задачи, то есть факты, понятия, взаимосвязи, оценки, правила, эвристики. Стратегические знания — стратегии принятия решений в предметной области;
- факты и эвристики. Факты указывают на хорошо известные в той или иной предметной области обстоятельств. Такие знания еще называют текстовыми, имея в виду достаточную их освещенность в специальной литературе и учебниках. Эвристики основываются на индивидуальном опыте специалиста (эксперта) в предметной области, накопленном в результате многолетней практики. Эта категория знаний нередко играет решающую роль при построении интеллектуальных программ. К эвристикам относятся такие знания, как «способы удаления бесполезных гипотез», способы использования нечеткой информации», «способы разрешения противоречий» и т.п.;
- факты и правила. Факты — это знания типа «А — это А», такие знания характерны для баз данных и сетевых моделей. Правила, или продукции, — это знания типа «ЕСЛИ А, ТО В».
- декларативные и процедурные знания. Под декларативными знаниями подразумеваются описания фактов, явлений (типа «A это B») и они характерны для баз данных. К процедурным знаниям относятся сведения о способах оперирования или преобразования декларативных знаний;
- интенсиональные и экстенсиональные знания. Интенсиональные знания — это знания о связях между атрибутами (признаками) объектов данной предметной области. Они оперируют абстрактными событиями и отношениями. Экстенсиональные знания представляют собой данные, характеризующие конкретные объекты, их состояния, значения параметров в пространстве и времени. В этой классификации оперируют интенсионалом и экстенсионалом понятий. Интенсионал понятия — это определение его через соотнесение с понятием более высокого уровня абстракции указанием специфических свойств. Интенсионалы формулируют знания об объектах. Другой способ определяет понятие через соотнесение с понятиями более низкого уровня абстракции или перечисление фактов, относящихся к определяемому объекту — это определение через данные, или экстенсионал понятия;
- глубинные и поверхностные знания. В глубинных знаниях отражается понимание структуры предметной области, назначение и взаимосвязь отдельных понятий (глубинные знания в фундаментальных науках — это законы и теоретические основания). Поверхностные знания обычно касаются внешних эмпирических ассоциаций с каким-либо феноменом предметной области;
- жесткие и мягкие знания. Жесткие знания позволяют получать однозначные рекомендации при заданных начальных условиях. Мягкие знания допускают множественные, «размытые» решения и различные варианты рекомендаций.
Форма представления знаний оказывает существенное влияние на характеристики ИС. Базы знаний являются моделями человеческих знаний. Однако все знания, которые привлекает человек в процессе решения сложных задач, смоделировать невозможно. Поэтому в интеллектуальных системах требуется четко разделить знания на те, которые предназначены для обработки компьютером, и знания, используемые человеком. Очевидно, что для решения сложных задач база знаний должна иметь достаточно большой объем, в связи с чем неизбежно возникают проблемы управления такой базой. Поэтому при выборе модели представления знаний следует учитывать такие факторы, как однородность представления и простота понимания. Однородность представления приводит к упрощению механизма управления знаниями. Простота понимания важна для пользователей интеллектуальных систем и экспертов, чьи знания закладываются в ИС. Если форма представления знаний будет трудна для понимания, то усложняются процессы приобретения и интерпретации знаний. Следует заметить, что одновременно выполнить эти требования довольно сложно, особенно в больших системах, где неизбежным становится структурирование и модульное представление знаний.
Выделают три парадигмы представления знаний: логическая, структурная, процедурная.
Логическая парадигма отождествляет знание с теорией, то есть теорией первого порядка.
Структурная парадигма уделяет особое внимание организации фактов, составляющих базу знаний. С вычислительной точки зрения, факты получаются из семантических элементов использованием заранее заданных правил. Примеры: семантические сети, фреймы, ER-диаграммы базы данных.
Согласно процедурной парадигме, база знаний составлена из активных агентов с определенными образами действия. С вычислительной точки зрения, использование знаний сводится к реакции этих агентов на данную ситуацию согласно процедурным правилам в базе знаний.
Рассмотрим модели представления знаний.
Модели представления знаний в интеллектуальных системах традиционно делятся на логические (формальные) и эвристические (формализованные).
К логическим моделям относятся:
- логика высказываний;
- логика предикатов первого порядка;
- логика Хорна в языке Prolog и ему подобных системах;
- логика предикатов высших порядков;
- трехзначная логика;
- логика возможных миров;
- модальные логики;
- теория нечетких множеств;
- нечеткая логика;
- лингвинистические переменные.
К эвристическим моделям представления знаний можно отнести:
- деревья решений;
- семантические сети;
- фреймы и сети фреймов;
- онтологии;
- объектно-ориентированное программирование;
- реляционную алгебру;
- правила-продукции;
- матрицу весов связей обученной нейронной сети.
Наиболее распространенными моделями представления знаний в информационных системах являются:
- логические модели;
- продукционные модели;
- сетевые модели;
- фреймовые модели.