Пытался обучить нейросеть без обратного распространения ошибки, а пришел к k-means
Я поставил эксперимент, чтобы выяснить, докуда можно дойти при обучении скрытого слоя искусственной нейросети без использования обратного распространения ошибки. Задействовались исключительно локальные принципы: каждый отдельный нейрон анализирует только свой входящий сигнал, собственную активность и поведение соседей, игнорируя любые глобальные маркеры ошибки и целевые метки.
Спойлер: в выбранной мной конфигурации подобный подход на практике выродился в банальный k-means. Он опережает классический k-means с идентичной структурой самое большее на полпроцента и уступает методу обратного распространения (backprop) по всем фронтам — будь то итоговая точность, поведение в условиях дефицита разметки или устойчивость к забыванию.
Тем не менее, путь оказался крайне увлекательным. Мне встретилась архитектура, способная самолично «умерщвлять» собственные нейроны; эволюционный алгоритм, перехитривший самого себя; а также несколько собственных промахов, чуть было не приведших к рождению совершенно иной публикации. Если вы интересуетесь хеббовским обучением, этот опыт сбережет вам массу времени.
Истоки исследования
Отправной точкой послужила публикация Кротова и Хопфилда (2019) под названием «Unsupervised learning by competing hidden units». Концепция предельно прозрачна: на каждом шаге презентации данных нейроны вступают в конкуренцию за первенство по уровню активации. Победитель смещает свои весовые коэффициенты ближе к вектору входа (классический постулат Хебба), тогда как нейрон, занявший k-ю позицию, напротив, отталкивается в противоположную сторону (анти-Хебб). Дополнительно задействуется слагаемое из правила Ойи, удерживающее норму весов вблизи единицы за счет предотвращения их бесконечного роста.
Я установил строгие регламенты:
-
параметры скрытых уровней трансформируются исключительно локально. Нейрону позволено оперировать информацией о собственных входах, активации, сигналах окружения и внутренних переменных (порогах, частоте побед);
-
полный запрет на backprop, глобальную ошибку и разметку при настройке промежуточных слоев;
-
доступ к меткам имеет исключительно линейный классификатор (в виде логистической регрессии), наложенный поверх сформированных признаков вида relu(Wx)³. Его роль сводится исключительно к аудиту качества полученного пространства признаков.
Также был внедрен протокол валидации, без которого интерпретация результатов исказилась бы кардинально. Любой эксперимент модифицировал строго один параметр относительно предшествующего. Каждый запуск тестировался на пяти различных сидах (случайных зернах), а зафиксированное отклонение признавалось статистически значимым лишь при превышении порога в два стандартных отклонения. Подбор гиперпараметров осуществлялся исключительно на валидационной выборке, в то время как тестовый набор данных вскрывался единожды на финальном этапе. Для каждого сравнения привлекались базовые бенчмарки с тем же объемом нейронов: исходные пиксельные значения, случайные матрицы весов, стандартный многослойный перцептрон (MLP) с backprop и — что впоследствии оказалось ключевым — алгоритм k-means.
Программная реализация выполнена полностью на numpy ради абсолютной прозрачности каждой итерации обновления весов. Полный цикл обучения на MNIST на процессоре Apple M4 Pro отнимает около 30 секунд.
Первые тревожные звоночки
На начальном этапе макет обсчитывался на мини-датасете sklearn digits (компактные изображения цифр размером 8×8 пикселей в количестве 1797 штук), демонстрируя привлекательные метрики: локальный алгоритм показывал 0,974, исходные пикселы — 0,961, а случайные веса — 0,941. Создавалось впечатление, будто локальное правило извлекает некую ценную закономерность сверх простой пиксельной информации.
Перенеся программный каркас в полноценную среду разработки и убедившись в идентичности результатов, я приступил к варьированию схем разбиения данных.
|
вариант проверки |
локальное правило |
исходные пиксели |
разница |
|
прототип: 1 сид, сплит 70/30 |
0,974 |
0,961 |
+0,013 |
|
тот же сплит, 5 сидов |
0,969±0,003 |
0,961 |
+0,008 |
|
5 уникальных разбиений 60/20/20, по 5 сидов |
|
|
-0,005±0,007 |
При иных пропорциях сплита превосходство над пикселями растворилось: дельта укладывалась в рамки статистической погрешности, причем с уклоном в отрицательную зону. Единственной стабильной тенденцией оставалось превосходство локального правила над случайными весами на 2,6 процентных пункта. Кроме того, выяснилось, что вариативность между разбиениями датасета (порядка 1,2 п.п.) существенно превосходит разброс между сидами (около 0,5 п.п.), а валидационный пул из 360 образцов дифференцирует методики всего по 1–4 картинкам.
Отсюда был извлечен фундаментальный урок: единственный сид и фиксированный сплит на миниатюрной выборке не доказывают абсолютно ничего.
Сеть, уничтожающая собственные нейроны
В первоначальной конфигурации 44% нейронов оказались «мертвыми», то есть побеждали в конкурентной борьбе менее чем на 0,1% образцов. Визуализация весов отчетливо демонстрирует расслоение: жизнеспособные элементы сформировали четкие прототипы цифр, тогда как атрофированные застряли в состоянии хаотичного шума. Их норма равняется примерно 8, в точности повторяя поведение случайного вектора из распределения N(0,1) в пространстве 64 размерностей, что подтверждает полное отсутствие модификаций в процессе тренировки. У активных элементов норма строго зафиксирована на отметке 1,000, как и предписывает правило Ойи.

