Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Лекции по системам искуственного интеллекта - файл Лекции.doc


Лекции по системам искуственного интеллекта
скачать (175.4 kb.)

Доступные файлы (1):

Лекции.doc904kb.19.04.2006 23:49скачать

содержание
Загрузка...

Лекции.doc

Реклама MarketGid:
Загрузка...
Лекция 1.

Введение.

Определение:

Искусственный интеллект (ИИ) (с лат. «intellectus» - познание) – раздел информатики, изучающий методы, способы моделирования и воспроизведения с помощью ЭВМ различной деятельности человека, связанной с решением каких-либо задач.

Цель ИИ – смоделировать разумную деятельность человека, автоматизировать мышление.

Разумная деятельность – сложные задачи.

Область применения – применяется для решения слабоформализованных задач.
Определение:

Слабоформализованные задачи – это задачи, которые обладают следующими свойствами:

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

  2. Алгоритмы достижения этой цели не могут быть описаны строго математически (не существует алгоритмического решения задачи).

  3. В ряде случаев для этих задач алгоритмическое решение существует, но пространство поиска решения очень велико.

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

  5. Данные знания, используемые для решения этих задач обладают следующими свойствами:

- не полные;

- ошибочные;

- разнородные;

- неоднозначные;

- противоречивые;

- динамичные;
^ Пример:

К ним относятся – множество задач управления, проектирования в сложных системах.
Определение:

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

Любая социально-экономическая система.
Управление = Планирование + Прогнозирование + Учет + Контроль + Анализ + Принятие решений.
Автоматизированная информационная система (АИС) = слабо формализованная задача + сложная система.

^ Свойства естественного интеллекта (ЕИ).

Цель ИИ воспроизвести черты ЕИ.
Моторика – процесс возбуждения моторных центров мозга.

Мышление – когнитивные процессы (cognitive - познавательные).

Структура когнитивных процессов.
Проблемы:

  1. Огромный объем информации. Неоднозначность, не полнота, ошибочные знания и др.

  2. Большой объем памяти (кратковременная и долговременная).


Определения:

ЕИ (Солсо) – способность осмысленно приобретать, воспроизводить, использовать знания, понимать конкретные и абстрактные идеи, постигать отношения между идеями и объектами.

^ ИИ (Солсо) – всякий результат работы компьютера, который сочли бы разумным, если бы он был воспроизведен человеком.


Свойства ЕИ:

  1. Способность к классифицированию паттерны (pattern - шаблон): кластеризация, категоризация, распознавание. (ДН, НС)

  2. Адаптивность, обучаемость. (НС, ГА)

  3. Способность к дедуктивному мышлению – переход от общего к частному. (ЭС, НЛ)

  4. Способность к индуктивному логическому выводу (от частного к общему) (ЭС, НС, НЛ, ГА, ДМ)

  5. Анализ и синтез. (case-технологии)

  6. Способность разрабатывать концептуальные модели. ( - )

  7. Способность понимать – видеть отношения в задачах и оценивать их в решениях.

Лекция 2.

История развития, исследования в области ИИ.


I период:
1943 г. – первая работа по нейронным сетям, авторы: Мак Коллонс, Питс – «Искусственные нейронные сети».

1950 г. – Тьюринг, работа «Вычислительная машина и интеллект».

Шеннон – «Программирование компьютера для шахматной игры»

1956 г. – ИИ официально признан самостоятельным научным направлением.
^ II период:
Начало работ по ЭС. Ньюэл, Саймон - ill-srtuctured; if-then.

1961 г. – Начата работа по создания GPS (General Problem Solver).

III период:
1965 г. – Работа по нечеткой логике – «Нечеткие множества»

1969 г. – «Нечеткие алгоритмы»
^ IV период:
Создаются системы

DENDRAL – интеллектуальная обработка результатов в области физики.

MYCIN – диагностика инфекционных заболеваний в области медицины.

HEARSAL – в области лингвистики.
V период:
Создаются промышленные ЭС.

DEC – система управления газопроводом

XCON – выявление неисправностей оборудования нефтехимической промышленности.

1982 г. – Сети Копфильда, Кохонена.

Возобновились работы по НС.
^ VI период:
Аккуратисты – ученые, которые обосновывают работу со строго математическим обоснованием.

