
- •Системы искусственного интеллекта. Лекция 1. Искусственный интеллект.
- •Лекция 2. Краткий исторический обзор развития работ в области ии.
- •Системы с интеллектуальным интерфейсом
- •Экспертные системы
- •Самообучающиеся системы
- •Адаптивные информационные системы
- •Лекция 3. Задачи и области применения систем ии Области применения систем искусственного интеллекта (практический аспект)
- •Задачи интеллектуальных информационных систем (теоретический аспект)
- •Лекция 4. Экспертные системы: Определения и классификация
- •Лекция 5. Деревья решений. Общие принципы работы
- •Терминология
- •Что такое дерево решений и типы решаемых задач
- •Как построить дерево решений?
- •Этапы построения деревьев решений
- •Теоретико-информационный критерий
- •Статистический критерий
- •Правила
- •Преимущества использования деревьев решений
- •Области применения деревьев решений
- •Лекция 6. Нечеткая логика
- •Лекция 7. Нейронные сети
- •Лекция 8. Нейронные сети. Типы нс. Обучение нс. Применение нс.
- •30 Дней
- •Лекция 9. Генетические алгоритмы
- •Лекция 10. Основные понятия теории агентов
- •Лекция 11 иммунные сети Введение в иммунные системы
- •Вычислительные аспекты иммунной системы
- •Иммунная система с точки зрения организации обработки данных
- •Модели, основанные на принципах функционирования иммунной системы
- •Модель иммунной сети
- •Алгоритм отрицательного отбора
- •Другие модели
Правила
Иногда даже усеченные деревья могут быть все еще сложны для восприятия. В таком случае, можно прибегнуть к методике извлечения правил из дерева с последующим созданием наборов правил, описывающих классы.
Для извлечения правил необходимо исследовать все пути от корня до каждого листа дерева. Каждый такой путь даст правило, где условиями будут являться проверки из узлов встретившихся на пути.
Преимущества использования деревьев решений
Рассмотрев основные проблемы, возникающие при построении деревьев, было бы несправедливо не упомянуть об их достоинствах:
быстрый процесс обучения;
генерация правил в областях, где эксперту трудно формализовать свои знания;
извлечение правил на естественном языке;
интуитивно понятная классификационная модель;
высокая точность прогноза, сопоставимая с другими методами (статистика, нейронные сети);
построение непараметрических моделей.
В силу этих и многих других причин, методология деревьев решений является важным инструментом в работе каждого специалиста, занимающегося анализом данных, вне зависимости от того практик он или теоретик.
Области применения деревьев решений
Деревья решений являются прекрасным инструментом в системах поддержки принятия решений, интеллектуального анализа данных (data mining).
В состав многих пакетов, предназначенных для интеллектуального анализа данных, уже включены методы построения деревьев решений. В областях, где высока цена ошибки, они послужат отличным подспорьем аналитика или руководителя
Деревья решений успешно применяются для решения практических задач в следующих областях:
Банковское дело. Оценка кредитоспособности клиентов банка при выдаче кредитов.
Промышленность. Контроль за качеством продукции (выявление дефектов), испытания без разрушений (например проверка качества сварки) и т.д.
Медицина. Диагностика различных заболеваний.
Молекулярная биология. Анализ строения аминокислот.
Это далеко не полный список областей где можно использовать деревья решений. Не исследованы еще многие потенциальные области применения.
Лекция 6. Нечеткая логика
Человек мыслит нечеткими понятиями: погода хорошая, скорость низкая, настроение хорошее. Очевидно, что каждый может вкладывать в эти понятия совершенно разный смысл: что хорошо для одного, может быть совершенно неприемлемо для другого. Четкая логика (в рамка которой переменная может принимать всего два значения: истина и ложь, 0 и1) учет этого фактора совершенно невозможен. Поэтому в середине XX века Л.Заде была предпринята попытка создания математического аппарата, позволяющего учесть эту особенность мыслительной деятельности человека.
Лингвистическая переменная (ЛП) – это переменная, значение которой определяется набором вербальных (то есть словесных) характеристик некоторого свойства.
Например, ЛП «рост» определяется через набор {карликовый, низкий, средний, высокий, очень высокий}.
Введя понятие лингвистической переменной и допустив, что в качестве ее значений (термов) выступают нечеткие множества, был предложен аппарат для описания процессов интеллектуальной деятельности, включая нечеткость и неопределенность выражений. Это позволило создать фундамент теории нечетких множеств и нечеткой логики, а также предпосылки для внедрения методов нечеткого управления в инженерную практику.
Основы теории нечетких множеств
Значения лингвистической переменной (ЛП) определяются через так называемые нечеткие множества (НМ), которые в свою очередь определены на некотором базовом наборе значений или базовой числовой шкале, имеющей размерность. Каждое значение ЛП определяется как нечеткое множество (например, НМ «низкий рост»).
Нечеткое множество
определяется через некоторую базовую
шкалу В и функцию принадлежности НМ –
µ(х),
х
В,
принимающую значения на интервале
[0...1]. Таким образом, нечеткое множество
В – это совокупность пар вида (х,
µ(х)),
где х
В.
Часто встречается и такая запись:
(6.1)
где х – i-e значение базовой шкалы.
Функция принадлежности определяет субъективную степень уверенности эксперта в том, что данное конкретное значение базовой шкалы соответствует определяемому НМ. Эту функцию не стоит путать с вероятностью, носящей объективный характер и подчиняющейся другим математическим зависимостям. Например, для двух экспертов определение НМ «высокая» для ЛП «цена автомобиля» в условных единицах может существенно отличаться в зависимости от их социального и финансового положения.
«Высокая_цена_автомобиля_1» = {50000/1 + 25000/0.8 + 10000/0.6 + 5000/0.4}; «Высокая_цена_автомобиля_2» = {25000/1 + 10000/0.8 + 5000/0.7 + 3000/0.4}.
Пример.6.1
Пусть перед нами стоит задача интерпретации значений ЛП «возраст», таких как «молодой» возраст, «преклонный» возраст или «переходный» возраст. Определим «возраст» как ЛП (рис.6.1.). Тогда «молодой», «преклонный», «переходный» будут значениями этой лингвистической переменной. Более полно базовый набор значений ЛП «возраст» следующий:
В – {младенческий, детский, юный, молодой, зрелый, преклонный, старческий}.
Для ЛП «возраст» базовая шкала – это числовая шкала от 0 до 120, обозначающая количество прожитых лет, а функция принадлежности определяет, насколько мы уверены в том, что данное количество лет можно отнести к данной категории возраста (от 0 до 1). На рис.6.2 отражено, как одни и те же значения базовой шкалы могут участвовать в определении различных НМ.
Рис. 6.1. Лингвистическая переменная «возраст» и нечеткие множества, определяющие ее значения
Например, определить значение НМ «младенческий возраст» можно так:
Рис. 6.2. Формирование нечетких множеств
Рис.6.3 иллюстрирует оценку НМ неким усредненным экспертом, который ребенка до полугода с высокой степенью уверенности относит к младенцам (m=1). Дети до четырех лет причисляются к младенцам тоже, но с меньшей степенью уверенности (0.5<m<0.9), а в десять лет ребенка называют так только в очень редких случаях – к примеру, для девяностолетней бабушки и 15 лет может считаться младенчеством. Таким образом, нечеткие множества позволяют при определении понятия учитывать субъективные мнения отдельных индивидуумов.
Рис. 6.3. График функции принадлежности нечеткому множеству «младенческий возраст».
Основные характеристики нечетких множеств
Пусть М = [0,1] и A – нечеткое множество с элементами из универсального множества Е и множеством принадлежностей М.
Величина
называется высотой нечеткого множества А. Нечеткое множество А нормально, если его высота равна 1, т.е. верхняя граница его функции принадлежности равна
. При
нечеткое множество называется субнормальным.
Нечеткое множество пусто, если
. Непустое субнормальное множество можно нормализовать по формуле:
.
Нечеткое множество унимодально, если µА(х) = 1 только на одном х из Е.
Носителем нечеткого множества А является обычное подмножество со свойством µА(х)>0, т.е. носитель
.
Элементы х Е, для которых µА(х) = 0.5, называются точками перехода множества А.
Нечеткие числа
– нечеткие переменные,
определенные на числовой оси, т.е.
нечеткое число определяется как нечеткое
множество А на
множестве действительных чисел R
с функцией принадлежности
,
где
.
Нечеткое число А нормально,
если
,
и выпуклое,
если для любых
выполняется
Рис. 6.4. Функции принадлежности нечетких множеств:
А1 – «малая толщина»; А2 – «средняя толщина»;
А3 – «большая толщина»
Нечеткие правила вывода
Базовое правило вывода типа "если - то" (англ.: if- then rule) называется также нечеткой импликацией, принимающей форму
если х это А, то у это В (6.1)
где А и В - это лингвистические значения, идентифицированные нечетким способом через соответствующие функции принадлежности для переменных х и у. Часть "х это А" называется условием (предпосылкой), а "у это В" - следствием (заключением). Импликацию (6.1) можно записать в сокращенном виде А → В. Нечеткое рассуждение - это процедура, которая позволяет определить заключение, вытекающее из множества правил "если - то". Такое множество при N переменных х может принять вид
если x1 это А1 и х2 это А2 и ... и xN это AN , тo у это В (6.2)
Переменные x1,
x2,
…, xN
образуют
N-мерный
входной вектор x,
составляющий аргумент условия, в
котором А1,
А2 ,
..., An
и В
обозначают величины
соответствующего коэффициента
принадлежности
,
.
Необходимо обратить внимание, что здесь
присутствуют индивидуальные функции
принадлежности для каждой переменной
хi
, и отдельно для y.
Случайное значение функции принадлежности
,
где х
- это вектор х
= [ x1,
x2,
…, xN
]
относящееся
к условию импликации (уровень активации
правила), должно в последующем
интерпретироваться с использованием
введенных ранее нечетких операций.
Возможна интерпретация (то есть
определение уровня активации (нечеткого
значения) переменной, указанной в
следствии правила) в форме логического
произведения множеств либо в форме
алгебраического произведения:
интерпретация в форме логического произведения (из всех нечетких значений переменных условия правила берется минимальное):
(6.3)
интерпретация в форме алгебраического произведения (в качестве нечеткого значения переменной следствия правила берется значение, полученное путем перемножения нечетких значений переменных условия правила):
(6.4)
Приписывание единственного
значения функции принадлежности,
описывающей многомерное условие,
будем называть агрегированием
предпосылки. Каждой
импликации А →
В,
определенной выражением (6.2), можно
приписать также единственное значение
функции принадлежности
.
Наиболее популярные
интерпретации этой функции также имеют
форму логического или алгебраического
произведения:
форма логического произведения
(6.5)
форма алгебраического произведения
(6.6)
Приписывание единственного значения функции принадлежности всей импликации будем называть процедурой агрегирования на уровне импликации.
Нечеткий логический вывод
Системы нечеткого вывода Мамдани-Заде
Элементы теории нечетких множеств, правила импликации и нечетких рассуждений образуют систему нечеткого вывода. В ней можно выделить множество используемых в системе нечетких правил, базу данных, содержащую описания функций принадлежности, а также механизм вывода и агрегирования, который формируется применяемыми правилами импликации. Следует упомянуть, что в случае технической реализации в качестве входных и выходных сигналов выступают измеряемые величины, однозначно сопоставляющие входным значениям соответствующие выходные значения. Для обеспечения взаимодействия множеств этих двух видов вводится нечеткая система с так называемыми фазификатором (преобразователем множества входных данных в нечеткое множество) на входе и дефазификатором (преобразователем нечетких множеств в конкретное значение выходной переменной) на выходе. Структура такой системы представлена на рис.6.5.
Рис. 6.5. Структура нечеткой системы с фазификатором и дефазификатором
Используемый в различного рода экспертных и управляющих системах механизм нечетких выводов в своей основе имеет базу знаний, формируемую специалистами предметной области в виде совокупности нечетких предикатных правил вида:
П1: если х есть A1, то у есть В1
П2: если х есть А2, то у есть В2
……………………
Пn: если х есть Аn, то у есть Вn ,
где х – входная переменная (имя для известных значений данных); у – переменная вывода (имя для значения данных, которое будет вычислено); А и В – функции принадлежности, определенные соответственно на х и у.
Приведем более детальное пояснение Знание эксперта A → В отражает нечеткое причинное отношение предпосылки и заключения, поэтому его можно назвать нечетким отношением и обозначить через R:
R = A → В,
где «→» называют нечеткой импликацией.
Отношение R можно рассматривать как нечеткое подмножество прямого произведения X × Y полного множества предпосылок X и заключений Y. Таким образом, процесс получения (нечеткого) результата вывода B' с использованием данного наблюдения А' и знания А→В можно представить в виде композиционного правила нечеткий «modus ponens»:
В' = А' • R = А' • (А → В),
где «•» – операция свертки.
Как операцию композиции, так и операцию импликации в алгебре нечетких множеств можно реализовывать по-разному (при этом будет отличаться и получаемый результат), но в любом случае общий логический вывод осуществляется за следующие пять этапов.
1) Введение нечеткости (фаззификация, fuzzification). Функции принадлежности, определенные на входных переменных, применяются к их фактическим значениям для определения степени истинности каждой предпосылки каждого правила. Четким значениям входных переменных ставятся в соответствие нечеткие значения с помощью функций принадлежности конкретной переменной.
2) Агрегирование. Вычисленное значение истинности для предпосылок каждого правила применяется к заключениям каждого правила. Это приводит к одному нечеткому подмножеству, которое будет назначено каждой переменной вывода для каждого правила.
3) Активизация. В качестве правил логического вывода обычно используются только операции min (МИНИМУМ) или prod (УМНОЖЕНИЕ). В логическом выводе МИНИМУМА функция принадлежности вывода «отсекается» по высоте, соответствующей вычисленной степени истинности предпосылки правила (нечеткая логика «И», то есть для правила берется минимальное значение степени истинности предпосылок). В логическом выводе УМНОЖЕНИЯ функция принадлежности вывода масштабируется при помощи вычисленной степени истинности предпосылки правила.
4) Аккумуляция. Все нечеткие подмножества, назначенные к каждой переменной вывода (во всех правилах), объединяются вместе, чтобы сформировать одно нечеткое подмножество для всех переменных вывода. При подобном объединении обычно используются операции max (МАКСИМУМ) или sum (СУММА) При композиции МАКСИМУМА комбинированный вывод нечеткого подмножества конструируется как поточечный максимум по всем нечетким подмножествам (нечеткая логика «ИЛИ»). При композиции СУММЫ комбинированный вывод нечеткого подмножества формируется как поточечная сума по всем нечетким подмножествам, назначенным переменной вывода правилами логического вывода.
5) Приведение к четкости (дефаззификация, defuzzification) используется, если требуется преобразовать нечеткий набор выводов в четкое число. Существует большее количество методов приведения к четкости, некоторые из которых рассмотрены ниже.
Фазификатор
Рассмотрим подробнее первый этап процедуры нечеткого вывода.
Фазификатор преобразует N-мерный входной вектор х = [ x1, x2, …, xN ] в нечеткое множество А, характеризуемое функцией принадлежности с четкими переменными. Несмотря на то, что нечеткие системы могут иметь функции принадлежности произвольной структуры, с практической точки зрения наибольшей популярностью пользуются функции гауссовского типа, а также треугольные и трапецеидальные функции.
Рис. 6.5 Иллюстрация влияния параметров гауссовской функции на ее форму:
а) влияние размещения центра с при σ = 1;
б) влияние значения σ при постоянном значении с = 1
Общая форма гауссовой функции для переменной х с центром с и вариацией σ для множества F имеет вид:
(6.7)
На рис. 6.5. представлена форма типовых гауссовских функций при различных параметрах с и σ , причем на рис. 6.5а показано влияние размещения центра с при неизменном значении σ, а на рис. 6.5б - влияние значения σ при фиксированном положении с. Параметр с обозначает центр нечеткого множества, а его изменение соответствует смещению функции принадлежности по горизонтальной оси. Праметр σ, иногда называемый коэффициентом широты, отвечает за форму функции. Чем меньше его значение, тем больше крутизна функции. Следует отметить, что при соответствующем смещении центра гауссовская функция может реализовать и сигмоидальную функцию (чаще всего при смещении вправо с с =4).
Помимо гауссовской функции принадлежности, на практике часто применяется симметричная треугольная функция, которую можно записать в виде
(6.8)
Интерпретация центральной точки с и ширины d для треугольной функции представлена на рис.6.6.
Рис. 6.6 Треугольная форма функции
Эта функция тоже нормирована и принимает единичное значение в центральной точке с.
Обобщением треугольной функции является трапецеидальная функция принадлежности, форма и обозначения которой показаны на рис. 6.7.
Рис. 6.7 Трапецеидальная форма функции принадлежности
Если определить,
, где s
обозначает угол
наклона, то трапецеидальная функция
описывается зависимостью
(6.9)
Выбор значения t = 0 редуцирует трапецеидальную функцию до треугольной формы.
Дефазификатор
Рассмотрим подробнее последний этап процедуры нечеткого вывода.
Дефазификатор трансформирует
нечеткое множество в полностью
детерминированное точечное решение
у. Нечеткое
множество представляет зависимость
как функцию от выходной переменной у.
Преобразование этого
множества в единственное точечное
решение возможно многими способами.
Наиболее известны среди них:
1) центроидный. В общем случае:
; (6.10)
для дискретного варианта:
(6.11)
Первый максимум (First-of-Maxima). Четкая величина вывода находится как наименьшее значение, при котором достигается максимум итогового нечеткого множества (рис. 6.8, a).
Средний максимум (Middle-of-Maxima). Четкое значение находится по формуле:
(6.12)
где G − подмножество элементов, максимизирующих С (рис.6.8,б).
Для дискретного варианта (С дискретно):
(6.13)
Рис. 6.8. Иллюстрация к методам приведения к четкости:
а - первый максимум; б - средний максимум
(6.14)
4) Критерий максимума (Max-Criterion). Четкое значение выбирается произвольно среди множества элементов, для которых С достигает максимума:
(6.15)
5) Высотная дефаззификация (Height defuzzification). Элементы области определения Ω, для которых значения функции принадлежности меньше, чем некоторый уровень α, в расчет не принимаются, и четкое значение рассчитывается в соответствии с выражением:
(6.16)
где Сα – нечеткое множество α-уровня (см. выше).
Преимущества использования нечеткой логики
Операторы нечеткой логики очень схожи с обычными булевыми операторами. Функции принадлежности и правила нечеткой логики, подвергнутые лингвистической модификации, позволяют значительно расширить возможности системных операторов.
Разработчики могут намного упростить сложность систем, используя нечеткую логику, поскольку она позволяет моделировать комплексные программы с большим количеством входов и выходов.
С помощью нечеткой логики можно добиться снижения системных требований, а значит, сократить расходы на аппаратные средства. Во многих случаях сложное математическое моделирование предпочтительнее заменить функциями принадлежности и правилами нечеткой логики и с их помощью управлять системой. При сокращении объемов информации размеры кода уменьшаются, поэтому система работает быстрее. Кроме того, это позволяет использовать менее совершенные аппаратные средства.
Кроме того, нечеткие понятия позволяют «говорить с экспертом на одном языке». Как было описано выше, степень успешности взаимодействия с экспертом во многом определяет успех всего проекта.
Нечеткая логика используется в самых разнообразных приложениях. Наиболее очевидная область ее применения – системы управления, которым нечеткая логика уже обеспечила коммерческий успех. Нечеткая логика используется в устройстве видеокамер и фотоаппаратов с автофокусом, системах смешивания цемента, автомобильных системах (например, системах АБС) и даже системах, основанных на правилах.
Наверное, самые полезные области применения все еще остаются неизвестными. Само название «нечеткая логика» не внушает особого доверия, хотя давно известно, что это надежный метод. Как и многие другие методики ИИ, нечеткая логика в настоящее время все чаще используется в устройствах повседневного применения, где она больше не ассоциируется с искусственным интеллектом.