IA neuro-simbólica

A IA neuro-simbólica é um tipo de inteligência artificial que integra arquiteturas de IA neural e simbólica para abordar as fraquezas de cada uma, fornecendo uma IA robusta capaz de raciocínio, aprendizado e modelagem cognitiva. Conforme argumentado por Leslie Valiant [1] e outros, [2] [3] a construção eficaz de modelos cognitivos computacionais ricos exige a combinação de raciocínio simbólico e aprendizagem de máquina eficiente. Gary Marcus argumentou: "Não podemos construir modelos cognitivos ricos de forma adequada e automatizada sem o triunvirato da arquitetura híbrida, rico conhecimento prévio e técnicas sofisticadas de raciocínio." [4] Além disso, "para construir uma abordagem robusta e orientada ao conhecimento para a IA, precisamos ter a maquinaria de manipulação de símbolos em nosso kit de ferramentas. Muito conhecimento útil é abstrato para prosseguir sem ferramentas que representem e manipulem a abstração e, até o momento, a única maquinaria conhecida que pode manipular esse conhecimento abstrato de forma confiável é o aparato de manipulação de símbolos." [5]

Henry Kautz, [6] Francesca Rossi, [7] e Bart Selman [8] também defenderam uma síntese. Seus argumentos tentam abordar os dois tipos de pensamento, conforme discutido no livro Rápido e Devagar: Duas Formas de Pensar. Ele descreve a cognição como abrangendo dois componentes: o Sistema 1 é rápido, reflexivo, intuitivo e inconsciente. O Sistema 2 é mais lento, passo a passo e explícito. O Sistema 1 é usado para reconhecimento de padrões. O Sistema 2 lida com planejamento, dedução e pensamento deliberativo. Nessa visão, o aprendizado profundo lida melhor com o primeiro tipo de cognição, enquanto o raciocínio simbólico lida melhor com o segundo tipo. Ambos são necessários para uma IA robusta e confiável que possa aprender, raciocinar e interagir com humanos para aceitar conselhos e responder perguntas. Esses modelos de processo duplo com referências explícitas aos dois sistemas contrastantes têm sido trabalhados desde a década de 1990, tanto na IA quanto na Ciência Cognitiva, por vários pesquisadores. [9]

Abordagens

editar

As abordagens para a integração são diversas. [10] Segue-se a taxonomia de arquiteturas neuro-simbólicas de Henry Kautz [11], juntamente com alguns exemplos:

  • Symbolic Neural symbolic é a abordagem atual de muitos modelos neurais no processamento de linguagem natural, onde palavras ou tokens de subpalavras são a entrada e a saída finais de grandes modelos de linguagem. Exemplos incluem BERT, RoBERTa e GPT-3.
  • Simbólico[Neural] é exemplificado pelo AlphaGo, onde técnicas simbólicas são usadas para invocar técnicas neurais. Neste caso, a abordagem simbólica é a busca em árvore de Monte Carlo e as técnicas neurais aprendem a avaliar as posições do jogo.
  • Neural | Simbólico usa uma arquitetura neural para interpretar dados perceptivos como símbolos e relacionamentos que são raciocinados simbolicamente. Neural-Concept Learner [12] é um exemplo.
  • Neural: Simbólico → Neural depende do raciocínio simbólico para gerar ou rotular dados de treinamento que são posteriormente aprendidos por um modelo de aprendizado profundo, por exemplo, para treinar um modelo neural para computação simbólica usando um sistema matemático simbólico semelhante ao Macsyma para criar ou rotular exemplos.
  • Neural_{Symbolic} usa uma rede neural gerada a partir de regras simbólicas. Um exemplo é o Neural Theorem Prover, [13] que constrói uma rede neural a partir de uma árvore de prova AND-OR gerada a partir de regras e termos de base de conhecimento. Redes de tensores lógicos [14] também se enquadram nesta categoria.
  • Neural[Simbólico] permite que um modelo neural chame diretamente um mecanismo de raciocínio simbólico, por exemplo, para executar uma ação ou avaliar um estado. Um exemplo seria o ChatGPT usando um plugin para consultar o Wolfram Alpha.

