Реализация ассоциативной памяти
Сценарий: Шашата Сомия и Харвир Сингх.
С появлением больших нейронных сетей и постоянно растущими технологическими достижениями, которые доводят существующие методы до их абсолютного предела, основное внимание уделяется созданию универсального инструмента, который нацелен на все. Тем не менее, для большинства задач не потребуются невероятно интенсивные глубокие сети, но все же что-то более универсальное, чем базовые математические модели. Потенциальной задачей, которая не требует интенсивности глубоких нейронных сетей, может быть хранение и поиск информации, называемые ассоциативными воспоминаниями. Идея здесь в том, что, получив некоторый ввод, мы хотели бы иметь возможность получить связанный вывод из системы, которая связывает эти два вместе и хранит их в «памяти». Название «ассоциативная память» происходит от психологической концепции нашего мозга как системы хранения памяти, которая способна связывать понятия вместе. Одним из типов ассоциативной памяти является автоассоциативная память, в которой мы даем частичное представление желаемого вывода в качестве ввода, это может быть либо вывод с добавленным шумом, либо замаскированные части вывода. Примером такого типа памяти в действии может быть частичное изображение родственника, и ваш мозг может автоматически заполнить остальную часть изображения мысленно. Другой тип — гетероассоциативная память, где выходные данные могут относиться к разным категориям данного ввода, но модель не забывает связывать их вместе. Представьте, что вы слышите слово «собака», ваш мозг способен автоматически ассоциировать его с другими понятиями, такими как «кошка» или «поводок» [1]. Примером такого типа памяти в действии может быть частичное изображение родственника, и ваш мозг может автоматически заполнить остальную часть изображения мысленно. Другой тип — гетероассоциативная память, где выходные данные могут относиться к разным категориям данного ввода, но модель не забывает связывать их вместе. Представьте, что вы слышите слово «собака», ваш мозг способен автоматически ассоциировать его с другими понятиями, такими как «кошка» или «поводок» [1]. Примером такого типа памяти в действии может быть частичное изображение родственника, и ваш мозг может автоматически заполнить остальную часть изображения мысленно. Другой тип — гетероассоциативная память, где выходные данные могут относиться к разным категориям данного ввода, но модель не забывает связывать их вместе. Представьте, что вы слышите слово «собака», ваш мозг способен автоматически ассоциировать его с другими понятиями, такими как «кошка» или «поводок» [1].
Системы AM (ассоциативной памяти) имеют богатую историю, но есть ключевые вехи исследований, которые могут дать обзор технических достижений:
- Сеть Уиллшоу (Уиллшоу и др., 1969)
- Сеть Хопфилда (Хопфилд, 1982 г.)
Вдохновленный «памятными» свойствами голограмм, в 1969 году Д. Уилшоу предложил коррелограф, или коррелограмму, и количественный подход к ассоциативной памяти.
На рисунке выше показано свертывание паттернов A и B для создания нового паттерна на C, более конкретно, A и B содержат точечные отверстия, через которые проходит источник света (за A), чтобы создать паттерн на C, который содержит информацию об обоих паттернах отверстия. Исходя из этого, см. рис. 2 ниже, создавая точечные отверстия из спроецированного узора на C и пропуская свет, излучаемый позади C и через B, получается точно такой же узор, где расположены точечные отверстия A.
Во время создания коррелографа Уиллшоу заметил, что если и A, и B содержат N отверстий, то узор на C будет иметь размер N². Это привело к предложению ассоциативной сети, пересечения N параллельных линий (представляющих A) и N параллельных линий (представляющих B).
Из построения сети следует, что каждый полукруг в пространстве N² включен, если включены и левый, и правый входы, что представляет их связь друг с другом. Затем вы можете извлечь шаблон A из B, проследив за кругами с левой стороны и увидев, с какими кругами сверху они связаны, увидев, какие из точек N² включены. Понятно, что это будет легко работать только с одной парной ассоциацией, но также возможно изучить несколько паттернов в одной и той же сети. Уиллшоу показывает, что теоретический максимум эффективности сети достигается при включении 50% точек из N², что снижает вероятность «ложного попадания» — предполагает наличие точки в A, которая изначально не была связана с паттерном B [2]. ].
Сеть Хопфилда
Естественно, вслед за ассоциативной сетью в 1982 году произошло крупное нововведение, стимулировавшее разработку современных AM, когда Джон Хопфилд, которого часто называют крестным отцом нейронных сетей, предложил свою сеть Хопфилда. Сеть является рекуррентной, полностью связанной с каждым нейроном, находящимся в двоичном состоянии (0 или 1), а заданный вес между входным значением и желаемым выходным значением представлен в матрице весов.
Если Tij является соответствующей матрицей весов, то связь достигается следующим образом:
Где U в качестве отсечки разумно выбрано для повышения точности.
Для хранения нескольких состояний ассоциации дается следующий алгоритм:
Мы накладываем ограничение, что для i = j вес равен 0 в T. Это приводит к псевдоортогональности:
Это говорит о том, что если Vi равно 1, прогнозируемое значение J положительное, а отрицательное, если оно равно 0. Это соответствует предыдущему правилу ассоциации, где U равно 0.
Этот алгоритм обучения, по сути, усредняет стабильные состояния для каждого шаблона, но это увеличивает количество шаблонов, которые может запомнить данная сеть. Вдохновленный моделями Изинга и минимизацией энергии, Хопфилд предлагает интерпретировать этот механизм обновления как минимизацию энергии. Для рекуррентной сети с N узлами все узлы связаны друг с другом, мы берем по одному случайному узлу за раз и используем матрицу весов для обновления этого узла.
Где s — номер узла, а значение в скобках — временной шаг.
Алгоритм обновления при изучении устойчивых точек определяется следующим энергетическим правилом:
Это говорит о том, что любое изменение Vi уменьшает энергию сети до тех пор, пока изменение Vi (+ или -) соответствует знаку выхода матричного умножения.
Узлы обновляются асинхронно и случайным образом в соответствии с заданным правилом энергии и порогом. Стабильное энергетическое состояние гарантированно будет достигнуто, поскольку правило обновления изменяет нейрон только в том случае, если оно уменьшает энергию на каждом временном шаге. При определении того, сколько стабильных состояний может существовать, было показано, что для N нейронов в модели существует около 0,15 N состояний, строго o(N) масштабирование [3]. Также важно отметить, что структура этого типа сети способствует успешному решению автоассоциативных задач, но существуют варианты, такие как кодирование «вектор-матрица-вектор», которые также могут реализовывать гетероассоциативную память [4].
Биологические теории
Ключевая идея, которая лежит в основе всех упомянутых выше моделей, заключается в установлении связи, если нейрон совпадает с нейроном в совпадающем паттерне. Этот стиль обучения известен как «обучение по Хеббу», которое способствует установлению связи в синапсах, если два нейрона возбуждаются вместе. Хотя формирование памяти в мозгу до сих пор остается неизвестным явлением, в лаборатории было показано, что идея «возгорания вместе соединяются вместе» биологически верна [5].
Реализация ассоциативной памяти на кристалле
Ассоциативная память — это тип памяти, который позволяет хранить и извлекать информацию на основе отношений или ассоциаций между различными фрагментами данных. Разработка вычислительных моделей для такой системы — хорошо зарекомендовавшая себя проблема на стыке нейронауки и искусственного интеллекта. Хорошо изученные методы, такие как сети Хопфилда, могут хранить только бинарные шаблоны; однако сложные данные (такие как изображения и тексты) требуют сложных систем для решения проблемы.
Являются ли энергетические методы хорошими вычислительными моделями для ассоциативной памяти?
Почти все модели ассоциативной памяти, основанные на энергии, хранят закономерности в локальных минимумах энергетической функции. Основная идея этих моделей заключается в определении энергетического ландшафта, в котором сохраненные паттерны соответствуют стабильным состояниям с низкой энергией. Функция энергии спроектирована таким образом, чтобы иметь несколько локальных минимумов, каждый из которых представляет сохраненный шаблон. Когда система получает ввод, она итеративно обновляет свое состояние, чтобы минимизировать функцию энергии, в конечном итоге сходясь к ближайшему сохраненному шаблону, который является локальным минимумом, ближайшим к вводу. Некоторые энергетические модели:
Сети Хопфилда [2]: Функция энергии в сетях Хопфилда определяется как квадратичная функция состояния сети. Каждый сохраненный паттерн соответствует локальному минимуму этой энергетической функции. Динамика сети гарантирует, что система сойдется к одному из этих локальных минимумов, эффективно извлекая соответствующий шаблон.
Машины Больцмана [6]: В машинах Больцмана функция энергии определяется в терминах состояний узлов и весов связей между ними. Процесс обучения корректирует веса для создания энергетического ландшафта с локальными минимумами, соответствующими сохраненным образцам. Затем система использует стохастическую динамику для изучения энергетического ландшафта и установления локального минимума, извлекая соответствующий паттерн.
Подходы, основанные на теории среднего поля [7]: Эти подходы также сохраняют закономерности в локальных минимумах функции энергии. Аппроксимируя динамику сложной системы с помощью теории среднего поля, можно более эффективно анализировать и оптимизировать процессы обучения и поиска.
Эти традиционные модели могут работать с данными небольших изображений, но могут иметь проблемы с более крупными и сложными изображениями из-за их ограничений емкости, масштабируемости и вычислительной сложности.
Может ли интерполяция сама по себе реализовать ассоциативную память?
Для запоминания требуется, чтобы модель извлекала обучающие данные, а интерполяция — это способность точно соответствовать обучающим данным. Таким образом, интерполяция сама по себе не может реализовать ассоциативную память. Интерполяция может быть полезным методом для аппроксимации значений между известными точками данных, но этого недостаточно для реализации полноценной системы ассоциативной памяти. Модели ассоциативной памяти предназначены для хранения и извлечения шаблонов на основе их ассоциаций, часто путем определения наиболее близкого сохраненного шаблона к данному вводу, даже если ввод зашумлен или неполный.
Хотя интерполяцию можно использовать для оценки значений между известными точками данных, она по своей сути не предназначена для борьбы с шумом, неполной информацией или распознаванием образов. Методы интерполяции, такие как линейная или полиномиальная интерполяция, основаны на предположении, что основная функция является гладкой или имеет определенную форму, что может быть неверным для многих реальных задач ассоциативной памяти.
Альтернативный метод ассоциативной памяти — сверхпараметризация?
Избыточная параметризация относится к ситуации, когда модель машинного обучения имеет большое количество параметров (весов и смещений) по сравнению с размером набора обучающих данных. Другими словами, модель более сложна, чем необходимо, чтобы объяснить или зафиксировать основные закономерности в данных. Ранее было замечено, что чрезмерно параметризованные модели могут интерполировать данные; недавнее исследование Radhakrishnan et al. 2020 [8] показали, что перепараметрированные автоэнкодеры также могут использоваться для запоминания и извлечения обучающих примеров. Механизм удивительно прост; - примеры могут быть
восстанавливается просто путем повторения изученной карты.
Автоэнкодеры! Также чрезмерно параметризован! Что это?
Автоэнкодер — это тип искусственной нейронной сети, используемый для неконтролируемого обучения эффективному представлению данных, часто с целью уменьшения размерности, изучения признаков или сжатия данных. Он состоит из двух основных частей: кодера и декодера.
Целью обучения автокодировщика является минимизация ошибки реконструкции между входными данными и восстановленными данными, которая генерируется путем прохождения входных данных через кодировщик, а затем через декодер.
Проще говоря, перепараметризованный автоэнкодер — это автоэнкодер с большим количеством параметров. Штольня и др. др. показали, что перепараметрированные автоэнкодеры хранят обучающие примеры в виде фиксированных точек или исполнительных механизмов. Однако он также изучает тождественную карту f (x) = x
Это недостаток ассоциативности, потому что предварительным условием этого является то, что производная в примерах должна быть меньше 1. Штольня и др. др. 2020исходил из того, что перепараметризованные автоэнкодеры достаточно мощны для реализации ассоциативной памяти. В своей работе они показали, что перепараметризованные автоэнкодеры можно использовать в качестве «ассоциативной памяти на основе аттракторов». Основная идея систем на основе аттракторов заключается в том, что сеть должна иметь возможность извлекать сохраненный паттерн, если ему предоставлена неполная или зашумленная версия этого паттерна. Входной шаблон служит сигналом, а сетевая динамика направляет систему к ближайшему аттрактору, эффективно «очищая» шум или заполняя недостающую информацию — проще говоря, OPA может реализовывать ассоциативную память. Математические условия для того, чтобы быть ассоциативной памятью на основе аттрактора:
- Примеры должны быть фиксированными точками.
- Производные в примерах должны быть меньше 1.
Это действительно происходит?
В документе представлены обширные эмпирические доказательства того, что аттракторы можно найти в автоэнкодерах с различными архитектурами и методами оптимизации. Авторы успешно продемонстрировали сверхпараметризованный автоэнкодер, способный хранить 500 изображений из набора данных ImageNet-64 в качестве аттракторов. Они подтвердили, что все 500 обучающих изображений действительно были сохранены как аттракторы, изучив собственные значения матрицы Якоби для каждого примера. Исследование также проанализировало скорость, с которой обучающие примеры могут быть восстановлены при различных формах коррупции, и выявило впечатляюще высокий уровень восстановления.
Дальнейшие эксперименты показали, что автоэнкодеры также могут хранить обучающие примеры в качестве аттракторов при обучении с использованием 2000 изображений из набора данных MNIST и 1000 черно-белых изображений из набора данных CIFAR10. Хотя ложные аттракторы (аттракторы, отличные от обучающих примеров) потенциально могут существовать в перепараметризованных автоэнкодерах, исследователи не смогли идентифицировать такие ложные аттракторы в своем примере ImageNet-64.
Авторы провели всесторонний анализ феномена аттрактора, изучив различные распространенные архитектуры, методы оптимизации и схемы инициализации. Они включали ряд нелинейностей, методов оптимизации и схем инициализации. Их результаты показали, что аттракторы появлялись в каждом сценарии, где обучение сводилось к достаточно низким потерям в течение 1 000 000 эпох. Примечательно, что это явление не ограничивалось полносвязными сетями, оно также наблюдалось в широко используемых сетевых архитектурах, таких как сверточные и рекуррентные сети.
Примечательно, что это явление не ограничивалось полностью связанными сетями, поскольку оно также наблюдалось в широко используемых сетевых архитектурах, таких как сверточные и рекуррентные сети. Чтобы визуализировать двумерные аттракторы, они обучили автоэнкодер сохранять шесть обучающих примеров в качестве аттракторов и визуализировали их области притяжения, итерируя карту обученного автоэнкодера, начиная с 10 000 узлов сетки до сходимости. Векторное поле в эксперименте указывает направление движения, заданное итерацией. Каждый обучающий пример и соответствующий ему бассейн притяжения представлены разными цветами. Интересно, что исследование показало, что метрика, полученная автоэнкодером для разделения бассейнов притяжения, не является евклидовым расстоянием, на которое указывает диаграмма Вороного.
Последовательное кодирование показывает лучшие результаты, чем автокодирование.
Небольшое изменение целевой функции автоэнкодеров приводит к реализации ассоциативной памяти. Исследователи показали, что минимизация функции потерь для достаточно малого и стабильного порога кодирует обучающие последовательности как предельные циклы сети (тип аттрактора, который демонстрирует стабильное периодическое поведение).
Конечная нота
В заключение, ассоциативная память — это увлекательный аспект человеческого познания, который изучался в различных контекстах, включая биологические системы, сети Хопфилда и гиперпараметризованные нейронные сети. Наше понимание ассоциативной памяти живых организмов вдохновило на разработку вычислительных моделей, таких как сети Хопфилда, которые, в свою очередь, продвинули области искусственного интеллекта и машинного обучения.
Недавние исследования сверхпараметризованных нейронных сетей обнаружили появление аттракторов, явления, связанного с ассоциативной памятью, в различных архитектурах и методах оптимизации. Эта захватывающая разработка не только укрепляет связь между биологическими и искусственными нейронными системами, но и открывает новые возможности для изучения более эффективных и надежных моделей хранения и поиска в памяти.
По мере того, как мы продолжаем раскрывать сложные механизмы, лежащие в основе ассоциативной памяти, наши открытия будут способствовать дальнейшим инновациям в области искусственного интеллекта, прокладывая путь к передовым биологическим моделям, которые могут имитировать когнитивные способности человека. Это продолжающееся исследование обещает улучшить наше понимание сложной взаимосвязи между биологией и вычислениями, что в конечном итоге приведет к прорывам, которые могут принести пользу обеим областям.
Особая благодарность Ниру Н. Шавиту за его руководство и полезное обсуждение. Создано в рамках курса Массачусетского технологического института 6.S978 — Ткань против кремния в машинном обучении, весна 2023 г.
Рекомендации
- Смит, Дж. (2022). Что такое ассоциативная память? Очень хорошо Разум.https://www.verywellmind.com/what-is-associative-memory-5198601
- Уиллшоу, DJ, Бунеман, OP, и Лонге-Хиггинс, HC (1969). Неголографическая ассоциативная память. Nature , 222 (5197), 960–962. Яньес-Маркес, К., Лопес-Яньес, И., Альдапе-Перес, М., Камачо-Ньето, О., Аргуэльес-Крус, А.Дж., и Виллуэндас-Рей, Ю. (2018). Теоретические основы ассоциативной памяти альфа-бета: 10 лет производных расширений, моделей и приложений. Письма о нейронной обработке , 48 (2), 811–847.
- Хопфилд, Дж. Дж. (1982). Нейронные сети и физические системы с возникающими коллективными вычислительными способностями. Труды национальной академии наук , 79 (8), 2554–2558.
- Коско, Б. (1988). Двунаправленная ассоциативная память. IEEE Transactions on Systems, man, and Cybernetics, 18(1), 49–60.
- Макклелланд, Дж. Л. (2006). Как далеко вы можете зайти с изучением Хебба и когда оно уводит вас в сторону. Процессы изменения мозга и когнитивного развития: внимание и производительность xxi, 21, 33–69.
- Экли, Дэвид Х., Джеффри Э. Хинтон и Терренс Дж. Сейновски. «Алгоритм обучения для машин Больцмана». Когнитивная наука 9.1 (1985): 147–169.
- Барабаши, Альберт-Ласло, Река Альберт и Хавунг Чон. «Теория среднего поля для безмасштабных случайных сетей». Physica A: Статистическая механика и ее приложения 272.1–2 (1999): 173–187.
- Радхакришнан, Адитьянараянан, Михаил Белкин и Кэролайн Улер. «Перепараметрированные нейронные сети реализуют ассоциативную память». Труды Национальной академии наук 117.44 (2020): 27162–27170