- •Введение
- •Формальный нейрон. Типология нейронов. Задача, решаемая нейроном, геометрическая интерпретация.
- •Формальный нейрон.
- •Типология нейронов.
- •Геометрическая интерпретация задачи нейрона.
- •Нейронная сеть. Слой, типология слоёв. Типология нейронных сетей. Основные классы задач, решаемых нейронными сетями.
- •задачи
- •Задача обучения нейронной сети, отличие от задачи обучения нейрона. Проблемы. Примеры алгоритмов и методов обучения.
- •Градиентные методы.
- •Математическое обоснование метода обратного распространения ошибки. Алгоритм обратного распространения ошибки.
- •Вывод формулы для расчёта адаптивного коэффициента обучения в алгоритме обратного распространения ошибки.
- •Вывод формулы для расчёта адаптивного шага обучения для нерекуррентной линейной нейронной сети.
- •Алгоритм послойного обучения. Назначение и отличие от алгоритма обратного распространения ошибки.
- •Алгоритм многократного распространения ошибки. Назначение и отличие от алгоритма обратного распространения ошибки.
- •Задача предсказания числовых последовательностей с помощью нейронных сетей. Особенности устройства нейронных сетей для предсказания числовых последовательностей.
- •Реккурентные нейронные сети. Контекстный нейрон. Обучение. Сеть Элмана. Сеть Джордана.
- •Рециркуляционные нейронные сети. Линейная рециркуляционная сеть. Задача, решаемая линейной рециркуляционной сетью (метод главных компонент).
- •Алгоритмы обучения и функционирования линейной рециркуляционной сети.
- •Релаксационные нейронные сети. Синхронная сеть Хопфилда. Непрерывное и дискретное состояние. Структура, обучение, энергия, функционирование.
- •Сеть Хэмминга. Назначение, обучение и функционирование.
- •Линейная ассоциативная память и ассоциативная память на основе сети Хопфилда. Функционирование, отличие.
- •Двунаправленная ассоциативная память. Назначение, структура, обучение и функционирование.
- •Двунаправленная ассоциативная память. Метод обучения двунаправленной ассоциативной памяти с модифицированной структурой.
- •Сеть адаптивного резонанса. Назначение, структура, обучение и функционирование.
- •СТРУКТУРА APT
- •Функционирование сети APT в процессе классификации
- •ФУНКЦИОНИРОВАНИЕ APT
- •ПРИМЕР ОБУЧЕНИЯ СЕТИ APT
- •ЗАКЛЮЧЕНИЕ
- •Устройство и структура нейронных сетей для решения задач классификации и кластеризации. Правила обучения: WTA и CWTA.
- •Структура когнитрона, неокогнитрона и свёрточных нейронных сетей, отличия. Назначение когнитрона, неокогнитрона и свёрточных нейронных сетей.
- •Обучение
- •НЕОКОГНИТРОН
- •Обобщение
- •Вычисления
- •Обучение
- •Псевдооптическая нейронная сеть. Интерферирующий нейрон, устройство. Назначение, структура и функционирование сети.
- •Машина Больцмана, назначение. Устройство и функционирование.
- •Предетекторы и детекторы. Поле (карта) детекторов. Детекторы новизны и тождества. Схема активного анализа на основе нейроподобных элементов.
- •Аппаратная реализация нейронных сетей. Процедура проектирования систолических массивов (процессоров), на основе структуры сети.
- •Систолические процессоры для двухслойной нейронной сети (первый слой – рецепторы). Эффективность. Предпочтение по эффективности.
- •Систолический массив с разнонаправленными связями. Сравнение по эффективности с процессорами с однонаправленными связями.
- •Матричный систолический процессор. Сравнение по эффективности.
- •Систолические массивы для многослойных нейронных сетей. Структура систолического массива, объединяющего различные систолические процессоры. Эффективность.
- •Систолические массивы для многослойных нейронных сетей. Структура систолического массива, объединяющего идентичные систолические процессоры. Эффективность.
- •Систолические процессоры для реализации релаксационных нейронных сетей (сети Хопфилда).
- •Методы обеспечения отказоустойчивости. Скользящее резервирование.
- •Методы обеспечения отказоустойчивости. Секционированное резервирование. Схема для неоднородного потока входных данных.
- •Нечёткие нейронные сети. Структура, функционирование, обучение.
- •Литература.
Отсутствие сходимости при больших значениях коэффициента обучения. Дифференцируемая функция активации.
Вывод формулы для расчёта адаптивного коэффициента обучения в алгоритме обратного распространения ошибки.
Для преодоления недостатков связанных с выбором коэффициента обучения используют адаптивный коэффициент обучения.
ω (t +1) = ω (t) −α(t) ∂E(t) |
|
|
|
(14) |
|
|||||||
|
ij |
|
|
ij |
|
∂ωij |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Его рассчитывают градиентным методом, исходя из записанного ниже |
|
||||||||||
условия. |
|
|
|
|
|
|
|
|
|
|
||
|
∂E(t +1) |
|
= |
∂E(t +1) |
|
∂yj (t +1) |
= |
0 |
|
(15) |
|
|
|
∂α |
|
∂yj |
∂α |
|
|
||||||
|
|
|
|
|
|
|
|
|
||||
Исходя из определения синаптической функции, как скалярного |
|
|||||||||||
произведения, получаем. |
|
|
|
∂E(t)) +α(t) ∂E(t) −Tj (t) = |
|
|||||||
S j (t +1) = ∑yi (t) (ωij (t) −α(t) |
|
|||||||||||
|
|
|
|
i |
|
|
|
|
∂ωij |
|
∂Tj |
(16) |
|
|
|
|
= S j (t) −α(t) (∑yi (t) ∂E(t) |
|
∂E(t)) |
||||||
|
|
|
|
− |
|
|||||||
|
|
|
|
|
|
|
i |
|
∂ωij |
|
∂Tj |
|
Пусть |
|
|
(t) ∂E(t) − ∂E(t) |
|
|
|
|
|
||||
aj (t) = ∑yi |
|
|
|
(17) |
|
|||||||
|
i |
|
|
∂ωij |
∂Tj |
|
|
|
|
|
||
тогда |
|
|
|
|
|
|
|
|
|
|
||
|
S j (t +1) = S j (t) −α(t) aj (t) |
|
|
|
(18) |
|
В общем случае решение довольно сложное и может потребовать больших вычислительных временных ресурсов, поэтому, чтобы его ускорить, пользуются упрощённым решением, в котором рассматривают приближение до некоторого
порядка разложения функции активации в ряд Тейлора относительно точки x0 .
Пусть |
|
|
|
|
|
x0 = 0 |
|
|
|
(19) |
|
тогда, если функция неограниченно дифференцируема, |
|
||||
∞ |
(i) |
(x0 ) |
|
|
|
y j (t +1) = ∑ |
F |
|
(S j (t +1) − x0 )i |
(20) |
|
|
i! |
||||
i=0 |
|
|
Рассмотрим линейное приближение функции активации и выразим её значение в точках t +1:
% |
(t +1) |
′ |
S j |
(t +1) |
(21) |
y j |
= F(0) + F (0) |
% |
(t +1) |
′ |
|
|
′ |
aj |
(t) |
(22) |
y j |
= F(0) + F (0) |
S j (t) −α(t) F (0) |
||||||
и t : |
′ |
(t) |
|
|
|
|
(23) |
|
% |
|
|
|
|
|
|||
y j |
(t) = F(0) + F (0) S j |
|
|
|
|
|||
из чего получаем выражение: |
|
|
|
|
|
|||
% |
(t +1) |
% |
′ |
aj |
(t) |
|
|
(24) |
y j |
= yj (t) −α(t) F (0) |
|
|
Так как функция активации даёт приближённый результат, то будем находить решение из следующего условия.
∂E%(t +1) |
= 0 |
(25) |
|
∂α(t) |
|||
|
|
Следует отметить, что в этой точке искомое решение всегда имеет минимум, так как:
′ |
2 |
|
2 |
|
∂ |
2 |
% |
|
|
|
|
|
|
|
E(t +1) |
|
|
|
|
||||
F (0) |
aj (t) |
|
= |
|
|
|
> 0 |
|
(26) |
||
|
|
∂α(t)2 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
||
Решая, получаем: |
|
|
′ |
′ |
aj (t)) = 0 |
|
|||||
|
|
|
|
|
|
|
(27) |
||||
∑( y j (t) −d j (t) −α(t) F |
(0) |
aj (t)) (−F (0) |
j
Откуда можно выразить α(t). |
|
|
|
|
|||||||||
|
|
∑( yj (t) −d j (t)) aj (t) |
|
|
|
|
|||||||
α(t) = |
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
F′(0) ∑aj (t)2 |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
Выразим: |
|
∂y j (t) |
|
∂S j (t) |
|
|
|
|
|
||||
∂E(t) |
= |
∂E(t) |
|
|
=γ j |
(t) F′(S j |
(t)) y j |
(t) |
|||||
∂ωij |
∂yj |
∂S j |
∂ωij |
||||||||||
|
|
|
|
|
|
|
|
||||||
∂E(t) |
= |
∂E(t) |
|
∂y j (t) |
|
∂S j (t) |
|
= −γ j (t) F′(S j (t)) |
|
||||
∂Tj |
∂yj |
∂S j |
∂Tj |
|
|||||||||
|
|
|
|
|
|
|
|
(28)
(29)
(30)
в частности, для слоя эффекторов:
∂E(t) |
= |
∂E(t) |
|
∂y j (t) |
|
∂S j (t) |
= ( yj |
(t) −d j |
(t)) F′(S j (t)) |
yj (t) |
(31) |
|
∂ωij |
∂yj |
∂S j |
∂ωij |
|||||||||
|
|
|
|
|
|
|
|
|||||
∂E(t) |
= |
∂E(t) |
|
∂y j (t) |
|
∂S j (t) |
= (d j |
(t) − yj |
(t)) F′(S j (t)) |
(32) |
|
|
∂Tj |
∂yj |
∂S j |
∂Tj |
|
||||||||
|
|
|
|
|
|
|
|
|||||
используя полученные выражения, можно выразить aj (t): |
|
|
||||||||||
aj (t) = (1+ ∑yi (t)2 ) γ j (t) F′(S j (t)) |
|
(33) |
|
i
в случаеk = p (последний слой) γ j (t) = y j (t) −d j (t) и получить приближение:
∑γ j (t)2 F′(S j (t))
α(t) = |
|
j |
(34) |
F′(0) (1+ ∑yi (t)2 ) (∑(γ j (t) F′(S j (t)))2 ) |
|||
|
i |
j |
|
Существуют другие способы расчёта адаптивного коэффициента обучения основанные, например, на кубичной и квадратичной аппроксимации.
Вывод формулы для расчёта адаптивного шага обучения для нерекуррентной линейной нейронной сети.
Для нерекуррентной линейной сети F′(x) =1
∑γ j (t)2
α(t) = |
j |
|
(35) |
(1+ ∑yi (t)2 ) (∑(γ j (t))2 ) |
|||
|
i |
j |
|
α(t) = |
1 |
|
(36) |
(1+ ∑yi (t)2 ) |
|
i
Алгоритм послойного обучения. Назначение и отличие от алгоритма обратного распространения ошибки.
Алгоритм послойного обучения предназначен для ускорения обучения гетерогенных сетей, также при его применении в некоторых случаях может повыситься вероятность попадания в глобальный минимум, он также даёт более обоснованную формулу адаптивного коэффициента обучения для скрытых слоёв.
ωij (t +1) =ωij (t) −α(t) γ j (t) F′(S j (t)) yi (t) |
(37) |
Tj (t +1) =Tj (t) +α(t) γ j (t) F′(S j (t)) |
(38) |
В методе послойного обучения рассчитывается эталонное значение для каждого нейрона скрытого слоя.
d% |
(t) |
y (t +1) |
(39) |
i |
|
i |
|
Это эталонное значение рассчитывается исходя из условия.
d% (t) = y (t) −α |
i |
(t) ∂E(t) |
|
|
(40) |
||||||
i |
|
i |
|
|
|
∂yi |
|
|
|
|
|
где |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
∂yj (t) |
|
∂S j (t) |
|
|
|
∂E(t) |
= |
∑ |
∂E(t) |
|
|
= |
∑γ j (t) F′(S j (t)) ωij (t) =γi (t) (41) |
||||
∂yi |
∂y j |
|
|
∂S j |
∂yi |
||||||
|
j |
|
|
|
|
|
j |
||||
S j (t +1) =ωij (t) ( yi (t) −αi (t) γi (t)) + ∑ωkj (t) yk (t) −Tj (t) (42) |
|||||||||||
S j (t +1) = S j (t) −αi (t) γi (t) ωij (t) |
k≠i |
||||||||||
(43) |
d% |
(t) = y |
j |
(t) −α |
(t) γ |
i |
(t) ω (t) |
(ряд Тейлора) |
(44) |
|||||||||||
|
j |
|
|
|
|
|
|
|
i |
|
|
|
ij |
|
|
|
|||
|
E%(t +1) = |
|
1 |
∑(d%j (t) − d j (t))2 |
|
|
(45) |
||||||||||||
|
2 |
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
∂E%(t +1) |
|
= |
∑( yj (t) − d j (t) −αi (t) γi (t) ωij (t)) (−γi (t) ωij (t)) = 0 (46) |
|||||||||||||||
|
|
∂α |
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
i ∑( yj (t) −d j (t)) ωij (t) |
|
|
(47) |
|||||||||||||
αi (t) = |
|
|
|
γi (t) ∑ωij (t)2 |
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
∑( yj (t) −d j (t)) ωij (t) |
|
|
|
||||
αi (t) = |
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
(48) |
||||
∑ωij (t)2 ∑( yj (t) −d j (t)) F′(S j (t)) ωij (t) |
|
||||||||||||||||||
|
|
|
|
|
j |
|
|
|
|
|
j |
|
|
|
|
|
|
||
d% |
(t) = y (t) −α |
(t) γ |
(t) |
|
|
|
(49) |
||||||||||||
|
i |
|
|
|
i |
|
|
|
i |
|
|
i |
|
|
|
|
|
|
|
Нормализация |
|
|
|
|
|
|
|
|
|
||||||||||
di |
(t) = |
|
|
|
|
|
d%i (t) |
|
|
|
|
|
|
|
|
(50) |
|||
max | d%i (t) | |
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
Алгоритм:
Дано: Em , Q входных образов и эталонов.
1.Случайная инициализация весов ωij[k ] (t) значениями равномерно
распределенной числовой величины.
2.k = p
3.На вход подаются Q входных образов и для слоя k производиться
модификация весов, порогов и выходов для слоя y[k−1]
ωij[k ] (t +1) =ωij[k ] (t) −α(t) γ j[k ] (t) Fp′(S j[k ] (t)) yi[k−1] (t)
Tj[k ] (t +1) =Tj[k ] (t) +α(t) γ j[k ] (t) Fp′(S j[k ] (t)) d%i (t) = yi (t) −αi (t) γi (t)
4. Используются рассчитанные выходы y[k−1] , производится модификация весов, порогов и выходов для слоя y до тех пор, пока не E ≤ Em
|
1 |
Q |
np |
2 |
E = |
∑∑( y j(k ) (t) −d j(k ) (t)) |
|
||
2 |
|
|||
|
h=1 |
j=1 |
|
5.Нормализуются полученные эталоны (γi (t) = yi (t) −di (t))
6.k = k −1