stringtranslate.com

Иерархическая временная память

Иерархическая временная память ( HTM ) — это биологически ограниченная технология машинного интеллекта, разработанная Numenta . Первоначально описанная в книге 2004 года «Об интеллекте» Джеффа Хокинса с Сандрой Блейксли , HTM в настоящее время в основном используется для обнаружения аномалий в потоковых данных. Технология основана на нейронауке , физиологии и взаимодействии пирамидальных нейронов в неокортексе мозга млекопитающих (в частности, человека ).

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

HTM был протестирован и реализован в программном обеспечении с помощью примеров приложений от Numenta и нескольких коммерческих приложений от партнеров Numenta [ необходимы пояснения ] .

Структура и алгоритмы

Типичная сеть HTM представляет собой древовидную иерархию уровней (не путать со « слоями » неокортекса , как описано ниже). Эти уровни состоят из более мелких элементов, называемых областями (или узлами). Один уровень в иерархии может содержать несколько областей. Более высокие уровни иерархии часто имеют меньше областей. Более высокие уровни иерархии могут повторно использовать шаблоны, изученные на более низких уровнях, объединяя их для запоминания более сложных шаблонов.

Каждая область HTM имеет одну и ту же базовую функцию. В режимах обучения и вывода сенсорные данные (например, данные от глаз) поступают в области нижнего уровня. В режиме генерации области нижнего уровня выводят сгенерированный шаблон заданной категории. Верхний уровень обычно имеет одну область, которая хранит самые общие и самые постоянные категории (концепции); они определяют или определяются более мелкими концепциями на нижних уровнях — концепциями, которые более ограничены во времени и пространстве [ необходимо разъяснение ] . При установке в режиме вывода область (на каждом уровне) интерпретирует информацию, поступающую из ее «дочерних» областей, как вероятности категорий, которые она имеет в памяти.

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

Как развивающаяся модель

HTM — это алгоритмический компонент теории интеллекта «Тысяча мозгов» Джеффа Хокинса . Таким образом, новые открытия в неокортексе постепенно включаются в модель HTM, которая со временем меняется в ответ. Новые открытия не обязательно делают недействительными предыдущие части модели, поэтому идеи одного поколения не обязательно исключаются из его последующего поколения. Из-за эволюционной природы теории существовало несколько поколений алгоритмов HTM, [4] которые кратко описаны ниже.

Первое поколение: дзета 1

Первое поколение алгоритмов HTM иногда называют дзета 1 .

Обучение

Во время обучения узел (или регион) получает временную последовательность пространственных паттернов в качестве входных данных. Процесс обучения состоит из двух этапов:

  1. Пространственное объединение идентифицирует (во входных данных) часто наблюдаемые закономерности и запоминает их как «совпадения». Закономерности, которые существенно похожи друг на друга, рассматриваются как одно и то же совпадение. Большое количество возможных входных закономерностей сводится к управляемому количеству известных совпадений.
  2. Временное объединение разделяет совпадения, которые, вероятно, будут следовать друг за другом в обучающей последовательности, на временные группы. Каждая группа шаблонов представляет собой «причину» входного шаблона (или «имя» в On Intelligence ).

Концепции пространственного и временного пулинга все еще весьма важны в текущих алгоритмах HTM. Временной пул пока еще не очень хорошо изучен, и его значение изменилось со временем (по мере развития алгоритмов HTM).

Вывод

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

«Неожиданные» паттерны для узла не имеют доминирующей вероятности принадлежности к какой-либо одной временной группе, но имеют почти равные вероятности принадлежности к нескольким группам. Если последовательности паттернов похожи на обучающие последовательности, то назначенные вероятности для групп не будут меняться так часто, как поступают паттерны. Выход узла не будет меняться так сильно, и разрешение во времени [ необходимо разъяснение ] теряется.

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

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

Более подробную информацию о функционировании Zeta 1 HTM можно найти в старой документации Numenta. [5]

Второе поколение: алгоритмы коркового обучения

