Базы знаний как современные интеллектуальные информационные системы

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ

ИНЖЕНЕРНО-ЭКОНОМИЧЕСКИЙ УНИВЕРСИТЕТ

РЕФЕРАТ

Базы знаний как современные интеллектуальные информационные системы

Санкт-Петербург

2009

Содержание

Введение

1 Общие положения

1.1 Классификация баз знаний

1.2 Применение баз знаний

2 Интеллектуальная информационная система

2.1 Классификация задач, решаемых ИИС

3 Базы знаний в интеллектуальной системе

3.1 Машинное обучение

3.1.1 Общая постановка задачи обучения по прецедентам

3.1.2 Способы машинного обучения

3.1.3 Классические задачи решаемые с помощью машинного обучения

3.1.4 Типы входных данных при обучении

3.1.5 Типы функционалов качества

3.1.6 Практические сферы применения

3.2 Автоматическое доказательство

Введение

База знаний, БЗ (англ. Knowledge base, KB) — это особого рода база данных, разработанная для управления знаниями (метаданными), то есть сбором, хранением, поиском и выдачей знаний. Раздел искусственного интеллекта, изучающий базы знаний и методы работы со знаниями, называется инженерией знаний.

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

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

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

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

1. Общие положения

1.1 Классификация баз знаний

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

1) БЗ всемирного масштаба — например, Интернет или Википедия

2) БЗ национальные — например, Википедия

3) БЗ отраслевые— например, Автомобильная энциклопедия

4) БЗ организаций

5) БЗ экспертных систем

6) БЗ специалистов

1.2 Применение баз знаний

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

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

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

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

2. Интеллектуальная информационная система

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

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

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

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

2.1 Классификация задач, решаемых ИИС

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

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

3) Мониторинг. Основная задача мониторинга — непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы — «пропуск» тревожной ситуации и инверсная задача «ложного» срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учёта временного контекста.

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

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

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

7) Обучение. Под обучением понимается использование компьютера для обучения какой-то дисциплине или предмету. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом «ученике» и его характерных ошибках, затем в работе они способны диагностировать слабости в познаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний.

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

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

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

3. Базы знаний в интеллектуальной системе

Ниже перечислены интересные особенности, которые могут (но не обязаны) быть у интеллектуальной системы, и которые касаются баз знаний.

1) Машинное обучение: Это модификация своей БЗ в процессе работы интеллектуальной системы, адаптация к проблемной области. Аналогична человеческой способности «набирать опыт».

2) Автоматическое доказательство (вывод): Способность системы выводить новые знания из старых, находить закономерности в БЗ. Некоторые авторы считают, что БЗ отличается от базы данных наличием механизма вывода.

3) Интроспекция: Нахождение противоречий, нестыковок в БЗ, слежение за правильной организацией БЗ.

4) Доказательство заключения: Способность системы «объяснить» ход её рассуждений по нахождению решения, причем «по первому требованию».

3.1 Машинное обучение

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

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

3.1.1 Общая постановка задачи обучения по прецедентам

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

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

3.1.2 Способы машинного обучения

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

1) Обучение с учителем - для каждого прецедента задаётся пара «ситуация, требуемое решение»:

- Метод коррекции ошибки

- Метод обратного распространения ошибки

2) Обучение без учителя - для каждого прецедента задаётся только «ситуация», требуется сгруппировать объекты в кластеры, используя данные о попарном сходстве объектов, и/или понизить размерность данных:

- Альфа-система подкрепления

- Гамма-система подкрепления

- Метод ближайших соседей

3) Обучение с подкреплением - для каждого прецедента имеется пара «ситуация, принятое решение»:

4) Активное обучение - отличается тем, что обучаемый алгоритм имеет возможность самостоятельно назначать следующую исследуемую ситуацию, на которой станет известен верный ответ:

5) Обучение с частичным привлечением учителя (semi-supervised learning) - для части прецедентов задается пара «ситуация, требуемое решение», а для части - только «ситуация»

6) Трансдуктивное обучение (transduction) - обучение с частичным привлечением учителя, когда прогноз предполагается делать только для прецедентов из тестовой выборки

7) Многозадачное обучение (multi-task learning) - одновременное обучение группе взаимосвязанных задач, для каждой из которых задаются свои пары «ситуация, требуемое решение»

8) Многовариантное обучение (multi-instant learning) - обучение, когда прецеденты могут быть объединены в группы, в каждой из которых для всех прецедентов имеется «ситуация», но только для одного из них (причем, неизвестно какого) имеется пара «ситуация, требуемое решение»

3.1.3 Классические задачи решаемые с помощью машинного обучения

- Классификация как правило, выполняется с помощью обучения с учителем на этапе собственно обучения.

- Кластеризация как правило, выполняется с помощью обучения без учителя

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

- Понижение размерности данных и их визуализация выполняется с помощью обучения без учителя

- Восстановление плотности распределения вероятности по набору данных

- Одноклассовая классификация и выявление новизны

- Построение ранговых зависимостей

3.1.4 Типы входных данных при обучении

- Признаковое описание объектов — наиболее распространённый случай.

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

- Временной ряд или сигнал.

- Изображение или видеоряд.

3.1.5 Типы функционалов качества

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

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

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

3.1.6 Практические сферы применения

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

- Машинное обучение имеет широкий спектр приложений:

- Распознавание речи

- Распознавание изображений

- Распознавание рукописного ввода

- Техническая диагностика

- Медицинская диагностика

- Прогнозирование временных рядов

- Биоинформатика

- Обнаружение мошенничества

- Обнаружение спама

- Категоризация документов

- Биржевой технический анализ

- Финансовый надзор

- Кредитный скоринг

- Предсказание ухода клиентов

- Хемоинформатика

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

3.2 Автоматическое доказательство

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

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

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