ГоловнаСтаттіМашинне навчання

Газоподібна мережа: навчання форми даних без сітки

Конкурентне хебіанське навчання, ранжування сусідства та чому дозволити кожному вузлу трохи рухатися краще, ніж дозволяти лише переможцеві рухатися.

mysimulator teamОновлено — червень 2026≈ 8 хв читання▶ Відкрити симуляцію

А квантизатор, що змагається замість середніх значень

Neural gas, introduced by Thomas Martinetz and Klaus Schulten in 1991, is an unsupervised learning algorithm that places a set of reference vectors — nodes — inside a cloud of data so that each node ends up representing the data points nearest to it. That goal is the same as k-means clustering, but the way it gets there is different in one crucial respect: instead of only updating the single closest node on every training step, neural gas updates all of them, with the amount of movement scaled by how close each node's current rank is to the winner.

Правило: ранжируй, а не просто выбирай победителя

Для каждого образца обучения x каждый узел ранжируется по расстоянию до x — ранг 0 является ближайшим («победителем»), ранг 1 – вторым ближайшим и так далее. Каждый узел затем тянется к x на величину, которая экспоненциально уменьшается с его рангом:

Для каждого входного x: Ранжируйте все узлы i по расстоянию до x → k_i = 0, 1, 2, … (0 = ближайший) Для каждого узла i: w_i += ε(t) · exp(-k_i / λ(t)) · (x − w_i) ε(t), λ(t) уменьшаются с течением времени от большого (грубого, глобального) к малому (тонкому, локальному уточнению) живая демонстрация · узлы перемещаются в сторону плотности движущейся туманности● LIVE На ранней стадии обучения λ велико, поэтому даже удаленные узлы получают значительный толчок к каждому образцу — это быстро распространяет все узлы по занятой области входного пространства и избегает классической ошибки k-means, когда узел, инициализированный далеко от каких-либо данных, просто никогда не выбирается и остается «мертвым». Когда λ стремится к нулю, правило сходится к обычному конкурентному обучению победителя-завоевателя, и узлы стабилизируются в тонкой аппроксимации плотности данных: плотные области привлекают много узлов, разреженные области привлекают мало.

for each input x:
  rank all nodes i by distance to x   → k_i = 0, 1, 2, … (0 = closest)
  for each node i:
    w_i += ε(t) · exp(-k_i / λ(t)) · (x − w_i)

  ε(t), λ(t)   decay over training time from large (coarse, global
               ordering) to small (fine, local refinement)
жива демонстрація · пов'язана симуляція● LIVE

Конкурентне правило Хеббла: побудова графу безкоштовно

Базовий алгоритм розміщує вузли, але не з’єднує їх. Додаткове правило – конкурентне правило Хеббла – додає ребро між двома найближчими вузлами для кожного прикладу, коли він надходить, і видаляє ребра, які не оновлювалися протягом певного часу. Оскільки ребро утворюється лише між переможцем і другим за рахуванням для певної точки даних, то отриманий граф є доказово дуже близьким до триангуляції Делоне, яка випливає з даних, обмеженої областю, в якій знаходяться дані – мережа фактично відкриває власну топологію замість того, щоб її накладати.

Противопоставлення з k-means та самоорганізуючимися картами

Самоорганізована карта (SOM) також використовує правило оновлення на основі сусідства, але сусідство визначається фіксованими позиціями на попередньо визначеній 1D або 2D сітці — два вузли є сусідами, якщо вони розташовані поруч один біля одного на цій сітці, незалежно від того, пов’язані дані між ними чи ні. Neural gas замість цього визначає сусідство виключно за рангом відстаней у просторі даних, без будь-якої попередньо визначеної сітки, яка могла б деформуватися або розірвуватися. Це робить його набагато більш стійким до даних, внутрішня форма яких не відповідає плоскій сітці — спіралі, гілки маніфольда, від’єднані кластери — і емпіричні дослідження, опубліковані в оригінальній статті, постійно показують, що Neural gas досягає нижчої квантизації помилок порівняно з k-means та SOM у тих самих даних і кількості вузлів, за рахунок одного додаткового параметра для анілювання.

Зростання нейронної мережі газоподібної: дозволяємо мережі самостійно збільшуватися

Розширення нейронної мережі газоподібної Бернда Фрітцке 1995 року починається з двох вузлів і періодично вставляє новий вузол поруч із вузлом, який накопичив найбільшу локальну помилку, автоматично розділяючи перевантажені області. У поєднанні з конкурентними геббійськими зв’язками та правилом старіння, яке обрізає застарілі зв’язки, воно може відстежувати зміщуючуся або змінювану структуру розподілу даних в режимі реального часу і використовується для онлайн-кластеризації, генерації топологічно збереженої сітки з 3D точкових хмар та побудови робочих карт, де кількість необхідних кластерів невідома заздалегідь.

Frequently asked questions

Чому це називається нейронним газом?

Томас Мартінець та Клаус Шултен назвали його в 1991 році через те, як поводяться опорні вектори під час навчання – подібно до молекул газу, які розподіляються об’ємом простору вхідних даних, дрейфуючи, щоб рівномірно заповнити його, а не сидячи на жорсткій решітці.

Як нейронний газ відрізняється від k-means?

k-means оновлює лише один найближчий центральний вузол на кожному кроці, що робить його схильним до застрягання в поганому локальному оптимумі залежно від ініціалізації. Нейронний газ оновлює кожен вузол на кожному кроці, зважено за рангом його сусідства, тому віддалені вузли все ще отримують невеликий поштовх – це м’яка конкуренція усереднює погані початкові положення та значно більш надійно сходиться.

Чи потребує нейронний газ попередньо визначеної сітки, як самоорганізуюча карта?

Ні. Самоорганізуюча карта фіксує 1D або 2D сітку сусідів перед навчанням і зберігає топологію цієї сітки. Нейронний газ не має такої сітки – проста версія не має жодного вираженого графу сусідства, а розширена версія, зростаючий нейронний газ, будує граф зв’язків та навіть кількість вузлів під час навчання, адаптуючи його безпосередньо до форми даних.

Спробуйте наживо

Усе, що вище, працює прямо у вашому браузері — відкрийте Neural Gas і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.

▶ Відкрити симуляцію Neural Gas

Що ви знайшли?

Додати кроки відтворення (опційно)