Контроллер артикуляции модели мозжечка - Cerebellar model articulation controller

Блок-схема системы CMAC для одиночного стыка. Вектор S подается на вход для всех суставов. Каждое сочленение отдельно вычисляет отображение S -> A * и сигнал исполнительного механизма сочленения pi. Регулируемые веса для всех суставов могут находиться в одной физической памяти.

Мозжечковая модель арифметический компьютер ( КЦР ) представляет собой тип нейронной сети на основе модели млекопитающих мозжечка . Он также известен как контроллер артикуляции модели мозжечка. Это тип ассоциативной памяти .

CMAC был впервые предложен Джеймсом Альбусом в 1975 году (отсюда и название) в качестве средства моделирования для роботизированных контроллеров , но широко использовался в обучении с подкреплением, а также для автоматической классификации в сообществе машинного обучения . CMAC - это расширение модели персептрона . Он вычисляет функцию для входных размеров. Пространство ввода разделено на гипер-прямоугольники, каждый из которых связан с ячейкой памяти. Содержимое ячеек памяти - это веса, которые корректируются во время тренировки. Обычно используется более одного квантования пространства ввода, так что любая точка в пространстве ввода ассоциируется с несколькими гипер-прямоугольниками и, следовательно, с несколькими ячейками памяти. Выходные данные CMAC - это алгебраическая сумма весов всех ячеек памяти, активированных точкой ввода.

Изменение значения точки ввода приводит к изменению набора активированных гипер-прямоугольников и, следовательно, к изменению набора ячеек памяти, участвующих в выводе CMAC. Таким образом, выходные данные CMAC хранятся распределенным образом, так что выходные данные, соответствующие любой точке во входном пространстве, выводятся из значения, хранящегося в ряде ячеек памяти (отсюда и название ассоциативная память). Это дает обобщение.

Строительные блоки

CMAC, представленный как 2D-пространство

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

CMAC обучается путем представления пар входных точек и выходных значений и корректировки весов в активированных ячейках на долю ошибки, наблюдаемой на выходе. Этот простой обучающий алгоритм имеет доказательство сходимости.

Добавление функции ядра к гипер-прямоугольнику является нормальным, так что точки, падающие к краю гипер-прямоугольника, имеют меньшую активацию, чем те, которые падают около центра.

Одна из основных проблем, упоминаемых при практическом использовании CMAC, - это требуемый объем памяти, который напрямую связан с количеством используемых ячеек. Это обычно улучшается за счет использования хэш-функции и предоставления памяти только для фактических ячеек, которые активируются входными данными.

Одношаговый сходящийся алгоритм

Первоначально для обновления весов CMAC используется метод наименьших средних квадратов (LMS). Конвергенция использования LMS для обучения CMAC чувствительна к скорости обучения и может привести к расхождению. В 2004 г. был введен алгоритм рекурсивных наименьших квадратов (RLS) для обучения CMAC в режиме онлайн. Нет необходимости настраивать скорость обучения. Его сходимость доказана теоретически и может гарантированно сходиться за один шаг. Вычислительная сложность этого алгоритма RLS составляет O (N3).

Параллельная конвейерная структура нейронной сети CMAC
Левая панель: реальные функции; правая панель: аппроксимация CMAC с производными

Инфраструктура аппаратной реализации

На основе QR-разложения алгоритм (QRLS) был дополнительно упрощен до сложности O (N). Следовательно, это значительно снижает использование памяти и временные затраты. Была представлена ​​структура параллельного конвейерного массива при реализации этого алгоритма.

В целом, используя алгоритм QRLS, можно гарантировать сходимость нейронной сети CMAC, а веса узлов можно обновить с помощью одного шага обучения. Его структура массива параллельных конвейеров предлагает большой потенциал для аппаратной реализации для крупномасштабного промышленного использования.

Непрерывный CMAC

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

Глубокий CMAC

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

Резюме

Масштабируемость Легко распространить на миллионы нейронов или дальше
Конвергенция Обучение всегда может сходиться за один шаг
Производные функции Легко получить с помощью интерполяции B-сплайнов
Структура оборудования Структура параллельного конвейера
Использование памяти Линейный по количеству нейронов
Вычислительная сложность НА)

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

Ссылки

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

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