Неформалы – выдвигают различные идеи, программируя их на компьютере.
Резюме:

Все направления развития исследований в области ИИ можно объединить в два основных направления, различающихся подходами к моделированию ЕИ:
1-ое направление – нейробионическое. Сущность: моделирование структур и процессов биологического прототипа – головного мозга человека (ГА)

2-ое направление – информационное (черный ящик). Сущность: не нужно моделировать структуру мозга, необходимо познать только внешние проявления работы человеческого мозга (правила, закономерности). (НЛ)

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

^ Направления исследований в области ИИ.


Примечание:

Исследования ученых в последующие годы направлено на ликвидацию разрыва между упомянутыми выше двумя направлениями. В 1994 г. Л. Заде ввел «зонтичный» термин – «мягкие вычисления» (soft computing).

^ Мягкие вычисления – синтез методов (нечеткие системы + НС + ГА + вероятностные вычисления (сети доверия Байеса)).


Тема: Нечеткая логика.
История:

Основатель теории – Л. Заде.

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

Лотфи А.Заде сформулировал эту мысль в виде принципа несовместимости, согласно которому для систем, сложность которых превосходит некоторый пороговый уровень, точность и практический смысл становятся почти исключающими друг друга характеристиками.
^ Математические основы НЛ.
Аспекты неполноты информации.

  1. Неточность – данные задаются в интервальной форме (теория интервального анализа).

  2. Неопределенность – неизвестность значения каких-нибудь переменных.

  3. Нечеткость – это не есть случайность.

Случайность – неопределенность либо принадлежности, либо непринадлежности какому-либо множеству.

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








Нечеткое множество считается заданным, если задано множество пар.



Лекция 3
Варианты записей:

А={(x; µA(x))}={(µA(x); x)}={ µA(x)| x}={x| µA(x)}.
Примечание:

Существуют нечеткие дискретные множества.




А={(1; 0); (2; 0,5); (3; 1); (4; 0,5); (5; 0)}.
^ Виды функций принадлежности:


Выбор функции принадлежности:
1. Прямой: один или группа экспертов непосредственно определяют виды и параметры функции принадлежности, основываясь на особенностях предметной области.
2. Косвенный: проводят опрос экспертов, в процессе которого они отвечают «ДА» или «НЕТ» на заданные вопросы.

^ Основные свойства нечетких множеств:
1. Носитель (основание) нечеткого множества А:

Supp A = {xX| µA(x) > 0}



В случаях 1 и 2 основание компактное (suppA < ∞), т.е. множество точек является замкнутым и ограниченным.
2. Высота нечеткого множества:



hgh A = 1 – нормализованное множество

hgh A < 1 – субнормальное множество
3. Ядро

core A = {x  X | µA(x)=1}
4. Точка перхода

сrossover_point = {xX | µA=0,5}
5. -срез

_cut А = {xX | µA }
6. Выпуклое – если выполняется следующее условие:

 x1, x2, x3  Х : x1  x2  x3 µA(x) min {µA(x1); µA(x3)}.
7. Нечеткое разбиение нечеткого множества А на нечеткие подмножества Аj:

Если Аj, j=, hgh Aj = 1, Aj – выпуклое и для любого j Аj содержит не более 2-х пересечений с другими нечеткими подмножествами, то {Aj} – нечеткое разбиение.


8. Нечеткое число.

Задается следующим образом: если для нечеткого множества задаются следующее условие:

  1. выпуклое

  2. нормальное

  3. кусочно-непрерывное

  4. ядро А содержит одну точку


«Приблизительно 5»
9. Нечеткий интервал.

Если выполняются условия 1, 2, 3, но не выполняется условие 4.


«от ≈ 2 до ≈ 7»

Определение операции фаззификации (fuzzification)

Определение:

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




^ Определение понятия лингвистическая переменная.

Определение:

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


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

1. Эквивалентность

АВ тогда, когда для х  Х µA(x)= µВ(x).
2. Включение

АВ тогда, когда µA(x) µВ(x), х  Х.




3. Нечеткая операция «И»

а) Логическое произведение (Л.Заде)

µA3(x)= µA1А2(x)= min (µA1(x); µA2(x))
б) Алгебраическое произведение (Бандлер, Коходт)

µA3(x)= µA1(x)• µA2(x)

