Spiking neural network - Spiking neural network

O inseto é controlado por uma rede neural espigada para encontrar um alvo em um terreno desconhecido.

As redes neurais de spiking ( SNNs ) são redes neurais artificiais que imitam mais de perto as redes neurais naturais. Além do estado neuronal e sináptico , os SNNs incorporam o conceito de tempo em seu modelo operacional . A ideia é que os neurônios no SNN não transmitem informações a cada ciclo de propagação (como acontece com redes perceptron multicamadas típicas ), mas transmitem informações apenas quando um potencial de membrana  - uma qualidade intrínseca do neurônio relacionada à sua membrana elétrica carga - atinge um valor específico, denominado limite. Quando o potencial de membrana atinge o limiar, o neurônio dispara e gera um sinal que viaja para outros neurônios que, por sua vez, aumentam ou diminuem seus potenciais em resposta a esse sinal. Um modelo de neurônio que dispara no momento do cruzamento do limiar também é chamado de modelo de neurônio de pico .

O modelo de neurônio de spiking mais proeminente é o modelo de integração e disparo com vazamento . No modelo de integração e disparo, o nível de ativação momentânea (modelado como uma equação diferencial ) é normalmente considerado o estado do neurônio, com picos de entrada empurrando este valor para cima ou para baixo, até que o estado eventualmente decaia ou - se o disparo limiar é atingido - o neurônio dispara. Após o disparo, a variável de estado é redefinida para um valor inferior.

Existem vários métodos de decodificação para interpretar o trem de pico de saída como um número de valor real, contando com a frequência de picos (código de taxa), o tempo para o primeiro pico após a estimulação ou o intervalo entre os picos.

História

Modelo de neurônio pulsado
Sinapses artificiais baseadas em FTJs

Muitas redes neurais artificiais multicamadas estão totalmente conectadas , recebendo entrada de cada neurônio na camada anterior e sinalizando cada neurônio na camada subsequente. Embora essas redes tenham alcançado avanços em muitos campos, são biologicamente imprecisas e não imitam o mecanismo de operação dos neurônios no cérebro de uma coisa viva.

O modelo de Hodgkin-Huxley de inspiração biológica de um neurônio spiking foi proposto em 1952. Este modelo descreve como os potenciais de ação são iniciados e propagados. A comunicação entre os neurônios, que requer a troca de neurotransmissores químicos na lacuna sináptica , é descrita em vários modelos, como o modelo integrar e disparar , o modelo FitzHugh – Nagumo (1961–1962) e o modelo Hindmarsh – Rose (1984) . O modelo de integração e disparo com vazamento (ou um derivado) é comumente usado porque é mais fácil de calcular do que o modelo de Hodgkin-Huxley.

Fundamentos

A teoria da informação explica como a informação é codificada e decodificada por uma série de trens de pulsos, ou seja, potenciais de ação. Assim, uma questão fundamental da neurociência é determinar se os neurônios se comunicam por uma taxa ou código temporal . A codificação temporal sugere que um único neurônio de pico pode substituir centenas de unidades ocultas em uma rede neural sigmoidal .

Uma rede neural com spiking considera as informações temporais. A ideia é que nem todos os neurônios são ativados em cada iteração de propagação (como é o caso em uma rede perceptron multicamadas típica ), mas apenas quando seu potencial de membrana atinge um determinado valor. Quando um neurônio é ativado, ele produz um sinal que é passado para os neurônios conectados, aumentando ou diminuindo seu potencial de membrana.

Em uma rede neural de spiking, o estado atual do neurônio é definido como seu nível de ativação (modelado como uma equação diferencial). Um pulso de entrada faz com que o valor do estado atual aumente por um período de tempo e então diminua gradualmente. Esquemas de codificação foram construídos para interpretar essas sequências de pulso de saída como um número, levando em consideração a frequência e o intervalo de pulso. Um modelo de rede neural com base no tempo de geração de pulso pode ser estabelecido. A codificação de pico é adotada nesta nova rede neural. Usando o tempo exato da ocorrência do pulso, uma rede neural pode empregar mais informações e oferecer maior poder de computação.

Redes neurais acopladas a pulso (PCNN) são freqüentemente confundidas com SNNs. Um PCNN pode ser visto como uma espécie de SNN.