Параллельно пришлось исправить архитектурный изъян, противоречивший исходным принципам локальности. В исходном прототипе (и в формулировке Кротова и Хопфилда) шаг обучения нормируется на максимальное значение абсолютной прибавки весов |ΔW| по всей популяции нейронов единовременно. Это подразумевает, что каждый узел адаптирует свой темп под действия коллектива, что нарушает локальность. Простая замена на индивидуальную нормировку по собственному максимуму приводит к катастрофическому росту доли мертвых элементов до 76%: коэффициент δ утрачивает балансирующее влияние, делая латеральное отталкивание столь же мощным, сколь и притяжение. Проблему решил механизм, где нейрон умножает шаг на собственный уровень победного сигнала — он абсолютно локален и демонстрирует идентичные с оригиналом метрики.
Коллапс системы
Стоит лишь незначительно завысить скорость обучения (lr выше 0,2) или усилить эффект отталкивания (δ = 0,8), как сеть сваливается в коллапс. Единственный доминирующий нейрон захватывает первенство на каждом примере, обрушивая общую точность до 0,14. Применительно к MNIST те же гиперпараметры, что успешно справлялись с digits, вызывают тотальный коллапс на всех пяти сидах (точность падает до 0,198) ввиду того, что количество итераций за эпоху там возрастает в 45 раз.
Вот как выглядят веса после наступления коллапса: один элемент (выделен красным) аккумулирует «усредненную цифру», в то время как практически все остальные трансформируются в ее негативные отражения (синие тона).

Мы имеем дело с ловушкой, заложенной в самой математике правила. Подставив условие w = ‑x/|x|, мы получаем активацию a = ‑|x|, вследствие чего отталкивающая добавка ‑δ(x‑a·w) обнуляется. Узел, подвергавшийся избыточному агрессивному вытеснению, смещается в область, где его реакция на любой входной стимул становится отрицательной. Функция активации ReLU перманентно транслирует нули, блокируя любые шансы на возвращение. Иными словами, нейроны не просто не оформляются на этапе инициализации — их целенаправленно уничтожает сама динамика обучения.
Внедрение адаптивного порога
Решение хорошо известно в литературе благодаря трудам ДеСиено, Фёльдиака, Диля и Кука. Каждый узел снабжается индивидуальной пороговой переменной θ. При превышении целевой частоты побед (1/N) порог возрастает, при отставании — снижается. В механизме конкуренции участвует разность a — θ. Поскольку это сугубо внутреннее состояние отдельно взятого элемента, принцип локальности не нарушается.
Эффект оказался следующим: доля мертвых элементов сократилась до ничтожных 0–0,2% (против прежних 43–47%); коллапс исчез во всем исследованном диапазоне параметров lr и δ; настройки, откалиброванные на digits, без проблем перенеслись на MNIST без дополнительной подгонки, превратив все 100 нейронов в чистые образцы цифр.