Второе поколение алгоритмов обучения HTM, часто называемых алгоритмами обучения коры головного мозга ( CLA ), кардинально отличалось от zeta 1. Оно опирается на структуру данных , называемую разреженными распределенными представлениями (то есть структуру данных, элементы которой являются двоичными, 1 или 0, и количество битов 1 мало по сравнению с количеством битов 0) для представления активности мозга и более биологически реалистичную модель нейрона (часто также называемую клеткой в ​​контексте HTM). [6] В этом поколении HTM есть два основных компонента: алгоритм пространственного пула , [7] который выводит разреженные распределенные представления (SDR), и алгоритм памяти последовательностей , [8] который учится представлять и предсказывать сложные последовательности.

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

Пространственное объединение

Рецептивное поле каждого мини-столбца представляет собой фиксированное количество входов, которые случайным образом выбираются из гораздо большего количества входов узлов. На основе (специфического) шаблона входов некоторые мини-столбцы будут более или менее связаны с активными входными значениями. Пространственное объединение выбирает относительно постоянное количество наиболее активных мини-столбцов и деактивирует (подавляет) другие мини-столбцы вблизи активных. Похожие шаблоны входов, как правило, активируют стабильный набор мини-столбцов. Объем памяти, используемый каждым слоем, может быть увеличен для изучения более сложных пространственных шаблонов или уменьшен для изучения более простых шаблонов.

Активные, неактивные и предиктивные клетки

Как упоминалось выше, клетка (или нейрон) миниколонки в любой момент времени может находиться в активном, неактивном или предсказательном состоянии. Изначально клетки неактивны.

Как клетки становятся активными?

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

Как клетки становятся предсказательными?

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

Вывод миниколонки

Выход слоя включает миниколонки как в активном, так и в предиктивном состоянии. Таким образом, миниколонки активны в течение длительных периодов времени, что приводит к большей временной стабильности, наблюдаемой родительским слоем.

Выводы и онлайн-обучение

Алгоритмы обучения коры способны непрерывно обучаться на основе каждого нового входного шаблона, поэтому отдельный режим вывода не требуется. Во время вывода HTM пытается сопоставить поток входных данных с фрагментами ранее изученных последовательностей. Это позволяет каждому слою HTM постоянно предсказывать вероятное продолжение распознанных последовательностей. Индекс предсказанных последовательностей является выходными данными слоя. Поскольку предсказания, как правило, меняются реже, чем входные шаблоны, это приводит к повышению временной стабильности выходных данных на более высоких уровнях иерархии. Предсказание также помогает заполнять недостающие шаблоны в последовательности и интерпретировать неоднозначные данные, заставляя систему делать выводы о том, что она предсказала.

Применение CLA

В настоящее время алгоритмы кортикального обучения предлагаются в качестве коммерческого SaaS-решения компанией Numenta (например, Grok [9] ).

Действительность CLA

Следующий вопрос был задан Джеффу Хокинсу в сентябре 2011 года относительно алгоритмов обучения коры головного мозга: «Как вы узнаете, хороши ли изменения, которые вы вносите в модель, или нет?» На что Джефф ответил: «Есть две категории ответов: одна — обратиться к нейронауке, а другая — к методам машинного интеллекта. В области нейронауки есть много прогнозов, которые мы можем сделать, и их можно проверить. Если наши теории объясняют широкий спектр наблюдений нейронауки, то это говорит нам, что мы на правильном пути. В мире машинного обучения их это не волнует, важно только то, насколько хорошо это работает с практическими задачами. В нашем случае это еще предстоит выяснить. В той степени, в которой вы можете решить проблему, которую никто не мог решить раньше, люди это заметят». [10]

Третье поколение: сенсомоторный вывод

Третье поколение основывается на втором поколении и добавляет теорию сенсомоторного вывода в неокортексе. [11] [12] Эта теория предполагает, что корковые столбцы на каждом уровне иерархии могут изучать полные модели объектов с течением времени и что признаки изучаются в определенных местах на объектах. Теория была расширена в 2018 году и получила название Теория тысячи мозгов. [13]

Сравнение моделей нейронов

Сравнение искусственной нейронной сети (A), биологического нейрона (B) и нейрона HTM (C).

