diff --git a/00 Inbox/Нейронная сеть хемминга.md b/00 Inbox/Нейронная сеть хемминга.md index cd16847..9eeca81 100644 --- a/00 Inbox/Нейронная сеть хемминга.md +++ b/00 Inbox/Нейронная сеть хемминга.md @@ -4,14 +4,15 @@ type: concept tags: [] created: 2025-12-17 updated: 2026-05-14 -title: +title: Нейронная сеть хемминга --- + +# Нейронная сеть хемминга Когда нет необходимости, чтобы сеть в явном виде выдавала образ, а достаточно, например, получать номер образа, ассоциативную память успешно реализует сеть Хемминга. Данная сеть характеризуется, по сравнению с сетью Хопфилда, меньшими затратами на память и объемом вычислений. Идея работы сети состоит в нахождении расстояния Хемминга (Манхеттенского) от тестируемого образа до всех образов. Расстоянем Хемминга называется число отличающихся битов в двух бинарных векторах. Сеть должна выбрать образ с минимальным расстоянием до неизветного входного сигнала, в результате чего будет активирован только ОДИН выход сети, который соответствует этому образу. - ![[Pasted image 20260514120654.png]] Сеть состоит из двух слоев. Первый и второй слои имеют по $m$ нейронов, где $m$ - число образов. @@ -27,4 +28,13 @@ $$T_{k}=\frac{n}{2},\ |\ k=0,\dots,m-1$$ Весовые коэффициенты тормозящих синапсов во втором слое берут равными некоторой величине $0 < \epsilon < \frac{1}{m}$ Синапс нейрона, связанный с его же аксоном, имеет вес $+1$. -1) На входы сети подается неизвестный вектор $X=\{x_{i}:i=0,\dots,n-1\}$, исходя из которого рассчитыватся состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя)$$y_{j}^{(1)}=s_{j}^{(1)}=\sum\limits_{i=1}^{n-1}w_{ij}$$ +1) На входы сети подается неизвестный вектор $X=\{x_{i}:i=0,\dots,n-1\}$, исходя из которого рассчитыватся состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя)$$y_{j}^{(1)}=s_{j}^{(1)}=\sum\limits_{i=1}^{n-1}w_{ij}x_{i}+T_{j}$$ + После, полученными щачениями инициализиру.т значения акоснов второго слоя: $$y_{j}^{(2)}=y_{j}^{(1)},\ j=0,\dots,m-1$$ +2) Вычислить новые состояния нейронов второго слоя $$s_{j}^{(2)}(p+1)=y_{j}(p)-\epsilon\sum\limits_{k=1}^{m-1}y_{k}^{(2)}(p),\ |\ k \neq j,\ |\ j=0,\dots,m-1$$ + И значения их аксонов: $$y_{j}^{(2)}(p+1)=f[s_{j}^{(2)}(p+1)],\ j=0,\dots,m-1$$ + Активационная функция $f$ имеет вид порога, причем величина $f$ должна быть достаточно большой, чтобы любые возможные значения аргумента не приводили к насыщению (что такое насыщение?) +3) Проверить, изменились ли выходы нейронов второго слоя за последнюю итерацию, если да, то к шагу 2, иначе - конец. + +**Замечание** + +Роль первого слоя весьма условна \ No newline at end of file