Однако прирост точности оказался минимальным. В сопоставлении со стабильной вариацией без порога (характеризующейся заниженным lr и 13% атрофированных узлов) разница на MNIST составила -0,16 ± 0,20 п.п., что укладывается в уровень шума. Линейному классификатору вполне хватает и 87 активных единиц. Следовательно, порог выступает инструментом обеспечения стабильности, а не средством повышения результативности.
Разочаровывающий вердикт: это тривиальный k-means
Прототипы цифр, продемонстрированные выше, обладают подозрительным сходством с центроидами кластеров. Я включил в перечень эталонов классический k-means, применив то же количество центроидов N вместо весов, аналогичные признаки relu(Wx)³ и тот же классификатор. Результаты оказались практически неотличимы.
Помимо MNIST, все подходы тестировались на Fashion-MNIST. Напомню, это аналогичный по структуре датасет (монохромные изображения 28×28 пикселей, 10 категорий, 70 тысяч образцов), содержащий элементы одежды и аксессуаров: футболки, брюки, платья, кроссовки, сумки и т.д.
|
точность на тестовой выборке |
MNIST |
Fashion‑MNIST |
|
локальное правило, полносвязный слой (100) |
0,9462 |
0,7959 |
|
k‑means, полносвязный (100) |
0,9414 |
0,7956 |
|
дельта (парный расчет по 5 сидам) |
+0,48 ± 0,08 п.п. |
+0,03 ± 0,30 п.п. (шум) |
|
локальное правило, локальные рецептивные поля (400) |
0,9707 |
0,8359 |
|
k‑means на тех же областях (400) |
0,9695 |
0,8316 |
|
дельта |
+0,13 ± 0,07 п.п. |
+0,43 ± 0,11 п.п. |
Происхождение даже этого небольшого расхождения наглядно иллюстрирует эксперимент на MNIST. При отключении латерального отталкивания (δ = 0) правило с порогом демонстрирует 0,9406 ± 0,0008, в то время как k-means выдает 0,9410 ± 0,0008 — фактически паритет. Этого следовало ожидать: соревновательное обучение по принципу «победитель забирает всё» в сочетании с весовой нормировкой и есть не что иное, как классический онлайн k-means, где адаптивный порог лишь предотвращает преждевременную потерю кластеров. При установке δ = 0,4 показатель возрастает до 0,9457. Выходит, весь профит сверх классической кластеризации (+0,5 п.п., превышающий три стандартных отклонения) обеспечивается за счет отталкивания второго по силе нейрона.
Практический совет: закладывайте k-means в качестве базового эталона с самого старта. Сопоставление со случайными весами и чистыми пикселями выглядит впечатляюще (на MNIST обеспечивая прирост в +13 и +3 п.п. соответственно), однако львиную долю этого отрыва генерирует банальная кластеризация.
Топологические карты и глубина: визуальная привлекательность без прогресса в точности
Я распределил 100 нейронов по двухмерной сетке 10×10, реализовав два сценария. В первом соседи триумфатора также подвергались слабой корректировке с весовым коэффициентом exp(‑d²/2σ²), аналогично самоорганизующимся картам Кохонена (SOM). На выходе формировались полноценные топологические карты с четкими кластерами цифр и плавными переходными зонами: коэффициент корреляции между физическим расстоянием на сетке и разницей векторов весов составил +0,67 для digits и +0,80 для MNIST.

Однако за карту приходится платить метриками: при σ = 1 точность проседает на 2,5 п.п. для digits и на 5,8 п.п. для MNIST. Латеральное притяжение соседей приводит к тому, что из сотни узлов автономными остаются лишь около 21 уникального прототипа. Линейный классификатор безразличен к пространственному расположению нейрона на сетке, но моментально реагирует на обеднение разнообразия признаков. Сужение параметра σ к финальной стадии обучения возвращает точность, однако на MNIST топологическая карта при этом полностью стирается.
Во втором сценарии нейрон конкурировал исключительно с локальным окружением в пределах радиуса r. Картографическая структура при этом разрушалась, а соседи, наоборот, приобретали контрастные черты под воздействием торможения. При r = 1 точность падала до 0,865 как на digits, так и на MNIST. На каждый стимул реагировало около 20 элементов одновременно, каждый из которых покрывал примерно пятую часть выборки, усваивая размытую солянку из цифр. На датасете digits из ста узлов формировалось всего 5 различимых прототипов.
Второй уровень целесообразен лишь поверх «низкоуровневых деталей»
Наслоение второго аналогичного слоя поверх полносвязного пула прототипов не имеет практического смысла. Сам по себе он уступает первому уровню, а в связке дает +1 п.п. на MNIST — ровно столько же приносит единственный слой на 200 нейронов либо первый уровень со случайным вторым. Причина кроется в плотности представлений первого слоя: все прототипы неотрицательны и демонстрируют хоть какую-то реакцию почти на каждую цифру. Вторичный уровень занимается кластеризацией этих плотных векторов, фактически вычисляя некое усреднение по 64 базовым прототипам.
Кардинально ситуация меняется, если первый уровень сканирует не изображение целиком, а локальные фрагменты. Я сконфигурировал 16 зон размером 10×10 с шагом 6, выделив по 25 нейронов на каждую область. Веса между зонами не разделялись (реализован локально-связный слой, а не свертка), а конкуренция ограничивалась границами каждого фрагмента. Слой самостоятельно выделил элементарные паттерны цифр: штрихи, дуги, углы. Второй же уровень агрегирует их в целостные силуэты.