Essas categorias não são exaustivas, pois não consideram sistemas multiagentes. Em 2005, Bader e Hitzler apresentaram uma categorização mais refinada que considerava, por exemplo, se o uso de símbolos incluía lógica e, em caso afirmativo, se a lógica era proposicional ou lógica de primeira ordem. [15] A categorização de 2005 e a taxonomia de Kautz acima são comparadas e contrastadas em um artigo de 2021. [11] Recentemente, Sepp Hochreiter argumentou que as Redes Neurais de Grafos"... são os modelos predominantes da computação neural-simbólica" uma vez que "[elas] descrevem as propriedades das moléculas, simulam redes sociais ou preveem estados futuros em aplicações físicas e de engenharia com interações partícula-partícula". [16]

Implementações

editar

As implementações de abordagens neuro-simbólicas incluem:

  • AllegroGraph: uma plataforma integrada baseada em Knowledge Graph para desenvolvimento de aplicações neuro-simbólicas. [17] [18] [19]
  • Scallop: uma linguagem baseada em Datalog que suporta raciocínio lógico e relacional diferenciável. O Scallop pode ser integrado ao Python e com um módulo de aprendizagem PyTorch. [20]
  • Redes de tensores lógicos: codifique fórmulas lógicas como redes neurais e aprenda simultaneamente codificações de termos, pesos de termos e pesos de fórmulas.
  • DeepProbLog: combina redes neurais com o raciocínio probabilístico do ProbLog.
  • SymbolicAI: uma biblioteca de programação composicional diferenciável.
  • Redes Neurais Explicáveis (XNNs): combinam redes neurais com hipergrafos simbólicos e são treinadas usando uma mistura de retropropagação e aprendizagem simbólica chamada indução. [21]

Referências

editar
  1. Valiant 2008.
  2. Garcez et al. 2015.
  3. D'Avila Garcez, Artur S.; Lamb, Luis C.; Gabbay, Dov M. (2009). Neural-symbolic cognitive reasoning. Col: Cognitive technologies. [S.l.]: Springer. ISBN 978-3-540-73245-7 
  4. Marcus 2020, p. 44.
  5. Marcus & Davis 2019, p. 17.
  6. Kautz 2020.
  7. Rossi 2022.
  8. Selman 2022.
  9. Sun 1995.
  10. «Disentangling visual attributes with neuro-vector-symbolic architectures, in-memory computing, and device noise». IBM Research (em inglês). 9 de fevereiro de 2021. Consultado em 20 de outubro de 2024 
  11. a b Sarker, Md Kamruzzaman; Zhou, Lu; Eberhart, Aaron; Hitzler, Pascal (2021). «Neuro-symbolic artificial intelligence: Current trends». AI Communications. 34 (3): 197–209. doi:10.3233/AIC-210084  Erro de citação: Código <ref> inválido; o nome "Sarker" é definido mais de uma vez com conteúdos diferentes
  12. Mao et al. 2019.
  13. Rocktäschel, Tim; Riedel, Sebastian (2016). Learning Knowledge Base Inference with Neural Theorem Provers. San Diego, CA: Association for Computational Linguistics. pp. 45–50. doi:10.18653/v1/W16-1309 . Consultado em 6 de agosto de 2022 
  14. Serafini, Luciano; Garcez, Artur d'Avila (2016). «Logic Tensor Networks: Deep Learning and Logical Reasoning from Data and Knowledge». arXiv:1606.04422  [cs.AI] 
  15. Bader & Hitzler 2005.
  16. Hochreiter, Sepp (April 2022). «Toward a broad AI». Communications of the ACM (em inglês). 65 (4): 56–57. ISSN 0001-0782. doi:10.1145/3512715  Verifique data em: |data= (ajuda)
  17. Harper, Jelani (29 de dezembro de 2023). «AllegroGraph 8.0 Incorporates Neuro-Symbolic AI, a Pathway to AGI». The New Stack (em inglês). Consultado em 13 de junho de 2024 
  18. «Neuro-Symbolic AI and Large Language Models Introduction | AllegroGraph 8.1.1». franz.com. Consultado em 13 de junho de 2024 
  19. «Franz Inc. Introduces AllegroGraph Cloud: A Managed Service for Neuro-Symbolic AI Knowledge Graphs». Datanami. Consultado em 13 de junho de 2024 
  20. Li, Ziyang; Huang, Jiani (2023). «Scallop: A Language for Neurosymbolic Programming». arXiv:2304.04812  [cs.PL] 
  21. «Model Induction Method for Explainable AI». USPTO. 6 de maio de 2021