
- •Предисловие.
- •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.6. Сеть встречного распространения
В этом параграфе будет рассмотрен алгоритм обучения «победитель забирает все» для задачи классификации Кохонена (Т. Kohonen). При предъявлении входного вектора возбуждается единственный нейрон, наиболее точно соответствующий этому образу.
5.6.1. Сеть Кохонена. Классификация образов
Задача
классификации заключается в разбиении
объектов на классы,
причем основой разбиения служит вектор
параметров объекта. Часто бывает
так, что сами классы заранее неизвестны,
и их приходится формировать
динамически. Назовем прототипом
класса
объект, наиболее типичный
для своего класса. Один из самых простых
подходов к классификации
состоит в том, чтобы предположить
существование определенного числа
классов и произвольным образом выбрать
координаты прототипов. Затем каждый
вектор из набора данных связывается с
ближайшим к нему прототипом,
и новыми прототипами становятся
центроиды всех векторов,
связанных с исходным прототипом. В
качестве меры близости двух векторов
обычно выбирается евклидово расстояние:
На этих принципах основано функционирование сети Кохонена, обычно используемой для решения задач классификации. Данная сеть обучается без учителя на основе самоорганизации. По мере обучения векторы весов нейронов становятся прототипами классов — групп векторов обучающей выборки. На этапе решения информационных задач сеть относит новый предъявленный образ к одному из сформированных классов.
Рассмотрим архитектуру сети Кохонена и правила обучения подробнее. Сеть Кохонена состоит из одного слоя нейронов. Число входов каждого нейрона n равно размерности вектора параметров объекта. Количество нейронов m совпадает с требуемым числом классов, на которые нужно разбить объекты (меняя число нейронов, можно динамически менять число классов).
Обучение
начинается с задания небольших случайных
значений элементам
весовой матрицы W.
В
дальнейшем происходит процесс
самоорганизации,
состоящий в модификации весов при
предъявлении на вход
векторов обучающей выборки. Каждый
столбец весовой матрицы представляет
собой параметры соответствующего
нейрона-классификатора.
Для каждого j-го
нейрона
определяется
расстояние от него до входного вектора
X:
Далее
выбирается нейрон с номером k,
для которого это расстояние
минимально (т. е. сеть отнесла входной
вектор к классу с
номером к).
На
текущем шаге обучения N
будут модифицироваться только
веса нейронов из окрестности нейрона
к:
Первоначально
в окрестности любого из нейронов
находятся все нейроны
сети, но с каждым шагом эта окрестность
сужается. В конце этапа
обучения подстраиваются только веса
нейрона с номером к.
Темп
обучения
с
течением времени также уменьшается
(часто полагают
,
).
Образы обучающей выборки предъявляются
последовательно,
и каждый раз происходит подстройка
весов.
5.6.2. Алгоритм обучения сети Кохонена
Шаг
1. Инициализация сети. Весовым
коэффициентам сети
присваиваются
малые случайные значения. Задаются
значения
начальный
темп обучения и
-
максимальное расстояние
между весовыми векторами (столбцами
матрицы W).
Шаг 2. Предъявление сети нового входного сигнала X.
Шаг 3. Вычисление расстояния от входа X до всех нейронов сети:
Шаг
4. Выбор
нейрона k,
с наименьшим расстоянием
.
Шаг
5. Настройка
весов нейрона k
и
всех нейронов, находящихся от
него на расстоянии, не превосходящем
:
Шаг
6. Уменьшение значений
.
Шаг 7. Шаги 2—6 повторяются до тех пор, пока веса не перестанут меняться (или пока суммарное изменение всех весов станет очень мало).
После обучения классификация выполняется посредством подачи на вход сети испытуемого вектора, вычисления расстояния от него до каждого нейрона с последующим выбором нейрона с наименьшим расстоянием как индикатора правильной классификации.
Замечание.
Если
предварительно провести единичную
нормировку всех входных векторов,
т. е. подавать на вход сети образы
,
компоненты
которого связаны с компонентами вектора
X
по
формулам
а также если после каждой итерации процесса обучения осуществлять нормировку весов каждого нейрона (столбцов матрицы W), то в качестве меры близости входных векторов и весовых векторов нейронов сети можно рассматривать скалярное произведение между ними. Действительно, в этом случае
Таким
образом, наименьшим будет расстояние
до того нейрона, скалярное произведение
с весами которого у входного вектора
максимально. В
этом случае можно считать, что каждый
нейрон Кохонена реализует тождественную
активационную функцию
где
Нейрон
с максимальным значением активационной
функции объявляется «победителем»
и его веса (а также веса нейронов из его
окружения) пересчитываются.
Сеть Кохонена нашла самое широкое применение в задачах финансового анализа. С ее помощью успешно решаются задачи предсказания рисков, нахождения рейтинга и многие другие.