Итог таков: конфигурация из 400 подобных детале-ориентированных элементов обеспечивает 0,969 на валидации MNIST против 0,946 у плотного слоя из 100 узлов. Это рекордный прирост за все исследование. При равной емкости (400 плотных прототипов дают 0,965) профит скромнее (+0,4 п.п.), и обусловлен он архитектурным решением, а не спецификой обучающего правила.
Сотня нейронов вторичного слоя поверх детальных признаков превосходит 100 пиксельных прототипов (+0,4 п.п.), а в тандеме с базовым слоем привносит то, чего лишен случайный второй уровень. Тем не менее, банальный k-means, примененный поверх тех же локальных паттернов, демонстрирует идентичную результативность.
Эволюционная оптимизация правил: как алгоритм обманывает исследователя
Раз ручной алгоритм по существу эквивалентен k-means, логично попытаться отыскать более совершенное правило с помощью автоматического поиска. Я сформулировал обобщенное хеббовское правило с набором свободных коэффициентов и запустил подбор через CMA-ES. Здесь g обозначает конкурентный сигнал (1 для триумфатора, −δ для k-го по силе, 0 для прочих), а a — активацию. Член с параметром E отвечает за удержание весовой нормы, пресекая геометрический разлет весов. Ручная эвристика соответствует параметрам A = 1, E = 1, B = C = D = 0.
Попытка первая: подгонка под конкретные сиды. Критерием приспособленности выступала точность на валидации digits при N = 25 нейронах, усредненная по трем фиксированным сидам. Поисковый алгоритм обнаружил правило, превосходящее ручное на 1,5 п.п., после чего вся конструкция рассыпалась. На новых сидах и альтернативных сплитах при тех же N = 25 разница по сравнению с ручной версией составила +0,15 ± 0,19 п.п. (то есть нулевая). При увещении N до 100 точность проседает с 0,967 до 0,90 и 0,80, а доля мертвых узлов взлетает до 44–70%. На MNIST одна из найденных конфигураций правила вовсе приводит к расходимости весов.
Виновниками оказались слагаемые B и D. Интеграция в ручное правило одного лишь элемента B = -0,04 доводит долю атрофии до 95%. Эти компоненты модифицируют веса всех элементов на каждой итерации, тогда как уравновешивающий их хеббовский член активируется лишь у победителя — примерно в 1/N случаев. Баланс, найденный при N = 25, при масштабировании до N = 100 смещается учетверенным образом, загоняя нейроны в ту же ловушку коллапса. Изначально я подозревал пороговый механизм (обладающий целевой частотой 1/N), но гипотеза не подтвердилась: форсирование порога лишь усугубляло ситуацию.
Попытка вторая: обнаружение тормозящего окружения. Во второй итерации я исключил члены B и D, рассчитывая приспособленность одновременно по трем сценариям (digits при N = 25 и N = 100 плюс фрагмент тренировочной части MNIST) с генерацией новых сидов на каждом поколении.
Два независимых запуска конвергировали к единой структуре правила. Во-первых, C < 0: триумфатор на каждом шаге вычитает константу из всех своих весов, формируя вокруг фильтра зону торможения, напоминающую концепцию «чернила здесь, но не вокруг» (доля отрицательных весов возросла с 10% до 62%). Во-вторых, задействовано агрессивное отталкивание (δ около 0,8), провоцировавшее коллапс в отсутствие порога. В-третьих, потребовался высокоскоростной адаптивный порог (корректирующийся в 9–15 раз быстрее ручного аналога), удерживающий это отталкивание под контролем.
|
вариант правила |
тест MNIST |
Fashion‑MNIST |
|
ручное |
0,9462 |
0,7959 |
|
эволюционное, запуск 1 |
0,9544 (+0,82 ± 0,25 п.п.) |
дестабилизация на 5 из 5 сидов |
|
эволюционное, запуск 2 |
дестабилизация на 3 из 5 сидов |
не проверялось |
На MNIST найденная эвристика действительно превосходит ручную, причем на тестовом наборе, с которым оптимизатор не контактировал. Однако возникают проблемы с переносимостью. На Fashion-MNIST изображения обладают большей яркостью (средняя норма входа составляет 12,1 против 9,2 у MNIST), и правило без пошаговой нормировки рассыпается на первой же эпохе. Второй найденный вариант дестабилизируется даже на полном MNIST: в фитнес-функции процесс обучения был в 20 раз короче, и нестабильность просто не успевала развиться.
Полезный артефакт найден (зона торможения), однако оптимизация фитнеса на фиксированных сидах и единственном масштабе сети эквивалентна максимизации статистического шума. Тестирование на устойчивость к полной длине обучения и альтернативным доменам необходимо интегрировать прямо в цикл фитнес-функции.
Сводные показатели
Наилучшая локальная модель сконфигурирована следующим образом: слой с локальными рецептивными полями плюс вторичный уровень. На MNIST получено 0,9735, на Fashion-MNIST — 0,8576. Это превышает результаты на чистых пикселях на 5,6 и 2,5 п.п. соответственно и уступает backprop на 0,9 и 3,4 п.п. Тестовая выборка (стандартные 10 тысяч изображений) вскрывалась единожды, все метрики усреднены по пяти сидам. На Fashion-MNIST все конфигурации запускались «из коробки», без предварительной калибровки.
|
модель |
объем нейронов |
MNIST |
Fashion‑MNIST |
|
локальные поля + 2-й слой |
400+100 |
0,9735 |
0,8576 |
|
локальные поля |
400 |
0,9707 |
0,8359 |
|
полносвязный слой, эволюционное правило |
100 |
0,9544 |
распад |
|
полносвязный слой, ручное правило |
100 |
0,9462 |
0,7959 |
|
k‑means по паттернам |
400 |
0,9695 |
0,8316 |
|
k‑means полносвязный |
100 |
0,9414 |
0,7956 |
|
исходные пиксели |
784 |
0,9175 |
0,8323 |
|
случайные веса |
100 |
0,8190 |
0,7725 |
|
MLP с backprop |
100 |
0,9758 |
0,8831 |
|
MLP с backprop |
400+100 |
0,9829 |
0,8918 |
Вариативность по сидам удерживается в диапазоне 0,1–0,8 п.п. На тестовом наборе MNIST результаты совпали с валидационными для всех моделей, подтверждая отсутствие переоптимизации гиперпараметров.
Таблица демонстрирует два важных нюанса. На Fashion-MNIST плотный слой прототипов проигрывает сырым пикселям: целостный прототип изделия неспособен эффективно разграничить, скажем, рубашку и футболку, где все решают локальные детали. Интеграция локальных полей нивелирует этот недостаток. Кроме того, каждой локальной архитектуре соответствует эквивалентный k-means с разницей в результатах менее полупроцента.
Потенциальные зоны превосходства локального обучения
Точность линейного классификатора при полной разметке — это как раз тот сценарий, где кластеризация проявляет себя с наилучшей стороны. В связи с этим я протестировал еще два направления, ради которых обычно и продвигают локальное обучение. В обоих случаях мои ожидания не оправдались.
Дефицит размеченных данных
Признаки формируются в неконтролируемом режиме на всех 50 тысячах изображений, тогда как классификатору и эталонному MLP с backprop выделяется лишь 100 или 1000 размеченных образцов. Предполагалось, что в условиях 100 меток MLP переобучится, предоставив преимущество беспризорным признакам. Для чистоты экспериментов обеим сторонам была предоставлена оптимальная регуляризация из заранее подобранного пула.
|
дельта относительно MLP сопоставимой ширины |
100 разметок |
1000 разметок |
|
MNIST, полносвязный локальный слой |
+0,4 ± 0,8 п.п. |
+0,2 ± 0,3 п.п. |
|
MNIST, локальные поля + 2-й слой |
+0,2 ± 1,5 п.п. |
+0,2 ± 0,3 п.п. |
|
Fashion‑MNIST, полносвязный локальный слой |
−7,3 п.п. |
−8,6 п.п. |
|
Fashion‑MNIST, локальные поля + 2-й слой |
−5,1 п.п. |
−3,7 п.п. |
На MNIST зафиксирована ничья, на Fashion-MNIST первенство MLP очевидно. Любопытно, что с настройками регуляризации по умолчанию локальный слой на MNIST демонстрировал прирост в +2 п.п. при 100 метках, однако исключительно по причине слабой регуляризации базового MLP. Это яркая иллюстрация того, как просто получить мнимое преимущество за счет некорректного эталона.
Проблема катастрофического забывания
Модель последовательно обучается сначала на MNIST, а затем дообучается на Fashion-MNIST. Уровень забывания оценивался по деградации признаков: насколько падает результативность свежеобученного классификатора на цифрах после адаптации к одежде.
|
модель |
забывание MNIST |
усвоение Fashion |
|
полносвязный локальный слой (100) |
−7,1 п.п. |
0,782 |
|
локальные поля (400) |
−1,7 п.п. |
0,822 |
|
MLP с backprop (100) |
−3,1 п.п. |
0,886 |
|
MLP с backprop (400) |
−1,0 п.п. |
0,885 |
Локальные архитектуры забывают не меньше перцептрона, параллельно уступая ему в качестве освоения новой задачи. Хуже всех проявил себя полносвязный слой, и виной тому тот самый спасительный адаптивный порог. Он требует от каждого узла поддержания победной частоты на уровне 1/N уже на свежих данных. Элемент, заточенный под «семерки», при подаче кроссовок практически перестает активироваться. Его порог снижается, он начинает выигрывать в конкуренции, и каждая победа смещает его весы в сторону кроссовка. В результате под цифры не остается ни единого специализированного узла.
Ирония в том, что в отсутствие порога часть «цифровых» нейронов просто не побеждала бы на одежде, сохранив свою специализацию. Иными словами, те самые «мертвые» элементы, с которыми я боролся на старте, здесь выступали бы в роли носителей памяти. Локальные поля демонстрируют большую стабильность, поскольку штрихи и границы частично пересекаются в обоих датасетах.
Любопытно, что разрекламированное катастрофическое забывание в MLP сосредоточено почти полностью в выходном слое. Старый классификатор после Fashion выдает на MNIST 0,36–0,47, тогда как скрытые репрезентации сохраняют 0,94–0,97.
Мои собственные методологические просчеты
Ранняя остановка в библиотеке sklearn. При дообучении MLP с флагом warm_start sklearn не обнуляет лучший результат, достигнутый на предыдущей задаче. Обучение на Fashion-MNIST сопоставлялось с пиком результативности на MNIST и прерывалось спустя 11 эпох. В результате MLP практически не усваивал новый домен и демонстрировал «нулевое забывание». После исправления ошибки показатель забывания возрос в 2,5–3 раза.
Тезис «мертвые нейроны вредят». Усредненные показатели создавали такое впечатление, однако парный анализ по сидам дал +0,5 ± 0,7 п.п., что является статистическим шумом.
Фитнес-функция эволюционного поиска на единственном значении N и трех сидах сгенерировала +1,5 п.п. чистой переоптимизации.
Мнимое превосходство при 100 метках улетучилось сразу после настройки регуляризации MLP.
Что касается границ применимости выводов — их не следует абсолютизировать. Масштаб невелик: 100–500 нейронов, один-два слоя, без сверточных или пулинг-преобразований. Датасеты элементарны, CIFAR не задействовался. Качество признаков оценивалось исключительно линейным классификатором. Специфические метрики вроде однопроходного обучения, энергоэффективности или работы на нейроморфном железе не исследовались.
Известно, что хеббовские сети, дополненные свертками, пулингом и мягкой конкуренцией, демонстрируют принципиально иные результаты. К примеру, архитектура SoftHebb (Журне и соавт., 2023) достигает порядка 80% точности на CIFAR-10. Поэтому корректнее сформулировать вывод так: в выбранной мной постановке базовое конкурентное правило сводится к процедуре кластеризации, что не является приговором для хеббовского подхода в целом.
Резюме
Я проанализировал четыре потенциальных преимущества локального обучения: общую точность, устойчивость к дефициту разметки, проблему забывания и перенос оптимизированного правила. Относительно обратного распространения ошибки не подтвердилось ни одно из них, а отрыв от k-means не превышает полупроцента.
Что действительно работает:
-
Адаптивный порог ликвидирует мертвые нейроны и коллапс, делая процесс независимым от lr. Обратная сторона медали — ускоренное забывание.
-
Локальные рецептивные поля обеспечивают максимальный прирост результативности, создавая фундамент, поверх которого имеет смысл надстраивать второй слой.
-
Зона торможения и латеральное отталкивание — единственные компоненты самого правила, привносящие эффект сверх k-means (около 0,5 п.п.).
В то же время глубина архитектуры и топологические карты сами по себе точность не повышают.
Если продолжать изыскания, то в рамках принципиально иного формата: тысячи нейронов, сверточные и пулинг-блоки, мягкая конкуренция, однопроходное обучение. И обязательно с задействованием k-means в качестве базового эталона с первых шагов.
Библиография
-
Krotov D., Hopfield J. J. Unsupervised learning by competing hidden units // PNAS. 2019. Vol. 116, no. 16. P. 7723–7731.
-
Oja E. A simplified neuron model as a principal component analyzer // Journal of Mathematical Biology. 1982. Vol. 15. P. 267–273.
-
Bienenstock E. L., Cooper L. N., Munro P. W. Theory for the development of neuron selectivity: orientation specificity and binocular interaction in visual cortex // Journal of Neuroscience. 1982. Vol. 2, no. 1. P. 32–48.
-
DeSieno D. Adding a conscience to competitive learning // IEEE International Conference on Neural Networks. 1988. Vol. 1. P. 117–124.
-
Földiák P. Forming sparse representations by local anti‑Hebbian learning // Biological Cybernetics. 1990. Vol. 64. P. 165–170.
-
Diehl P. U., Cook M. Unsupervised learning of digit recognition using spike‑timing‑dependent plasticity // Frontiers in Computational Neuroscience. 2015. Vol. 9. Art. 99.
-
Kohonen T. Self‑organized formation of topologically correct feature maps // Biological Cybernetics. 1982. Vol. 43. P. 59–69.
-
Coates A., Lee H., Ng A. Y. An analysis of single‑layer networks in unsupervised feature learning // AISTATS. 2011. PMLR 15. P. 215–223.
-
Xiao H., Rasul K., Vollgraf R. Fashion‑MNIST: a novel image dataset for benchmarking machine learning algorithms. arXiv:1708.07747. 2017.
-
Hansen N., Ostermeier A. Completely derandomized self‑adaptation in evolution strategies // Evolutionary Computation. 2001. Vol. 9, no. 2. P. 159–195.
-
Najarro E., Risi S. Meta‑learning through Hebbian plasticity in random networks // NeurIPS. 2020.
-
Moraitis T., Toichkin D., Journé A., Chua Y., Guo Q. SoftHebb: Bayesian inference in unsupervised Hebbian soft winner‑take‑all networks // Neuromorphic Computing and Engineering. 2022. Vol. 2, no. 4. 044017.
-
Journé A., Garcia Rodriguez H., Guo Q., Moraitis T. Hebbian deep learning without feedback // ICLR. 2023.
Организовал для юных моделей проектный институт: почему слабое деление на разделы увеличило результат вчетверо — пять главных пунктов
Как свет покорил нейроны: триумф оптогенетики на пути к Нобелевке
FLAC и MP3: какие детали пропадают при сжатии и заметно ли это на слух
Приключения латиницы: венгерские иллюминаты и румынский ренессанс
Могут ли черные дыры взрываться?
Загрузка сознания: почему я верю в сверхинтеллект
Интервью с Дэвидом Уоллесом: вся правда о стреле времени
ТикТок из 1940-х: во сколько американцам обходились развлечения во время Второй мировой