Skip to content

Instantly share code, notes, and snippets.

@angelasof25
Last active October 3, 2019 18:57
Show Gist options
  • Save angelasof25/ec94a690a542fbfca908570758c57c8f to your computer and use it in GitHub Desktop.
Save angelasof25/ec94a690a542fbfca908570758c57c8f to your computer and use it in GitHub Desktop.
Résumé about Engineering a Less Artificial Intelligence article

algumas coisas soam estranho, traduções 🤔 , e alguns géneros confusos também. (the data = a data , the dataset = o dataset)

Résumé

https://doi.org/10.1016/j.neuron.2019.08.034

https://www.dropbox.com/s/m6pui14ncr4hvwi/Tolias%20Neuron%20JCG.pdf

ENGINEERING A LESS ARTIFICIAL INTELLIGENCE

Apesar dos enormes avanços de machine learning, redes neuronais artificiais ainda apresentam um atraso em relação aos cérebros e a sua habilidade de generalizar em novas situações. As diferenças, na generalização, são causadas por características definidas pelo algoritmo de aprendizagem, tais como a arquitetura da rede e a regra de aprendizagem.

O seu efeito conjunto (joint effect), chamado “induvtive bias” determina quão bem qualquer algoritmo de aprendizagem (ou cérebro) generaliza: generalização robusta necessita de bons ‘’inductive biases’’. ANN (artificial neural network) usam mais ‘biases’ não especificadas e muitas vezes focam em padrões que são apenas informativos sobre estatisticas de dados de treino mas que muitas vezes não generalizam para diferentes cenários.

Cérebros por outro lado, atravessam alterações do input sensorial, constantemente, comparativamente drásticas e generalizam. Discutir algumas ideias de como a neurociência pode ajudar alcançar melhor ''inductive biases'' fornecendo úteis condicionamentos(exigências - constraints) nas representações e arquiteturas da rede.

Introdução

Algoritmos de machine learning já conseguem fazer imensas coisas, reconhecer objetos , discursos e dominado muitos jogos, alguns deles superando a performance humana. Inteligência artificial promete melhorar diagnósticos médicos, descobrir novas curas, fazer descobertas científicas, prever mercados financeiros e modas geopolíticas, assim como identificar padrões em todo tipo de dados.

A perceção daquilo que constitui um comportamento inteligente assim como este é medido, mudou ao longo dos anos , aquilo que era um marco na inteligência humana foi resolvido e questões triviais para humanos e animais permanecem por resolver.

O renascimento do AI é resultado numa grande mudança de métodos desde a classical symbolic AI para modelos conexionistas usados pelo machine learning. A maior diferença do rule-based AI é que os modelos conexionistas são ‘treinados’ e não programados. As regras simbólicas são substituídas por parâmetros de uma função não linear flexível usando otimização de um objetivo que depende de data. Nas ANN, essa otimização é normalmente implementada através de backpropagation. Um considerável esforço em machine learning, tem sido direcionado a perceber como o treino pode ser mais eficaz, dependendo do quão bem esta generaliza conceitos assim como quantos data points são precisos para robustamente aprender um novo conceito (‘sample complexity’).

Os métodos correntes de machine learning são dominados por deep learning: multi-layer (deep) artificial neural networks (DNN), desenhadas com base no cérebro. O mais fundamental é a ideia de neurónios como unidades de processamento não linear elementar e adaptativo que inclui a noção lógica analógica que não é bem capturada pela caixa de ferramentas da lógica formal.

Cada neurónio artificial agrega inputs de outros neurónios usando somatório ponderado, análogo a pesos sinápticos de neurónios reais, seguido de uma simples função não linear tal como rectifier (ReLU) ou sigmoid (logistic funtion or tanh) analogamente ás não linearidades de input-output de neurónios.

Deep networks organizam os seus neurónios em inúmeras layers, onde cada layer fornece o input para os neurónios na layer seguinte, analogamente á organização de algumas áreas do cérebro,p.e. para processamento visual de informação. Apesar destas similaridades, os elementos de uma ANN abstraem-se fortemente de alguns detalhes neurofisiológicos. Em convulutional networks, o somatório linear dos coeficientes são compartilhados pelo espaço (ou seja, existe um neurónio com exatamente o mesmo campo receptivo linear em cada localização espacial) e, durante a aprendizagem, os pesos mudam para todos os locais de uma vez. Isto reduz drasticamente o número de parâmetros que precisam de ser aprendidos com a data.

Todos os neurónios com o mesmo formato de campo receptivo (mas deslocados para locais diferentes) são montados num 'feature channel' e pode haver muitos por layer numa rede neuronal. Muitos destes ingredientes já existem há várias décadas, mas graças a uma combinação de treino, em conjuntos de dados muito grandes, avanços no hardware, desenvolvimento de bibliotecas de software e muitos ajustes nos esquemas de treino, agora é possível treinar redes neuronais muito grandes.

