vault backup: 2026-05-07 15:37:13
This commit is contained in:
Vendored
+23
-8
@@ -21,8 +21,24 @@
|
||||
"icon": "lucide-file",
|
||||
"title": "Обратное распространение ошибки - вывод"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "88b67d9f503d6d2c",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "00 Inbox/Алгоритм обратного распространения ошибки для произвольного числа слоев НС.md",
|
||||
"mode": "source",
|
||||
"source": false,
|
||||
"backlinks": false
|
||||
},
|
||||
"icon": "lucide-file",
|
||||
"title": "Алгоритм обратного распространения ошибки для произвольного числа слоев НС"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"currentTab": 1
|
||||
}
|
||||
],
|
||||
"direction": "vertical"
|
||||
@@ -170,13 +186,13 @@
|
||||
"state": {
|
||||
"type": "outline",
|
||||
"state": {
|
||||
"file": "01 Library/11 Machine Learning/Обратное распространение ошибки - вывод.md",
|
||||
"file": "00 Inbox/Алгоритм обратного распространения ошибки для произвольного числа слоев НС.md",
|
||||
"followCursor": false,
|
||||
"showSearch": false,
|
||||
"searchQuery": ""
|
||||
},
|
||||
"icon": "lucide-list",
|
||||
"title": "Outline of Обратное распространение ошибки - вывод"
|
||||
"title": "Outline of Алгоритм обратного распространения ошибки для произвольного числа слоев НС"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -191,8 +207,7 @@
|
||||
"title": "File properties for Git"
|
||||
}
|
||||
}
|
||||
],
|
||||
"currentTab": 4
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "953ae0f10eedfdc6",
|
||||
@@ -245,11 +260,12 @@
|
||||
"obsidian-git:Open Git source control": false
|
||||
}
|
||||
},
|
||||
"active": "cb9f1037ae0492db",
|
||||
"active": "88b67d9f503d6d2c",
|
||||
"lastOpenFiles": [
|
||||
"01 Library/11 Machine Learning/Обратное распространение ошибки - вывод.md",
|
||||
"00 Inbox/Алгоритм обратного распространения ошибки для произвольного числа слоев НС.md",
|
||||
"01 Library/11 Machine Learning/Обратное распространение ошибки.md",
|
||||
"01 Library/11 Machine Learning/Нейронные сети.md",
|
||||
"01 Library/11 Machine Learning/Обратное распространение ошибки - вывод.md",
|
||||
"00 Inbox/Hello.md",
|
||||
"00 Inbox/Обратное распространение ошибки - вывод.md",
|
||||
"99 System/Archive/Обратное распространение ошибки - вывод.md",
|
||||
@@ -272,7 +288,6 @@
|
||||
"01 Library/02 DevOps/Основные команды git.md",
|
||||
"00 Inbox/Git.md",
|
||||
"00 Inbox/Archive/Шаблонизатор Helm.md",
|
||||
"00 Inbox/Archive/УИР.md",
|
||||
"00 Inbox/Archive",
|
||||
"01 Library/03 Math/Теория нечетких множеств/Теория нечетких множеств.md.tmp.254945.1777751883191",
|
||||
"01 Library/02 DevOps/Ansible/Ansible - основы.md.tmp.254945.1777751876503",
|
||||
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
---
|
||||
status: seed
|
||||
type: concept
|
||||
tags: []
|
||||
created: 2025-12-17
|
||||
updated: 2026-05-07
|
||||
title: Алгоритм обратного распространения ошибки для произвольного числа слоев НС
|
||||
---
|
||||
|
||||
# Алгоритм обратного распространения ошибки для произвольного числа слоев НС
|
||||
|
||||
## Шаг 1: Прямой проход
|
||||
|
||||
Подать на входы сети один из возможных образцов и в режиме обычного функционирования НС, когда сигналы распространяются от входов к выходам, рассчитать значения последних.
|
||||
|
||||
## Шаг 2: Дельта выходного слоя
|
||||
|
||||
Рассчитать $\delta^{(N)}$ для выходного слоя:
|
||||
|
||||
$$\delta_j^{(N)} = (y_j - d_j) y_j'$$
|
||||
|
||||
где:
|
||||
- $y_j$ — предсказание j-го выходного нейрона
|
||||
- $d_j$ — правильный ответ
|
||||
- $y_j'$ — производная функции активации
|
||||
|
||||
Рассчитать изменения веса $\Delta w^{(N)}$ слоя N:
|
||||
|
||||
$$\Delta w_{ij}^{(N)} = -\eta \delta_j^{(N)} y_i^{(N-1)}$$
|
||||
|
||||
где:
|
||||
- $\eta$ — скорость обучения (learning rate)
|
||||
- $y_i^{(N-1)}$ — выход нейрона i из предыдущего слоя
|
||||
|
||||
## Шаг 3: Дельта и изменения весов для остальных слоёв
|
||||
|
||||
Рассчитать $\delta^{(n)}$ и $\Delta w^{(n)}$ для всех остальных слоёв, $n = N-1, \ldots, 1$:
|
||||
|
||||
$$\delta_i^{(n)} = y_i^{(n)'} \sum_j \delta_j^{(n+1)} w_{ij}^{(n+1)}$$
|
||||
|
||||
где:
|
||||
- $y_i^{(n)'}$ — производная функции активации нейрона i в слое n
|
||||
- $\sum_j \delta_j^{(n+1)} w_{ij}^{(n+1)}$ — сумма ошибок следующего слоя, взвешенных по соединяющим весам
|
||||
|
||||
$$\Delta w_{ij}^{(n+1)} = -\eta \delta_j^{(n+1)} y_i^{(n)}$$
|
||||
|
||||
## Шаг 4: Коррекция всех весов в НС
|
||||
|
||||
$$w_{ij}^{(n)}(t) = w_{ij}^{(n)}(t-1) + \Delta w_{ij}^{(n)}(t)$$
|
||||
|
||||
где $t$ — текущая итерация.
|
||||
|
||||
## Шаг 5: Проверка сходимости
|
||||
|
||||
Если ошибка сети существенна, перейти на шаг 1.
|
||||
|
||||
---
|
||||
|
||||
## Интерпретация
|
||||
|
||||
- **$\delta_j^{(N)}$** — локальная ошибка на выходном нейроне (разница между предсказанием и истиной, умноженная на крутизну активации)
|
||||
|
||||
- **$\delta_i^{(n)}$** — локальная ошибка на скрытом нейроне (ошибка распространяется назад через веса и производные функции активации)
|
||||
|
||||
- **$\Delta w_{ij}$** — направление и величина изменения веса (пропорциональны дельте и входу нейрона)
|
||||
|
||||
Ошибка течёт от выхода к входу, на каждом слое умножаясь на производную активации и веса следующего слоя.
|
||||
Reference in New Issue
Block a user