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

Шрифт
Интервал


Математически процесс обучения можно описать следующим образом. В процессе функционирования нейронная сеть формирует выходной сигнал Y, реализуя некоторую функцию Y=G(X). Если архитектура сети задана, то вид функции G определяется значениями синаптических весов и смещенной сети.

Пусть решением некоторой задачи является функция Y=F(X), заданная параметрами входных-выходных данных (X>1, Y>1), (X>2, Y>2), …, (X>N, Y>N), для которых Y>k=F(X>k), где k=1, 2, …, N.

Обучение состоит в поиске (синтезе) функции G, близкой к F в смысле некоторой функции ошибки E.

Если выбрано множество обучающих примеров – пар (X>N, Y>N), где k=1, 2, …, N) и способ вычисления функции ошибки E, то обучение нейронной сети превращается в задачу многомерной оптимизации, имеющую очень большую размерность, при этом, поскольку функция E может иметь произвольный вид, обучение в общем случае – многоэкстремальная невыпуклая задача оптимизации.

Для решения этой задачи могут использоваться следующие (итерационные) алгоритмы:

1. Алгоритмы локальной оптимизации с вычислением частных производных первого порядка:

градиентный алгоритм (метод наискорейшего спуска),

методы с одномерной и двумерной оптимизацией целевой функции в направлении антиградиента,

метод сопряженных градиентов,

методы, учитывающие направление антиградиента на нескольких шагах алгоритма.

2. Алгоритмы локальной оптимизации с вычислением частных производных первого и второго порядка:

метод Ньютона,

методы оптимизации с разреженными матрицами Гессе,

квазиньютоновские методы,

метод Гаусса – Ньютона,

метод Левенберга – Марквардта и др.

3. Стохастические алгоритмы оптимизации:

поиск в случайном направлении,

имитация отжига,

метод Монте-Карло (численный метод статистических испытаний).

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

2.8. Алгоритм обучения однослойного нейрона

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



где всякий вектор X состоит из n компонент: X=(x>1, x>2 ….,