Рефераты. Информационные системы менеджмента

Конструирование базы знаний

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

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

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

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

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

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

Системы баз знаний должны содержать следующие компоненты:

язык представления знаний, который эффективно выражает структуру данного приложения;

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

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

20. Определение, назначение и области применения экспертных систем

1.1. Думать или вычислять?

В 1950 году английский математик Тьюринг поставил вопрос «могут ли машины думать?». В те времена предположение «да, через 50 лет» Тьюрингу показалось вполне осуществимым.

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

Не исключением стала и интеллектуальная деятельность человека. С момента зарождения кибернетики разработчики компьютерных программ пытались воспроизвести механизм мышления человека или, иначе говоря, ставилась задача научить компьютер «думать». Начало исследованиям в области создания и использования интеллектуальных систем положили работы «отца кибернетики» Норберта Винера [1] и Г.С. Альтшуллера [2].

Первые попытки создания интеллектуальных систем сводились к разработке программ, решающих задачи с помощью разнообразных эвристических методов, основанных на свойственном человеческому мышлению обобщении, использованию универсальных подходов к решению различных задач. То есть усилия были направлены на создание универсальных программ. Результатами этой работы явились такие программы, как ЛОГИК-ТЕОРЕТИК, предназначенная для доказательства теорем в исчислении высказываний, и ОБЩИЙ РЕШАТЕЛЬ ЗАДАЧ, созданные Ньюэллом, Саймоном и Шоу, занимавшихся исследованием процессов решения различных задач [3]. Также следует отметить всевозможные игровые программы и вычислительные системы.

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

Американский кибернетик А. Самуэль разработал программу, играющую в шашки. Причем в ходе игры машина обучалась, совершенствуя свою игру на основе накопленного опыта. В 1962 г. эта программа сразилась с Р. Нили, сильнейшим шашистом в США и победила. Такой высокий результат машине удалось достичь благодаря вычислению на каждом шагу игры некоторой оценочной функции, числового показателя, оценивающего качество хода. Эта функция была основана на сочетаниях (в виде линейной комбинации с экспериментально подбираемыми коэффициентами или более сложным образом) знаний о правилах игры, стратегиях и приемах выигрывания (например, как в шашках, и так и в шахматах обычно невыгодно терять свои фигуры, и, напротив, выгодно брать фигуры противника; подвижность фигур и право выбора ходов позволяет держать под боем большое число полей на доске и пр.), а также знаниях, относящихся к отдельным стадиям игры - дебюту, миттэндшпилю, эндшпилю. Сравнивая между собой показатели эффективности различных возможных на данном шаге ходов, машина выберет ход, соответствующий наибольшему показателю. Совершенствование игры состоит в подстройке параметров (коэффициентов) оценочной функции на основе анализа совершенных ходов и игр с учетом их исхода. Следует отметить, что все эти элементы интеллекта заложены в программу ее автором. И хотя машина и совершенствует свою стратегию игры в процессе самообучения, способность выигрывать основана на вычислительной мощности ее процессора. К примеру, компьютер фирмы IBM, победивший в шахматы мирового чемпиона Каспарова, имел 256 процессоров, каждый из которых имел 4 Гб дисковой памяти и 128 Мб оперативной. Весь этот комплекс мог просчитывать более 100000000 ходов в секунду.

Еще одним примером является программа американского математика Хао Ванга. Эта программа за 3 минуты работы IBM_704 вывела 220 относительно простых лемм и теорем из фундаментальной математической монографии, а затем за 8.5 минут выдала доказательства еще 130 более сложных теорем, часть их которых еще не была выведена математиками. Правда, до сих пор ни одна программа не вывела и не доказала ни одной теоремы, которая была бы принципиально новой.

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

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

Назначение экспертных систем

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

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

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

Традиционными областями применения экспертных систем являются следующие [4]:

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

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

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

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

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

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

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

21. Структура и принцип работы экспертных систем. Схема обобщённой структуры БД

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

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

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

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

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

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

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

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

Рисунок 1-1. Обобщенная структура ЭС

22. Характеристики базы знаний и машины вывода ЭС

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

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

В базе знаний могут храниться два основных вида записей:

