Files
SecondBrain/99 System/Archive/Алгоритм обучения сети Кохонена.md
2026-05-31 10:18:48 +03:00

29 lines
2.5 KiB
Markdown

---
status: seed
type: concept
tags: []
created: 2025-12-17
updated: 2026-05-07
aliases:
- Алгоритм обучения сети Кохонена
---
# Алгоритм обучения сети Кохонена
- При инициализации всем весовым коэффициентам присваиваются небольшие случайные значения.
- На входы подается входной образ.
- Из всего выходного слоя выбирается нейрон-победитель, значения синапсов которого максимально подходят на входной образ.
- Для него осуществляется подстройка весов синапсов с применением формулы: $$w_{ij}(t)=w_{ij}(t-1)+\alpha(x_{i}-w_{ij}(t-1))$$
- Цикл повторяется с *шага 2*, где попеременно предъявляются все образы из входного набора пока выходные значения сети не будут стабилизированы с заданной точностью.
## Выбор нейрона-победителя
- Расчет скалярного произведения вектор весовых коэффициентов с вектором входных значений (уровень входного возбуждения). Максимальное произведение дает выигравший нейрон.
$$S_{j}=\sum\limits_{i=1}^{m}x_{i}w_{ij}=||x|| * ||w^{j}||*cos(\phi)$$
- Расчет расстояния между этими векторами в $m$-мерном пространстве, где $m$-размер векторов. В данном случае, "побеждает" нейрон с наименьшим расстоянием. $$D_{j}=\sqrt{\sum\limits_{i=1}^{m}(x_{i}-w_{ij})^{2}},$$
где
$j$ - индекс нейрона, $i$ - индекс входа, $w_{ij}$ - вес синапса.
## Нормализация входных значений
При использовании обучения по алгоритму Кохонена на стадии инициализации существует практика нормализации:
- входных образов$$x_{j}=\frac{x_{j}}{\sqrt{\sum\limits_{l=1}^{m}x_{l}^{2}}}$$
- начальных значений весовых коэффициентов$$w_{ij}=\frac{w_{ij}}{\sqrt{\sum\limits_{l=1}^{k}w_{lj}^{2}}}$$