WikiDer > Leabra
Leabra означает локальный, ошибочный и ассоциативный, биологически реалистичный алгоритм. Это модель из учусь что является балансом между Hebbian и ошибочное обучение с другим сеть-производные характеристики. Эта модель используется для математического прогнозирования результатов на основе входных данных и предыдущих влияний обучения. Эта модель сильно зависит от дизайна и моделей нейронных сетей. Этот алгоритм является алгоритмом по умолчанию в возникающий (преемник PDP ++) при создании нового проекта и широко используется в различных симуляциях.
Hebbian обучение выполняется с использованием условный анализ главных компонент (CPCA) алгоритм с поправочным коэффициентом для разреженных ожидаемых уровней активности.
Обучение на основе ошибок выполняется с использованием GeneRec, который является обобщением алгоритм рециркуляции, и приближает Рецидивирующее обратное распространение Альмейды – Пинеды. Используется симметричная версия GeneRec со средней точкой, которая эквивалентна контрастивное изучение хеббского языка алгоритм (CHL). См. O'Reilly (1996; Neural Computing) для получения более подробной информации.
Функция активации представляет собой приближение точечного нейрона с дискретными всплеск и непрерывный вывод кода скорости.
Ингибирование на уровне слоя или группы единиц может быть вычислено непосредственно с использованием k-победители получают все (KWTA), создавая разреженные распределенные представления.
Чистый ввод вычисляется как среднее, а не сумма, по соединениям на основе нормализованных сигмоидально преобразованных значений веса, которые подлежат масштабированию на уровне группы соединений для изменения относительных вкладов. Автоматическое масштабирование выполняется для компенсации различий в ожидаемом уровне активности в разных прогнозах.
Документацию по этому алгоритму можно найти в книге «Вычислительные исследования в когнитивной нейробиологии: понимание разума путем моделирования мозга», опубликованной MIT Press.[1] и в Новая документация
Обзор алгоритма Лебра
Здесь приводится псевдокод Leabra, который показывает, как именно части алгоритма, описанные более подробно в последующих разделах, сочетаются друг с другом.
Переберите минус и плюс фазы урегулирования для каждого события. o В начале настройки для всех блоков: - Инициализировать все переменные состояния (активация, v_m и т. д.). - Применение внешних шаблонов (зажим входа в минус, вход и выход в плюс). - Вычислить условия масштабирования сетевого входа (константы, вычисленные здесь, чтобы сеть могла динамически изменяться). - Оптимизация: вычислять чистый входной сигнал один раз из всех статических активаций (например, жестко закрепленных внешних входов). o Во время каждого цикла установления для всех незафиксированных блоков: - Вычислить возбуждающий сетевой вход (g_e (t), также известный как eta_j или net) - Оптимизация на основе отправителя путем игнорирования неактивных. - вычислить кВт ингибирование для каждого уровня на основе g_i ^ Q: * Сортировка единиц на две группы на основе g_i ^ Q: верхний k и оставшийся k + 1 -> n. * Если базовый, найдите k и k + 1-е место. Если на основе среднего, вычислите среднее значение 1 -> k & k + 1 -> n. * Установить тормозную проводимость g_i из g ^ Q_k и g ^ Q_k + 1 - Вычислить активацию точечного нейрона, сочетающую возбуждающий вход и торможение o После установления для всех единиц запишите окончательные установочные активации как отрицательную или положительную фазу (y ^ -_ j или y ^ + _ j). После обеих фаз обновите веса (на основе значений линейных текущих весов) для всех соединений: o Вычислить ошибочный вес меняется с КХЛ с мягким ограничением веса o Вычислить Hebbian вес меняется с CPCA от активаций плюс-фазы o Вычислить изменение веса нетто как взвешенную сумму вызванного ошибками и Hebbian o Увеличивать веса в соответствии с изменением веса нетто.
Реализации
Emergent это оригинальная реализация Leabra, написанная на C ++ и сильно оптимизированная. Это самая быстрая реализация, подходящая для построения больших сетей. Несмотря на то что возникающий имеет графический пользовательский интерфейс, он очень сложен и требует сложного обучения.
Если вы хотите подробно разобраться в алгоритме, вам будет легче читать неоптимизированный код. Для этого ознакомьтесь с Версия MATLAB. Также есть Версия R доступны, которые можно легко установить через install.packages ("leabRa")
в R и имеет краткое введение к тому, как используется пакет. Версии MATLAB и R не подходят для построения очень больших сетей, но их можно быстро установить и (с некоторым опытом программирования) легко использовать. Кроме того, они также могут быть легко адаптированы.
Специальные алгоритмы
- Временные различия и общая модуляция дофамина. Временные различия (TD) широко используется как модель из средний мозг дофаминергический стрельба.
- Полученное значение первичного значения (PVLV). ПВЛВ имитирует поведенческие и нейронные данные на Павловское кондиционирование и средний мозг дофаминергический нейроны огонь пропорционально неожиданным наградам (альтернатива TD).
- Рабочая память базальных ганглиев префронтальной коры (PBWM). PBWM использует ПВЛВ тренировать префронтальная кора рабочая память система обновления, основанная на биологии префронтальной коры и базальный ганглий.
Рекомендации
- ^ О'Рейли, Р. К., Мунаката, Ю. (2000). Вычислительные исследования в когнитивной нейробиологии. Кембридж: MIT Press. ISBN 0-19-510491-9.CS1 maint: несколько имен: список авторов (связь)
внешняя ссылка
- Emergent о Леабре
- PDP ++ о Leabra
- О'Рейли, Р. (1996). Модель Леабры нейронных взаимодействий и обучения в неокортексе. Докторская диссертация, Университет Карнеги-Меллона, Питтсбург, Пенсильвания PDF
- R версия Leabra
- Виньетка для R версии Leabra