vault backup: 2026-05-14 19:31:50
This commit is contained in:
Vendored
+2
-2
@@ -259,6 +259,8 @@
|
|||||||
},
|
},
|
||||||
"active": "85ff070f2dda5843",
|
"active": "85ff070f2dda5843",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
|
"00 Inbox/КР - Хэмминг.md",
|
||||||
|
"00 Inbox/КР - Хопфилд.md",
|
||||||
"90 Library/11 Machine Learning/Персептрон.md",
|
"90 Library/11 Machine Learning/Персептрон.md",
|
||||||
"00 Inbox/МИАД_Л5_нейронки.pdf",
|
"00 Inbox/МИАД_Л5_нейронки.pdf",
|
||||||
"00 Inbox/КР - Кохонен.md",
|
"00 Inbox/КР - Кохонен.md",
|
||||||
@@ -293,8 +295,6 @@
|
|||||||
"CODEX.md",
|
"CODEX.md",
|
||||||
"00 Inbox/Идея.md",
|
"00 Inbox/Идея.md",
|
||||||
"99 System/Archive/Сети Хопфилда и Хэмминга.md",
|
"99 System/Archive/Сети Хопфилда и Хэмминга.md",
|
||||||
"99 System/Archive/Идея.md",
|
|
||||||
"90 Library/11 Machine Learning/Сети Хопфилда и Хэмминга.md",
|
|
||||||
"99 System/Cache/Recording 20260514000859.m4a",
|
"99 System/Cache/Recording 20260514000859.m4a",
|
||||||
"99 System/Cache/Recording 20260514000811.m4a",
|
"99 System/Cache/Recording 20260514000811.m4a",
|
||||||
"99 System/Cache/Pasted image 20260512225511.png",
|
"99 System/Cache/Pasted image 20260512225511.png",
|
||||||
|
|||||||
@@ -0,0 +1,148 @@
|
|||||||
|
---
|
||||||
|
status: seed
|
||||||
|
type: concept
|
||||||
|
tags: []
|
||||||
|
created: 2026-05-14
|
||||||
|
updated: 2026-05-14
|
||||||
|
title: КР - Хопфилд
|
||||||
|
---
|
||||||
|
|
||||||
|
# КР - Хопфилд
|
||||||
|
|
||||||
|
## Что могут спросить
|
||||||
|
|
||||||
|
1. Что такое сеть Хопфилда и для чего она нужна?
|
||||||
|
2. Почему сеть Хопфилда относится к ассоциативной памяти?
|
||||||
|
3. Какая у неё архитектура?
|
||||||
|
4. Как кодируются входные и эталонные образы?
|
||||||
|
5. Как рассчитываются веса?
|
||||||
|
6. Как сеть восстанавливает искажённый образ?
|
||||||
|
7. Какие есть ограничения?
|
||||||
|
8. Чем сеть Хопфилда отличается от сети Хэмминга?
|
||||||
|
|
||||||
|
## Краткий ответ
|
||||||
|
|
||||||
|
**Сеть Хопфилда** - однослойная рекуррентная нейронная сеть ассоциативной памяти. Она хранит набор эталонных образов и по искажённому или неполному входу пытается восстановить ближайший эталон.
|
||||||
|
|
||||||
|
Если вход похож на один из запомненных образов, сеть в процессе итераций приходит к устойчивому состоянию, соответствующему этому образу.
|
||||||
|
|
||||||
|
## Архитектура
|
||||||
|
|
||||||
|
- один слой нейронов;
|
||||||
|
- каждый нейрон связан с другими нейронами;
|
||||||
|
- выходы нейронов возвращаются на входы;
|
||||||
|
- связей нейрона с самим собой обычно нет;
|
||||||
|
- веса задаются один раз по эталонным образам;
|
||||||
|
- состояние сети пересчитывается до стабилизации.
|
||||||
|
|
||||||
|
Входной и выходной векторы имеют одинаковую размерность:
|
||||||
|
|
||||||
|
$$
|
||||||
|
X=(x_1,\dots,x_n),\quad x_i \in \{-1,1\}
|
||||||
|
$$
|
||||||
|
|
||||||
|
Эталонный образ:
|
||||||
|
|
||||||
|
$$
|
||||||
|
X^k=(x_1^k,\dots,x_n^k),\quad k=1,\dots,m
|
||||||
|
$$
|
||||||
|
|
||||||
|
где:
|
||||||
|
|
||||||
|
- $n$ - число нейронов и размерность образа;
|
||||||
|
- $m$ - число запоминаемых эталонов;
|
||||||
|
- $k$ - номер эталонного образа.
|
||||||
|
|
||||||
|
## Инициализация весов
|
||||||
|
|
||||||
|
Веса рассчитываются по эталонным образам:
|
||||||
|
|
||||||
|
$$
|
||||||
|
w_{ij}=\sum\limits_{k=1}^{m}x_i^kx_j^k,\quad i\neq j
|
||||||
|
$$
|
||||||
|
|
||||||
|
Связь нейрона с самим собой исключается:
|
||||||
|
|
||||||
|
$$
|
||||||
|
w_{ii}=0
|
||||||
|
$$
|
||||||
|
|
||||||
|
Смысл: если два признака часто имеют одинаковый знак в эталонах, связь между ними усиливается; если разные знаки - связь становится отрицательной.
|
||||||
|
|
||||||
|
## Алгоритм функционирования
|
||||||
|
|
||||||
|
1. На вход подаётся неизвестный или искажённый образ.
|
||||||
|
|
||||||
|
Начальное состояние сети:
|
||||||
|
|
||||||
|
$$
|
||||||
|
y_i(0)=x_i,\quad i=0,\dots,n-1
|
||||||
|
$$
|
||||||
|
|
||||||
|
2. Для каждого нейрона считается новое состояние:
|
||||||
|
|
||||||
|
$$
|
||||||
|
s_j(p+1)=\sum\limits_{i=1}^{n-1}w_{ij}y_i(p)
|
||||||
|
$$
|
||||||
|
|
||||||
|
3. Значение нейрона обновляется через пороговую функцию:
|
||||||
|
|
||||||
|
$$
|
||||||
|
y_j(p+1)=f(s_j(p+1))
|
||||||
|
$$
|
||||||
|
|
||||||
|
где обычно:
|
||||||
|
|
||||||
|
$$
|
||||||
|
f(s)=
|
||||||
|
\begin{cases}
|
||||||
|
1, & s \ge 0 \\
|
||||||
|
-1, & s < 0
|
||||||
|
\end{cases}
|
||||||
|
$$
|
||||||
|
|
||||||
|
4. Шаги повторяются, пока выходы не перестанут изменяться.
|
||||||
|
|
||||||
|
Если распознавание успешно:
|
||||||
|
|
||||||
|
$$
|
||||||
|
Y=X^k
|
||||||
|
$$
|
||||||
|
|
||||||
|
То есть сеть восстановила один из эталонных образов.
|
||||||
|
|
||||||
|
## Ограничения
|
||||||
|
|
||||||
|
Сеть Хопфилда может ошибиться, если:
|
||||||
|
|
||||||
|
- запомнено слишком много образов;
|
||||||
|
- эталоны слишком похожи друг на друга;
|
||||||
|
- вход слишком сильно искажён;
|
||||||
|
- сеть пришла к ложному устойчивому состоянию.
|
||||||
|
|
||||||
|
Оценка ёмкости:
|
||||||
|
|
||||||
|
$$
|
||||||
|
m \approx 0.15n
|
||||||
|
$$
|
||||||
|
|
||||||
|
где $m$ - число запоминаемых образов, $n$ - число нейронов.
|
||||||
|
|
||||||
|
## Отличие от сети Хэмминга
|
||||||
|
|
||||||
|
| Сеть | Что выдаёт | Когда нужна |
|
||||||
|
|---|---|---|
|
||||||
|
| Хопфилда | восстановленный образ | нужно восстановить полный эталон |
|
||||||
|
| Хэмминга | номер ближайшего образа | нужно выбрать класс/эталон |
|
||||||
|
|
||||||
|
Главная фраза для ответа: **сеть Хопфилда восстанавливает образ, а сеть Хэмминга выбирает ближайший образец по расстоянию Хэмминга**.
|
||||||
|
|
||||||
|
## Мини-ответ на контрольной
|
||||||
|
|
||||||
|
Сеть Хопфилда - рекуррентная сеть ассоциативной памяти для восстановления эталонного бинарного образа по искажённому входу. Веса рассчитываются один раз по эталонам:
|
||||||
|
|
||||||
|
$$
|
||||||
|
w_{ij}=\sum\limits_{k=1}^{m}x_i^kx_j^k,\quad w_{ii}=0
|
||||||
|
$$
|
||||||
|
|
||||||
|
После подачи входа сеть итеративно пересчитывает состояния нейронов через пороговую функцию, пока выходной вектор не стабилизируется. Если всё прошло успешно, устойчивое состояние совпадает с одним из эталонов.
|
||||||
@@ -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. Итерации продолжаются, пока выходы второго слоя не стабилизируются.
|
||||||
|
|
||||||
|
В конце активным должен остаться один нейрон. Его номер соответствует ближайшему эталону.
|
||||||
|
|
||||||
|
## Смысл второго слоя
|
||||||
|
|
||||||
|
Второй слой нужен для выбора победителя. Нейроны взаимно тормозят друг друга: чем сильнее активен один кандидат, тем сильнее он подавляет остальных.
|
||||||
|
|
||||||
|
В итоге остаётся нейрон, соответствующий эталону с наибольшей похожестью и минимальным расстоянием Хэмминга.
|
||||||
|
|
||||||
|
## Почему первый слой условный
|
||||||
|
|
||||||
|
Первый слой используется только один раз - чтобы посчитать начальные значения похожести. После этого сеть работает только со вторым слоем.
|
||||||
|
|
||||||
|
Поэтому первый слой можно заменить матрицей весов и обычным вычислением близости.
|
||||||
|
|
||||||
|
## Отличие от сети Хопфилда
|
||||||
|
|
||||||
|
| Сеть | Что делает | Результат |
|
||||||
|
|---|---|---|
|
||||||
|
| Хопфилда | восстанавливает образ | полный эталонный вектор |
|
||||||
|
| Хэмминга | сравнивает с эталонами | номер ближайшего эталона |
|
||||||
|
|
||||||
|
Сеть Хэмминга обычно требует меньше памяти и вычислений, потому что ей не нужно восстанавливать весь образ через полную рекуррентную динамику.
|
||||||
|
|
||||||
|
## Мини-ответ на контрольной
|
||||||
|
|
||||||
|
Сеть Хэмминга - сеть ассоциативной памяти для выбора ближайшего эталонного образа. Она основана на расстоянии Хэмминга, то есть числе несовпадающих битов. Первый слой вычисляет близость входа к каждому эталону, второй слой через отрицательные обратные связи подавляет слабые варианты. В результате активным остаётся один выходной нейрон, соответствующий ближайшему образцу.
|
||||||
@@ -13,7 +13,7 @@ title: Персептрон
|
|||||||
|
|
||||||
# Персептрон
|
# Персептрон
|
||||||
|
|
||||||
**Персептрон**, или **перцептрон**, - ранняя модель [[Нейронные сети|нейронной сети]], предложенная Фрэнком Розенблаттом в 1957 году и реализованная в машине «Марк-1» в 1960 году. По смыслу это однослойная модель классификации, которая принимает вектор признаков и относит объект к классу по линейному правилу.
|
**Персептрон**, или **перцептрон**, - ранняя модель [[Нейронные сети|нейронной сети]], предложенная Фрэнком Розенблаттом в 1957 году и реализованная в машине "Марк-1" в 1960 году. По смыслу это однослойная модель классификации, которая принимает вектор признаков и относит объект к классу по линейному правилу.
|
||||||
|
|
||||||
Персептрон близок к [[Линейные модели|линейным моделям]]: решение строится через взвешенную сумму входных признаков и пороговую функцию активации.
|
Персептрон близок к [[Линейные модели|линейным моделям]]: решение строится через взвешенную сумму входных признаков и пороговую функцию активации.
|
||||||
|
|
||||||
@@ -60,11 +60,7 @@ $$
|
|||||||
|
|
||||||
Веса персептрона задают положение такой плоскости в пространстве признаков. Поэтому классификация сводится к проверке, по какую сторону разделяющей гиперплоскости находится объект.
|
Веса персептрона задают положение такой плоскости в пространстве признаков. Поэтому классификация сводится к проверке, по какую сторону разделяющей гиперплоскости находится объект.
|
||||||
|
|
||||||
Для сети персептронного типа с $m$ выходами число областей классификации не превышает:
|
Для сети персептронного типа с $m$ выходами число областей классификации не превышает $2^m$.
|
||||||
|
|
||||||
$$
|
|
||||||
2^m
|
|
||||||
$$
|
|
||||||
|
|
||||||
## Ограничение
|
## Ограничение
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user