Нейрокомпьютерные системы



Метод виртуальных частиц


Метод виртуальных (случайных) частиц может надстраиваться почти над любым методом оптимизации. Он создан для:

  1. повышения устойчивости обученных сетей;
  2. вывода сетей из возникающих при обучении локальных минимумов оценки.

Основная идея метода - использование случайных сдвигов аргумента и суммирование полученных значений функции для усреднения. Ожидается, что в результате уменьшится влияние рельефа минимизируемой функции на процесс минимизации и откроется более прямой путь к её глобальному минимуму.

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

Рассмотрим один из вариантов алгоритма виртуальных частиц. Пусть требуется найти минимум функции

H_{pg}(w)
.Параметры сети разбиваются на группы структурно эквивалентных. Для каждой группы задается свой интервал случайных сдвигов. Определяется число виртуальных частиц
n
и генерируется
n-1
случайных векторов
r_1,r_2, \ldots, r_{n-1}
. Их координаты независимо и равномерно распределены в заданных интервалах.

Начальное положение основной частицы -

w^0
. Начальное положение
i
-ой виртуальной частицы
w^0 + r_i, i=1, \ldots, n-1
. Случайный вектор для
n
-й виртуальной частицы строится так:

 r_n=(r_1+r_2+\dots+r_{n-1})/n^{1/2} \eqno

(1)

и её положение задается вектором

w^0 + r_n
. Всем частицам, кроме
n
-й, присваивается вес
W
,
0 < W < 1
,
n
-я получает вес
W_n=W/n^{1/2}
. Далее минимизируется функция

 \begin{align*} H_W(w) = H_{pg}(w) + W(H_{pg}(w+r_1) + \dots\\ + H_{pg}(w+r_{n-1})) + W_nH_{pg}(w+r_n). \end{align*}

Алгоритм локальной оптимизации может быть выбран любой - от наискорейшего спуска и партан-методов до метода сопряженных градиентов. Выбор

r_n
в виде
(1)
и
W_n=W/n^{1/2}
определяется двумя обстоятельствами:

  1. для каждой координаты вектора
    r_n
    дисперсия будет совпадать с дисперсией координат векторов
    r_i, i=1, \ldots, n-1
    ;
  2. для квадратичных
    H_{pg}(w)
    точки минимума
    H_{pg}(w)
    и
    H_W(w)
    совпадут.

В методе виртуальных частиц возникает важный вопрос: когда уничтожать имеющиеся виртуальные частицы и порождать новые?

Есть три варианта:




Содержание  Назад  Вперед