
Como humanos, o simbolismo é a chave para compreender o mundo que nos rodeia, é como interpretamos objetos, ideias e as relações entre eles.
Somos totalmente dependentes da analogia, que é o que torna a nossa atual tecnologia de computação extremamente complicada, complexa e, neste momento, arcaica.
A crescente popularidade da inteligência artificial (IA) e os casos de uso que já vemos com o ChatGPT da OpenAI não são necessariamente os melhores aplicativos que vão além do mero “hype” e da inflação de ações.
Sob a computação tradicional, não entendemos completamente o que essas redes neurais artificiais (ANN) estão fazendo ou por que elas sequer funcionam tão bem quanto funcionam. A total falta de transparência também fornece uma grande desvantagem em nossa compreensão de como os dados são coletados e analisados para cuspir os resultados aos quais nos apegamos tão desesperadamente e que passamos a rotular como "progresso".
Considere o seguinte exemplo de uma RNA que é capaz de distinguir “círculos” e “quadrados” uns dos outros.
Uma maneira de conseguir essa distinção é a óbvia: se uma camada de saída indica um círculo e a outra indica um quadrado.
Mas e se você quisesse que a RNA discernisse a “cor” daquela forma específica – é “vermelha” ou “azul”?
Como “cor” é um conjunto de dados totalmente separado, ele requer neurônios de saída adicionais para poder contabilizar esse recurso na saída final. Nesse caso, seriam necessários quatro neurônios de saída – um para o círculo azul, um para o quadrado azul, um para o círculo vermelho e um para o quadrado vermelho.
Agora, e se quiséssemos um cálculo que também considerasse informações adicionais, como “tamanho” ou “posição/localização”?
Mais características significam mais neurônios que precisam levar em conta cada possibilidade associada na definição dessa característica específica (ou combinação de características) com o “círculo” e o “quadrado”.
Em outras palavras, torna-se incrivelmente complexo.
Bruno Olshausen, neurocientista da Universidade da Califórnia, Berkeley, falou recentemente sobre a necessidade de ter um neurônio para cada combinação possível de características.
“Não pode ser assim que nossos cérebros percebem o mundo natural, com todas as suas variações. Você tem que propor… um neurônio para todas as combinações”, ele disse, explicando ainda que nós, em essência, precisaríamos de “um detector de Volkswagen roxo” ou algo tão obscuro para dar conta de cada combinação possível de informações que esperamos considerar em qualquer experimento dado.
Entra em cena a ‘computação hiperdimensional’.
O que é ‘Computação Hiperdimensional’?
O coração da computação hiperdimensional é a capacidade do algoritmo de decifrar informações específicas de imagens complexas (pense em metadados) e então representar essas informações coletivas como uma entidade única, conhecida como um “vetor hiperdimensional”.
Ao contrário da computação tradicional, a computação hiperdimensional nos permite resolver problemas simbolicamente e, em certo sentido, ser capaz de “prever” de forma eficiente e precisa o resultado de um problema específico com base nos dados contidos no vetor hiperdimensional.
O que Olshausen argumenta, entre outros colegas, é que a informação no cérebro é representada pela atividade de uma tonelada de neurônios, tornando a percepção do nosso fictício “Volkswagen roxo” impossível de ser contida pelas ações de um único neurônio, mas sim por milhares de neurônios que, coletivamente, passam a compor um Volkswagen roxo.
Com o mesmo conjunto de neurônios agindo de forma diferente, poderíamos ver um conceito ou resultado totalmente diferente, como um Cadillac rosa.
A chave, de acordo com uma discussão recente na WIRED, é que cada informação, como a ideia de um carro ou sua marca, modelo, cor ou todos eles combinados, é representada como uma única entidade – um vetor hiperdimensional ou hipervetor.
Um “vetor” é apenas uma matriz ordenada de números – 1, 2, 3, etc. – onde um vetor 3D consiste em três números – as coordenadas x, y e z de um ponto exato no espaço 3D.
Um “hipervetor”, por outro lado, poderia ser uma matriz de milhares ou centenas de milhares de números que representam um ponto naquela quantidade de espaço dimensional. Por exemplo, um hipervetor que representa uma matriz de 10.000 números representa um ponto em um espaço de 10.000 dimensões.
Este nível de abstração nos dá a flexibilidade e a capacidade de desenvolver a computação moderna e harmonizá-la com tecnologias emergentes, como a inteligência artificial (IA).
“Essa é a coisa que mais me deixou animado, praticamente em toda a minha carreira”, disse Olshausen. Para ele e muitos outros, a computação hiperdimensional promete um novo mundo no qual a computação é eficiente e robusta e as decisões feitas por máquinas são inteiramente transparentes.
Transformando ‘Metadados’ em Algoritmos Hiperdimensionais para Gerar Resultados Complexos
A álgebra subjacente nos diz por que o sistema escolheu aquela resposta específica, o que não pode ser dito para redes neurais tradicionais.
O ponto crucial de como a IA deve ser usada para realmente nos capacitar a entender melhor o mundo ao nosso redor é desenvolver sistemas híbridos nos quais essas redes neurais podem mapear coisas da vida real para hipervetores e, então, permitir que a álgebra hiperdimensional assuma o controle.
“É isso que deveríamos esperar de qualquer sistema de IA”, diz Olshausen. “Deveríamos ser capazes de entendê-lo assim como entendemos um avião ou um aparelho de televisão.”
Voltando ao exemplo com “círculos” e “quadrados” e aplicando-o a espaços de alta dimensão, precisamos de vetores para representar as variáveis de “forma” e “cor” – mas também precisamos de vetores para representar os valores que podem ser atribuídos às variáveis – “CÍRCULO”, “QUADRADO”, “AZUL” e “VERMELHO”.
Mais importante ainda, esses vetores devem ser distintos o suficiente para realmente quantificar essas variáveis.
Agora, vamos voltar a atenção para Eric Weiss, um aluno de Olshausen, que em 2015 demonstrou um aspecto das habilidades únicas da computação hiperdimensional em como melhor representar uma imagem complexa como um único vetor hiperdimensional que contém informações sobre TODOS os objetos na imagem – cores, posições, tamanhos.
Em outras palavras, uma representação extremamente avançada dos metadados de uma imagem.
“Eu praticamente caí da cadeira”, disse Olshausen. “De repente, a lâmpada acendeu.”
Naquele momento, mais equipes começaram a concentrar seus esforços no desenvolvimento de “algoritmos hiperdimensionais” para replicar as tarefas “simples” nas quais as redes neurais profundas já estavam envolvidas duas décadas antes – como a classificação de imagens.
Criando um ‘Hipervetor’ para cada imagem
Por exemplo, se você pegasse um conjunto de dados anotados que consiste em imagens de dígitos escritos à mão, esse algoritmo hiperdimensional analisaria as características específicas de cada imagem, criando um “hipervetor” para cada imagem.
Criando uma “Classe” de Hipervetores para Cada Dígito
A partir daí, o algoritmo adicionaria os hipervetores para todas as imagens de “zero” para criar um hipervetor para a “ideia de zero” e repetiria isso para todos os dígitos, gerando 10 hipervetores de “classe” – um para cada dígito.
Essas classes armazenadas de hipervetores agora são medidas e analisadas em relação ao hipervetor criado para uma nova imagem não rotulada, com o propósito de o algoritmo determinar qual dígito corresponde mais de perto à nova imagem (com base na classe predeterminada de hipervetores para cada dígito).
A pesquisa da IBM mergulha
Em março, Abbas Rahimi e dois colegas da IBM Research em Zurique usaram computação hiperdimensional com redes neurais para resolver um problema clássico de raciocínio visual abstrato – algo que apresentou um desafio significativo para ANNs típicas e até mesmo para alguns humanos.
A equipe primeiro criou um “dicionário” de hipervetores para representar os objetos em cada imagem, onde cada hipervetor no dicionário representava um objeto específico e alguma combinação de seus atributos.
A partir daí, a equipe treinou uma rede neural para examinar uma imagem e gerar um hipervetor bipolar – onde um atributo ou elemento específico pode ser +1 ou -1.
“Você guia a rede neural para um espaço conceitual significativo”, disse Rahimi.
O valor aqui é que, uma vez que a rede tenha gerado hipervetores para cada uma das imagens de contexto e para cada candidato ao slot em branco, outro algoritmo é usado para analisar os hipervetores e criar “distribuições de probabilidade” para vários objetos na imagem.
Em outras palavras, a álgebra pode ser usada para prever a imagem candidata mais provável para preencher o slot vago. E a abordagem da equipe rendeu uma precisão de quase 88% em um conjunto de problemas, onde soluções somente de rede neural tiveram precisão inferior a 61%.
Ainda estamos na infância
Apesar de suas muitas vantagens, a computação hiperdimensional ainda está em seus primórdios e requer testes em problemas do mundo real e em escalas muito maiores do que as que vimos até agora - por exemplo, a necessidade de pesquisar com eficiência mais de 1 bilhão de itens ou resultados e encontrar um resultado específico.
Em última análise, isso virá com o tempo, mas apresenta questões sobre onde e como aplicamos e integramos o uso da inteligência artificial.
Leia sobre como um culto religioso de 40 minutos, impulsionado por IA, atraiu mais de 300 participantes na Alemanha como um experimento pioneiro.
Clique aqui para ver a galeria completa no Hypemoon