Сравнение HTM и неокортекса

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

Хотя это в первую очередь функциональная модель, было сделано несколько попыток связать алгоритмы HTM со структурой нейронных связей в слоях неокортекса. [14] [15] Неокортекс организован в вертикальные столбцы из 6 горизонтальных слоев. 6 слоев клеток в неокортексе не следует путать с уровнями в иерархии HTM.

Узлы HTM пытаются моделировать часть корковых колонок (от 80 до 100 нейронов) примерно с 20 "клетками" HTM на колонку. HTM моделируют только слои 2 и 3 для обнаружения пространственных и временных особенностей ввода с 1 клеткой на колонку в слое 2 для пространственного "объединения" и от 1 до 2 дюжин на колонку в слое 3 для временного объединения. Ключом к HTM и коре является их способность справляться с шумом и вариациями во входных данных, что является результатом использования "разреженного распределительного представления", где только около 2% колонок активны в любой момент времени.

HTM пытается смоделировать часть обучения и пластичности коры, как описано выше. Различия между HTM и нейронами включают: [16]

Разреженные распределенные представления

Интеграция компонента памяти с нейронными сетями имеет долгую историю, восходящую к ранним исследованиям распределенных представлений [17] [18] и самоорганизующихся карт . Например, в разреженной распределенной памяти (SDM) шаблоны, закодированные нейронными сетями, используются в качестве адресов памяти для адресуемой по содержимому памяти , при этом «нейроны» по сути служат кодировщиками и декодерами адресов. [19] [20]

Компьютеры хранят информацию в плотных представлениях, таких как 32-битное слово , где возможны все комбинации единиц и нулей. Напротив, мозг использует разреженные распределенные представления (SDR). [21] Человеческий неокортекс имеет примерно 16 миллиардов нейронов, но в любой момент времени активен только небольшой процент. Активность нейронов подобна битам в компьютере, и поэтому представление разрежено. Подобно SDM , разработанному NASA в 80-х годах [19], и моделям векторного пространства , используемым в латентном семантическом анализе , HTM использует разреженные распределенные представления. [22]

SDR, используемые в HTM, представляют собой двоичные представления данных, состоящие из множества бит с небольшим процентом активных битов (единиц); типичная реализация может иметь 2048 столбцов и 64 тыс. искусственных нейронов, из которых всего 40 могут быть активны одновременно. Хотя может показаться менее эффективным, чтобы большинство битов оставались «неиспользованными» в любом данном представлении, SDR имеют два основных преимущества по сравнению с традиционными плотными представлениями. Во-первых, SDR терпимы к искажениям и неоднозначности из-за того, что значение представления разделяется ( распределяется ) по небольшому проценту ( разреженным ) активных битов. В плотном представлении переворачивание одного бита полностью меняет значение, в то время как в SDR один бит может не сильно повлиять на общее значение. Это приводит ко второму преимуществу SDR: поскольку значение представления распределено по всем активным битам, сходство между двумя представлениями можно использовать в качестве меры семантического сходства в объектах, которые они представляют. То есть, если два вектора в SDR имеют 1 в одной и той же позиции, то они семантически схожи по этому атрибуту. Биты в SDR имеют семантическое значение, и это значение распределено по битам. [22]

Теория семантической складчатости [23] основывается на этих свойствах SDR и предлагает новую модель семантики языка, в которой слова кодируются в SDR-слова, а сходство между терминами, предложениями и текстами можно вычислить с помощью простых мер расстояния.

Сходство с другими моделями

Байесовские сети

Подобно байесовской сети , HTM состоит из набора узлов, которые организованы в древовидную иерархию. Каждый узел в иерархии обнаруживает массив причин во входных шаблонах и временных последовательностях, которые он получает. Байесовский алгоритм пересмотра убеждений используется для распространения убеждений прямой и обратной связи от дочерних узлов к родительским и наоборот. Однако аналогия с байесовскими сетями ограничена, поскольку HTM могут быть самообучаемыми (таким образом, что каждый узел имеет однозначные семейные отношения), справляться с чувствительными ко времени данными и предоставлять механизмы для скрытого внимания .

