vault backup: 2026-05-14 19:26:50

This commit is contained in:
Dmitry
2026-05-14 19:26:50 +03:00
parent edcb18f868
commit 9cecc7dbe7
8 changed files with 164 additions and 17 deletions
+2 -2
View File
@@ -259,6 +259,7 @@
},
"active": "85ff070f2dda5843",
"lastOpenFiles": [
"90 Library/11 Machine Learning/Персептрон.md",
"00 Inbox/МИАД_Л5_нейронки.pdf",
"00 Inbox/КР - Кохонен.md",
"00 Inbox/КР - Персептрон.md",
@@ -304,7 +305,6 @@
"00 Inbox/Archive",
"90 Library/03 Math/Теория нечетких множеств/Теория нечетких множеств.md.tmp.254945.1777751883191",
"90 Library/02 DevOps/Ansible/Ansible - основы.md.tmp.254945.1777751876503",
"90 Library/03 Math/Статистика/Кластерный анализ/Классификация.md.tmp.254945.1777751799750",
"90 Library/03 Math/Статистика/Кластерный анализ/Кластерный анализ.md.tmp.254945.1777751782184"
"90 Library/03 Math/Статистика/Кластерный анализ/Классификация.md.tmp.254945.1777751799750"
]
}
@@ -7,7 +7,7 @@ tags:
- statistics
- cluster-analysis
created: 2025-12-25
updated: 2026-05-07
updated: 2026-05-14
title: Расстояние Между Объектами
---
@@ -16,16 +16,17 @@ title: Расстояние Между Объектами
1) Евклидово расстояние (Расстояние Минковского при $p=2$) (Теорема Пифагора)
$$d_{E}(O_{i},O_{j})=\sqrt{\sum\limits_{l=1}^{k}(x_{il}-x_{jl})^{2}}$$
2) Взвешенное Евклидово расстояние $$d_{BE}(O_{i},O_{j})=\sqrt{\sum\limits_{l=1}^{k} \omega_{l} (x_{il}-x_{jl})^{2}},$$ $\text{где}\ \omega_{l} \in (0,1) - \text{весовой коэффициент}$
3) Расстояние Минковского (общий случай для Евклидового и Хеммингово расстояние) $$d_{M}(O_{i},O_{j})=\sqrt[p]{\sum\limits_{l=1}^{k}|x_{il}-x_{jl}|^{p}}$$
4) Хеммингово (манхэттенское) расстояние (расстояние Минковского при $p=1$) $$d_{H}(O_{i},O_{j})={\sum\limits_{l=1}^{k}|x_{il}-x_{jl}|}$$
5) Расстояние Чебышева (расстояние Минковского при $p \to \infty$) $$d_{CH}(O_{i},O_{j})={\max_{1 \leq l \leq k}|x_{il}-x_{jl}|}$$
6) Обобщенное расстояние Махаланобиса $$d_{O}(O_{i},O_{j})=\sqrt{(O_{i}-O_{j})^{T}\Delta^{T}\Sigma^{-1}\Delta(O_{i}-O_{j})}$$
3) Расстояние Минковского (общий случай для Евклидова и манхэттенского расстояний) $$d_{M}(O_{i},O_{j})=\sqrt[p]{\sum\limits_{l=1}^{k}|x_{il}-x_{jl}|^{p}}$$
4) Манхэттенское расстояние (расстояние Минковского при $p=1$) $$d_{1}(O_{i},O_{j})={\sum\limits_{l=1}^{k}|x_{il}-x_{jl}|}$$
5) Расстояние Хэмминга для бинарных векторов - число несовпадающих позиций: $$d_{H}(O_{i},O_{j})=\sum\limits_{l=1}^{k}[x_{il}\neq x_{jl}]$$
6) Расстояние Чебышева (расстояние Минковского при $p \to \infty$) $$d_{CH}(O_{i},O_{j})={\max_{1 \leq l \leq k}|x_{il}-x_{jl}|}$$
7) Обобщенное расстояние Махаланобиса $$d_{O}(O_{i},O_{j})=\sqrt{(O_{i}-O_{j})^{T}\Delta^{T}\Sigma^{-1}\Delta(O_{i}-O_{j})}$$
> $\Sigma$ - ковариационная матрица генеральной совокупности, из которой извлечена выборка.
>
> $\Delta$ - некоторая симметричная неотрицательно-определенная матрица весовых коэффициентов признаков.
7) Корреляционное расстояние
8) Корреляционное расстояние
$$d_{corr}(O_{i},O_{j}) = 1 - r_{ij}$$
> $r_{ij}$ - выборочный коэффициент корреляции между объектами $O_{i}, O_{j}$, соответствующие которым строки матрицы $X$ трактуются как *выборки*.
@@ -40,4 +41,3 @@ title: Расстояние Между Объектами
## Связанные заметки
- [[Метрические алгоритмы]] — те же формулы (Евклид, Манхэттен, Минковский, Махаланобис) реализованы в sklearn; ML-нота даёт практическое применение
- [[Итерационная классификация. Метод K-средних (K-means)]] — использует $\min_{1 \leq l \leq k} \rho_{il}$ для отнесения объекта к кластеру
@@ -7,7 +7,7 @@ tags:
- clustering
- self-organizing-maps
created: 2026-05-07
updated: 2026-05-07
updated: 2026-05-14
title: Алгоритм обучения сети Кохонена
---
@@ -82,6 +82,16 @@ $$
Алгоритм похож на [[Итерационная классификация. Метод K-средних (K-means)|K-means]] тем, что объект влияет на ближайший прототип. Главное отличие SOM - наличие топологической карты: обновляется не только победитель, но и его соседи, поэтому карта сохраняет отношения близости между областями данных.
## Метод выпуклой комбинации
Случайная инициализация весов может ухудшить качество карты. Плотные классы могут слиться, а близкие образы одного класса - раздробиться на дополнительные подклассы.
Один из способов смягчить эту проблему - метод выпуклой комбинации. Идея в том, что нормализованные входные образы сначала искусственно сближаются между собой, а затем постепенно возвращаются к исходному виду.
Для этого используют коэффициент $\alpha(t)$, который в процессе обучения изменяется от $0$ до $1$. В начале обучения сеть видит почти одинаковые образы и формирует грубую структуру карты. Затем входы всё сильнее приближаются к исходным данным, и карта уточняет разделение классов.
Этот приём снижает риск того, что начальные случайные веса слишком рано закрепят неудачное разбиение данных.
## Связанные заметки
- [[Нейронная сеть Кохонена]]
@@ -7,7 +7,7 @@ tags:
- clustering
- self-organizing-maps
created: 2026-05-07
updated: 2026-05-07
updated: 2026-05-14
title: Нейронная сеть Кохонена
---
@@ -41,6 +41,8 @@ title: Нейронная сеть Кохонена
Каждый нейрон выходного слоя связан со всеми входными признаками и имеет собственный вектор весов. Количество нейронов выходного слоя связано с желаемой детализацией карты и числом обнаруживаемых областей данных.
Выходной слой можно рассматривать как упорядоченную структуру радиальных нейронов. В контексте классификации без учителя число нейронов или областей карты связано с ожидаемым числом классов $K$, но это не жёсткое число заранее известных меток: карта может показать более тонкую структуру данных.
![[Pasted image 20260507222244.png|500]]
## Обучение
@@ -60,6 +62,22 @@ title: Нейронная сеть Кохонена
По смыслу сеть Кохонена близка к итерационным методам кластеризации: веса нейронов играют роль прототипов групп, а входные объекты притягивают ближайшие прототипы к себе. Поэтому рядом полезно держать заметки про [[Кластерный анализ]], [[Классификация]] и [[Итерационная классификация. Метод K-средних (K-means)]].
## Применение
Сети Кохонена особенно полезны для разведочного анализа данных: они помогают увидеть сгущения объектов, близость классов и потенциальные аномалии на двумерной карте.
Типичные применения:
- кластеризация без учителя;
- визуализация многомерных данных;
- поиск закономерностей в больших массивах данных;
- выявление независимых или слабо связанных признаков;
- сжатие информации;
- моделирование и прогнозирование;
- обнаружение новых явлений и нетипичных объектов.
Если после обучения кластеры разметить вручную, карту можно использовать и для классификации новых объектов. Если новый объект не похож ни на один из известных кластеров, это может быть сигналом новизны или аномалии.
## Связанные заметки
- [[Нейронные сети]]
@@ -5,7 +5,7 @@ tags:
- machine-learning
- neural-networks
created: 2025-12-17
updated: 2026-05-07
updated: 2026-05-14
title: Нейронные сети
---
@@ -208,16 +208,13 @@ $$
## Персептрон
**Персептрон**, или **перцептрон**, - математическая модель восприятия информации, предложенная Фрэнком Розенблаттом в 1957 году и реализованная в машине «Марк-1» в 1960 году.
Персептрон - один слой искусственных нейронов. Он решает задачу линейной разделимости: разделяет пространство признаков гиперплоскостью.
По смыслу это близко к [[Линейные модели|линейным моделям]], потому что решение строится через линейную комбинацию входных признаков и весов.
Базовая однослойная модель классификации вынесена в отдельную заметку [[Персептрон]]. Она показывает, как нейронная сеть может разделять пространство признаков гиперплоскостью и почему линейная разделимость является важным ограничением простых моделей.
## Связанные заметки
- [[Обратное распространение ошибки]]
- [[Backpropagation для многослойной нейронной сети]]
- [[Персептрон]]
- [[Сеть Хопфилда]]
- [[Сеть Хэмминга]]
- [[Линейные модели]]
@@ -0,0 +1,80 @@
---
status: seed
type: concept
tags:
- machine-learning
- neural-networks
- linear-models
- classification
created: 2026-05-14
updated: 2026-05-14
title: Персептрон
---
# Персептрон
**Персептрон**, или **перцептрон**, - ранняя модель [[Нейронные сети|нейронной сети]], предложенная Фрэнком Розенблаттом в 1957 году и реализованная в машине «Марк-1» в 1960 году. По смыслу это однослойная модель классификации, которая принимает вектор признаков и относит объект к классу по линейному правилу.
Персептрон близок к [[Линейные модели|линейным моделям]]: решение строится через взвешенную сумму входных признаков и пороговую функцию активации.
## Идея
Персептрон состоит из одного слоя искусственных нейронов, соединённых с входами через весовые коэффициенты. На вход подаётся вектор признаков:
$$
X=(x_1,x_2,\dots,x_n)
$$
Каждый нейрон вычисляет линейную комбинацию входов:
$$
S_k=\sum\limits_{i=1}^{n}x_iw_{ik}
$$
и сравнивает её с порогом:
$$
S_k=T_k,\quad k=1,\dots,m
$$
где:
- $x_i$ - значение входного признака;
- $w_{ik}$ - вес связи между входом $i$ и выходом $k$;
- $T_k$ - порог для выходного нейрона;
- $m$ - число выходов сети.
## Геометрический смысл
С математической точки зрения персептрон разбивает пространство признаков гиперплоскостями. В трёхмерном случае плоскость задаётся уравнением:
$$
A X + B Y + C Z + D = 0
$$
Точки по одну сторону плоскости удовлетворяют неравенству:
$$
A X + B Y + C Z + D > 0
$$
Веса персептрона задают положение такой плоскости в пространстве признаков. Поэтому классификация сводится к проверке, по какую сторону разделяющей гиперплоскости находится объект.
Для сети персептронного типа с $m$ выходами число областей классификации не превышает:
$$
2^m
$$
## Ограничение
Однослойный персептрон решает задачи, которые можно свести к линейной разделимости. Если классы нельзя разделить одной гиперплоскостью или набором линейных порогов в исходном пространстве признаков, нужен переход к другим признакам или многослойной сети.
Поэтому персептрон полезен как базовая модель для понимания [[Нейронные сети|нейронных сетей]], но не заменяет многослойные архитектуры и [[Обратное распространение ошибки|обратное распространение ошибки]].
## Связанные заметки
- [[Нейронные сети]]
- [[Линейные модели]]
- [[Классификация]]
- [[Обратное распространение ошибки]]
@@ -22,6 +22,26 @@ title: Сеть Хопфилда
По смыслу входной образ работает как ключ: сеть "вспоминает" наиболее близкий сохранённый образ.
В общем случае входной сигнал описывается биполярным вектором:
$$
X=(x_1,\dots,x_n),\quad x_i \in \{-1,1\}
$$
Эталонный образ $k$ можно обозначить как:
$$
X^k=(x_1^k,\dots,x_n^k),\quad k=1,\dots,m
$$
Если сеть успешно распознаёт образ, её выход совпадает с одним из эталонов:
$$
Y=X^k
$$
Если выходной вектор не совпал ни с одним эталоном, сеть пришла к ложному или неинтерпретируемому состоянию.
## Архитектура
Основные свойства сети Хопфилда:
@@ -36,6 +56,22 @@ title: Сеть Хопфилда
Для сети Хопфилда часто используется бинарная функция активации, описанная в [[Нейронные сети]].
## Инициализация весов
Веса задаются по эталонным образам один раз перед началом работы сети:
$$
w_{ij}=\sum\limits_{k=1}^{m}x_i^k x_j^k,\quad i\neq j
$$
Обычно связь нейрона с самим собой исключают:
$$
w_{ii}=0
$$
После такой инициализации сеть не дообучается на входных примерах, а использует уже записанные в матрицу связей эталоны.
## Алгоритм функционирования
1. На вход подаётся неизвестный сигнал. Фактически ввод выполняется установкой начальных значений аксонов:
@@ -22,6 +22,8 @@ title: Сеть Хэмминга
Сеть должна выбрать эталон с минимальным расстоянием до входного сигнала. В результате активным остаётся один выходной нейрон, соответствующий выбранному образу.
В отличие от [[Сеть Хопфилда|сети Хопфилда]], сеть Хэмминга не пытается восстановить полный эталонный образ. Её цель - выбрать номер или класс ближайшего образца.
![[Pasted image 20260514120654.png]]
## Архитектура
@@ -48,6 +50,8 @@ $$
Ингибиторные связи постепенно подавляют менее подходящие эталоны, пока активным не останется один победивший нейрон.
Первый слой нужен для начального сравнения входа со всеми эталонами. Второй слой превращает эти оценки близости в результат классификации: за счёт взаимного торможения слабые кандидаты подавляются, а сильнейший остаётся активным.
## Алгоритм функционирования
На стадии инициализации весовым коэффициентам первого слоя и порогам функции активации присваиваются значения:
@@ -102,6 +106,8 @@ $$
Роль первого слоя условна: после вычисления начальных значений сеть больше к нему не обращается. Поэтому первый слой можно заменить матрицей весовых коэффициентов.
Это подчёркивает практический смысл сети Хэмминга: первая часть вычисляет расстояния или меры похожести, а вторая выбирает победителя.
## Связанные заметки
- [[Сеть Хопфилда]]