Леабра
Leabra означает локальный, управляемый ошибками и ассоциативный, биологически реалистичный алгоритм . Это модель обучения , которая представляет собой баланс между Хеббианским обучением и обучением на основе ошибок с другими сетевыми характеристиками. Эта модель используется для математического прогнозирования результатов на основе входных данных и влияния предыдущего обучения. Leabra находится под сильным влиянием и вносит свой вклад в проекты и модели нейронных сетей, включая эмерджентные .
Фон
[ редактировать ]Этот алгоритм является алгоритмом по умолчанию в Emergent (преемнике PDP++) при создании нового проекта и широко используется в различных симуляциях.
Обучение Хебба осуществляется с использованием алгоритма условного анализа главных компонентов (CPCA) с поправочным коэффициентом для редких ожидаемых уровней активности.
Обучение, управляемое ошибками, выполняется с помощью GeneRec , который является обобщением алгоритма рециркуляции и аппроксимирует рекуррентное обратное распространение ошибки Алмейды-Пинеды . Используется симметричная версия GeneRec со средней точкой, которая эквивалентна контрастному алгоритму обучения Хеббиана (CHL). См. более подробную информацию в O'Reilly (1996; Neural Computation).
Функция активации представляет собой приближение точечных нейронов как с дискретными выбросами , так и с непрерывным выходным сигналом скорости.
Запрет на уровне слоя или группы единиц можно вычислить непосредственно с помощью функции k-победители получают все (KWTA), создавая разреженные распределенные представления.
Чистые входные данные вычисляются как среднее, а не сумма, по соединениям на основе нормализованных, сигмоидально преобразованных весовых значений, которые подлежат масштабированию на уровне группы соединений для изменения относительных вкладов. Автоматическое масштабирование выполняется для компенсации различий в ожидаемом уровне активности в разных проекциях.
Документацию об этом алгоритме можно найти в книге «Вычислительные исследования в когнитивной нейронауке: понимание разума путем моделирования мозга», опубликованной MIT Press. [1] и в экстренной документации
Обзор алгоритма Лебры
[ редактировать ]Здесь приведен псевдокод для Leabra, показывающий, как именно сочетаются друг с другом части алгоритма, описанные более подробно в последующих разделах.
Iterate over minus and plus phases of settling for each event. o At start of settling, for all units: - Initialize all state variables (activation, v_m, etc). - Apply external patterns (clamp input in minus, input & output in plus). - Compute net input scaling terms (constants, computed here so network can be dynamically altered). - Optimization: compute net input once from all static activations (e.g., hard-clamped external inputs). o During each cycle of settling, for all non-clamped units: - Compute excitatory netinput (g_e(t), aka eta_j or net) -- sender-based optimization by ignoring inactives. - Compute kWTA inhibition for each layer, based on g_i^Q: * Sort units into two groups based on g_i^Q: top k and remaining k+1 -> n. * If basic, find k and k+1th highest If avg-based, compute avg of 1 -> k & k+1 -> n. * Set inhibitory conductance g_i from g^Q_k and g^Q_k+1 - Compute point-neuron activation combining excitatory input and inhibition o After settling, for all units, record final settling activations as either minus or plus phase (y^-_j or y^+_j). After both phases update the weights (based on linear current weight values), for all connections: o Compute error-driven weight changes with CHL with soft weight bounding o Compute Hebbian weight changes with CPCA from plus-phase activations o Compute net weight change as weighted sum of error-driven and Hebbian o Increment the weights according to net weight change.
Реализации
[ редактировать ]Emergent — это оригинальная реализация Leabra; его последняя реализация написана на Go . В основном его написал доктор О'Рейли , но недавно были наняты профессиональные инженеры-программисты для улучшения существующей кодовой базы. Это самая быстрая реализация, подходящая для построения больших сетей. Хотя Emergent имеет графический интерфейс пользователя, он очень сложен и требует длительного обучения.
Если вы хотите детально разобраться в алгоритме, вам будет легче читать неоптимизированный код. Для этого ознакомьтесь с версией MATLAB . Также доступна версия R , которую можно легко установить через install.packages("leabRa")
в R и содержит краткое введение в использование пакета. Версии MATLAB и R не подходят для построения очень больших сетей, но их можно быстро установить и (при наличии некоторого опыта программирования) они просты в использовании. Кроме того, их также можно легко адаптировать.
Специальные алгоритмы
[ редактировать ]- Временные различия и общая модуляция дофамина . Временные различия (TD) широко используются в качестве модели дофаминергической активации среднего мозга .
- Первичная изученная ценность (PVLV) . PVLV моделирует поведенческие и нейронные данные о павловском обусловливании и среднего мозга дофаминергических нейронах , которые активируются пропорционально неожиданному вознаграждению (альтернатива TD ).
- Рабочая память базальных ганглиев префронтальной коры (PBWM) . PBWM использует PVLV для тренировки префронтальной коры системы обновления рабочей памяти , основанной на биологии префронтальной коры и базальных ганглиев .
Ссылки
[ редактировать ]- ^ О'Рейли, Р.К., Мунаката, Ю. (2000). Вычислительные исследования в когнитивной нейробиологии . Кембридж: MIT Press. ISBN 0-19-510491-9 .
{{cite book}}
: CS1 maint: несколько имен: список авторов ( ссылка )
Внешние ссылки
[ редактировать ]- Экстренное сообщение о Леабре
- PDP++ о Leabra
- О'Рейли, RC (1996). Модель Леабры нейронных взаимодействий и обучения в неокортексе. Докторская диссертация, Университет Карнеги-Меллон, Питтсбург, Пенсильвания PDF
- R-версия Леабры
- Виньетка для R-версии Leabra