Теория иерархических кортикальных вычислений, основанная на байесовском распространении убеждений , была предложена ранее Тай Синг Ли и Дэвидом Мамфордом . [24] Хотя HTM в основном согласуется с этими идеями, она добавляет детали об обработке инвариантных представлений в зрительной коре. [25]

Нейронные сети

Как и любая система, моделирующая детали неокортекса, HTM можно рассматривать как искусственную нейронную сеть . Древовидная иерархия, обычно используемая в HTM, напоминает обычную топологию традиционных нейронных сетей. HTM пытаются моделировать корковые колонки (от 80 до 100 нейронов) и их взаимодействия с меньшим количеством «нейронов» HTM. Целью текущих HTM является захват как можно большего количества функций нейронов и сети (как они в настоящее время понимаются) в пределах возможностей типичных компьютеров и в областях, которые могут быть легко сделаны полезными, таких как обработка изображений. Например, обратная связь с более высоких уровней и управление моторикой не предпринимаются, поскольку пока не понятно, как их включить, и вместо переменных синапсов используются двоичные, поскольку они были определены как достаточные в текущих возможностях HTM.

LAMINART и подобные нейронные сети, исследованные Стивеном Гроссбергом, пытаются моделировать как инфраструктуру коры, так и поведение нейронов во временной структуре для объяснения нейрофизиологических и психофизических данных. Однако эти сети в настоящее время слишком сложны для реалистичного применения. [26]

HTM также связана с работой Томазо Поджио , включая подход к моделированию вентрального потока зрительной коры, известный как HMAX. Сходства HTM с различными идеями ИИ описаны в выпуске журнала Artificial Intelligence за декабрь 2005 года. [27]

Неокогнитрон

Неокогнитрон , иерархическая многослойная нейронная сеть, предложенная профессором Кунихико Фукусимой в 1987 году, является одной из первых моделей нейронных сетей глубокого обучения . [28]

Смотрите также

Похожие модели