A abordagem SNN usa uma saída binária (sinal / sem sinal) em vez da saída contínua de RNAs tradicionais. Além disso, os treinos de pulso não são facilmente interpretáveis. Mas o treinamento de pulso aumenta a capacidade de processar dados espaço-temporais (ou classificação contínua de dados sensoriais do mundo real). Espaço se refere ao fato de que os neurônios se conectam apenas a neurônios próximos, de modo que podem processar blocos de entrada separadamente (semelhante ao CNN usando filtros). Tempo refere-se ao fato de que o treinamento de pulso ocorre ao longo do tempo, de modo que as informações perdidas na codificação binária podem ser recuperadas das informações de tempo. Isso evita a complexidade adicional de uma rede neural recorrente (RNN). Acontece que os neurônios de impulso são unidades computacionais mais poderosas do que os neurônios artificiais tradicionais.

O SNN é teoricamente mais poderoso do que as redes de segunda geração; no entanto, os problemas de treinamento do SNN e os requisitos de hardware limitam seu uso. Embora métodos de aprendizagem biológica não supervisionados estejam disponíveis, como a aprendizagem Hebbian e STDP , nenhum método de treinamento supervisionado eficaz é adequado para SNN que pode fornecer melhor desempenho do que as redes de segunda geração. A ativação de SNNs baseada em pico não é diferenciável, tornando difícil desenvolver métodos de treinamento baseados em gradiente descendente para realizar retropropagação de erro , embora alguns algoritmos recentes, como NormAD e NormAD multicamadas, tenham demonstrado bom desempenho de treinamento através da aproximação adequada do gradiente de ativação baseada em pico .

SNNs têm custos computacionais muito maiores para simular modelos neurais realistas do que RNAs tradicionais.

Formulários

Os SNNs podem, em princípio, aplicar-se às mesmas aplicações que as RNAs tradicionais. Além disso, os SNNs podem modelar o sistema nervoso central de organismos biológicos, como um inseto em busca de alimento sem conhecimento prévio do ambiente. Devido ao seu realismo relativo, eles podem ser usados ​​para estudar o funcionamento de circuitos neurais biológicos . Partindo de uma hipótese sobre a topologia de um circuito neuronal biológico e sua função, as gravações desse circuito podem ser comparadas à saída do SNN correspondente, avaliando a plausibilidade da hipótese. No entanto, faltam mecanismos de treinamento eficazes para SNNs, que podem ser inibitórios para algumas aplicações, incluindo tarefas de visão computacional.

Em 2019, os SNNs atrasam as RNAs em termos de precisão, mas a lacuna está diminuindo e desapareceu em algumas tarefas.

Programas

Uma ampla variedade de softwares de aplicativos pode simular SNNs. Este software pode ser classificado de acordo com seus usos:

Simulação SNN

Aprendizagem não supervisionada com sinapses ferroelétricas

Eles simulam modelos neurais complexos com um alto nível de detalhe e precisão. Redes grandes geralmente requerem um processamento demorado. Os candidatos incluem:

  • GENESIS (o Sistema de Simulação GEneral NEural) - desenvolvido no laboratório de James Bower na Caltech ;
  • NEURON - desenvolvido principalmente por Michael Hines, John W. Moore e Ted Carnevale na Yale University e na Duke University ;
  • Brian - desenvolvido por Romain Brette e Dan Goodman na École Normale Supérieure ;
  • NEST - desenvolvido pela Iniciativa NEST;
  • BindsNET - desenvolvido pelo laboratório de Sistemas Neurais e Dinâmicos Biologicamente Inspirados (BINDS) da Universidade de Massachusetts Amherst .
  • SpykeTorch - uma estrutura baseada em PyTorch otimizada especificamente para SNNs convolucionais com no máximo um pico por neurônio. É executado em GPUs.

Hardware

Previsão de aprendizagem STDP com sinapses ferroelétricas
Modelo de roteamento de malha neurônio a neurônio

As arquiteturas neuromórficas futuras compreenderão bilhões de tais nanosinapses, que requerem uma compreensão clara dos mecanismos físicos responsáveis ​​pela plasticidade. Sistemas experimentais baseados em junções de túnel ferroelétrico têm sido usados ​​para mostrar que STDP pode ser aproveitado de comutação de polarização heterogênea. Por meio de imagens de sonda de varredura combinadas, transporte elétrico e dinâmica molecular em escala atômica, as variações de condutância podem ser modeladas por reversão de domínios dominada por nucleação. Simulações mostram que matrizes de nanosinapses ferroelétricas podem aprender autonomamente a reconhecer padrões de forma previsível, abrindo caminho para o aprendizado não supervisionado .

