controlador de modelo de articulação cerebelar - Cerebellar model articulation controller

Um diagrama de blocos do sistema de CMAC para uma única articulação. O vector S é apresentado como entrada para todas as articulações. Cada junta calcula separadamente um S -. Um mapeamento * e um pi sinal actuador comum. Os pesos ajustáveis ​​para todas as juntas podem residir na mesma memória física.

O computador modelo aritmética cerebelar (CMAC) é um tipo de rede neural com base em um modelo de mamíferos cerebelo . Ele também é conhecido como o controlador de modelo de articulação cerebelar. É um tipo de associativo de memória .

O CMAC foi proposto pela primeira vez como um modelador função para controladores robóticos por James Alvo em 1975 (daí o nome), mas tem sido extensivamente utilizada no reforço de aprendizagem e também como para a classificação automatizado na aprendizagem máquina comunidade. CMAC calcula uma função , em que é o número de dimensões de entrada. O espaço de entrada é dividido em hiper-retângulos, cada um dos quais está associado com uma célula de memória. O conteúdo das células de memória são os pesos, que são ajustados durante o treinamento. Geralmente, mais do que uma quantização do espaço de entrada é utilizado, de modo a que qualquer ponto no espaço de entrada está associada a um número de hiper-rectângulos, e, por conseguinte, com um número de células de memória. A saída de um CMAC é a soma algébrica dos pesos em todas as células de memória activadas pelo ponto de entrada.

Uma alteração do valor dos resultados dos pontos de entrada de uma mudança no conjunto de hiper-rectângulos activados, e, por conseguinte, uma mudança no conjunto de células de memória que participam na saída CMAC. A saída CMAC é, por conseguinte, armazenada de uma maneira distribuída, de tal modo que a saída que corresponde a qualquer ponto no espaço de entrada é derivado a partir do valor armazenado em um número de células de memória (daí o nome de memória associativa). Isso proporciona generalização.

Blocos de construção

CMAC, representado como um espaço 2D

Na imagem adjacente, existem duas entradas para o CMAC, representada como um espaço 2D. Duas funções de quantização foram usadas para dividir esse espaço com duas grelhas sobrepostas (uma mostrada em linhas mais pesadas). Uma entrada única é mostrado perto do meio, e este foi activado duas células de memória, que corresponde à área sombreada. Se outro ponto ocorre próximo ao mostrado, ele vai compartilhar algumas das mesmas células de memória, proporcionando generalização.

O CMAC é treinada mediante a apresentação de pares de pontos de entrada e os valores de saída, e ajustar os pesos das células activadas por uma proporção do erro observada na saída. Este algoritmo de treinamento simples tem uma prova de convergência.

É normal para adicionar uma função kernel para o hiper-retângulo, de modo que os pontos de queda para a borda de um hiper-retângulo tem uma ativação menor do que aqueles que cai perto do centro.

Um dos principais problemas citados no uso prático de CMAC é o tamanho da memória necessária, o que está directamente relacionado com o número de células utilizadas. Isto é geralmente melhorada utilizando uma função hash , e apenas para armazenamento de memória para as células reais que são activadas através das entradas.

algoritmo convergente de uma etapa

Inicialmente menos mean square método (LMS) é utilizado para actualizar os pesos de CMAC. A convergência de usar LMS para treinamento CMAC é sensível à taxa de aprendizagem e pode levar a divergência. Em 2004, um recursivo de mínimos quadrados algoritmo (RLS) foi introduzido para treinar CMAC online. Ela não precisa de ajustar a taxa de aprendizagem. Sua convergência foi provado teoricamente e pode ser garantida a convergir em uma única etapa. A complexidade computacional deste algoritmo de RLS é O (N3).

estrutura de oleoduto paralelo de rede neural CMAC
Painel esquerdo: funções reais; Painel direito: aproximação CMAC com derivados

infra-estrutura de implementação de hardware

Com base na decomposição de QR, um algoritmo (QRLs) foi ainda mais simplificada de ter uma complexidade O (N). Consequentemente, isso reduz o uso de memória e custo de tempo significativamente. Foi introduzida uma estrutura de matriz de gasodutos paralela a execução deste algoritmo.

No geral, utilizando algoritmo QRLs, a convergência de rede neural CMAC pode ser garantida, e os pesos dos nodos pode ser atualizado utilizando uma etapa de treinamento. Sua estrutura conjunto de gasodutos paralela oferece seu grande potencial a ser implementado em hardware para uso da indústria em grande escala.

CMAC contínua

Uma vez que a forma rectangular das funções de campo receptivo CMAC produzir descontínua função escadaria aproximação, integrando CMAC com funções B-Splines, CMAC contínua oferece a capacidade de obtenção de qualquer ordem de derivados das funções aproximados.

profundo CMAC

Nos últimos anos, numerosos estudos confirmaram que pelo empilhamento de várias estruturas rasas em uma única estrutura profunda, o sistema global poderia conseguir uma melhor representação de dados, e, por isso, de forma mais eficaz lidar com tarefas não-lineares e de alta complexidade. Em 2018, um quadro profundo CMAC (DCMAC) foi proposta e um algoritmo backpropagation foi derivado para estimar os parâmetros DCMAC. Resultados experimentais de uma tarefa de cancelamento de ruído adaptativo mostrou que o DCMAC proposto pode obter um melhor desempenho de cancelamento de ruído, quando comparado com aquela da camada única convencional CMAC.

Resumo CMAC

escalabilidade Simples para estender a milhões de neurónios ou mais
Convergência O treinamento sempre podem convergir em uma única etapa
derivados de função Simples de obter através do emprego de B-Splines interpolação
estrutura de hardware estrutura de oleoduto paralelo
Uso de memória Linear em relação ao número de neurónios
Complexidade computacional EM)

Veja também

Referências

Outras leituras

links externos