Редкая распределенная память - Sparse distributed memory

Редкая распределенная память (SDM) представляет собой математическую модель человека Долгосрочная память представлен Пентти Канерва в 1988 году, когда он был в Исследовательский центр НАСА Эймса. Это обобщенный оперативная память (RAM) для длинных (например, 1000 бит) двоичных слов. Эти слова служат как адресами, так и данными для памяти. Основным атрибутом памяти является чувствительность к подобию, что означает, что слово может быть прочитано не только путем указания исходного адреса записи, но также путем указания близкого к нему, что измеряется количеством несовпадающих битов (т. Е. Расстояние Хэмминга между адреса памяти ).[1]

SDM реализует преобразование из логического пространства в физическое с использованием распределенного представления и хранения данных, аналогично кодирование процессы в памяти человека.[2] Значение, соответствующее логическому адресу, сохраняется во многих физических адресах. Это надежный и недетерминированный способ хранения. Ячейка памяти не адресуется напрямую. Если входные данные (логические адреса) вообще частично повреждены, мы все равно можем получить правильные выходные данные.[3]

Теория памяти математически завершена[1] и был проверен компьютерное моделирование. Это возникло из наблюдения, что расстояния между точками многомерное пространство напоминают отношения близости между концепции в человеческой памяти. Теория также практична в том смысле, что воспоминания, основанные на ней, могут быть реализованы с помощью обычных RAM-память элементы.[4]

Определение

Человеческая память имеет тенденцию к собирать воспоминания на основе сходства между ними (хотя они могут не быть связаны между собой), например, «пожарные машины красные, а яблоки красные».[5] Разреженная распределенная память представляет собой математическое представление памяти человека и использует многомерное пространство чтобы помочь смоделировать большие объемы памяти, имитирующие память человеческой нейронной сети.[6][7] Важным свойством таких пространств большой размерности является то, что два случайно выбранных вектора находятся относительно далеко друг от друга, что означает, что они не коррелированы.[8] SDM можно рассматривать как реализацию Хеширование с учетом местоположения.

Основная идея SDM заключается в отображении огромной двоичной памяти на меньший набор физических расположений, так называемых жесткие локации. Как правило, эти жесткие места должны быть равномерно распределены в виртуальном пространстве, чтобы как можно точнее имитировать существование большего виртуального пространства. Каждая система данных хранится распределенным набором жестких местоположений и извлекается путем усреднения этих местоположений. Следовательно, отзыв может быть не идеальным, точность зависит от насыщенности памяти.

Предложение Канервы основано на четырех основных идеях:[9]

  • 1. Логическое пространство , или же указывает в размеров, проявляет свойства, аналогичные интуитивным представлениям людей об отношениях между концепциями. Это означает, что имеет смысл хранить данные в виде точек упомянутого пространства, где каждый элемент памяти хранится как n-битовый вектор.
  • 2. Нейроны с n входами могут использоваться как декодеры адресов оперативной памяти.
  • 3. Принцип объединения: данные, хранящиеся в памяти, могут использоваться в качестве адресов одной и той же памяти. Расстояние между двумя точками - это мера сходства между двумя элементами памяти. Чем ближе точки, тем более похожи хранимые векторы.
  • 4. Время можно отслеживать в памяти в зависимости от того, где хранятся данные, если данные организованы в виде последовательностей событий.

Двоичное пространство N

SDM работает с n-мерными векторами с двоичными компонентами. В зависимости от контекста векторы называются точками, образцами, адресами, словами, элементами памяти, данными или событиями. Этот раздел в основном посвящен свойствам векторного пространства N = . Пусть n будет числом измерений пространства. Количество точек или возможных элементов памяти тогда . Обозначим это число через N, будем использовать N и стоять также за само пространство.[3]

Понятия, относящиеся к пространству N: [3]

  • Источник, 0: точка со всеми координатами 0 называется началом координат, 0 = 000 ... 00.
  • Дополнение, 'x: дополнение или противоположность точки x - это набор из n, в котором есть единицы, где x имеет нули, и наоборот.
  • Норма, | x |: Норма точки x - это количество единиц в ее двоичном представлении.
  • Разница, x - y: разница двух точек x и y - это набор из n, в котором есть точки, где x и y различаются, и нули в другом месте. Это побитовое 'Эксклюзивный или ': х - у = х ⊕ у. Разница коммутирует: x - y = y - x.
  • Расстояние, d (x, y) Расстояние между двумя точками x и y - это количество измерений, в которых x и y различаются. Это расстояние называется расстоянием Хэмминга (его квадратный корень равен Евклидово расстояние ) и выражается в битах. Расстояние - это норма разности: d (x, y) = | x - y |
  • Близость, x: y: z: точка y находится между точками x и z тогда и только тогда, когда расстояние от x до z является суммой расстояний от x до y и от y до z; то есть x: y: z ⇔ d (x, z) = d (x, y) + d (y, z). Легко видеть, что каждый бит промежуточной точки является копией соответствующего бита конечной точки.
  • Ортогональность, x ⊥ y: точка x ортогональна точке y, либо они перпендикулярны или безразличны, если и только если расстояние между ними составляет половину числа измерений: x ⊥ y ⇔ d (x, y) = n / 2. Расстояние n / 2 называется расстоянием безразличия пространства N. Если x ортогонален y, он также ортогонален своему дополнению 'y (x находится на полпути между y и' y).
  • Круг, O (r, x) Круг с радиусом r и центром x - это набор точек, которые не более r бит от x: O (r, x) = {y | d (x, y) ≤ r}.

Свойства пространства N: [1][3]

Пространство N может быть представлено вершинами единичного куба в n-мерном пространстве. Евклидово пространство. Вершины лежат на поверхности n-мерной сферы (евклидово-метрического) радиуса . Это приводит к сфера аналогия. Мы будем называть пространство сферическим, если

  • 1. любая точка x имеет единственную противоположность 'x,
  • 2. все пространство находится между любой точкой x и противоположной ей точкой x, и
  • 3. все точки «равны» (это означает, что для любых двух точек x и y существует расстояние, сохраняющее автоморфизм пространства, которое отображает x в y, так что с любой точки пространство «выглядит» одинаково).