Aprendizagem não supervisionada com sinapses ferroelétricas
  • Akida NSoC da Brainchip afirma ter efetivamente 1,2 milhão de neurônios e 10 bilhões de sinapses
  • Neurogrid é uma placa que pode simular spiking redes neurais diretamente no hardware. (Universidade de Stanford)
  • SpiNNaker (Spiking Neural Network Architecture) usa processadores ARM como os blocos de construção de uma plataforma de computação massivamente paralela baseada em um modelo tálamo - cortical de seis camadas . ( University of Manchester ) O sistema SpiNNaker é baseado em modelos numéricos executados em tempo real em chips de vários núcleos digitais personalizados usando a arquitetura ARM . Ele fornece chips digitais personalizados, cada um com dezoito núcleos e uma RAM local compartilhada de 128 Mbyte, com um total de mais de 1.000.000 de núcleos. Um único chip pode simular 16.000 neurônios com oito milhões de sinapses plásticas em execução em tempo real.
  • TrueNorth é um processador que contém 5,4 bilhões de transistores que consome apenas 70 miliwatts ; a maioria dos processadores em computadores pessoais contém cerca de 1,4 bilhão de transistores e requer 35 watts ou mais. A IBM se refere ao princípio de design por trás do TrueNorth como computação neuromórfica . Seu objetivo principal é o reconhecimento de padrões. Embora os críticos digam que o chip não é poderoso o suficiente, seus defensores ressaltam que esta é apenas a primeira geração, e as capacidades de iterações aprimoradas se tornarão claras. (IBM)
  • Processador Asynchronous Neuromorphic Dinâmico (DYNAP) combina circuitos analógicos lentos, de baixa potência, não homogêneos de sublimiar e circuitos digitais programáveis ​​rápidos. Ele oferece suporte a redes neurais reconfiguráveis, de uso geral e em tempo real de neurônios com spiking. Isso permite a implementação de arquiteturas de processamento neural baseadas em spikes em tempo real, nas quais a memória e a computação são co-localizadas. Ele resolve o problema de gargalo de von Neumann e permite a comunicação multiplexada em tempo real de eventos de pico para a realização de redes massivas. Redes recorrentes, redes de feed-forward, redes convolucionais, redes de atracção , redes de eco-estatais , redes profundas e redes de fusão de sensores são algumas das possibilidades.
Microarquitetura de nível superior central
  • Loihi é um chip Intel de 14 nm que oferece 128 núcleos e 130.000 neurônios em um pacote de 60 mm. Ele integra uma ampla gama de recursos, como conectividade hierárquica, compartimentos dendríticos, atrasos sinápticos e regras de aprendizagem sináptica programáveis. Executando uma forma convolucional de pico do Algoritmo Competitivo Local, Loihi pode resolver problemas de otimização LASSO com produto de atraso de energia superior em mais de três ordens de magnitude em comparação com solucionadores convencionais rodando em um isoprocesso / voltagem / área de CPU. Um sistema de pesquisa de 64 Loihi oferece um sistema neuromórfico de 8 milhões de neurônios. Loihi é cerca de 1.000 vezes mais rápido que uma CPU e 10.000 vezes mais eficiente em termos de energia.
  • BrainScaleS é baseado em emulações físicas de modelos de neurônios, sinapses e plasticidade com conectividade digital, funcionando até dez mil vezes mais rápido que em tempo real. Foi desenvolvido pelo European Human Brain Project . O sistema BrainScaleS contém 20 wafers de silício de 8 polegadas em tecnologia de processo de 180 nm. Cada wafer incorpora 50 x 106 sinapses plásticas e 200.000 neurônios biologicamente realistas. O sistema não executa códigos pré-programados, mas evolui de acordo com as propriedades físicas dos dispositivos eletrônicos, rodando até 10 mil vezes mais rápido que o tempo real.

Benchmarks

As capacidades de classificação de redes de spikes treinadas de acordo com métodos de aprendizagem não supervisionados foram testadas nos conjuntos de dados de referência comuns, como Iris, Wisconsin Breast Cancer ou Statlog Landsat. Várias abordagens para codificação de informações e projeto de rede têm sido usadas. Por exemplo, uma rede feedforward de 2 camadas para agrupamento e classificação de dados. Com base na ideia proposta em Hopfield (1995), os autores implementaram modelos de campos receptivos locais combinando as propriedades das funções de base radial (RBF) e neurônios spiking para converter sinais de entrada (dados classificados) com uma representação de ponto flutuante em uma representação spiking.

Veja também

Referências

links externos