vault backup: 2026-05-07 15:32:13
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
---
|
||||
status: seed
|
||||
status: stable
|
||||
type: concept
|
||||
tags:
|
||||
- machine-learning
|
||||
@@ -12,7 +12,9 @@ title: Обратное распространение ошибки - вывод
|
||||
|
||||
# Обратное распространение ошибки - вывод
|
||||
|
||||
Эта заметка фиксирует математический вывод градиента для алгоритма [[Обратное распространение ошибки]]. Общий контекст нейронных сетей находится в [[Нейронные сети]].
|
||||
Эта заметка фиксирует математический вывод градиентов для алгоритма [[Обратное распространение ошибки]]. Общий контекст нейронных сетей находится в [[Нейронные сети]].
|
||||
|
||||
Рассматривается сеть с одним скрытым слоем. Bias для краткости не записан: его градиент считается так же, как градиент веса при входе, равном $1$.
|
||||
|
||||
## Обозначения
|
||||
|
||||
@@ -25,7 +27,8 @@ title: Обратное распространение ошибки - вывод
|
||||
> $S_{l}^{(2)}$ — взвешенная сумма на входе нейрона $l$ во втором слое
|
||||
> $y_{l}$ — выход нейрона $l$ второго слоя
|
||||
> $d_{l}$ — истинное значение
|
||||
> $F$ — функция активации
|
||||
> $F$ — функция активации
|
||||
> $\delta$ — локальная ошибка нейрона
|
||||
|
||||
## Прямой проход
|
||||
|
||||
@@ -33,6 +36,7 @@ $$
|
||||
\begin{align*}
|
||||
S_{i}^{(1)} &= \sum\limits_{j=1}^{n}w_{ij}^{(1)}x_{j} \\
|
||||
u_{i} &= F(S_{i}^{(1)}) \\
|
||||
S_l^{(2)} &= \sum\limits_{i=1}^{k}w_{li}^{(2)}u_i \\
|
||||
y_{l} &= F(S_{l}^{(2)}) \\
|
||||
E &= \frac{1}{2}\sum\limits_{l=1}^{m}(y_{l}-d_{l})^{2}
|
||||
\end{align*}
|
||||
@@ -44,33 +48,33 @@ $$
|
||||
|
||||
$$
|
||||
\begin{align*}
|
||||
\frac{dE}{dw_{li}^{(2)}} &=
|
||||
\frac{dE}{dy_{l}}
|
||||
\frac{\partial E}{\partial w_{li}^{(2)}} &=
|
||||
\frac{\partial E}{\partial y_{l}}
|
||||
\cdot
|
||||
\frac{dy_{l}}{dS_{l}^{(2)}}
|
||||
\frac{\partial y_{l}}{\partial S_{l}^{(2)}}
|
||||
\cdot
|
||||
\frac{dS_{l}^{(2)}}{dw_{li}^{(2)}}
|
||||
\frac{\partial S_{l}^{(2)}}{\partial w_{li}^{(2)}}
|
||||
\end{align*}
|
||||
$$
|
||||
|
||||
Компоненты производной:
|
||||
|
||||
$$
|
||||
\frac{dE}{dy_l}=y_l-d_l
|
||||
\frac{\partial E}{\partial y_l}=y_l-d_l
|
||||
$$
|
||||
|
||||
$$
|
||||
\frac{dy_l}{dS_l^{(2)}}=F'(S_l^{(2)})
|
||||
\frac{\partial y_l}{\partial S_l^{(2)}}=F'(S_l^{(2)})
|
||||
$$
|
||||
|
||||
$$
|
||||
\frac{dS_l^{(2)}}{dw_{li}^{(2)}}=u_i
|
||||
\frac{\partial S_l^{(2)}}{\partial w_{li}^{(2)}}=u_i
|
||||
$$
|
||||
|
||||
Итог:
|
||||
|
||||
$$
|
||||
\frac{dE}{dw_{li}^{(2)}}=(y_l-d_l)F'(S_l^{(2)})u_i
|
||||
\frac{\partial E}{\partial w_{li}^{(2)}}=(y_l-d_l)F'(S_l^{(2)})u_i
|
||||
$$
|
||||
|
||||
Введём локальную ошибку выходного нейрона:
|
||||
@@ -82,7 +86,7 @@ $$
|
||||
Тогда:
|
||||
|
||||
$$
|
||||
\frac{dE}{dw_{li}^{(2)}}=\delta_l^{(2)}u_i
|
||||
\frac{\partial E}{\partial w_{li}^{(2)}}=\delta_l^{(2)}u_i
|
||||
$$
|
||||
|
||||
## Обратный проход для скрытого слоя
|
||||
@@ -130,7 +134,7 @@ $$
|
||||
Так как:
|
||||
|
||||
$$
|
||||
S_l^{(2)}=\sum w_{li}^{(2)}u_i
|
||||
S_l^{(2)}=\sum\limits_{i=1}^{k}w_{li}^{(2)}u_i
|
||||
$$
|
||||
|
||||
То:
|
||||
@@ -154,7 +158,7 @@ $$
|
||||
Так как:
|
||||
|
||||
$$
|
||||
S_i^{(1)}=\sum w_{ij}^{(1)}x_j
|
||||
S_i^{(1)}=\sum\limits_{j=1}^{n}w_{ij}^{(1)}x_j
|
||||
$$
|
||||
|
||||
То:
|
||||
@@ -210,7 +214,34 @@ $$
|
||||
|
||||
Ошибка выходного слоя $\delta_l^{(2)}$ проходит назад через вес $w_{li}^{(2)}$, суммируется по всем выходным нейронам и умножается на крутизну активации скрытого слоя. Так получается локальная ошибка $\delta_i^{(1)}$ для каждого скрытого нейрона.
|
||||
|
||||
## Итоговые формулы
|
||||
|
||||
Для слоя $r$ общий шаблон такой:
|
||||
|
||||
$$
|
||||
\frac{\partial E}{\partial w_{ij}^{(r)}}=\delta_i^{(r)}a_j^{(r-1)}
|
||||
$$
|
||||
|
||||
где $a_j^{(r-1)}$ - выход предыдущего слоя. Для первого слоя $a_j^{(0)}=x_j$, для второго слоя $a_i^{(1)}=u_i$.
|
||||
|
||||
Для выходного слоя:
|
||||
|
||||
$$
|
||||
\delta_l^{(2)}=(y_l-d_l)F'(S_l^{(2)})
|
||||
$$
|
||||
|
||||
Для скрытого слоя:
|
||||
|
||||
$$
|
||||
\delta_i^{(1)}
|
||||
=
|
||||
F'(S_i^{(1)})
|
||||
\sum\limits_{l=1}^{m}
|
||||
\delta_l^{(2)}w_{li}^{(2)}
|
||||
$$
|
||||
|
||||
## Связанные заметки
|
||||
|
||||
- [[Обратное распространение ошибки]]
|
||||
- [[Нейронные сети]]
|
||||
- [[Линейные модели]]
|
||||
|
||||
Reference in New Issue
Block a user