Поверхность сферы (в евклидовом трехмерном пространстве) явно сферическая. Согласно определению, N также является сферическим, поскольку y ⊕ x ⊕ (…) - автоморфизм, переводящий x в y. Поскольку N является сферическим, полезно думать о нем как о поверхности сферы с длина окружности 2н. Все точки N одинаково квалифицируются как точки начала, а точка и ее дополнение подобны двум полюсам на расстоянии n друг от друга, а все пространство между ними. Точки на полпути между полюсами и перпендикулярно им подобны экватору.

Распределение пространства N

Количество точек, которые представляют собой ровно d битов, образующих произвольную точку x (скажем, из точки 0), представляет собой количество способов выбора d координат из общего количества n координат, и поэтому определяется биномиальный коэффициент:

Таким образом, распределение N является биномиальным распределением с параметрами n и p, где p = 1/2. Среднее значение биномиальное распределение равно n / 2, а отклонение составляет n / 4. Обозначим эту функцию распределения N (d). В нормальное распределение F со средним n / 2 и стандартное отклонение является хорошим приближением к нему: N (d) = Pr {d (x, y) ≤ d} ≅ F {(d - n / 2) / }

Склонность к ортогональности

Выдающимся свойством N является то, что большая его часть находится примерно на среднем (безразличном) расстоянии n / 2 от точки (и ее дополнения). Другими словами, большая часть пространства почти ортогональна любой заданной точке, и чем больше n, тем сильнее этот эффект.

Как нейронная сеть

SDM можно рассматривать либо как расширение классической оперативная память (RAM) или как особый тип трехслойной нейронная сеть с прямой связью. Основные изменения SDM в RAM:[10]

  • SDM рассчитывает Расстояния Хэмминга между ссылочным адресом и каждым адресом местоположения. Для каждого расстояния, которое меньше или равно заданному радиусу, выбирается соответствующее местоположение.
  • Память представлена ​​счетчиками (где n - количество ячеек, а m - длина входных данных) вместо однобитовых элементов хранения.
  • Запись в память вместо перезаписи выглядит следующим образом:
    • если i-бит входных данных равен 1, соответствующие счетчики (счетчики в выбранных местах (строках) и в i-м столбцах) увеличиваются,
    • если i-бит входных данных равен 0, соответствующие счетчики уменьшаются.
  • Чтение (или вызов) из памяти аналогично:
    • Содержимое выбранных местоположений суммируется по столбцам.
    • Каждая сумма имеет пороговое значение. Если сумма больше или равна пороговому значению, соответствующий выходной бит устанавливается в 1, в противном случае он сбрасывается. Обратите внимание, что пороги могут быть нулевыми, если обучающие входные векторы близки к ортогональным.

Модель нейрона

Идеализированное описание нейрон выглядит следующим образом: нейрон имеет тело клетки с двумя видами ветвей: дендриты и аксон. Он принимает входные сигналы от других нейронов через дендриты, интегрирует (суммирует) их и генерирует собственный (электрический) выходной сигнал, который отправляется внешним нейронам через аксон. Точки электрического контакта между нейронами называются синапсы.

Когда нейрон генерирует сигнал, он стрельба и после выстрела он должен восстанавливаться прежде, чем он сработает снова. Относительная важность синапса для возбуждения нейрона называется синаптический вес (или же входной коэффициент). Есть два вида синапсов: возбуждающий которые запускают нейрон Огонь и тормозящий которые мешают стрельбе. Нейрон является либо возбуждающим, либо тормозящим, в зависимости от типа синапсов, создаваемых его аксоном.[11]

Нейрон срабатывает, когда сумма входных сигналов превышает определенную порог. Чем выше порог, тем важнее то, что возбуждающие синапсы имеют входной сигнал, а тормозящие - нет.[12] Сработает ли восстановленный нейрон на самом деле, зависит от того, получил ли он достаточный возбуждающий сигнал (за порогом) и не слишком ли много тормозного сигнала за определенный период.

Формальная модель нейрона делает дополнительные упрощающие предположения.[13] An п-входной нейрон моделируется линейная пороговая функция следующее :

За где n - количество входов, пусть быть выходом во время т: , и разреши быть я-й вход за раз т: . Позволять быть весом я-й вход и пусть быть порогом.

В взвешенная сумма входов во время т определяется

В выход нейрона вовремя т тогда определяется как логическая функция:

Где Fт= 1 означает, что нейрон срабатывает в момент т и Fт= 0, что это не так, т.е. для того, чтобы нейрон сработал, взвешенная сумма должна достигнуть или превысить порог. Возбуждающие входы увеличивают сумму, а тормозящие входы уменьшают ее.

Нейрон как адрес-декодер

Ключевой тезис Канервы[1] состоит в том, что определенные нейроны могут иметь свои входные коэффициенты и пороги, фиксированные на протяжении всей жизни организма, и использоваться в качестве декодеров адресов, где п-набор входных коэффициентов (паттерн, на который нейроны реагируют наиболее легко) определяет п-битовый адрес памяти, а порог определяет размер области схожих шаблонов адресов, на которые нейрон отвечает.

Этот механизм дополняет регулируемые синапсы или регулируемые веса в нейронной сети (перцептрон конвергенции обучения), поскольку этот фиксированный механизм доступа будет постоянным точка зрения что позволяет Выбрать синапсы, в которых хранится информация и из которых она извлекается при заданном наборе обстоятельств. Более того, кодировка настоящего обстоятельства послужит адресом.

Адрес а нейрона с входными коэффициентами ш куда определяется как п-битовый шаблон ввода, который максимизирует взвешенную сумму. Максимум возникает, когда тормозные входы равны нулю, а возбуждающие входы - единице. я-й бит адреса:

(при условии, что веса не равны нулю)

В максимальная взвешенная сумма тогда сумма всех положительных коэффициентов:

И минимальная взвешенная сумма будет соответствовать точке напротив адреса нейрона a`:

Когда порог c находится в диапазоне выход нейрона равен 0 для некоторых адресов (входных шаблонов) и 1 для других. Если порог выше S, выход всегда равен 0, если ниже s, выход всегда 1. Таким образом, при правильном выборе порога нейрон реагирует только на один адрес. Когда порог равен S (максимум взвешенной суммы), нейрон реагирует только на свой собственный адрес и действует как декодер адреса обычного оперативная память.

Место в памяти

SDM предназначен для работы с шаблонами адресов, охватывающими огромное адресное пространство (порядок ). SDM предполагает, что шаблоны адресов, фактически описывающие интересующие физические ситуации, являются редко разбросаны по всему входному пространству. Невозможно зарезервировать отдельное физическое местоположение, соответствующее каждому возможному входу; SDM реализует только ограниченное количество физических или жесткий локации. Физическое местоположение называется памятью (или жесткий) место расположения.[4]

Каждое жесткое местоположение связано с двумя элементами:

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

В SDM слово можно было сохранить в памяти, записав его в свободное место хранения и в то же время предоставив этому месту соответствующий декодер адреса. Нейрон в качестве декодера адреса будет выбирать местоположение на основе сходства адреса местоположения с поисковой меткой. В отличие от обычных Машины Тьюринга SDM использует преимущества параллельные вычисления декодерами адресов. Простой доступ к памяти считается вычислением, объем которого увеличивается с увеличением объема памяти.[1]

Шаблон адреса

N-битовый вектор, используемый для записи и чтения из памяти. Шаблон адреса - это закодированное описание состояния окружающей среды. (например, N = 256.)

Шаблон данных

M-битовый вектор, являющийся объектом операций записи и чтения. Как и шаблон адреса, это закодированное описание состояния окружающей среды. (например, M = 256.)

Письмо

Запись - это операция сохранения шаблона данных в памяти с использованием определенного шаблона адреса. Во время записи ввод в память состоит из шаблона адреса и шаблона данных. Шаблон адреса используется для выбора жесткий ячейки памяти, чьи жесткие адреса находятся в пределах определенного расстояния отсечения от шаблона адреса. Шаблон данных сохраняется в каждом из выбранных мест.

Чтение

Чтение - это операция по извлечению шаблона данных из памяти с использованием определенного шаблона адреса. Во время чтения шаблон адреса используется для выбора определенного количества жесткий ячейки памяти (как при записи). Содержимое выбранных ячеек побитовое суммирование и пороговое значение для получения M-битового шаблона данных. Это служит результатом чтения из памяти.

Цепочки указателей

Все элементы связаны в один список (или массив) указателей на ячейки памяти и хранятся в ОЗУ. Каждый адрес в массиве указывает на отдельную строку в памяти. Эта строка затем возвращается, если она похожа на другие строки. Нейроны используются в качестве декодеров и кодеров адресов, подобно тому, как нейроны работают в мозгу, и возвращают элементы из массива, которые совпадают или похожи.

Критическое расстояние

Модель памяти Канервы имеет концепцию критическая точка: до этого момента можно было легко восстановить ранее сохраненный элемент; но за пределами этой точки невозможно получить предмет. Канерва методично рассчитала эту точку для определенного набора (фиксированных) параметров. Соответствующие критическое расстояние разреженной распределенной памяти можно приблизительно оценить, минимизируя следующее уравнение с ограничением и . Доказательство можно найти в[14][15]

Где:

  • : расстояние до цели;
  • : количество жестких мест, активированных во время операций чтения и записи (это значение зависит от значений радиуса доступа);
  • : - общее количество хранимых в памяти цепочек битов;
  • : количество жестких мест в памяти;
  • : количество раз, когда целевая цепочка битов была записана в память;
  • : общее количество случайных битовых строк во всех жесткие места, активируемые операцией чтения;
  • : среднее количество общих жестких местоположений, активированных двумя битовыми строками биты друг от друга. Некоторые значения для 1000-мерного SDM можно найти в книге Канерва, таблица 7.1, стр. 63, или уравнения для расчета для любого SDM в Приложении B, стр. 125 той же книги.

Вероятностная интерпретация

An ассоциативная память система, использующая разреженные, распределенные представления, может быть интерпретирована как выборка важности, а Монте-Карло метод аппроксимации Байесовский вывод.[16] SDM можно рассматривать как приближение Монте-Карло к многомерному условная возможность интеграл. SDM будет давать приемлемые ответы от обучающего набора, когда это приближение является допустимым, то есть когда обучающий набор содержит достаточно данных для обеспечения хороших оценок лежащего в основе совместные вероятности и имеется достаточно выборок Монте-Карло, чтобы получить точную оценку интеграла.[17]

Биологическая достоверность

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

Теоретическая работа Канервы над SDM предполагает, что разреженное кодирование увеличивает емкость ассоциативной памяти за счет уменьшения перекрытия между представлениями. Экспериментально разреженные представления сенсорной информации наблюдались во многих системах, включая зрение,[18] прослушивание[19] трогать,[20] и обоняние.[21] Однако, несмотря на накопление доказательств широко распространенного разреженного кодирования и теоретических аргументов в пользу его важности, до недавнего времени не хватало демонстрации того, что разреженное кодирование улучшает специфичность стимула ассоциативной памяти.

Некоторый прогресс был достигнут в 2014 г. Геро Мизенбёк лаборатория в Оксфордский университет анализируя Дрозофила Обонятельная система.[22]У Drosophila редкое кодирование запаха Клетки Кеньона из грибовидное тело Считается, что генерирует большое количество точно адресуемых мест для хранения специфических запахов памяти. Lin et al.[23] продемонстрировали, что разреженность контролируется цепью отрицательной обратной связи между клетками Кеньона и ГАМКергический передний парный боковой (APL) нейрон. Систематическая активация и блокада каждой ветви этой цепи обратной связи показывают, что клетки Kenyon активируют APL, а APL ингибирует клетки Kenyon. Нарушение петли обратной связи между клетками Кеньона и APL снижает разреженность запаховых реакций клеток Кеньона, увеличивает корреляцию между запахами и не дает мухам научиться различать похожие, но не разные запахи. Эти результаты предполагают, что ингибирование обратной связи подавляет активность клеток Кеньона для поддержания разреженного, декоррелированного кодирования запахов и, следовательно, специфичности запахов воспоминаний. Публикация в 2017 г. Наука[24] показали, что обонятельная схема мух реализует улучшенную версию двоичного хеширование с учетом местоположения через редкие случайные проекции.

Квантово-механическая интерпретация

Квантовая суперпозиция утверждает, что любая физическая система одновременно существует во всех возможных состояния, количество которых экспоненциально зависит от количества сущностей, составляющих систему. Сила присутствия каждого возможного состояния в суперпозиции - то есть вероятность, с которой оно будет наблюдаться при измерении - представлена ​​его амплитуда вероятности коэффициент. Предположение, что эти коэффициенты должны быть представлены физически отдельно друг от друга, т. Е. Локалистически, почти универсально в квантовая теория /квантовые вычисления литература. В качестве альтернативы, как недавно предложил Джерард Ринкус в Университет Брандейса,[25] эти коэффициенты могут быть представлены с использованием разреженных распределенных представлений (SDR), встроенных в дизайн SDM Kanerva, в котором каждый коэффициент представлен небольшим подмножеством общей совокупности репрезентативных единиц, и эти подмножества могут перекрываться.

В частности, если мы рассмотрим модель SDR, в которой вся совокупность состоит из Q кластеров, каждый из которых имеет K двоичных единиц, так что каждый коэффициент представлен набором из Q единиц, по одной на кластер. Затем мы можем рассмотреть конкретное мировое состояние X, представление коэффициентов которого, R (X), представляет собой набор Q единиц, активных в момент t, чтобы иметь максимальную вероятность, а вероятности всех других состояний Y соответствуют размеру пересечения R (Y) и R (X). Таким образом, R (X) одновременно служит как представлением конкретного состояния X, так и распределением вероятностей по всем состояниям. Когда активен любой данный код, например, R (A), все другие коды, хранящиеся в модели, также физически активны пропорционально их пересечению с R (A). Таким образом, SDR обеспечивает классическую реализацию квантовой суперпозиции, в которой амплитуды вероятностей прямо и неявно представлены размерами установить пересечения. Если существуют алгоритмы, для которых время, необходимое для хранения (изучения) новых представлений и поиска наиболее подходящего хранимого представления (вероятностный вывод ) остается постоянным при сохранении дополнительных представлений, это будет соответствовать критерию квантовые вычисления.[25] (Также см Квантовое познание и Квантовая ассоциативная память )

Приложения

В приложениях памяти слова представляют собой образцы функций. Некоторые функции производятся сенсорной системой, другие управляют двигательной системой. Существует текущий образец (например, 1000 бит), что является текущим содержимым системного фокус. Датчики подаются в фокус, моторы приводятся в действие из фокуса, а доступ к памяти осуществляется через фокус.

То, что происходит в мире - «субъективный» опыт системы - внутренне представлено последовательностью паттернов в фокусе. Память хранит эту последовательность и может воссоздать ее позже в фокусе, если обратиться с шаблоном, подобным тому, который встречался в прошлом. Таким образом, память учится предсказывать что вот-вот произойдет. Широкое применение памяти будет в системах, которые имеют дело с реальной информацией в реальном времени.

Приложения включают зрение - обнаружение и идентификация объектов в сцене и прогнозирование последующих сцен - робототехника, обнаружение и проверка сигналов, и адаптивный учусь и контроль. С теоретической точки зрения работа памяти может помочь нам понять объем памяти и учусь у людей и животных.[4][26]

Поиск лучшего совпадения

SDM может быть применен к проблеме поиска лучший матч на тестовое слово в наборе сохраненных слов.[1][27] или, другими словами, Поиск ближайшего соседа проблема.

Рассмотрим память с N местами, где . Пусть в каждом месте хватит места для одного п-битовое слово (например, N = 2100 100-битные слова), и пусть декодирование адреса производится N нейронами декодера адреса. Установите порог каждого нейрона Икс до максимальной взвешенной суммы и используйте общий параметр d для настройки всех порогов при доступе к памяти. Эффективный порог нейрона Икс будет тогда что означает, что местоположение Икс доступен каждый раз, когда адрес Икс внутри d бит адреса, представленного в памяти (т. е. адреса, хранящегося в адресном регистре). у нас есть обычный оперативная память. Предположим далее, что каждое местоположение имеет особый занятый на месте бит, доступ к которому можно получить так же, как и к обычным битам данных. Запись слова в место устанавливает это занятый на месте кусочек. Предположим, что можно прочитать только занятую позицию.

Чтобы сохранить данные в памяти, начните с установки и подайте команду на очистку занятый на месте кусочек. Эта единственная операция помечает всю память как незанятую независимо от значений адресного регистра. Затем установите и напиши каждое слово y набора данных с y сам как адрес. Обратите внимание, что каждая операция записи влияет только на одно местоположение: местоположение y. Таким образом, время заполнения пропорционально количеству слов в наборе данных.

Поиск лучшего соответствия для тестового слова z, предполагает размещение z в адресном регистре и нахождение наименьшего расстояния d для которых есть занятое место. Мы можем начать поиск, установив и увеличивая d последовательно, пока не будет найдено занятое место. Этот метод дает среднее время поиска, которое пропорционально количеству бит адреса или немного меньше [1] потому что ближайший населенный пункт может быть чуть ниже биты из zбинарный поиск на d это будет O (log (n)).

Со 100-битными словами 2100 локаций, то есть чрезвычайно большой памяти. тем не мение если мы построим память, как мы храним слова набора данных нам нужно только одно место (и один адресный декодер) для каждого слова набора данных. Наличие незанятых мест не требуется. Это представляет собой аспект редкость в SDM.

Распознавание речи

SDM может применяться в расшифровка речи, с обучением, состоящим из "слушания" большого корпуса устных язык. Две сложные проблемы с естественной речью: как определить границы слов и как приспособиться к различным говорящим. Память должна поддерживать и то, и другое. Во-первых, он хранит последовательности шаблонов в виде цепочек указателей. При обучении - при прослушивании речи - он будет строить вероятностную структуру с наибольшей вероятностью ветвления на границах слов. При расшифровке речи эти точки ветвления обнаруживаются и имеют тенденцию разбивать поток на сегменты, соответствующие словам. Во-вторых, чувствительность памяти к сходству - это ее механизм приспособления к разным говорящим - и к вариациям голоса одного и того же говорящего.[4]

«Осознавая забывание»

Функции распада
Функция экспоненциального затухания
Отрицательно-переведенная сигмовидная функция

В Университете Мемфиса Ума Рамамурти, Сидни К. Д'Мелло и Стэн Франклин создали модифицированную версию системы с разреженной распределенной памятью, которая представляет собой «реализацию забывания». Он использует уравнение затухания, чтобы лучше показать помехи в данных. Система с разреженной распределенной памятью распределяет каждый образец примерно по одной сотой ячеек,[требуется разъяснение ] поэтому вмешательство может иметь пагубные последствия.[28]

Представлены два возможных примера распада этой модифицированной разреженной распределенной памяти.

Механизм экспоненциального распада:

Отрицательно-транслированный механизм распада сигмовидной кишки:

В функции экспоненциального затухания она приближается к нулю быстрее, чем Икс увеличивается, и а является константой (обычно между 3-9) и c это счетчик. Для отрицаемых -переведено сигмовидная функция, распад аналогичен экспоненциальной функции убывания, когда а больше 4.[28]

Когда график приближается к 0, он показывает, как память забывается с использованием механизмов распада.

Генетическая разреженная распределенная память

Ашраф Анвар, Стэн Франклин и Дипанкар Дасгупта из Университета Мемфиса; предложила модель инициализации SDM с использованием генетических алгоритмов и генетического программирования (1999).

Генетическая память использует генетический алгоритм и разреженную распределенную память в качестве псевдоискусственной нейронной сети. Считалось, что его можно использовать для создания искусственной жизни.[29]

Статистический прогноз

SDM был применен к статистическим прогноз, задача связать чрезвычайно большие векторы состояния восприятия с будущими событиями. В условиях почти полной или избыточной емкости, когда поведение ассоциативной памяти модели нарушается, обработка, выполняемая моделью, может интерпретироваться как обработка статистического предсказателя, и каждый счетчик данных в SDM может рассматриваться как независимая оценка условная вероятность того, что двоичная функция f будет равна набору активации, заданному ячейкой памяти счетчика.[30]

Общий искусственный интеллект

  • LIDA использует разреженную распределенную память для моделирования познание в биологических системах. В разреженной распределенной памяти пространство вспоминает или распознает объект, который он имеет, по отношению к другим объектам. Он был разработан Стэном Франклином, создателем модифицированной системы с разреженной распределенной памятью, «осознающей забывание».[31] Преходящие эпизодические и декларативные воспоминания имеют распределенные представления в LIDA (на основе модифицированной версии SDM[32]), есть свидетельства того, что это также относится к нервной системе.[33]
  • CMatie это 'сознательный' программный агент, разработанный для управления объявлениями о семинарах в отделе математических наук Мемфисский университет. Он основан на SDM, дополненном с помощью генетические алгоритмы как ассоциативная память.[34]
  • Иерархическая временная память использует SDM для хранения разреженных распределенных представлений данных.

(Также см Когнитивная архитектура & Общий искусственный интеллект для списка проектов, связанных с SDM)

Обучение с подкреплением

SDM обеспечивают линейное, локальное аппроксимация функции схема, предназначенная для работы, когда очень большое / многомерное входное (адресное) пространство должно быть отображено в гораздо меньшее физическая память. Как правило, локальные архитектуры, включая SDM, могут подпадать под действие проклятие размерности, поскольку для некоторых целевых функций в худшем случае может потребоваться точное приближение экспоненциального числа локальных единиц по всему входному пространству. Однако широко распространено мнение, что большинство системы принятия решений требуется высокая точность только для малоразмерных коллекторы из пространство состояний, или важные государственные "магистрали".[35] Работа Ratitch et al.[36] объединила модель памяти SDM с идеями от обучение на основе памяти, который предоставляет аппроксиматор, который может динамически адаптировать свою структуру и разрешение, чтобы определять области пространства состояний, которые являются "более интересными".[37] и выделять пропорционально больше ресурсов памяти для их точного моделирования.

Индексирование объектов в компьютерном зрении

Дана Х. Баллард лаборатория[38] продемонстрировали универсальную технику индексирования объектов для компьютерное зрение который сочетает в себе достоинства Анализ главных компонентов с благоприятными свойствами согласования пространств большого размера для достижения высокой точности распознавания. Алгоритм индексации использует активное зрение вместе с модифицированной формой SDM и предоставляет платформу для изучения связи между внешним видом объекта и его идентичностью.

Расширения

Было предложено множество расширений и улучшений для SDM, например:

  • Тернарное пространство памяти: это позволяет использовать память как временную эпизодическую память (TEM) в когнитивные программные агенты. ТЕМ - это память с высокой специфичностью и низким сроком хранения, используемая для событий, имеющих особенности определенного времени и места.[39][40]
  • Целочисленный SDM, который использует модульные арифметические целочисленные векторы, а не двоичные векторы. Это расширение улучшает возможности представления памяти и является более надежным по сравнению с нормализацией. Его также можно расширить для поддержки забывания и надежного хранения последовательностей.[8]
  • Использование векторов слов большего размера, чем адресные векторы: это расширение сохраняет многие из желательных свойств исходного SDM: автоматическую ассоциативность, адресуемость контента, распределенное хранение и устойчивость к шумным входам. Кроме того, он добавляет новую функциональность, позволяющую эффективно автоматически сохранять последовательности векторов, а также других структур данных, таких как деревья.[41]
  • Построение SDM из Шипы нейронов: Несмотря на биологическое сходство с SDM, большая часть работ, предпринятых для демонстрации его возможностей на сегодняшний день, использует высокоискусственные модели нейронов, которые абстрагируются от реального поведения нейроны в мозг. Недавние работы Стив Фербер лаборатория в Манчестерский университет[42][43][44] предлагаемые адаптации к SDM, например by incorporating N-of-M rank codes[45][46] into how populations of neurons may encode information—which may make it possible to build an SDM variant from biologically plausible components. This work has been incorporated into SpiNNaker (Spiking Neural Network Architecture) which is being used as the Neuromorphic Computing Platform for the Проект человеческого мозга.[47]
  • Non-random distribution of locations:[48][49] Although the storage locations are initially distributed randomly in the binary N address space, the final distribution of locations depends upon the input patterns presented, and may be non-random thus allowing better flexibility and обобщение. The data pattern is first stored at locations which lie closest to the input address. The signal (i.e. data pattern) then spreads throughout the memory, and a small percentage of the signal strength (e.g. 5%) is lost at each subsequent location encountered. Distributing the signal in this way removes the need for a select read/write radius, one of the problematic features of the original SDM. All locations selected in a write operation do not now receive a copy of the original binary pattern with equal strength. Instead they receive a copy of the pattern weighted with a real value from 1.0->0.05 to store in real valued counters (rather than binary counters in Kanerva's SDM). This rewards the nearest locations with a greater signal strength, and uses the natural architecture of the SDM to attenuate the signal strength. Similarly in reading from the memory, output from the nearest locations is given a greater weight than from more distant locations.The new signal method allows the total signal strength received by a location to be used as a measure of the fitness of a location and is flexible to varying input (as the loss factor does not have to be changed for input patterns of different lengths).
  • SDMSCue (Sparse Distributed Memory for Small Cues): Ashraf Anwar & Stan Franklin at The University of Memphis, introduced a variant of SDM capable of Handling Small Cues; namely SDMSCue in 2002. The key idea is to use multiple Reads/Writes, and space projections to reach a successively longer cue.[50]

Связанные патенты

Выполнение

Связанные модели

Рекомендации

  1. ^ а б c d е ж грамм Kanerva, Pentti (1988). Sparse Distributed Memory. MIT Press. ISBN  978-0-262-11132-4.
  2. ^ Рисман, Джесси; Wagner, Anthony D. (2012). "Distributed representations in memory: insights from functional brain imaging". Ежегодный обзор психологии. 63: 101–28. Дои:10.1146/annurev-psych-120710-100344. ЧВК  4533899. PMID  21943171.
  3. ^ а б c d Grebeníček, František. "Sparse Distributed Memory− Pattern Data Analysis. URL: http://www.fit.vutbr.cz/~grebenic/Publikace/mosis2000.pdf "
  4. ^ а б c d е Flynn, Michael J., Pentti Kanerva, and Neil Bhadkamkar. "Sparse distributed memory prototype: principles and operation." (1989).
  5. ^ C. George Boeree (2002). "General Psychology". Shippensburg University.
  6. ^ а б Pentti Kanerva (1993). "Sparse Distributed Memory and Related Models". Pennsylvania State University: 50–76. CiteSeerX  10.1.1.2.8403. Цитировать журнал требует | журнал = (помощь)
  7. ^ M. J. Flynn; P. Kanerva & N. Bhadkamkar (December 1989). "Sparse Distributed Memory: Principles and Operation" (PDF). Стэндфордский Университет. Получено 1 ноября 2011.[постоянная мертвая ссылка ]
  8. ^ а б Snaider, Javier, and Stan Franklin. "Integer sparse distributed memory." Twenty-fifth international flairs conference. 2012.
  9. ^ Mendes, Mateus Daniel Almeida. "Intelligent robot navigation using a sparse distributed memory." Phd thesis, (2010). URL: https://eg.sib.uc.pt/handle/10316/17781
  10. ^ Grebenıcek, František. Neural Nets as Associative Memories. Diss. Brno University of Technology, 2001. URL: http://www.vutium.vutbr.cz/tituly/pdf/ukazka/80-214-1914-8.pdf
  11. ^ Kandel, Eric R., James H. Schwartz, and Thomas M. Jessell, eds. Принципы нейронауки. Vol. 4. New York: McGraw-Hill, 2000.
  12. ^ Eccles, John G. "Under the Spell of the Synapse." The Neurosciences: Paths of Discovery, I. Birkhäuser Boston, 1992. 159-179.
  13. ^ McCulloch, Warren S.; Pitts, Walter (1943). "A logical calculus of the ideas immanent in nervous activity". Bulletin of Mathematical Biophysics. 5 (4): 115–133. Дои:10.1007/bf02478259.
  14. ^ Brogliato, Marcelo Salhab (2012). Understanding Critical Distance in Sparse Distributed Memory (Тезис). HDL:10438/13095.
  15. ^ Brogliato, Marcelo Salhab; Chada, Daniel de Magalhães; Linhares, Alexandre (2014). "Sparse Distributed Memory: understanding the speed and robustness of expert memory". Границы нейробиологии человека. 8 (222): 222. Дои:10.3389/fnhum.2014.00222. ЧВК  4009432. PMID  24808842.
  16. ^ Abbott, Joshua T., Jessica B. Hamrick, and Thomas L. Griffiths. "Approximating Bayesian inference with a sparse distributed memory system." Proceedings of the 35th annual conference of the cognitive science society. 2013.
  17. ^ Anderson (1989). "A conditional probability interpretation of Kanerva's sparse distributed memory". International Joint Conference on Neural Networks. 1. pp. 415–417. Дои:10.1109/ijcnn.1989.118597. S2CID  13935339.
  18. ^ Vinje, WE; Gallant, JL (2000). "Sparse coding and decorrelation in primary visual cortex during natural vision" (PDF). Наука. 287 (5456): 1273–1276. Bibcode:2000Sci...287.1273V. CiteSeerX  10.1.1.456.2467. Дои:10.1126/science.287.5456.1273. PMID  10678835. S2CID  13307465.
  19. ^ Hromádka, T; Deweese, MR; Zador, AM (2008). "Sparse representation of sounds in the unanesthetized auditory cortex". ПЛОС Биол. 6 (1): e16. Дои:10.1371/journal.pbio.0060016. ЧВК  2214813. PMID  18232737.
  20. ^ Crochet, S; Poulet, JFA; Kremer, Y; Petersen, CCH (2011). "Synaptic mechanisms underlying sparse coding of active touch". Нейрон. 69 (6): 1160–1175. Дои:10.1016/j.neuron.2011.02.022. PMID  21435560. S2CID  18528092.
  21. ^ Ito, I; Ong, RCY; Raman, B; Stopfer, M (2008). "Sparse odor representation and olfactory learning". Nat Neurosci. 11 (10): 1177–1184. Дои:10.1038/nn.2192. ЧВК  3124899. PMID  18794840.
  22. ^ A sparse memory is a precise memory. Oxford Science blog. 28 Feb 2014. http://www.ox.ac.uk/news/science-blog/sparse-memory-precise-memory
  23. ^ Lin, Andrew C.; и другие. (2014). "Sparse, decorrelated odor coding in the mushroom body enhances learned odor discrimination". Природа Неврологии. 17 (4): 559–568. Дои:10.1038/nn.3660. ЧВК  4000970. PMID  24561998.
  24. ^ Dasgupta, Sanjoy; Stevens, Charles F.; Navlakha, Saket (2017). "A neural algorithm for a fundamental computing problem". Наука. 358 (6364): 793–796. Bibcode:2017Sci...358..793D. Дои:10.1126/science.aam9868. PMID  29123069.
  25. ^ а б Rinkus, Gerard J. (2012). "Quantum Computation via Sparse Distributed Representation". Нейроквантология. 10 (2). arXiv:1707.05660. Дои:10.14704/nq.2012.10.2.507. S2CID  9754194.
  26. ^ Denning, Peter J. Sparse distributed memory. Research Institute for Advanced Computer Science [NASA Ames Research Center], 1989.
  27. ^ Minsky, Marvin, and Papert Seymour. "Perceptrons." (1969). "Time vs. memory for best matching - an open problem" p. 222–225
  28. ^ а б Uma Ramamurthy; Sidney K. D'Mello; Stan Franklin. "Realizing Forgetting in a Modified Sparse Distributed Memory System". Computer Science Department and The Institute for Intelligent Systems. The University of Memphis. pp. 1992–1997. Архивировано из оригинал (PDF) on 2006. Получено 1 ноября 2011.
  29. ^ Rocha LM, Hordijk W (2005). "Material representations: From the genetic code to the evolution of cellular automata". Искусственная жизнь. 11 (1–2): 189–214. CiteSeerX  10.1.1.115.6605. Дои:10.1162/1064546053278964. PMID  15811227. S2CID  5742197.
  30. ^ Rogers, David. "Statistical prediction with Kanerva's sparse distributed memory." Достижения в области нейронных систем обработки информации. 1989 г.
  31. ^ Rao, R. P. N.; Fuentes, O. (1998). "Hierarchical Learning of Navigational Behaviors in an Autonomous Robot using a Predictive Sparse Distributed Memory" (PDF). Машинное обучение. 31: 87–113. Дои:10.1023/a:1007492624519. S2CID  8305178.
  32. ^ Franklin, Stan, et al. "The role of consciousness in memory." Brains, Minds and Media 1.1 (2005): 38.
  33. ^ Shastri, Lokendra (2002). "Episodic memory and cortico–hippocampal interactions" (PDF). Тенденции в когнитивных науках. 6 (4): 162–168. Дои:10.1016/s1364-6613(02)01868-5. PMID  11912039. S2CID  15022802.
  34. ^ Anwar, Ashraf; Franklin, Stan (2003). "Sparse distributed memory for 'conscious' software agents". Исследование когнитивных систем. 4 (4): 339–354. Дои:10.1016/s1389-0417(03)00015-9. S2CID  13380583.
  35. ^ Ratitch, Bohdana, Swaminathan Mahadevan, and Doina Precup. "Sparse distributed memories in reinforcement learning: Case studies." Proc. of the Workshop on Learning and Planning in Markov Processes-Advances and Challenges. 2004 г.
  36. ^ Ratitch, Bohdana, and Doina Precup. "Sparse distributed memories for on-line value-based reinforcement learning." Machine Learning: ECML 2004. Springer Berlin Heidelberg, 2004. 347-358.
  37. ^ Bouchard-Côté, Alexandre. "Sparse Memory Structures Detection." (2004).
  38. ^ Rao, Rajesh PN, and Dana H. Ballard. "Object indexing using an iconic sparse distributed memory." Computer Vision, 1995. Proceedings., Fifth International Conference on. IEEE, 1995.
  39. ^ D'Mello, Sidney K., Ramamurthy, U., & Franklin, S. 2005. Encoding and Retrieval Efficiency of Episodic Data in a Modified Sparse Distributed Memory System. In Proceedings of the 27th Annual Meeting of the Cognitive Science Society. Stresa, Ital
  40. ^ Ramamaurthy, U., Sidney K. D'Mello, and Stan Franklin. "Modified sparse distributed memory as transient episodic memory for cognitive software agents." Systems, Man and Cybernetics, 2004 IEEE International Conference on. Vol. 6. IEEE, 2004.
  41. ^ Snaider, Javier; Franklin, Stan (2012). "Extended sparse distributed memory and sequence storage". Cognitive Computation. 4 (2): 172–180. Дои:10.1007/s12559-012-9125-8. S2CID  14319722.
  42. ^ Furber, Steve B.; и другие. (2004). "Sparse distributed memory using N-of-M codes". Нейронные сети. 17 (10): 1437–1451. Дои:10.1016/j.neunet.2004.07.003. PMID  15541946.
  43. ^ Sharp, Thomas: "Application of sparse distributed memory to the Inverted Pendulum Problem ". Diss. University of Manchester, 2009. URL: http://studentnet.cs.manchester.ac.uk/resources/library/thesis_abstracts/MSc09/FullText/SharpThomas.pdf
  44. ^ Bose, Joy. Engineering a Sequence Machine Through Spiking Neurons Employing Rank-order Codes. Diss. University of Manchester, 2007.
  45. ^ Simon Thorpe and Jacques Gautrais. Rank order coding. In Computational Neuroscience: Trends in research, pages 113–118. Plenum Press, 1998.
  46. ^ Furber, Stephen B.; и другие. (2007). "Sparse distributed memory using rank-order neural codes". IEEE-транзакции в нейронных сетях. 18 (3): 648–659. CiteSeerX  10.1.1.686.6196. Дои:10.1109/tnn.2006.890804. PMID  17526333. S2CID  14256161.
  47. ^ Calimera, A; Macii, E; Poncino, M (2013). "The Human Brain Project and neuromorphic computing". Functional Neurology. 28 (3): 191–6. ЧВК  3812737. PMID  24139655.
  48. ^ Hely, Tim; Willshaw, David J.; Hayes, Gillian M. (1997). "A new approach to Kanerva's sparse distributed memory". IEEE-транзакции в нейронных сетях. 8 (3): 791–794. Дои:10.1109/72.572115. PMID  18255679. S2CID  18628649.
  49. ^ Caraig, Lou Marvin. "A New Training Algorithm for Kanerva's Sparse Distributed Memory." arXiv preprint arXiv:1207.5774 (2012).
  50. ^ Anwar, Ashraf; Franklin, Stan (2005-01-01). Ng, Michael K.; Doncescu, Andrei; Yang, Laurence T.; Leng, Tau (eds.). A Sparse Distributed Memory Capable of Handling Small Cues, SDMSCue. IFIP — The International Federation for Information Processing. Springer США. pp. 23–38. Дои:10.1007/0-387-24049-7_2. ISBN  978-0-387-24048-0.
  51. ^ Method and apparatus for a sparse distributed memory system US 5113507 A, by Louis A. Jaeckel, Universities Space Research Association, 1992, URL: http://www.google.com/patents/US5113507
  52. ^ Method and device for storing and recalling information implementing a kanerva memory system US 5829009 A, by Gary A. Frazier, Texas Instruments Incorporated, 1998, URL: https://www.google.com/patents/US5829009
  53. ^ Furber, Stephen B. "Digital memory." U.S. Patent No. 7,512,572. 31 Mar. 2009.URL: https://www.google.com/patents/US7512572
  54. ^ Temporal memory using sparse distributed representation US 20110225108 A1, by Jeffrey C. Hawkins, Marianetti II Ronald, Anosh Raj, Subutai Ahmad, Numenta, Inc, 2011, URL: http://www.google.com/patents/US20110225108
  55. ^ Emruli, Blerim; Sandin, Fredrik; Delsing, Jerker (2015). "Vector space architecture for emergent interoperability of systems by learning from demonstration". Biologically Inspired Cognitive Architectures. 11: 53–64. Дои:10.1016/j.bica.2014.11.015.
  56. ^ Emruli, Blerim; Sandin, Fredrik (2014). "Analogical mapping with sparse distributed memory: A simple model that learns to generalize from examples". Cognitive Computation. 6 (1): 74–88. Дои:10.1007/s12559-013-9206-3. S2CID  12139021.
  57. ^ Berchtold, Martin. "Processing Sensor Data with the Common Sense Toolkit (CSTK)." *(2005).
  58. ^ The Mind Wanders by B. Hayes, 2018. url: http://bit-player.org/2018/the-mind-wanders
  59. ^ а б Brogliato, Marcelo S.; Chada, Daniel M.; Linhares, Alexandre (2014). "Sparse distributed memory: understanding the speed and robustness of expert memory". Границы нейробиологии человека. 8: 222. Дои:10.3389/fnhum.2014.00222. ЧВК  4009432. PMID  24808842.
  60. ^ Surkan, Alvin J. (1992). "WSDM: Weighted sparse distributed memory prototype expressed in APL". ACM SIGAPL APL Quote Quad. 23: 235–242. Дои:10.1145/144052.144142.
  61. ^ Turk, Andreas, and Günther Görz. "Kanerva's sparse distributed memory: an object-oriented implementation on the connection machine." IJCAI. 1995 г.
  62. ^ Сильва; Tadeu Pinheiro, Marcus; Pádua Braga, Antônio; Soares Lacerda, Wilian (2004). "Reconfigurable co-processor for kanerva's sparse distributed memory" (PDF). Microprocessors and Microsystems. 28 (3): 127–134. Дои:10.1016/j.micpro.2004.01.003.
  63. ^ Brown, Robert L. (June 1987). "Two Demonstrators and a Simulator for a Sparse Distributed Memory" (PDF). NASA Technical Reports Archive.
  64. ^ Muja, Marius. "Scalable nearest neighbour methods for high dimensional data." (2013).
  65. ^ Hassoun, Mohamad H. Associative neural memories. Oxford University Press, Inc., 1993.
  66. ^ Kanerva, Pentti. "Binary spatter-coding of ordered K-tuples." Artificial Neural Networks—ICANN 96. Springer Berlin Heidelberg, 1996. 869-873.
  67. ^ Kohonen, Teuvo. "Correlation matrix memories." Computers, IEEE Transactions on 100.4 (1972): 353-359.
  68. ^ Ankit Kumar, Ozan Irsoy, Jonathan Su, James Bradbury, Robert English, Brian Pierce, Peter Ondruska, Ishaan Gulrajani, Richard Socher. "Ask Me Anything: Dynamic Memory Networks for Natural Language Processing." arXiv preprint arXiv:1506.07285 (2015).
  69. ^ Plate, Tony A. "Holographic Reduced Representation: Distributed representation for cognitive structures." (2003).
  70. ^ Kanerva, Pentti. "Computing with 10,000-bit words." Proc. 52nd Annual Allerton Conference on Communication, Control, and Computing. 2014.
  71. ^ Weston, Jason, Sumit Chopra, and Antoine Bordes. "Memory networks." arXiv preprint arXiv:1410.3916 (2014).
  72. ^ Vinyals, Oriol, Meire Fortunato, and Navdeep Jaitly. "Pointer networks." arXiv preprint arXiv:1506.03134 (2015).
  73. ^ Kurach, Karol, Andrychowicz, Marcin and Sutskever, Ilya. "Neural Random-Access Machines." arXiv preprint arXiv:1511.06392 (2015).
  74. ^ Joshi, Aditya, Johan Halseth, and Pentti Kanerva. "Language Recognition using Random Indexing." arXiv preprint arXiv:1412.7026 (2014). https://arxiv.org/abs/1412.7026
  75. ^ Pollack, Jordan B (1990). "Recursive distributed representations". Искусственный интеллект. 46 (1): 77–105. Дои:10.1016/0004-3702(90)90005-k.
  76. ^ Де Соуза Уэббер, Франциско (2015). "Semantic Folding Theory And its Application in Semantic Fingerprinting". arXiv:1511.08855 [cs.AI ].
  77. ^ Salakhutdinov, Ruslan, and Geoffrey Hinton. "Semantic hashing." RBM 500.3 (2007): 500.
  78. ^ Eliasmith, Chris, et al. "A large-scale model of the functioning brain." science 338.6111 (2012): 1202-1205.
  79. ^ Hawkins, Jeff; George, Dileep; Niemasik, Jamie (2009). "Sequence memory for prediction, inference and behaviour". Философские труды Королевского общества B: биологические науки. 364 (1521): 1203–1209. Дои:10.1098/rstb.2008.0322. ЧВК  2666719. PMID  19528001.
  80. ^ Lee, Honglak, et al. "Эффективные алгоритмы разреженного кодирования." Advances in neural information processing systems. 2006.
  81. ^ Graves, Alex, Greg Wayne, and Ivo Danihelka. "Neural Turing Machines." arXiv preprint arXiv:1410.5401 (2014).
  82. ^ Vincent, Pascal; и другие. (2010). "Stacked denoising autoencoders: Learning useful representations in a deep network with a local denoising criterion" (PDF). The Journal of Machine Learning Research. 11: 3371–3408.
  83. ^ Rachkovskij, Dmitri A.; Kussul, Ernst M. (2001). "Binding and normalization of binary sparse distributed representations by context-dependent thinning" (PDF). Нейронные вычисления. 13 (2): 411–452. Дои:10.1162/089976601300014592. S2CID  585366.