Files
SecondBrain/90 Library/Machine Learning/Нейронная сеть Кохонена.md
2026-05-31 10:18:48 +03:00

7.8 KiB

status, type, tags, created, updated, aliases
status type tags created updated aliases
seed concept
machine-learning
neural-networks
clustering
self-organizing-maps
2026-05-07 2026-05-14
Нейронная сеть Кохонена

Нейронная сеть Кохонена

Нейронная сеть Кохонена - класс нейронных сетей, основанный на самоорганизующихся картах (Self-Organizing Maps, SOM). Такие сети применяются для Кластерный анализ и проецирования многомерных данных на пространство меньшей размерности с сохранением топологической близости объектов.

Если два объекта близки в исходном пространстве признаков, после обучения они обычно попадают в близкие области карты. Поэтому сеть Кохонена удобна не только для разбиения данных на группы, но и для визуального анализа структуры выборки.

Идея

Сеть Кохонена объединяет две задачи:

  1. Выделение кластеров в многомерных данных.
  2. Отображение многомерных объектов на двумерную или одномерную карту.

В отличие от многих сетей, обучающихся с учителем, сеть Кохонена обычно работает в режиме самообучения: ей предъявляют входные объекты, а сеть постепенно настраивает веса нейронов так, чтобы разные области карты отвечали за разные группы похожих объектов.

Интуитивно идею можно описать так: за каждым классом или группой похожих объектов закрепляется один нейрон либо группа близких нейронов. Нейрон хранит вектор весов, который постепенно становится представителем своего класса объектов.

!Pasted image 20260507230701.png

Если один и тот же нейрон слишком часто становится победителем, его иногда временно исключают из рассмотрения или тормозят. Это помогает "уравнять права" нейронов выходного слоя и не дать одному прототипу забрать на себя слишком много объектов. Простейший вариант такого механизма - торможение только что выигравшего нейрона.

Архитектура

Сеть состоит из двух основных слоев:

  • входной слой - принимает вектор признаков объекта;
  • выходной слой - содержит нейроны топологической карты.

Каждый нейрон выходного слоя связан со всеми входными признаками и имеет собственный вектор весов. Количество нейронов выходного слоя связано с желаемой детализацией карты и числом обнаруживаемых областей данных.

Выходной слой можно рассматривать как упорядоченную структуру радиальных нейронов. В контексте классификации без учителя число нейронов или областей карты связано с ожидаемым числом классов K, но это не жёсткое число заранее известных меток: карта может показать более тонкую структуру данных.

!Pasted image 20260507222244.png

Обучение

Обучение сети Кохонена сводится к последовательной подстройке весов. На каждом шаге сети предъявляется входной объект, после чего выбирается нейрон-победитель - нейрон, чей вектор весов ближе всего к входному вектору.

После выбора победителя корректируются:

  • веса самого нейрона-победителя;
  • веса нейронов, лежащих в его окрестности на карте.

Размер окрестности R и скорость обучения обычно задаются как функции времени: на первых итерациях они велики, а затем постепенно уменьшаются. В начале обучения может обновляться большая часть карты, поэтому формируется грубая структура кластеров. Ближе к концу обучения R стремится к нулю, и карта уточняет границы между группами объектов.

Подробная процедура вынесена в Алгоритм обучения сети Кохонена.

Связь с кластеризацией

По смыслу сеть Кохонена близка к итерационным методам кластеризации: веса нейронов играют роль прототипов групп, а входные объекты притягивают ближайшие прототипы к себе. Поэтому рядом полезно держать заметки про Кластерный анализ, Классификация и Итерационная классификация. Метод K-средних (K-means).

Применение

Сети Кохонена особенно полезны для разведочного анализа данных: они помогают увидеть сгущения объектов, близость классов и потенциальные аномалии на двумерной карте.

Типичные применения:

  • кластеризация без учителя;
  • визуализация многомерных данных;
  • поиск закономерностей в больших массивах данных;
  • выявление независимых или слабо связанных признаков;
  • сжатие информации;
  • моделирование и прогнозирование;
  • обнаружение новых явлений и нетипичных объектов.

Если после обучения кластеры разметить вручную, карту можно использовать и для классификации новых объектов. Если новый объект не похож ни на один из известных кластеров, это может быть сигналом новизны или аномалии.

Связанные заметки

  • Нейронные сети
  • Алгоритм обучения сети Кохонена
  • Кластерный анализ
  • Классификация
  • Итерационная классификация. Метод K-средних (K-means)