Мозжечковая модель арифметический компьютер ( КЦР ) представляет собой тип нейронной сети на основе модели млекопитающих мозжечка . Он также известен как контроллер артикуляции модели мозжечка. Это тип ассоциативной памяти . [2]
CMAC был впервые предложен Джеймсом Альбусом в 1975 году в качестве средства моделирования для роботизированных контроллеров [1] (отсюда и название), но широко использовался в обучении с подкреплением, а также для автоматической классификации в сообществе машинного обучения . CMAC - это расширение модели персептрона . Он вычисляет функцию длявходные размеры. Пространство ввода разделено на гипер-прямоугольники, каждый из которых связан с ячейкой памяти. Содержимое ячеек памяти - это веса, которые корректируются во время тренировки. Обычно используется более одного квантования входного пространства, так что любая точка в входном пространстве связана с рядом гипер-прямоугольников и, следовательно, с рядом ячеек памяти. Выходные данные CMAC - это алгебраическая сумма весов всех ячеек памяти, активированных точкой ввода.
Изменение значения точки ввода приводит к изменению набора активированных гипер-прямоугольников и, следовательно, к изменению набора ячеек памяти, участвующих в выводе CMAC. Таким образом, выходные данные CMAC хранятся распределенным образом, так что выходные данные, соответствующие любой точке во входном пространстве, выводятся из значения, хранящегося в ряде ячеек памяти (отсюда и название ассоциативная память). Это дает обобщение.
Строительные блоки [ править ]
На соседнем изображении есть два входа в CMAC, представленные в виде двухмерного пространства. Две функции квантования были использованы для разделения этого пространства двумя перекрывающимися сетками (одна показана более жирными линиями). Один вход показан около середины, и это активировало две ячейки памяти, соответствующие заштрихованной области. Если другая точка находится рядом с показанной, она будет разделять некоторые из тех же ячеек памяти, обеспечивая обобщение.
CMAC обучается путем представления пар входных точек и выходных значений и корректировки весов в активированных ячейках пропорционально ошибке, наблюдаемой на выходе. Этот простой обучающий алгоритм имеет доказательство сходимости. [3]
Добавление функции ядра к гипер-прямоугольнику является нормальным, чтобы точки, падающие к краю гипер-прямоугольника, имели меньшую активацию, чем точки, падающие рядом с центром. [4]
Одна из основных проблем, упоминаемых при практическом использовании CMAC, - это требуемый объем памяти, который напрямую зависит от количества используемых ячеек. Обычно это улучшается за счет использования хэш-функции и предоставления памяти только для фактических ячеек, которые активируются входными данными.
Одноэтапный сходящийся алгоритм [ править ]
Первоначально для обновления весов CMAC используется метод наименьших средних квадратов (LMS). Конвергенция использования LMS для обучения CMAC чувствительна к скорости обучения и может привести к расхождению. В 2004 г. [5] был введен алгоритм рекурсивных наименьших квадратов (RLS) для обучения CMAC в режиме онлайн. Нет необходимости настраивать скорость обучения. Его сходимость доказана теоретически и гарантирует сходимость за один шаг. Вычислительная сложность этого алгоритма RLS составляет O (N3).
Инфраструктура аппаратной реализации [ править ]
На основе QR-разложения алгоритм (QRLS) был дополнительно упрощен до сложности O (N). Следовательно, это значительно снижает использование памяти и временные затраты. Была представлена структура параллельного конвейерного массива при реализации этого алгоритма. [6]
В целом, используя алгоритм QRLS, может быть гарантирована сходимость нейронной сети CMAC, а веса узлов могут быть обновлены с использованием одного шага обучения. Его структура массива параллельных конвейеров предлагает большой потенциал для аппаратной реализации для крупномасштабного промышленного использования.
Непрерывный CMAC [ править ]
Поскольку прямоугольная форма функций воспринимающего поля CMAC создает аппроксимацию прерывистой лестничной функции, интегрируя CMAC с функциями B-сплайнов, непрерывный CMAC предлагает возможность получения любого порядка производных приближенных функций.
Deep CMAC [ править ]
В последние годы многочисленные исследования подтвердили, что за счет объединения нескольких неглубоких структур в одну глубокую структуру вся система может достичь лучшего представления данных и, таким образом, более эффективно справляться с нелинейными задачами высокой сложности. В 2018 году [7] была предложена структура глубокого CMAC (DCMAC) и получен алгоритм обратного распространения ошибки для оценки параметров DCMAC. Экспериментальные результаты задачи адаптивного шумоподавления показали, что предлагаемый DCMAC может достигать лучших характеристик шумоподавления по сравнению с таковым из обычного однослойного CMAC.
Резюме [ править ]
Масштабируемость | Легко распространить на миллионы нейронов или больше |
Конвергенция | Обучение всегда может быть сведено к одному этапу |
Производные функции | Легко получить с помощью интерполяции B-сплайнов |
Структура оборудования | Параллельная конструкция конвейера |
Использование памяти | Линейный по количеству нейронов |
Вычислительная сложность | НА) |
См. Также [ править ]
- Искусственная нейронная сеть
- Рекурсивный фильтр наименьших квадратов
- Глубокое обучение
Ссылки [ править ]
- ^ а б Дж. Альбус (1975). «Новый подход к управлению манипулятором: контроллер артикуляции модели мозжечка (CMAC)». В: Пер. ASME, серия G. Журнал динамических систем, измерений и управления , Vol. 97. С. 220–233, 1975.
- ^ JS Albus (1979). «Механизмы планирования и решения проблем в мозгу». В кн .: Математические биологические науки . Vol. 45, стр. 247293, 1979.
- ^ Ю. Вонг, CMAC Learning управляется одним параметром, Международная конференция IEEE по нейронным сетям, Сан-Франциско, Vol. 1. С. 1439–43, 1993.
- ^ PCE An, WT Miller и PC Parks, Улучшения дизайна ассоциативной памяти для контроллеров артикуляции модели мозжечка, Proc. ICANN, стр. 1207–10, 1991.
- ^ Тинг Цинь и др. «Алгоритм обучения CMAC на основе RLS». Письма о нейронной обработке 19.1 (2004): 49-61.
- ^ а б Тин Цинь и др. «Непрерывный CMAC-QRLS и его систолический массив». Письма о нейронной обработке 22.1 (2005): 1-16.
- ^ * Ю. Цао и др. «Адаптивное шумоподавление с использованием контроллера артикуляции модели глубокого мозжечка». IEEE Access Vol. 6. С. 37395 - 37402, 2018.
Дальнейшее чтение [ править ]
- Альбус, JS (1971). « Теория мозжечковой функции ». В: Mathematical Biosciences , Volume 10, Numbers 1/2, февраль 1971 г., стр. 25–61
- Альбус, JS (1975). « Новый подход к управлению манипулятором: контроллер артикуляции модели мозжечка (CMAC) ». В: Транзакции журнала ASME по динамическим системам, измерениям и управлению , сентябрь 1975 г., стр. 220 - 227
- Альбус, JS (1979). « Механизмы планирования и решения проблем в мозгу ». В: Mathematical Biosciences 45, pgs 247–293, 1979.
- Цао, Ю. (2018). « Адаптивное шумоподавление с использованием контроллера артикуляции модели глубокого мозжечка ». В: IEEE Access 6, апрель 2018 г., стр. 37395-37402.
Внешние ссылки [ править ]
- Блог о контроллере артикуляции модели мозжечка (CMAC), автор Ting Qin. Подробнее об одношаговом сходящемся алгоритме, разработке кода и т. Д.