Ссылки

  1. ^ Cui, Yuwei; Ahmad, Subutai; Hawkins, Jeff (2016). «Непрерывное онлайн-обучение последовательностей с помощью модели нейронной сети без учителя». Neural Computation . 28 (11): 2474–2504. arXiv : 1512.05463 . doi :10.1162/NECO_a_00893. PMID  27626963. S2CID  3937908.
  2. ^ Ахмад, Субутай; Лавин, Александр; Пурди, Скотт; Ага, Зуха (2017). «Неконтролируемое обнаружение аномалий в реальном времени для потоковых данных». Neurocomputing . 262 : 134–147. doi : 10.1016/j.neucom.2017.04.070 .
  3. ^ «Предварительные подробности о новой теоретической работе по сенсомоторному выводу». Форум HTM . 2016-06-03.
  4. ^ HTM Retrospective на YouTube
  5. ^ "Старая документация Numenta". numenta.com . Архивировано из оригинала 2009-05-27.
  6. ^ Лекция Джеффа Хокинса, описывающая алгоритмы коркового обучения на YouTube
  7. ^ Cui, Yuwei; Ahmad, Subutai; Hawkins, Jeff (2017). «Пространственный пул HTM — неокортикальный алгоритм для онлайн-разреженного распределенного кодирования». Frontiers in Computational Neuroscience . 11 : 111. doi : 10.3389/fncom.2017.00111 . PMC 5712570. PMID  29238299 . 
  8. ^ abc Хокинс, Джефф; Ахмад, Субутай (30 марта 2016 г.). «Почему у нейронов тысячи синапсов, теория последовательной памяти в неокортексе». Фронт. Neural Circuits . 10 : 23. doi : 10.3389/fncir.2016.00023 . PMC 4811948. PMID  27065813 . 
  9. ^ "Grok Product Page". grokstream.com . Архивировано из оригинала 2019-04-26 . Получено 2017-08-12 .
  10. ^ Laserson, Jonathan (сентябрь 2011 г.). «От нейронных сетей к глубокому обучению: фокусировка на человеческом мозге» (PDF) . XRDS . 18 (1). doi :10.1145/2000775.2000787. S2CID  21496694.
  11. ^ Хокинс, Джефф; Ахмад, Субутай; Куй, Ювэй (2017). «Теория того, как колонки в неокортексе позволяют изучать структуру мира». Frontiers in Neural Circuits . 11 : 81. doi : 10.3389/fncir.2017.00081 . PMC 5661005. PMID  29118696 . 
  12. ^ Мы пропустили половину того, что делает неокортекс? Аллоцентрическое расположение как основа восприятия на YouTube
  13. ^ «Numenta публикует прорывную теорию интеллекта и кортикальных вычислений». eurekalert.org . 2019-01-14.
  14. ^ Хокинс, Джефф ; Блейксли, Сандра . Об интеллекте .
  15. ^ Джордж, Дилип; Хокинс, Джефф (2009). «К математической теории кортикальных микросхем». PLOS Computational Biology . 5 (10): e1000532. Bibcode : 2009PLSCB...5E0532G. doi : 10.1371/journal.pcbi.1000532 . PMC 2749218. PMID  19816557 . 
  16. ^ "Алгоритмы коркового обучения HTM" (PDF) . numenta.org .
  17. ^ Хинтон, Джеффри Э. (1984). Распределенные представления (PDF) (Технический отчет). Кафедра компьютерных наук, Университет Карнеги-Меллона. CMU-CS-84-157.
  18. ^ Плейт, Тони (1991). "Голографические редуцированные представления: алгебра свертки для композиционных распределенных представлений" (PDF) . IJCAI .
  19. ^ аб Канерва, Пентти (1988). Разреженная распределенная память. Пресс-центр МТИ. ISBN 9780262111324.
  20. ^ Snaider, Javier; Franklin, Stan (2012). Целочисленная разреженная распределенная память (PDF) . Двадцать пятая международная конференция по flairs. S2CID  17547390. Архивировано из оригинала (PDF) 29.12.2017.
  21. ^ Олсхаузен, Бруно А.; Филд, Дэвид Дж. (1997). «Разреженное кодирование с избыточно полным базисным набором: стратегия, используемая V1?». Vision Research . 37 (23): 3311–3325. doi : 10.1016/S0042-6989(97)00169-7 . PMID  9425546. S2CID  14208692.
  22. ^ ab Ахмад, Субутай; Хокинс, Джефф (2016). «Numenta NUPIC – разреженные распределенные представления». arXiv : 1601.00720 [q-bio.NC].
  23. ^ Де Соуза Веббер, Франциско (2015). «Теория семантической складчатости и ее применение в семантической дактилоскопии». arXiv : 1511.08855 [cs.AI].
  24. ^ Ли, Тай Синг; Мамфорд, Дэвид (2002). «Иерархический байесовский вывод в зрительной коре». Журнал оптического общества Америки A. 20 ( 7): 1434–48. CiteSeerX 10.1.1.12.2565 . doi :10.1364/josaa.20.001434. PMID  12868647. 
  25. ^ Джордж, Дилип (2010-07-24). "Иерархический байесовский вывод в зрительной коре". dileepgeorge.com . Архивировано из оригинала 2019-08-01.
  26. ^ Гроссберг, Стивен (2007). Сисек, Пол; Дрю, Тревор; Каласка, Джон (ред.). К единой теории неокортекса: ламинарные корковые цепи для зрения и познания. Технический отчет CAS/CNS-TR-2006-008. Для вычислительной нейронауки: от нейронов к теории и обратно (PDF) (Отчет). Амстердам: Elsevier. стр. 79–104. Архивировано из оригинала (PDF) 29.08.2017.
  27. ^ "Специальный обзорный выпуск". Искусственный интеллект . 169 (2): 103–212. Декабрь 2005. doi :10.1016/j.artint.2005.10.001.
  28. ^ Фукусима, Кунихико (2007). «Неокогнитрон». Scholarpedia . 2 (1): 1717. Bibcode : 2007SchpJ...2.1717F. doi : 10.4249/scholarpedia.1717 .

Дальнейшее чтение

Внешние ссылки