в) Граничное произведение (Лукасевич, Гинс)

µA3(x)= µA1А2(x) = max (µA1(x)+ µA2(x)-1; 0)

г) Драстическое произведение (Вебер)

µA1(x), если µA2(x)=1

µA3(x)= µA1A2(x) = µA2(x), если µA1(x)=1

0



4. Нечеткая операция «ИЛИ»

а) Логическая сумма (Л.Заде)

µA3(x)= µA1А2(x)= max {µA1(x); µA2(x)}



б) Алгебраическая сумма

µA3(x)= µA1+А2(x)= µA1(x) + µA2(x) - µA1(x) •µA2(x).



в) Граничная сумма

µA3(x)= µA1А2(x)= min (µA1(x)+ µA2(x); 1)



г) Драстическая сумма

µA1(x), если µA2(x)=0

µA3(x)= µA1A2(x) = µA2(x), если µA1(x)=0

1



5. Нечеткая операция «НЕ»

µ(x)= 1 - µA(x)


Ряд полезных операций:




1. Концентрация
CON (A):

µCON(A) (x)= µA2(x)

Применяется для усиления значения признаков (аналогично «очень»)




2. Растяжение
DIL (A):

µDIL(A)(x)=

Применяется для ослабления значения признаков («довольно»)
^ Нечеткие отношения

Возникают, если рассматривают двухмерные нечеткие множества

R={(x; y), µ(x, y)} xX, yY
Пример:

X={4, 8, 15} Y={1, 2, 5, 10}

R1(x, y)= “x больше чем y”

R2(x, y)= “x приблизительно равно y”

Лекция 4.

Нечеткие алгоритмы.

Определение:

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

1) прибыль = высокая – нечеткое указание (терм, факт)

2) Если Эластичность_Цены = низкая, то Цена = увеличить.


^ Обобщенная схема процедуры нечеткого логического вывода.



Методы нечеткого логического вывода.

1. Метод максимума-минимума (Мамдани)

а) для одного простого правила

П1: Если Т=низкая, то Вентиль=полуоткрыт.
^ Математическое представление:

Если х1=Ai, то y=Bj

µBj(y) | x1=x1зад=min {µAi(x1зад); µВj(у)}
б1) для одного фокусирующего правила (для логической связки «И»)

П2: Если Т=низкая ^ И Влажность=средняя, то Вентиль=полуоткрыт.
Математическое представление:

Если х1=Ai И х2j, то y=Bk

µBk(y) | =min{min {µAi(x1зад); µcj(x2зад)}; µBk(y)}
б2) для логической связки «ИЛИ»

µBk(y) | =min{max {µAi(x1зад); µcj(x2зад)}; µBk(y)}
в) для нескольких простых правил

П1: Если Т=низкая, то Вентиль=полуоткрыт.

П3: Если Т=средняя, то Вентиль=почти открыт.



По умолчанию считается, что все правила в базе нечетких правил соединены по логической связке «ИЛИ»

^ Математическое представление:

П1: Если х1=Ai, то y=Bj

П2: Если х1=Ai+1, то y=Bj+1

µBjВj+1(y) | x1=x1зад=max {µBj(y)| x1=x1зад ; µВj+1(у)| x1=x1зад }
2. Метод максимума произведения

а) µBj(y)| x=xзадAi(xзад)• µBj(y)

б1) и б2) аналогично
Методы дефаззификации

1. Метод максимума.

Выбирается тот элемент нечеткого множества, который имеет максимальную степень принадлежности.
2. Метод левого (правого) максимума.

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


4. Модифицированный метод центра тяжести.

Уровень  (0,05…1)

Выполняется -срез (своего рода отсечение шумов).
5. Метод среднего из максимумов.

, где m – количество локальных максимумов.
Резюме:

Области применения нечетких систем.

  1. При проектировании систем поддержки принятия решений реализуемых на основе экспертных систем.

  2. При разработке нечетких контролеров применяемых при управлении техническими системами.


Достоинства:

  1. Назначение – решение слабоформализованных задач.

  2. Применение в тех областях, где значения переменных желательно выразить в лингвистических переменных.



Недостатки:

  1. Существует проблема выбора вида функции принадлежности (решается при создании гибридных интеллектуальных систем).

  2. Сформулированный набор правил может оказаться неполным и противоречивым.

  3. От выбора метода нечеткого логического вывода и дефаззификации зависит конечный результат.



Лекция 5.

Методология проектирования экспертных систем.

Основывается на технологии прототипирования.

^ Сущность технологии:

Разработчики информационной системы не ставят целью разработать сразу конечный полный вариант информационной системы, а разрабатывают вначале её упрощенный вариант – прототип.

В целом весь процесс проектирования представляет собой разработку серии прототипов по мере усложнения.

Цель первого прототипа – (применительно к экспертной системе) доказать пригодность методов инженерии знаний к решению задач.
Результаты решения задачи с помощью первого прототипа:

  1. Может быть доказана пригодность, тогда переходят к разработке следующего прототипа.

  2. Если непригоден, тогда:

- либо меняют формализм представления знаний и пытаются разработать.

- либо отказываются.
При разработке ЭС разрабатываются как правило следующие прототипы:

  1. Демонстрационный прототип.

1 - 2 месяца; 50-100 правил.

2. Исследовательский прототип

2 - 6 месяцев; 100 общих правил.

Исследовательский прототип решает только типовые задачи, он неустойчив в работе и не полностью проверен.

3. Действующий прототип

9 мес. – 1 год; 500 общих правил.

^ Решает все задачи, полностью проверен, но при этом расходует много времени и памяти.

  1. Готовая ЭС (промышленная ЭС)

До 1,5 года; 1000 общих правил.

^ Эффективно решает все виды задач с минимумом расхода времени и памяти.

  1. Коммерческая ЭС.

До 3 лет; 3000 общих правил.

Проблемно – предметно ориентированная ЭС: Определенные процедуры + список терминов, который присущ предметной области.
Обобщенная структура основных этапов разработки прототипов ЭС.



  1. Идентификация.

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

  1. Концептуализация.

    1. Под извлечением понимается извлечение знаний из эксперта, т.е. перенос компетентности от эксперта к когнетологу (наблюдение, текстологические методы).

    2. Структурирование проблемной области – собственно концептуализация предметной области, осуществляется целостное систематическое описание системы.

Результатом является пояснительная записка.

Определение:

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

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

- структурный (BPWin, ERWin, IDEF)

- объектно-ориентированный (RRose).

2.3. Формирование знаний – процесс анализа больших объемов данных с целью извлечения знаний.

3. Формализация.

3.1. Осуществляется выбор модели представления знаний.

Выбор формализма для представления знаний и разработка в рамках выбранного формализма конкретной модели представления знаний для решения задачи.


    1. Разработка конкретной модели представления знаний.

    2. В ряде случаев представление дерева решений.

    3. Решается проблема определения соотношения между декларативным и процедурным представлением. Решается при непосредственном пограмировании.

4. Программирование.

4.1. Выбор инструментарного средства (либо язык, либо готовые

оболочки).

    1. Написание ЭС (адаптация оболочки).

5. Тестирование на полноту и целостность.

Лекция 6.

Тема: Основные положения теории нейронных сетей.

Некоторые сведения о мозге.
Нервная система = Центральная нервная система + Периферийная нервная система.

Центральная нервная система = Головной мозг + Спинной мозг.


Дендриты – предназначены для принятия импульсов.

Аксон – предназначен для передачи импульсов.

Синапсы - специфические образования на дендритах и аксоне (места соединения с другими дендритами).

Типы синапсических связей: дендрит – дендрит; дендрит – аксон; аксон – аксон; аксон – сома.
^ Модель искусственного нейрона.

Исследования в области живого нейрона показали, что нейрон может находиться в двух состояниях:

  1. Возбужденное (режим передачи информации)

  2. Невозбужденное.

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

Мак Каллок и Питс предложили следующую модель нейрона:


Активационная функция (f(S))


Сигмоидная (логистическая)




Гиперболический тангенс





^ Определение искусственной нейронной сети.

Определение:

Искусственная нейронная сеть – множество нейронов соединенных между собой т.о., что: 1) ряд нейронов отмечены, как входные, а некоторые другие как выходные, 2) активационные функции считаются неизменными в работе сети, а веса являются параметрами сети и корректируются.
Смысл работы НС заключается в преобразовании некоторого входного вектора Х в выходной Y требуемый. Причем преобразования регулируется путем корректировки весов.
Модели НС.
1. Однослойный персептрон Розенблата



2. Многослойный персептрон



Ujk – выходные сигналы k-го слоя.




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

^ Базовый принцип обучения – это минимизация эмпирической ошибки между желаемым выходом сети и фактической реакцией сети.
Процедура обучения.
1. Создание обучающих выборок (задачник)

Ω = {<x1, D1>, < x2, D2>, …, < xR, DR>}

x – вектор входов;

D – вектор эталонов (желаемых выходов).

2. Осуществляется выбор очередной пары из задачника (xi, Di).

3. Подается xi на вход нейросети.

4. Вычисляется разница между желаемым и фактическим выходом сети:

ε = Di - Yiфакт

5. Производится корректировка Δωijk = f(ε) c тем чтобы ε минимизировать.

6. Шаги 2 – 5 повторяются многократно до тех пор, пока ошибка ε не станет равна некоторой допустимой величине ошибки. В этом случае сеть называется натренированной, и теперь обученная сеть имеет возможность дать правильный ответ при подаче на вход нового вектора х, которого не было ранее в обучающей выборке. Эта способность соответствует свойству обобщения НС.


Лекция 7.

Схема, иллюстрирующая процесс обучения нейросети:



Алгоритм обратного распространения ошибки.

(error back propagation algorithm)

Процедура реализации:

  1. выбор пары из обучающей выборки

  2. подача X на вход сети Y

  3. считаем ошибку в виде суммарной средней квадратичной ошибки (1)

Этот алгоритм реализуется для многослойного персептрона



  1. E

Решаем задачу оптимизации(через градиентный спуск)




  1. E=f(y(S()))



Где количество нейронов k-го слоя

  1. определим ………….для выходного слоя



Классы задач, решаемых нейросетями:

  1. Задача распознавания образов (задача классификации)

  2. Задача кластеризации

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

  1. Аппроксимация функций

Постановка задачи:

Формируется набор экспериментальных данных.



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

  1. Предсказание(прогнозирование)

Дается временной ряд:

Требуется предсказать значение у в момент времени ()

  1. Оптимизация

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

Каждая НП характеризуется:

  1. Составляющими их нейронами

    • количество входов

    • функция активации

  2. Типов графа межнейронных связей

    • прямые

    • перекрестные

    • обратные

  3. Способом формирования весов связей, т.е. алгоритмом обучения

    • С учителем

    • Без учителя

    • Смешанный



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

I. С точки зрения топологии

  1. Полносвязные


Классический пример- сеть Хопфильда




  1. Многослойные

  1. а) полносвяные

б) частично полносвязные

2. С обратными связями( рекурентные)

Пример: сеть Элмана

Сеть Жордана(обратные связи через слой)




3. Слабосвязные

Пример: сеть Кохонена – самоорганизующиеся карты



II. По типам структур нейронов:

1. Гомогенные

Функции активации всех нейронов одинаковые

2. Гетерогенные

Функции активации всех нейронов разные
III. По видам сигналов, которыми оперируют нейронные сети

  1. Бинарные(от 0 до 1)

  2. Сигналовые- оперируют действительными числами.



IV. По методу обучения

  1. Обучение с учителем

  2. Обучение без учителя

  3. Смешанные

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


Тип обучения

Тип связей

Обучение «с учителем»

Обучение «без учителя»

Без обратной связи

Многослойные

Персептрон(классификация,

аппроксимация)

Карты Кохонэна, соревновательные сети(кластеризация)

(сжатие данных)

С обратной связью

Рекуррентные аппроксиматоры(предсказание временных рядов)

Сети Хольфильда(кластеризация, оптимизация, ассоциативная память)


Лекция 8.

Сети Кохонэна

Обучение «без учителя»
Сети Кохонэна предназначены для решения задач кластеризации.

^ Постановка задачи кластеризации

Дано:

где n- номер объекта

m- номер признака

Каждый объект характеризуется вектором:



Найти: ядра кластеров количества K

C=



Т.е построить некую функцию L(p), которая позволяет определить номер кластера по номеру объекта. Причем, построение должно вестись на основе следующего критерия: минимизация всех внутриклассовых расстояний.

(1)
Где первая сумма- это сумма по всем объектам, а вторая- по всем кластерам.
Алгоритм кластеризации:

1. Задается количество кластеров и начальные значения ядер кластеров.



Способы начального задания значений:

  1. случайными числами

  2. одинаковыми числами

  3. по некоторым эвристическим правилам, которые основаны на предварительном анализе данных(на основе главных компонент)


2. Фиксируются постоянно ядра кластеров



Ищется разбиение l(p) объектов на кластеры, исходя из критерия (1).
3. Фиксируются постоянно разбиения

l(p)= const



Корректируются ядра кластеров

, таким образом, что:

(2)

Результатом выполнения является новый набор ядер.

Шаги 2,3 повторяются до тех пор, пока (1) перестанет изменятся, то есть, стабилизируется.
^ Преобразование этого алгоритма для реализации его в нейросетевом базисе:

  1. Определим количество входов и выходов в нейросети

Количество входов = количеству признаков одного объекта;

Входным вектором будет являться ;

Количество выходов это количество кластеров (К);

  1. Преобразуем основной критерий (1):



С учетом знака “-” критерий D будет максимизироваться:
(3)

Псевдокод алгоритма:

Цикл 1: для p=1,n

Цикл 2: для l=1,k



конец l

Находим : max

Структура нейросети для реализации алгоритма


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

Интерпретатор- выбирает максимальное значение среди всех выходов и выдает номер этого выхода, который является номером кластера.

^ Сеть Кохонэна может работать в двух режимах:

  1. соответствует выдаче номера кластера

  2. производится нормировка всех выходов и тогда выходы

рассматриваются как вероятности принадлежности объекта к тому или иному кластеру.

В псевдокоде самый внутренний цикл: (цикл по i)- это один нейрон в

слое Кохонэна. Цикл по l- весь слой Кохонэна, цикл по p в структуре нейросети не реализуется, а реализуется в процессе обучения.
^ Обучение сети Кохонэна

Шаг 1: инициализация весов(т.е. присваиваем начальные значения всем в сети).

Шаг 2: подаем на вход вектор из обучающей выборки.

Шаг 3: , находится и максимальный , т.е. максимальный номер “победившего нейрона”.

Шаг 4: корректировка весов сети Кохонэна


4.1. Традиционный способ

Корректируются только веса нейрона-победителя по следующему правилу:



Где - желаемый, а - фактический.

- определяет скорость обучения.

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

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




Лекция 9.

4.2. Метод выпуклой комбинации

Правильно распределить плотность ядер в соответствии с плотностью входных векторов в n- мерном пространстве признаков.

Шаг 1: всем весам нейронов(координаты ядер кластеров) присваиваются одинаковые начальные значения



Шаг 2: обучение производится модифицированными обучающими векторами . Модификация каждого вектора производится по формуле:










Геометрическая интерпретация первого и второго подходов обучения:

4.1 Традиционный способ



Недостатки:

  1. Существуют нейроны, которые никогда не побеждают

  2. Для группы, в которой существует большое количество объектов,

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

4.2. Метод выпуклой комбинации




Достоинства:

  1. не остается необученных векторов

  2. плотность векторов ядер-кластеров соответствует плотности векторов

обучающего множества.
Недостатки:

Длительность времени обучения увеличена
4.3. Модифицированные алгоритмы

Чувство справедливости:

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

Применяется при построении самоорганизующихся карт Кохонэна.

Корректируются веса не только выигравшего нейрона, но и всех остальных, пропорционально их нормированному выходу.
^ Алгоритм обучения Хобба(без учителя)

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

Алгоритм:

Шаг 1: инициализация случайными малыми значениями.

^ Шаг 2: подается на вход текущий вектор

Шаг 3:

шаги 2,3 повторяются в цикле до стабилизации весов.

^ Самоорганизующиеся карты на основе сети Кохонэна

Self-organizing maps (SOM)

Это самоорганизующиеся структуры, основанные на нейросетях Кохонэна, которые представлены в виде двумерной сетки, в узлах которой находятся нейроны.

^ Карты имеют следующие особенности обучения:

  1. все нейроны будто бы взаимодействуют друг с другом. Величина

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

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

но и его соседей.

Для этого выбирается некоторый радиус R, и все соседи нейрона- победителя, попавшие в окружность этого радиуса тоже корректируются, но в меньшей степени.

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

^ Формула модификации весов:



- функция соседства(невозрастающая функция времени), разбивается на 2 части:

  1. собственно функция расстояния.

  2. Функция скорости обучения во времени




Где d- расстояние между текущим объектом, поданным на вход и нейроном- победителем.

убывающая функция времени, называемая радиусом обучения
^ Построение карт

Карт строится столько, сколько признаков(m). Каждая карта имеет определенную раскраску, которая соответствует значениям соответствующего признака объекта. Положение объектов на каждой карте строго фиксировано.
Лекция 10.

Основные этапы нейросетевого анализа

Этап 1: выбор типа архитектектуры нейронной сети

  1. Выбор типа нейрона со своей активационной формой

  2. Выбор количества входов/выходов, что четко связано с постановкой задачи.

  3. Выбор количества слоев и нейронов в каждом слое

Примечание: для каждого класса задач существуют уже известные заранее типы архитектуры нейросети(см.таблицу)

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

Этап 2: подготовка данных

  1. Кодирование входов/выходов

  2. Нормировка данных

  3. Обеспечение независимости между входами нейросети- предобработка данных

Здесь проводится анализ всех сочетаний входов между собой.

^ Этап 3: процесс обучения нейросети

Этап 4: выбор нейросети, которая наилучшим образом подходит по результатам обучения для решения задачи.

Этап 5: оценка значимости ошибки, которую дает нейронная сеть для решения поставленной задачи.
Проблемы обучения:

  1. Медленная сходимость процесса обучения. Но теоретически

сходимость доказана для случая, когда шаг обучения бесконечно мал.



При реализации алгоритма, когда шаг конечен, сходимость далеко не

всегда обеспечена.

  1. “Ловушки”- создаются локальными минимумами. Стремление

минимизировать ошибку.

Приемы:

  1. Изменяет архитектуру сети. В частности, увеличивает количество

нейронов. Время обучения также увеличивается.

  1. Паралич сети”

Ситуация возникает в том случае, когда веса стали слишком большими.





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


  1. “Перетренировка сети”(обучение)

Эта проблема состоит в потере нейросетью своей основной способности к обобщению.

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

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



-для однородных нейронных сетей.

- количество синоптических весов

n- количество входов

m- количество выходов

N- количество элементов обучающей выборки

  1. Число нейронов в скрытом слое для двухслойной сети





Подходы к решению проблемы перетренировки:

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



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

В противоположном случае, когда обе ошибки не могут достичь нужного уровня, сеть слишком проста.
Лекция 11

Генетические алгоритмы

^ Генетические алгоритмы(ГА)- это простая модель эволюции в природе, реализованная в виде компьютерной программы и воспроизводящая механизмы естественного отбора и генетического наследования, которые происходят в процессе эволюции живых огрганизмов.

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

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

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

Генетическая информация хранится в виде набора молекул ДНК. Каждая молекула ДНК- это цепочка из молекул нуклеотидов четырех типов: A, T, C, G. Собственно генетическая информация хранится в виде порядка следования нуклеотидов в молекуле ДНК(в виде кода).

Ген- это часть хромосомы, которая отвечает за определенные качества особи.

Значение гена- аллель.

При размножении происходит скрещивание хромосом.

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

Хромосома- вектор из нулей и единиц, каждая позиция которых называется геном.

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

Популяция- это множество особей.

Фенотип- набор декодированных вариантов решения задачи(соответствует определенному генотипу).

Crossover- операция скрещивания хромосом, при котором хромосомы обмениваются своими частями.

^ Мутация- случайное изменение одной или нескольких позиций в хромосоме(значение гена- аллель).

Функция приспособленности(fitness function): =функция оценки, это мера приспособленности данной особи в популяции. Именно она позволяет выбирать наиболее приспособленные особи.

Виды функции приспособленности:

  1. Максимум – целевая функция

  2. Минимум – преобразование в максимум

  3. Задача в ТУ – отклонение ε→min

  4. Теория игр – стоимостная функция

Локус- позиция гена в хромосоме
Отличие генетических алгоритмов от традиционных методов оптимизации:

  1. Здесь производится обратное кодирование значений

  2. Поиск начинается не с одной точки, а сразу с нескольких

  3. Не требуется производить дифференцирование целевой функции

  4. Применяются вероятностные, а не детерминированные методы отбора


