
- •Предисловие.
- •1. Основные задачи искусственного интеллекта.
- •1.1. История развития систем искусственного интеллекта.
- •1.2. Обзор основных направлений в области искусственного интеллекта
- •1.3. Решение задач и искусственный интеллект
- •1.3.1. Графовое представление задачи в пространстве состояний.
- •1.3.2. Стратегии поиска в пространстве состояний
- •2. Проблемная область искусственного интеллекта
- •2.1. Представление знаний
- •2.2 Модели представления знаний
- •2.2.1. Семантические сети
- •2.2.2. Фреймы
- •2.2.3. Формальные логические модели
- •2.2.4. Продукционная модель
- •2.2.5. Вывод на знаниях
- •3. Сильные методы решения задач. Экспертные системы
- •3.1. Структура экспертных систем
- •3.2. Классификация экспертных систем
- •3.3. Отличие эс от других программных продуктов
- •3.4. Цикл работы экспертных систем
- •3.5. Технология проектирования и разработки экспертных систем
- •4. Принятие решений в условиях неопределенности
- •4.1. Нечеткая логика
- •4.1.1. Нечеткие множества
- •4.1.2. Более строгое представление о нечетких множествах
- •4.1.3. Основные характеристики нечетких множеств
- •4.1.4. Примеры нечетких множеств и их характеристик
- •4.1.5. Операции над нечеткими множествами
- •4.1.6. Четкое множество α-уровня (или уровня α)
- •4.1.7. Нечеткая и лингвистическая переменные
- •4.1.8. Нечеткие числа
- •5. Машинное обучение на основе нейронных сетей
- •5.1. Биологический нейрон и его математическая модель
- •5.1.1. Биологический нейрон
- •5.1.2. Искусственный нейрон
- •5.2. Нейросети
- •5.2.1. Классификация и свойства нейросетей
- •5.2.2. Обучение искусственных нейронных сетей
- •5.3. Теорема Колмогорова
- •5.4. Персептрон
- •5.4.1. Алгоритм обучения персептрона
- •5.4.2. Линейная разделимость и персептронная представляемость
- •Логическая функция
- •Входы и выходы нейронов сети,
- •5.5. Сеть обратного распространения
- •5.5.1. Алгоритм обучения сети обратного распространения
- •5.6. Сеть встречного распространения
- •5.6.1. Сеть Кохонена. Классификация образов
- •5.6.2. Алгоритм обучения сети Кохонена
- •5. 6.3. Нейроны Гроссберга. Входные и выходные звезды
- •5.6.4. О бучение входной звезды
- •5.6.5. Обучение выходной звезды
- •5.6.6. Двухслойная сеть встречного распространения
- •5.6.7. Алгоритм обучения сети встречного распространения
- •5.7. Стохастические сети
- •5.7.1. Обучение Больцмана
- •5.7.2. Обучение Коши
- •5.8. Сети с обратными связями
- •5.8.1. Сеть Хопфилда
- •5.8.2. Правило обучения Хебба
- •5.8.3. Процедура ортогонализации образов
- •5.9. Сеть дап (двунаправленная ассоциативная память)
- •5.10. Сеть арт (адаптивная резонансная теория)
- •5.10.1. Алгоритм функционирования сети арт-1
- •Список иллюстраций
5.8.3. Процедура ортогонализации образов
Два
различных запоминаемых векторных
образа сети
,
называются
ортогональными,
если
их скалярное произведение равно нулю:
Если
все запоминаемые образы сети
,
попарно
ортогональны, емкость памяти сети
Хопфилда увеличивается до п,
т.
е. сеть может
запомнить количество образов, не
превосходящее число нейронов
в ней. На этом свойстве основано улучшение
правила Хебба: перед запоминанием
в нейронной сети исходные образы следует
ортогонализовать. Процедура расчета
весовых коэффициентов в этом случае
имеет следующий
вид:
Шаг
1. Вычисляются элементы матрицы
.
Шаг
2. Определяется
матрица C,
обратная к матрице
Шаг 3. Задаются весовые коэффициенты сети Хопфилда:
Существенным недостатком метода ортогонализации является его нелокальность: прежде чем начать обучение, необходимо наперед знать все обучающие образы. Добавление нового образа требует полного переобучения сети.
5.9. Сеть дап (двунаправленная ассоциативная память)
Сеть
Хопфилда реализует так называемую
автоассоциативную память.
Это означает, что образ может быть
завершен или исправлен, но
не может быть ассоциирован с другим
образом. Двунаправленная ассоциативная
память (ДАЛ), разработанная в 1988 году
Бертом Коско (В.
Kosko),
является гетероассоциативной: она
сохраняет пары образов и выдает
второй образец пары, когда ассоциированный
с ним первый образец
подается на вход сети. Как и сеть
Хопфилда, сеть ДАЛ способна к
обобщению, вырабатывая правильные
реакции, несмотря на искаженные
входы. Сеть ДАП (рис. 6.25) содержит два
слоя нейронов. Элементы весовой
матрицы
отражают связь между i-м
нейроном первого слоя и j-м
нейроном второго слоя,
.
В
процессе функционирования сети входной
вектор X
умножается
на
транспонированную матрицу весов сети
и подается на вход первого
слоя, в результате чего вырабатывается
вектор выходных сигналов нейронов
первого слоя Y.
Вектор
Y
затем
умножается на матрицу W
и
подается на вход второго слоя, который
вырабатывает выходные сигналы,
представляющие собой новый входной
вектор X.
Этот
процесс повторяется
до тех пор, пока сеть не достигнет
стабильного состояния, в котором ни
вектор X,
ни
вектор Y
не
изменяются. Нейроны в обоих слоях сети
ДАП функционируют аналогично нейронам
сети Хопфилда.
Этот процесс может быть выражен следующим образом:
Рис. 6.25. Структура сети ДАП
где
—
значение
функции активации данного нейрона на
предыдущем шаге.
Пусть
задана обучающая выборка ассоциированных
образов
,
Весовая
матрица сети ДАЛ вычисляется как сумма
произведений
всех векторных пар обучающего набора:
В отличие от сети Хопфилда, весовая матрица в сети ДАЛ не квадратная, что во многих случаях позволяет оптимизировать вычислительные затраты, необходимые для функционирования сети. Вернемся к примеру с запоминанием букв А, В, С. Сеть Хопфилда в этом случае имела 10x7 = = 70 входов и требовала для своей работы хранения весовой матрицы размером 70 х 70, содержащей 4900 элементов. Ассоциируем с каждым из входных образов сети двухбитовый вектор: символ А будет связан с вектором (1,-1,-1), символ В с вектором (— 1, 1, -1), символ С с вектором (—1, —1, 1). Таким образом, например, при подаче на вход искаженной версии буквы А, сеть после стабилизации должна выдавать образ (1,-1,-1). Так как ассоциированные пары заранее известны, это приведет к правильному распознаванию зашумленного входа. Но для работы такой сети требуется хранение всего 70x3 = 210 элементов весовой матрицы.
Основным
недостатком сети ДАЛ, как и сети Хопфилда,
является небольшая
емкость памяти. Так, число запоминаемых
ассоциаций не может
превышать числа нейронов в меньшем
слое. Если все пороговые значения
нулевые, то оценка еще ухудшается:
размер запоминаемой выборки не должен
превосходить
где
l
—
число нейронов в
меньшем слое. Если этот лимит превышен,
сеть начинает вырабатывать
неверные выходные сигналы, воспроизводя
ассоциации, которым не обучена.
Упражнения
5.13. Покажите, что все образы обучающей выборки являются устойчивыми состояниями сети с ортогонализованной весовой матрицей.
5.14.
Определите
весовую матрицу сети Хопфилда, необходимую
для сохранения
образов:
Покажите,
что кроме этих образов устойчивым
состоянием сети является
«ложный» вектор
Имеет ли эта сеть другие ложные образы?
Рис. 6.26. Идеальные образы для сети Хопфилда
5.15. Напишите программу построения сети Хопфилда для запоминания изображений животных (рис. 6.26, изображения взяты из коллекции картинок Word). Каждое изображение разбейте на 100 фрагментов сеткой 10x10. Каждый фрагмент соответствует входному значению 1, если содержит часть картинки, и —1, если не содержит. Проведите тестирование сети и, при необходимости, разобучение.
5.16. Напишите программу, реализующую сеть ДАП для примера 6.1, воспроизводящую ассоциации, описанные в части 5.9.