факты, описывающие состояние предметной области, составляющие ее объекты и их свойства, а также

правила, описывающие способы решения задачи.

Все правила БЗ имеют одинаковую форму записи и состоят из двух частей:

условие и

действие.

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

в режиме диалога через интерфейс пользователя,

посредством файлов или баз данных,

от внешних датчиков или приборов.

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

Если условие текущего правила БЗ подтверждается множеством исходных фактов, то система выполняет действие, записанное в данном правиле, добавляя в БЗ новые, производные факты.

На первый взгляд процесс вывода кажется достаточно простым - выполняются однотипные операции по перебору записей БЗ и сравнении их с имеющимися фактами, пока не будет найдено решение или некий целевой факт. Однако, управление процессом вывода, независящее от контекста проблемы не практике мало эффективно. При решении реальных задач человек крайне редко прибегает к перебору данных. Вместо этого, люди пользуются эвристическими правилами, которые значительно ограничивают пространство поиска решения и позволяет быстро и эффективно решать задачи. Эвристические знания имеют эмпирическую природу, то есть формируются на базе опыта и интуиции эксперта. Ярким примером превосходства эвристического подхода перед алгоритмическим (основанным на полном или частичном переборе) является игра в шахматы [5]. В начале игры «белые» имеют возможность сделать любой из 20 допустимых ходов, в ответ на который «черные» могут также совершить один из 20 ходов. Нетрудно посчитать, что следующий ход «белых» может быть выбран уже из 400 возможных различных состояний партии. Далее, по мере развития игры возникает неуправляемый комбинаторный взрыв. Особенно остро подобная проблема стоит в эндшпиле. Имея по нескольку фигур на доске, каждый из игроков располагает более чем 50 вариантами возможных ходов. Очевидно, шахматные мастера при всем желании не смогли бы осуществлять перебор ходов, для поиска лучшего варианта. Вместо этого они используют краткосрочные и долгосрочные стратегии. Каждая конкретная стратегия выбирается в соответствии с текущей ситуацией на игровой доске.

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

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

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

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

Этот тип вывода соответствует противоположному ходу решения:

сначала машина вывода рассматривает те правила БЗ, действием которых является вывод целевого факта.

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

процесс продолжается от целевых фактов к исходным.

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

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

Используя метаправила можно упорядочить применение знаний в зависимости от конкретных значений фактов и текущего состояния БЗ.

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

об оборудовании помещения в зависимости от расположения и размеров аудитории,

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

В БЗ заложены правила предписывающие тот или иной способ размещения мебели. Это обычный вид правил.

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

«Если имеет место свойство X, то сначала применить группу правил N».

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

Если обычные правила БЗ представляют шаги решения задачи, то метаправила описывают стратегию получения решений.

Тот факт, что фактически изменяемой компонентой в архитектуре ЭС является БЗ, наталкивает на закономерный вопрос: «Можно ли взять готовую экспертную систему из одной предметной области, заложить в нее знания из другой предметной области, и получить новую ЭС?»

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

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

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

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

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

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

язык представления знаний,

способы логического вывода и пр.

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

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

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

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

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

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

Рисунок 1-2. Этапы разработки ЭС

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

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

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

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

Рисунок 5.3. Структура персептрона

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

А-элементы соединены с реагирующими элементами (R_элементами) связями, коэффициенты усиления (v) которых переменны и изменяются в процессе обучения.

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

где Rj - реакция j_го R_элемента; xi - реакция i_го A_элемента; нij - вес связи от i_го A_элемента к j_му R элементу; иj - порог j_го R_элемента.

Что такое искусственная нейронная сеть. Как работает нейронная сеть

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

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

Задача распознавания рукописных букв

Дано: растровое черно-белое изображение буквы размером 30x30 пикселов

Надо: определить, какая это буква (в алфавите 33 буквы)

Формулировка для нейронной сети:

Дано: входной вектор из 900 двоичных символов (900=30x30)

Надо: построить нейронную сеть с 900 входами и 33 выходами, которые помечены буквами. Если на входе нейронной сети изображение буквы «А», то максимальное значение выходного сигнала достигается на выходе «А». Аналогично нейронная сеть работает для всех 33 букв.

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

Страницы: 1, 2, 3



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.