Nesta abordagem (deep network on ImageNet classificação de imagens), chamada de 'transfer learning' uma rede treinada para uma tarefa como reconhecimento de objetos pode ser reutizada noutras tarefas, eliminando a parte especifica da tarefa (layers mais altas na hierarquia) e mantendo as features não lineares computadas pelas hidden layers. Isto permite resolver tarefas mais complexas que normalmente não teriam uma quantidade suficiente de dados para treinar outra vez.

O maior desafio na criação da próxima geração de sistemas inteligentes é encontrar fontes para implicitamente boas biases que permitirão uma forte generalização através a variação da data distribution e rápida aprendizagem de novas tarefas sem esquecer as tarefas anteriores.

Current Limits of AI

Lack of Robustness against Changes in the InputStatistics: Adversarial Examples andDomain Adaptation

O significado exato de 'generalization beyond the training set' é mais dificil de definir para animais que tem, no seu tempo de vida, um experẽncia visual diversas com ? estatisticas de cenários naturais ? e gerações de ancestrais selecionados evolutivamente por ter uma melhor 'arquitetura' para aquele ambiente.

Uma falha particularmente notável entre os humanos e as máquinas é 'minimal adversarial perturbations' da imagem de input, descoberta em redes de visão por computadores. Adversarial perturbations são impercetíveis para os humanos mas podem alterar a prediction da DNN. Isto significa que os limites de decisão de todas as classes está extremamente próxima da amostra de input dada.

Um problema chave de produzir redes menos vulneráveis a exemplos adversos é a dificuldade de avaliar de forma confiável a robustez do modelo. Foi provado virtualmente repetidas vezes que todas as defesas propostas na literatura, contra exemplos adversos não aumenta a robustez do modelo e apenas previnem ataques existentes de encontrar exemplos adversos minímos. Até recentemente a única defesa considerada efetiva foi um tipo de treino particular com um design explícito para vigiar adversarial attacks.

Perceber o porquê de os únicos sistemas robustos existentes - sistemas visuais biológicos - não são vulneráveis a computações adversas é o passo importante a tomar para a próxima geração de DNNs.

Domain adaptation é outro exemplo notável da diferença na generalização entre a visão biológica e artificial.

A habilidade de generalizar para além das hipóteses padrão de amostras independentes e distribuídas identicamente no momento do teste seria altamente desejável para algoritmos de machine learning, pois muitas aplicações do mundo real envolvem essas mudanças na distribuição do input. P.e. um carro autónomo deve ser robusto contra um conjunto variado de fenómenos metereológicos que não foram experienciados no momento do treino, como cinzas de um vulcão próximo. Alguns estudos provaram então que quando as redes foram testadas no mesmo domínio em que foram treinadas (ou seja, o mesmo tipo de ruído), elas superaram consistentemente os observadores humanos com uma grande margem, mostrando que as redes eram capazes de '' resolver '' as distorções condições de treino - teste idênticas. No entanto, quando a distribuição de ruído durante o teste diferia do ruído observado durante o treino, o desempenho das redes era muito baixo, mesmo para pequenas distorções.

Decision Making in Deep Networks

(...)

Beter Generalizatoins through Constraints

Já sabemos que as redes tem capacidade suficiente para expressar a maioria das funções devido ás classes de redes que apenas tem uma layer de neurónios com sigmoid activation funtions que podem, teoricamente, ajustam-se a qualquer função contínua desde que hajam neurónios suficientes. E mesmo com um número limitado de neurónios, há pucas evidẽncias de que as DNN estejam limitadas na sua capacidade de ajustar-se aos conjuntos de dados atuais.

O estudo da robustez do ruído (discutido no esquema - ver Fig.3 do artigo) mostra que a rede pode ser treinada para cada tipo de distorção de ruído (noise distortion), sugerindo que a capacidade da rede não é limitante. Isto implica que os datasets atuais, embora contenham milhões de exemplos, não fornecem restrições (constraints) suficientes para nos direcionar para uma solução que seja semelhante o suficiente ao nosso sistema visual, para exibir as propriedades desejáveis de robustez e generalização. Portanto, o desafio é apresentar estratégias de aprendizagem que destacem as redes bem generalizadas, das restantes, que se podem encaixar num dataset particular. Uma maneira de fazer isso é restringir a classe de redes para reduzi-la a soluções que generalizem bem. Por outras palavras, precisamos adicionar mais bias à classe dos modelos.

