Lecture

Created: 12.09.2006 | Level: specialist | Access: free | University: Новосибирский Государственный Университет
Lecture 7:

Градиентные алгоритмы обучения сети

< Lecture 6 || Lecture 7: 123 || Lecture 8 >
Annotation: Рассматриваются: особенности задачи оптимизации, возникающей при обучении нейронных сетей; алгоритмы выбора направления минимизации: алгоритм наискорейшего спуска, партан-методы, одношаговый квазиньютоновский метод и сопряженные градиенты.

Универсальный путь обучения

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

  • задана обучающая выборка, состоящая из векторов входных сигналов \[ x^p \] ;
  • известны требования к соответствующим выходным сигналам \[ y^p \] , зафиксированные в функции оценки \[ E(y^p) \] ;
  • оценка \[ E \] по всей выборке или какой-либо ее части строится известным способом по значениям \[ E(y^p) \] .

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

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

Задачи оптимизации нейронных сетей имеют ряд специфических ограничений. Они связаны с огромной размерностью задачи обучения. Число параметров может достигать \[ 10^8 \] и более. В простейших программных имитаторах на персональных компьютерах подбирается \[ 10^3 \] - \[ 10^4 \] параметров. Из-за высокой размерности возникают два требования к алгоритму:

  1. Ограничение по памяти. Пусть \[ n \] - число параметров. Если алгоритм требует затрат памяти порядка \[ n^2 \] , то он вряд ли применим для обучения. Желательно иметь алгоритмы, которые требуют затрат памяти \[ kn, k=const \] .
  2. Возможность параллельного вычисления наиболее трудоемких этапов алгоритма, и желательно нейронной сетью.
  3. Обученный нейрокомпьютер должен с приемлемой точностью решать все тестовые задачи. Поэтому задача обучения становится многокритериальной задачей оптимизации: нужно найти точку общего минимума большого числа функций. Обучение нейрокомпьютера исходит из гипотезы о существовании этой точки.
  4. Обученный нейрокомпьютер должен иметь возможность приобретать новые навыки без утраты старых. Возможно более слабое требование: новые навыки могут сопровождаться потерей точности в старых, но потеря не должна быть существенной. Это означает, что в достаточно большой окрестности найденной точки общего минимума оценок их значения незначительно отличаются от минимальных. Итак, имеем четыре специфических ограничения, выделяющих обучение нейрокомпьютера из общих задач оптимизации:
  • астрономическое число параметров;
  • необходимость высокого параллелизма при обучении;
  • многокритериальность решаемых задач;
  • необходимость найти достаточно широкую область, в которой значения всех минимизируемых функций близки к минимальным.
< Lecture 6 || Lecture 7: 123 || Lecture 8 >