Модуль: Обратное распространение


Цепное правило


Войдите на сайт, чтобы ответы сохранялись и баллы за тетрадь засчитывались.

Цепное правило

Как локальные влияния складываются в влияние всей цепочки

Правило цепочки
Если путь один и операции идут последовательно, локальные производные перемножаются.

Пусть

\[ \Delta x=0.01. \]

Первая операция:

\[ a=3x. \]

Её локальная производная равна:

\[ \frac{\partial a}{\partial x}=3. \]

Поэтому небольшое изменение \(x\) передаётся дальше примерно так:

\[ \Delta a \approx \frac{\partial a}{\partial x}\Delta x = 3\cdot0.01 = 0.03. \]

Следующая операция:

\[ b=a+4. \]

Для неё:

\[ \frac{\partial b}{\partial a}=1. \]

Значит:

\[ \Delta b \approx \frac{\partial b}{\partial a}\Delta a = 1\cdot0.03 = 0.03. \]

Последняя операция:

\[ L=b^2. \]

Около точки \(b=10\):

\[ \frac{\partial L}{\partial b}=2b=20. \]

Поэтому:

\[ \Delta L \approx \frac{\partial L}{\partial b}\Delta b = 20\cdot0.03 = 0.6. \]

Что произошло со всем изменением

Мы начали с:

\[ \Delta x=0.01 \]

и последовательно получили:

\[ 0.01 \xrightarrow{\times 3} 0.03 \xrightarrow{\times 1} 0.03 \xrightarrow{\times 20} 0.6. \]

То есть каждая операция умножала пришедшее изменение на свою локальную производную.

Если записать весь путь сразу, получим:

\[ \Delta L \approx 20\cdot1\cdot3\cdot\Delta x. \]

Поэтому влияние \(x\) на \(L\) равно:

\[ \frac{\partial L}{\partial x} = 20\cdot1\cdot3 = 60. \]

Формально:

\[ \frac{\partial L}{\partial x} = \frac{\partial L}{\partial b} \cdot \frac{\partial b}{\partial a} \cdot \frac{\partial a}{\partial x}. \]

Это и есть цепное правило.

В последовательной цепочке локальные производные перемножаются.
Почему именно перемножаются

Каждая следующая операция получает уже изменённое значение от предыдущей.

Сначала изменение \(x\) увеличивается в 3 раза:

\[ \Delta a\approx3\Delta x. \]

Затем новое изменение умножается ещё на 1:

\[ \Delta b\approx1\cdot3\Delta x. \]

После этого оно увеличивается ещё в 20 раз:

\[ \Delta L \approx 20\cdot1\cdot3\Delta x. \]

Поэтому коэффициенты влияния вдоль одного пути не складываются, а перемножаются.

Независимая проверка

Исходную цепочку можно свернуть в одну функцию:

\[ L=(3x+4)^2. \]

При \(x=2\) мы получили аналитически:

\[ \frac{\partial L}{\partial x}=60. \]

Проверим результат численно.

Возьмём:

\[ h=0.001. \]

Немного увеличим \(x\):

\[ L(2.001)=100.060009. \]

Немного уменьшим:

\[ L(1.999)=99.940009. \]

Используем центральную разность:

\[ \frac{L(x+h)-L(x-h)}{2h}. \]

Подставляем:

\[ \frac{100.060009-99.940009}{0.002} = 60. \]

Численный и аналитический способы дали один результат.

Значит, произведение локальных производных действительно правильно описало влияние \(x\) на итоговое значение \(L\).


Проверь себя

Если dy/dx = 3, а dz/dy = 5, чему равна производная dz/dx?


Как одно изменение проходит через всю цепочку

Пусть \(x=2\), \(a=3x\), \(b=a+4\), \(L=b^2\). Подвигай \(\Delta x\) и посмотри, как это изменение проходит через все операции.

x 2 a = 3x 6 b = a + 4 10 L = b² 100 × 3 × 1 × 20 Δx 0.01 Δa 0.03 Δb 0.03 ΔL 0.6 × 3 × 1 × 20 каждый шаг умножает пришедшее изменение на локальную производную
Что происходит

Одно изменение \(\Delta x\) проходит через всю цепочку.

Каждая операция умножает пришедшее изменение на свою локальную производную:

\[ \Delta a\approx3\Delta x, \]

\[ \Delta b\approx1\Delta a, \]

\[ \Delta L\approx20\Delta b. \]

Итоговый коэффициент
ΔL Δx ≈ 60
Почему 60
3 · 1 · 20 = 60

Итоговое влияние равно произведению локальных производных.

Проверим точным расчётом

Новое значение: L = 100.6009

Точное изменение: ΔL = 0.6009

Линейное приближение: ΔL ≈ 60 · Δx = 0.6