É útil distinguir dois tipos de bias, chamadas model bias e inductive(or learning) bias. A primeira funciona como uma prior probability em inferência Bayesian (https://en.wikipedia.org/wiki/Prior_probability): dada uma entrada que é inevitavelmente ambígua, a 'fixed' network favorecerá certas interpretações em detrimento de outras ou poderá excluir totalmente algumas interpretações. Inductive bias determina qual fixed network é escolhida pelo algoritmo de aprendizagem, da classe de modelos, consoante o conjunto de dados de treino. Por "classe de modelos", referimos um conjunto de funções desde o input até ás predictions. Um algoritmo seleciona uma função desse conjunto de funções (também chamado de 'hypothesis space'). Por exemplo, para uma dada arquitetura, todas as redes com valores diferentes para os seus pesos sinápticos constituem uma classe de modelo.

Uma vez fixados os pesos, obtemos um único modelo dessa classe, com seu próprio model bias - ou seja,a sua própria maneira de interpretar novos inputs. No entanto, a classe de modelo pode ser muito maior e também incluir modelos com diferentes arquiteturas de rede. Quais os pesos que são aprendidos, é afetado por muitos aspetos, como a arquitetura, a regra de aprendizagem, o processo de otimização, a ordem pela qual a data é apresentada, e condições iniciais do sistema.

Um bom sistema de aprendizagem para um problema particular terá um inductive bias que escolhe redes que generalizam bem. Matematicamente não existe um inductive bias que funcione para todos os problemas. É então importante discutir a influência das neurociências no inductive bias dos sistemas artificiais.

Organismos biológicos precisam de aprendem continuamente com a mesma rede neural e, assim, relacionar criticamente a generalização em diferentes tarefas e domínios. Quanto mais tarefas forem resolvidas com uma única rede, menos redes podem resolver todas as tarefas,e portanto, mais fortes são as inductive bias resultantes na classe de modelos. O desafio é definir uma boa seleção de tarefas que possam sinergicamente levar a uma melhor bias e que uma única rede possa obter alta generalização em todas as tarefas. Os dados neurofisiológico fornecem uma janela para as representações evoluídas de uma rede fortemente generalizada: o cérebro. Ao restringir uma rede artificial para corresponder a essas representações (por exemplo, prevendo as respostas neurais), podemos incentivar a rede a reproduzir as variáveis latentes codificadas que facilitam uma generalização brain-like. Por fim, a estrutura de uma rede específica introduz um inductive bias particular. A estrutura pode ser especificada numa escala grossa, como o número,tamanho, e conectividade entre hidden layers ou extenção da neuro-modulação entre outros.

Multi-task Learning and Data Augmentation

(...)

Conclusion

Construir learning machines máquinas que sejam tão flexíveis e versáteis, mas tão robustas e generalizadoras quanto os cérebros de mamíferos é o grande desafio do machine learning para os próximos anos. Aqui, descrevemos algumas maneiras pelas quais a compreensão do funcionamento do cérebro pode ajudar a avançar a AI a contruir novas pontes entre a neurociência e o machine learning.

A limitação das DNN atuais não é a falta de poder expressivo (ou seja, a diversidade e a complexidade das funções que eles podem expressar). Em vez disso, as DNN são limitadas porque não possuem o inductive bias mais correto. Até redes neurais superficiais são poderosas o suficiente para expressar qualquer função well-behaved.

Com a crescente complexidade de uma classe de rede, o número de redes que se ajustam a um determinado conjunto de dados finitos também cresce. O desafio é escolher um algoritmo de aprendizagem com um bom inductive bias que seleciona as redes de entre o grande número de possíveis candidatas que generalizam bem perante unseen data. O sucesso atual das DNN deriva dos inductive bias implícitos na combinação da arquitetura de rede (p.e convolutionality) e a regra de aprendizagem com base no stochastic gradient descendent (backpropagation).

Entretanto, enquanto as redes treinadas preveem bem, amostras de testes, retiradas da mesma distribuição que os dados de treino, estas usam estratégias de decisão diferentes das humanas e são muito menos robustas a mudanças no input que os cérebros manipulam facilmente. Para combinar essa capacidade com as ANN, é necessário melhorar o inductive bias das DNN atuais.

Foram então discutidas três abordagens possíveis para conseguir isto: treinar cada rede para resolver muitas tarefas comportamentais de uma só vez, co-treinar algoritmos de machine learning para corresponder às representações latentes do cérebro, observadas em dados neurofisiológicos e escolher uma arquitetura de rede específica ou um esquema de weight-sharing juntamente com uma regra de aprendizagem apropriada.

Com o objetivo de melhor compreender as ligações cerebrais, para analogamente crirar sistemas artificiais mais eficazes, as neurociências tem desenvolvido novos métodos de representar ligações cerebrais assim como a arquitetura das suas features para corroborar com as tarefas complexas que o cérebro resolve todos os dias. O machine learning fornece a framework necessária para integrar estas obsrvações experimentais num modelo comum.

Análises cuidadosas da neurociência computacional e machine learning expõe continuamente as diferenças entre a biologia e AI através de novos parâmetros de referência, permitindo redefinir modelos. Com experiências que investigam os mecanismos de brain's inductive biases e análises do cérebro que identificam as principais propriedades que manifestam esses biases, neurociência e machine learning devem complementarmente construir a próxima geração de inteligência artificial.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment