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

2. Основы применения искусственного интеллекта при дешифрировании аэроснимков
2.8. Алгоритм обучения однослойного нейрона

Оглавление

Обучение нейронной сети в задачах классификации происходит на наборе обучающих примеров X(1), X(2), …, X(Р), в которых ответ – принадлежность к классу А или B – известен. Определим индикатор D следующим образом: положим D(X)=1, если X из класса А, и положим D(X)=0, если X из класса B, то есть


где всякий вектор X состоит из n компонент: X=(x1, x2 …., xn).

Задача обучения персептрона состоит в нахождении таких параметров w1, w2, …, wn и h, что на каждом обучающем примере персептрон выдавал бы правильный ответ, то есть


Если персептрон обучен на большом числе корректно подобранных примеров и равенство (2.2) выполнено для почти всех X(i),i=1,Р, то в дальнейшем персептрон будет с близкой к единице вероятностью проводить правильную классификацию для остальных примеров. Этот интуитивно очевидный факт был впервые математически доказан (при некоторых предположениях) в основополагающей работе наших соотечественников В. Вапника и А. Червоненскиса еще в 1960-х годах.

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

Рассмотрим подробнее алгоритм обучения персептрона.

Шаг 1. Инициализация синаптических весов и смещения.

Значения всех синаптических весов модели полагают равными нулю: wi=0, i=1,n; смещение нейрона h устанавливают равны некоторому малому случайному числу. Ниже, из соображений удобства изложения и проведения операций будем пользоваться обозначением w0= —h.

Обозначим через wi(t), i=1,n вес связи от i-го элемента входного сигнала к нейрону в момент времени t.

Шаг 2. Предъявление сети нового входного и желаемого выходного сигналов.

Входной сигнал X=(x1, x2 …., xn) предъявляется нейрону вместе с желаемым выходным сигналом D.

Шаг 3. Адаптация (настройка) значений синаптических весов. Вычисление выходного сигнала нейрона.

Перенастройка (адаптация) синаптических весов проводится по следующей формуле:


где D(t) – индикатор, определенный равенством (2.1), а r – параметр обучения, принимающий значения меньшие 1.

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

Введем риск


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

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

В процессе обучения вычисляется ошибка δ(t)=D(t) – y(t).


Рисунок 2.8 – График изменения ошибки в процессе обучения нейросети


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

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

Подняться наверх