vault backup: 2026-05-14 19:31:50
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
---
|
||||
status: seed
|
||||
type: concept
|
||||
tags: []
|
||||
created: 2026-05-14
|
||||
updated: 2026-05-14
|
||||
title: КР - Хэмминг
|
||||
---
|
||||
|
||||
# КР - Хэмминг
|
||||
|
||||
## Что могут спросить
|
||||
|
||||
1. Что такое сеть Хэмминга и для чего она нужна?
|
||||
2. Что такое расстояние Хэмминга?
|
||||
3. Какая архитектура у сети Хэмминга?
|
||||
4. Как задаются веса первого слоя?
|
||||
5. Зачем нужен второй слой?
|
||||
6. Как работает взаимное торможение нейронов?
|
||||
7. Почему сеть Хэмминга экономнее сети Хопфилда?
|
||||
8. Чем сеть Хэмминга отличается от сети Хопфилда?
|
||||
|
||||
## Краткий ответ
|
||||
|
||||
**Сеть Хэмминга** - нейронная сеть ассоциативной памяти, которая выбирает ближайший эталонный образ. Она не восстанавливает образ полностью, а определяет, какому эталону или классу соответствует вход.
|
||||
|
||||
Идея: найти эталон с минимальным расстоянием Хэмминга до входного вектора.
|
||||
|
||||
## Расстояние Хэмминга
|
||||
|
||||
Расстояние Хэмминга - число позиций, в которых два бинарных вектора отличаются.
|
||||
|
||||
Пример:
|
||||
|
||||
$$
|
||||
X=(1,0,1,1),\quad Y=(1,1,0,1)
|
||||
$$
|
||||
|
||||
Отличаются 2 позиции, значит:
|
||||
|
||||
$$
|
||||
d_H(X,Y)=2
|
||||
$$
|
||||
|
||||
Для бинарных векторов:
|
||||
|
||||
$$
|
||||
d_H(X,Y)=\sum\limits_{i=1}^{n}[x_i\neq y_i]
|
||||
$$
|
||||
|
||||
## Архитектура
|
||||
|
||||
Сеть состоит из двух слоёв:
|
||||
|
||||
1. **Первый слой** - сравнивает входной образ со всеми эталонами.
|
||||
2. **Второй слой** - реализует конкуренцию между эталонами и оставляет одного победителя.
|
||||
|
||||
Если есть $m$ эталонов, то в первом и втором слоях по $m$ нейронов.
|
||||
|
||||
Нейроны первого слоя имеют $n$ входов, где $n$ - размерность образа.
|
||||
|
||||
Во втором слое:
|
||||
|
||||
- связь нейрона с самим собой имеет вес $+1$;
|
||||
- связи с другими нейронами имеют отрицательный вес $-\varepsilon$;
|
||||
- параметр $\varepsilon$ выбирают так:
|
||||
|
||||
$$
|
||||
0<\varepsilon<\frac{1}{m}
|
||||
$$
|
||||
|
||||
## Инициализация
|
||||
|
||||
Пусть $x_i^k$ - $i$-й элемент $k$-го эталонного образа.
|
||||
|
||||
Веса первого слоя:
|
||||
|
||||
$$
|
||||
w_{ik}=\frac{x_i^k}{2}
|
||||
$$
|
||||
|
||||
Порог:
|
||||
|
||||
$$
|
||||
T_k=\frac{n}{2}
|
||||
$$
|
||||
|
||||
где:
|
||||
|
||||
- $i=0,\dots,n-1$;
|
||||
- $k=0,\dots,m-1$;
|
||||
- $n$ - размерность входного образа;
|
||||
- $m$ - число эталонов.
|
||||
|
||||
## Алгоритм функционирования
|
||||
|
||||
1. На вход подаётся неизвестный вектор:
|
||||
|
||||
$$
|
||||
X=\{x_i:i=0,\dots,n-1\}
|
||||
$$
|
||||
|
||||
2. Первый слой вычисляет начальную близость входа к каждому эталону:
|
||||
|
||||
$$
|
||||
y_j^{(1)}=s_j^{(1)}=\sum\limits_{i=1}^{n-1}w_{ij}x_i+T_j
|
||||
$$
|
||||
|
||||
3. Эти значения передаются во второй слой:
|
||||
|
||||
$$
|
||||
y_j^{(2)}=y_j^{(1)}
|
||||
$$
|
||||
|
||||
4. Во втором слое запускается конкуренция:
|
||||
|
||||
$$
|
||||
s_j^{(2)}(p+1)=y_j^{(2)}(p)-\varepsilon\sum\limits_{\substack{k=0\\k\neq j}}^{m-1}y_k^{(2)}(p)
|
||||
$$
|
||||
|
||||
5. Затем применяется пороговая функция:
|
||||
|
||||
$$
|
||||
y_j^{(2)}(p+1)=f(s_j^{(2)}(p+1))
|
||||
$$
|
||||
|
||||
6. Итерации продолжаются, пока выходы второго слоя не стабилизируются.
|
||||
|
||||
В конце активным должен остаться один нейрон. Его номер соответствует ближайшему эталону.
|
||||
|
||||
## Смысл второго слоя
|
||||
|
||||
Второй слой нужен для выбора победителя. Нейроны взаимно тормозят друг друга: чем сильнее активен один кандидат, тем сильнее он подавляет остальных.
|
||||
|
||||
В итоге остаётся нейрон, соответствующий эталону с наибольшей похожестью и минимальным расстоянием Хэмминга.
|
||||
|
||||
## Почему первый слой условный
|
||||
|
||||
Первый слой используется только один раз - чтобы посчитать начальные значения похожести. После этого сеть работает только со вторым слоем.
|
||||
|
||||
Поэтому первый слой можно заменить матрицей весов и обычным вычислением близости.
|
||||
|
||||
## Отличие от сети Хопфилда
|
||||
|
||||
| Сеть | Что делает | Результат |
|
||||
|---|---|---|
|
||||
| Хопфилда | восстанавливает образ | полный эталонный вектор |
|
||||
| Хэмминга | сравнивает с эталонами | номер ближайшего эталона |
|
||||
|
||||
Сеть Хэмминга обычно требует меньше памяти и вычислений, потому что ей не нужно восстанавливать весь образ через полную рекуррентную динамику.
|
||||
|
||||
## Мини-ответ на контрольной
|
||||
|
||||
Сеть Хэмминга - сеть ассоциативной памяти для выбора ближайшего эталонного образа. Она основана на расстоянии Хэмминга, то есть числе несовпадающих битов. Первый слой вычисляет близость входа к каждому эталону, второй слой через отрицательные обратные связи подавляет слабые варианты. В результате активным остаётся один выходной нейрон, соответствующий ближайшему образцу.
|
||||
Reference in New Issue
Block a user