Блок- схема классического генетического алгоритма


Сквозной пример:

Инициализация:

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

max f(x); f(x)=2+1,

1. a) кодируется значение переменной X

00000- 0

00001- 1

11111- 31

б) в качестве функции приспособленности выбирают целевую функцию

в) размер популяции N=6

г) генерируется случайным образом исходная популяция

























2. Оцениваем функцию приспособленности















3. Селекция

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

Этот круг делится на сегменты, где каждая часть определяется по формуле:



вероятность селекции i-той хромосомы

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




Для нашего случая:

Вращаем колесо рулетки 6 раз. Выпадают числа от 0 до 100. Пусть выпали следующие числа: 97, 26, 54, 13, 31, 88

Идентифицируем, в какой сектор попали эти числа, то есть какие хромосомы участвуют в скрещивании:

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

4.

4.1. Операция скрещивания

  1. Генерируются 3 пары случайным образом

  2. Для каждой пары хромосом подбирается локус(случайным образом)

  3. Производится обмен частями хромосом между двумя родителями


Потомок 1:

Потомок 2:

Сформировались следующие пары:

  1. и ; и ; и ;

  2. ;










Оператор мутации применяется с определенной вероятностью

ch=[1011110]

L=7

[0,1]


  1. Формирование новой популяции

  2. Оценка функции приспособленности новой популяции и ее фенотип:














  1. Проверка вида условий останова

  1. По времени

  2. По количеству итераций

  3. По отсутствию улучшения функции приспособленности

  4. По достижению максимума(если он известен)


8.
Достоинства:

  1. Отсутствует ограничение на дифференцируемость функций. В частности, ГА работает и тогда, когда функции нет вообще.

  2. Гибкость- хорошо работает при минимуме информации об окружающей среде(при высокой степени априорной неограниченности).

  3. В ряде случаев ГА может находить только логический минимум(максимум). Несмотря на это, дает быстрое нахождение приемлемого решения.

  4. Комбинируется с другими методами искусственного интеллекта и его эффективность может повышаться.


Лекция 12

Гибридные интеллектуальные системы

  1. ЭС

  2. Вероятностные вычисления(сети Баейса)

  3. НЛ

  4. НС




  1. Объединение ГА и НС

COGANN(Combination of G.A. and N.N.)

Виды объединений:

  1. Независимое

НС и ГА применяются ля решения одной и той же задачи классификации.

(многослойный персептрон, МП, SOM, ГА, KNN)


k- means nearest neighbour

  1. Вспомогательное

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

а) НС->ГА


НС используется для формирования исходной популяции


б) ГА->НС

ГА используется для инициализации весов и выбора скорости обучения

  1. Равноправное

Один метод используется для реализации какого-либо другого метода

а) Применение ГА для обучения НС

Задача оптимизации, где решается путем применения ГА:



Достоинства:

  1. Позволяет избежать “ловушек”

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


б) ГА используется для выбора топологии(архитектуры сети)

В этом случае в качестве хромосомы выступает код архитектуры сети

Существует 2 способа кодирования:

  1. Непосредственное.

Составляется матрица связей, на основании нее строится хромосома.

Недостаток: увеличение длины хромосомы при увеличении количества нейронов.

  1. Косвенное

Кодируются важнейшие параметры архитектуры сети: количество нейронов и связи




  1. НЭС с НС и ГА



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

^ ННС- нечеткие нейронные сети

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

Этот подход позволяет реализовать функцию объяснения для НС.

Идея:

Если и , то

Либо деление интервала на подинтервал, либо -срез
ННС- это четкая НС прямого распространения сигнала, которая построена с использованием И, ИЛИ нейронов.

И нейрон:

ИЛИ нейрон:

Назначение ННС: извлечение знаний


  1. Мягкая ЭС- это ЭС, которая обладает особенностями:

  1. Используются статические данные, которые интерпретируются, как обучающие выборки для ННС

  2. В этой ЭС знания представлены в виде:

    1. Лингвистической переменной

    2. Нечеткой продукции обученных НС

с) решается задача редукции, то есть оптимизация множества извлеченных правил с помощью ГА

МЭС = НЭС + ННС + ГА





Скачать файл (175.4 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru