Pular para o Conteúdo
Este artigo foi traduzido do japonês usando IA
Ler em japonês
Este artigo está em Domínio Público (CC0). Sinta-se à vontade para usá-lo livremente. CC0 1.0 Universal

Sistema de Inteligência Artificial de Aprendizagem: O Conceito ALIS

Aqui, gostaria de organizar o Sistema de Inteligência Artificial de Aprendizagem (ALIS), detalhando o seu conceito, princípios, design básico e metodologia de desenvolvimento.

Conceito

A IA generativa atual, principalmente os grandes modelos de linguagem, é treinada com base na aprendizagem supervisionada baseada em redes neurais.

Como processo de aprendizagem, definimos esta aprendizagem de rede neural como aprendizagem inata.

O ALIS integra um processo de aprendizagem adquirida, separado da aprendizagem inata, para permitir a inferência que combina ambos os processos de aprendizagem.

Nesta aprendizagem adquirida, o conhecimento aprendido é acumulado externamente à rede neural e utilizado durante a inferência.

Portanto, o núcleo técnico do ALIS reside na extração, armazenamento e na seleção e utilização de conhecimento reutilizável durante a inferência.

Além disso, o ALIS não é apenas uma única tecnologia elementar, mas uma tecnologia de sistema que combina aprendizagem inata e aprendizagem adquirida.

Elementos de um Sistema de Inteligência de Aprendizagem

O ALIS opera sob o princípio de que tanto a aprendizagem inata existente quanto a aprendizagem adquirida, a ser considerada no futuro, seguem o mesmo framework de aprendizagem e inferência.

Para explicar os princípios da aprendizagem no ALIS, definimos cinco elementos de um sistema de inteligência de aprendizagem.

O primeiro é o processador intelectual. Refere-se a um sistema de processamento que realiza inferências utilizando conhecimento e extrai conhecimento para a aprendizagem.

Os Grandes Modelos de Linguagem (LLMs) e partes do cérebro humano são exemplos primordiais de processadores intelectuais.

O segundo é o armazém de conhecimento. Refere-se a um local de armazenamento onde o conhecimento extraído pode ser guardado e recuperado conforme necessário.

Nos LLMs, o armazém de conhecimento consiste nos parâmetros da rede neural. Nos humanos, corresponde à memória de longo prazo no cérebro.

O terceiro é o mundo. Refere-se ao ambiente externo tal como percebido por um sistema de inteligência de aprendizagem, como humanos ou o ALIS.

Para os humanos, o mundo é a própria realidade. No caso dos LLMs, um mecanismo que recebe a saída do LLM e lhe fornece feedback pode ser considerado equivalente ao mundo.

O quarto é a memória de estado. Refere-se a um componente interno de memória temporária, semelhante a uma memória, utilizado por um sistema de inteligência de aprendizagem durante a inferência.

Nos LLMs, é o espaço de memória utilizado durante a inferência, conhecido como estados ocultos. Nos humanos, corresponde à memória de curto prazo.

O quinto é o framework. É, por assim dizer, uma estrutura de pensamento. Na terminologia dos sistemas de inteligência de aprendizagem, refere-se aos critérios para selecionar o conhecimento necessário durante a inferência e a uma estrutura lógica do espaço de estados para organizar a memória de estado.

Nos LLMs, é a estrutura semântica dos estados ocultos, e os seus conteúdos são geralmente ambíguos e incompreensíveis para os humanos. Além disso, a seleção de conhecimento está incorporada no mecanismo de atenção, que seleciona quais tokens existentes devem ser consultados para cada token a ser processado.

Nos humanos, como mencionado acima, é uma estrutura de pensamento. Ao pensar utilizando um framework específico, um conjunto particular de know-how é recordado da memória de longo prazo e carregado na memória de curto prazo. Em seguida, a informação percebida atualmente é organizada de acordo com o framework de pensamento para compreender a situação.

Princípios de um Sistema de Inteligência de Aprendizagem

Um sistema de inteligência de aprendizagem opera da seguinte forma:

Um processador intelectual age sobre o mundo. O mundo, em resposta a esta ação, retorna resultados.

O processador intelectual extrai conhecimento reutilizável desses resultados e o armazena no armazém de conhecimento.

Ao agir sobre o mundo de forma iterativa, o processador intelectual seleciona conhecimento do armazém de conhecimento e o utiliza para modificar suas ações.

Este é o mecanismo básico.

No entanto, fundamentalmente, os métodos de extração, armazenamento, seleção e utilização do conhecimento determinam se o sistema pode realizar uma aprendizagem significativa.

Os humanos possuem mecanismos que lidam eficazmente com esta extração, armazenamento, seleção e utilização do conhecimento, permitindo-lhes aprender.

As redes neurais, incluindo os LLMs, têm a sua extração gerida por professores externos, mas possuem mecanismos para armazenamento, seleção e utilização. Isso permite que aprendam, desde que lhes seja fornecido um professor.

Além disso, um sistema de inteligência de aprendizagem pode também aprender a extração, armazenamento e seleção de frameworks, e os seus métodos de utilização dentro da memória de estado, como conhecimento, possibilitando assim uma aprendizagem mais complexa.

Tipos de Conhecimento

Com base nestes princípios, ao projetar a aprendizagem adquirida, é necessário clarificar que forma o conhecimento adquirido irá tomar.

Poder-se-ia considerar um método em que o conhecimento adquirido também é aprendido separadamente como parâmetros de rede neural.

No entanto, o conhecimento adquirido não precisa de ser limitado apenas aos parâmetros de rede neural. Um candidato prático é o conhecimento textualizado em linguagem natural.

O conhecimento textualizado em linguagem natural pode ser extraído e utilizado aproveitando as capacidades de processamento de linguagem natural dos LLMs. Além disso, uma vez que pode ser tratado como dados em sistemas de TI padrão, o armazenamento e a seleção também são fáceis.

Adicionalmente, o conhecimento textualizado em linguagem natural é fácil para humanos e outros LLMs verificarem, compreenderem e, em alguns casos, até editarem o seu conteúdo.

Também pode ser partilhado, unido ou dividido com outros sistemas de inteligência de aprendizagem.

Por estas razões, o conhecimento adquirido no conceito ALIS será inicialmente projetado para visar o conhecimento textualizado em linguagem natural.

Memória de Estado Adquirida e Frameworks

Explicámos as vantagens de selecionar texto em linguagem natural como formato para o conhecimento adquirido.

Da mesma forma, o texto em linguagem natural também pode ser usado para a memória de estado e para os frameworks de inferência.

Os frameworks, como estruturas conceptuais, podem ser armazenados e utilizados no armazém de conhecimento como conhecimento textualizado em linguagem natural.

Mesmo ao inicializar ou atualizar estados com base na estrutura definida por um framework, pode ser usada a memória de estado em formato de texto.

Ao projetar não só o conhecimento adquirido, mas também os frameworks e a memória de estado para estarem em formato de texto, o ALIS pode aproveitar as capacidades de processamento de linguagem natural dos LLMs para a aprendizagem adquirida e inferência em geral.

Conhecimento Formal

O conhecimento adquirido, os frameworks e a memória de estado podem ser expressos não apenas em texto de linguagem natural, mas também em linguagens formais ou modelos formais mais rigorosos.

Embora eu tenha escrito "selecionar", o objetivo do ALIS é incorporar múltiplos mecanismos distintos de aprendizagem de conhecimento adquirido para permitir o uso híbrido da aprendizagem inata e adquirida.

O conhecimento representado por linguagens formais ou modelos formais pode ser tornado mais preciso e inequívoco.

Além disso, se um framework for expresso usando uma linguagem ou modelo formal e um estado inicial for desenvolvido na memória de estado, então uma simulação ou desenvolvimento lógico pode ser realizado com um modelo rigoroso por um processador intelectual capaz de processar modelos formais, em vez de um LLM.

Um exemplo primordial de tais linguagens ou modelos formais são as linguagens de programação.

À medida que o sistema aprende sobre o mundo, se conseguir expressar as leis e conceitos encontrados nele como um programa num framework, então poderá simulá-los num computador.

Coluna 1: Tipos de Conhecimento

Ao organizar o conhecimento dentro de um sistema de inteligência de aprendizagem, torna-se claro que ele pode ser amplamente categorizado em três tipos de sistemas de conhecimento e dois tipos de estado.

Os três sistemas de conhecimento são: conhecimento de parâmetros de rede, tratado por redes neurais; conhecimento natural, expresso em linguagem natural; e conhecimento formal, expresso em linguagens formais.

Os dois tipos de estado são: sem estado (stateless) e com estado (stateful).

O conhecimento de parâmetros de rede sem estado é conhecimento intuitivo, como o encontrado na IA de deep learning. As características de gatos e cães, que não podem ser explicitamente pensadas ou verbalmente identificadas, podem ser aprendidas como conhecimento de parâmetros de rede sem estado.

O conhecimento de parâmetros de rede com estado é conhecimento que emerge através de processos difusos e iterativos, como na IA generativa.

O conhecimento natural sem estado é conhecimento como significados ligados a palavras individuais.

O conhecimento natural com estado é conhecimento que inclui contexto dentro das frases.

Alguns conhecimentos naturais estão inatamente incluídos no conhecimento de parâmetros de rede com estado, mas também existe conhecimento que pode ser adquirido a partir de texto em linguagem natural.

O conhecimento formal sem estado é conhecimento que pode ser expresso em fórmulas matemáticas sem iteração. O conhecimento formal com estado é conhecimento que pode ser expresso como um programa.

Pode-se também usar a própria memória de curto prazo como memória de estado para conhecimento natural e conhecimento formal.

No entanto, como é memória de curto prazo, existe o problema de ser difícil manter um estado de forma estável. Além disso, não é hábil em manter estados formalizados e inequívocos.

Por outro lado, papel, computadores e smartphones podem ser usados como memória de estado para anotar ou editar texto em linguagem natural, linguagens formais ou modelos formais.

Geralmente, os dados em papel ou computadores são frequentemente percebidos como um armazém de conhecimento para memorizar conhecimento, mas também podem ser usados como memória de estado para organizar pensamentos.

Assim, é evidente que os humanos realizam atividades intelectuais utilizando plenamente estes três sistemas de conhecimento e dois tipos de estado.

O ALIS, também, detém o potencial de melhorar dramaticamente as suas capacidades, permitindo e fortalecendo atividades intelectuais que aproveitam estes mesmos três sistemas de conhecimento e dois tipos de estado.

Em particular, o ALIS tem a força de poder utilizar vastos armazéns de conhecimento e memória de estado. Além disso, pode facilmente realizar tarefas intelectuais preparando muitos de cada e alternando ou combinando-os.

Coluna 2: Orquestração Inteligente

Embora exista a vantagem de poder acumular uma vasta quantidade de conhecimento num armazém de conhecimento, a quantidade de conhecimento não se traduz simplesmente numa vantagem na atividade intelectual, devido às limitações do número de tokens que uma IA generativa pode processar de uma só vez e ao ruído gerado por conhecimento irrelevante.

Pelo contrário, dividindo apropriadamente o armazém de conhecimento e transformando-o em armazéns de conhecimento especializados de alta densidade, cada um contendo o conhecimento necessário para uma tarefa intelectual específica, os problemas dos limites de tokens e do ruído podem ser mitigados.

Em troca, cada armazém de conhecimento especializado torna-se utilizável apenas para a sua tarefa intelectual designada.

Muitas atividades intelectuais são compósitos complexos de várias tarefas intelectuais. Portanto, ao dividir o conhecimento em armazéns de conhecimento especializados de acordo com o tipo de tarefa intelectual e subdividir a atividade intelectual em tarefas individuais, o ALIS pode executar toda a atividade intelectual alternando apropriadamente entre estes armazéns de conhecimento especializados.

Isto é análogo a uma orquestra, composta por músicos profissionais a tocar diferentes instrumentos e um maestro a liderar o conjunto.

Através desta tecnologia de sistema, a orquestração inteligente, o ALIS será capaz de organizar as suas atividades intelectuais.

Design Básico e Método de Desenvolvimento do ALIS

A partir daqui, vamos organizar o desenvolvimento do ALIS.

Como já discutido nos princípios e colunas, o ALIS é inerentemente projetado para uma fácil expansão de funções e recursos. Isso ocorre porque a essência do ALIS não reside em funções específicas, mas nos processos de extração, armazenamento, seleção e utilização do conhecimento.

Por exemplo, podem ser fornecidos múltiplos tipos de mecanismos de extração de conhecimento, e o design do sistema permite a livre escolha de selecionar entre eles ou usá-los simultaneamente.

Além disso, o próprio ALIS pode ser levado a realizar esta seleção.

Similarmente, o armazenamento, a seleção e a utilização também podem ser livremente escolhidos ou paralelizados.

Portanto, o ALIS pode ser desenvolvido de forma incremental e ágil, sem a necessidade de projetar toda a funcionalidade de maneira cascata (waterfall).

O Início do ALIS

Agora, vamos projetar um ALIS muito simples.

A interface de utilizador (UI) básica será um familiar chat com IA. Inicialmente, a entrada do utilizador é passada diretamente para o LLM. A resposta do LLM é exibida na UI, e o sistema aguarda a próxima entrada do utilizador.

Ao receber a próxima entrada, o LLM recebe não só a nova entrada, mas também todo o histórico de chat entre o utilizador e o LLM.

Por trás da UI deste chat com IA, um mecanismo é preparado para extrair conhecimento reutilizável do histórico de chat.

Este mecanismo pode ser adicionado ao sistema de chat com IA como um processo que é executado quando uma conversa termina ou em intervalos regulares. Naturalmente, um LLM é usado para a extração de conhecimento.

Este LLM é fornecido com o conceito e os princípios do ALIS, juntamente com o know-how de extração de conhecimento, como um prompt de sistema. Se o conhecimento não for extraído como pretendido, o prompt do sistema deve ser melhorado através de tentativa e erro.

O conhecimento extraído do histórico de chat é armazenado diretamente num knowledge lake. Um knowledge lake é simplesmente um mecanismo para armazenar conhecimento num estado plano antes de ser estruturado.

Em seguida, é preparado um mecanismo de estruturação para facilitar a seleção de conhecimento do knowledge lake.

Isso envolve fornecer um armazenamento de vetores de embedding para pesquisa semântica, como usado no RAG típico, e índices de palavras-chave.

Outras possibilidades incluem a geração de grafos de conhecimento mais avançados ou a realização de classificação de categorias.

Esta coleção de informações estruturadas para o knowledge lake será chamada de base de conhecimento. Esta base de conhecimento e todo o knowledge lake constituirão o armazém de conhecimento.

Em seguida, o armazém de conhecimento é integrado ao processamento da UI do chat.

Isso é basicamente o mesmo que um mecanismo RAG geral. Para a entrada do utilizador, o conhecimento relevante é selecionado do armazém de conhecimento e passado para o LLM juntamente com a entrada do utilizador.

Isso permite que o LLM utilize automaticamente o conhecimento ao processar a entrada do utilizador.

Desta forma, o conhecimento aumenta a cada conversa com o utilizador, permitindo um ALIS simples que utiliza o conhecimento acumulado de conversas anteriores.

Cenário Simples

Por exemplo, imagine um cenário em que um utilizador está a desenvolver uma aplicação web usando este ALIS simples.

O utilizador reportaria que o código proposto pelo LLM resultou num erro. Então, o utilizador e o LLM colaborariam para solucionar o problema. Digamos que eles descobrem que a especificação da API externa de que o LLM tinha conhecimento estava desatualizada, e a adaptação à especificação mais recente da API resolveu o problema.

Neste caso, o conhecimento de que a especificação da API do LLM era antiga e qual é a especificação mais recente da API poderia ser acumulado no armazém de conhecimento a partir deste tópico de chat.

Então, ao criar um programa que usa a mesma API na próxima vez, o ALIS poderia alavancar este conhecimento para gerar um programa baseado na especificação mais recente da API desde o início.

Melhorando o ALIS Inicial

No entanto, para que isso aconteça, este conhecimento precisa de ser selecionado em resposta à entrada do utilizador. Pode ser que este conhecimento não esteja diretamente ligado à entrada do utilizador, uma vez que o nome da API problemática é pouco provável que apareça na entrada inicial do utilizador.

Nesse caso, o nome da API só surgiria pela primeira vez na resposta do LLM.

Portanto, estenderemos ligeiramente o ALIS simples, adicionando um mecanismo para comentários de pré-verificação e comentários de pós-verificação.

Os comentários de pré-verificação são semelhantes ao recente "modo de pensamento" nos LLMs. Preparamos uma memória que pode conter texto como memória de estado e instruímos o LLM através de um prompt de sistema para realizar comentários de pré-verificação ao receber a entrada do utilizador.

O resultado do comentário de pré-verificação do LLM é então colocado na memória de estado e, com base neste resultado, o conhecimento é selecionado do armazém de conhecimento.

Em seguida, o histórico de chat, o resultado do comentário de pré-verificação, o conhecimento correspondente à entrada do utilizador e o conhecimento correspondente ao resultado do comentário de pré-verificação são passados ao LLM para receber a sua saída.

Além disso, para o resultado retornado pelo LLM, o conhecimento é procurado no armazém de conhecimento. Incluindo qualquer conhecimento encontrado lá, o LLM é então solicitado a realizar uma pós-verificação.

Se forem encontrados quaisquer problemas, eles são passados de volta ao LLM de chat juntamente com os pontos problemáticos e as razões para o feedback.

Ao proporcionar oportunidades para selecionar conhecimento durante os comentários de pré-verificação e os comentários de pós-verificação, podemos aumentar as chances de utilizar o conhecimento acumulado.

Perspetivas

O processo de criação do ALIS inicial e a adição de melhorias para abordar as suas fraquezas é precisamente o desenvolvimento ágil, demonstrando que o ALIS pode ser aprimorado incrementalmente.

Além disso, como exemplificado, o ALIS inicial é mais adequado para uso no desenvolvimento de software. Isso ocorre porque é um campo de alta demanda e onde o conhecimento pode ser claramente acumulado.

É um domínio onde os resultados são inequívocos, mas que necessita e beneficia significativamente de tentativa e erro, e da acumulação iterativa de conhecimento.

Adicionalmente, uma vez que o próprio desenvolvimento do ALIS é desenvolvimento de software, o facto de os desenvolvedores do ALIS poderem ser também utilizadores do ALIS é um aspeto atraente.

Além disso, juntamente com o sistema ALIS, o knowledge lake pode ser partilhado abertamente em plataformas como o GitHub.

Isso permitiria que muitos indivíduos contribuíssem para a melhoria do sistema ALIS e para a acumulação de conhecimento, com todos a desfrutar dos benefícios e a acelerar ainda mais o desenvolvimento do ALIS de forma eficiente.

Claro, a partilha de conhecimento não se limita aos desenvolvedores do ALIS; pode ser recolhida de todos os desenvolvedores de software que utilizam o ALIS.

A natureza em linguagem natural do conhecimento oferece duas vantagens adicionais.

A primeira vantagem é que o conhecimento ainda pode ser utilizado mesmo quando os modelos LLM mudam ou são atualizados.

A segunda vantagem é que o vasto knowledge lake acumulado pode ser usado como um conjunto de dados de pré-treino para LLMs. Existem duas formas de usar isto: como fine-tuning, ou para o próprio pré-treino do LLM.

Em qualquer caso, se um LLM que aprendeu inatamente a partir do conhecimento acumulado no knowledge lake puder ser utilizado, o desenvolvimento de software tornar-se-á ainda mais eficiente.

Além disso, o desenvolvimento de software envolve vários processos, como análise de requisitos, design, implementação, testes, operação e manutenção. O conhecimento especializado também existe para cada domínio e plataforma de software. Ao criar um mecanismo para dividir a vasta quantidade de conhecimento acumulado a partir destas perspetivas, uma orquestra ALIS pode ser formada.

Assim, as tecnologias elementares para o ALIS estão em vigor. O passo crucial restante é experimentar praticamente vários métodos — como o know-how de extração de conhecimento, a seleção apropriada de conhecimento, a segmentação de conhecimento especializado e a utilização da memória de estado — para descobrir abordagens eficazes. À medida que a complexidade aumenta, o tempo de processamento e os custos de utilização do LLM também aumentarão, necessitando de otimização.

Estes processos de tentativa e erro e otimizações podem ser avançados de forma orientada para a aprendizagem através do desenvolvimento e refinamento de frameworks.

Inicialmente, os desenvolvedores, como utilizadores, provavelmente integrarão frameworks no ALIS através de tentativa e erro. No entanto, mesmo assim, o próprio LLM pode ser encarregue de gerar ideias para frameworks.

Depois, ao incorporar um framework para melhorar e descobrir frameworks no ALIS, com base nos resultados recebidos do mundo e no conhecimento extraído, o próprio ALIS realizará tentativas e erros e otimizações de forma orientada para a aprendizagem.

ALIS no Mundo Real

Uma vez que o ALIS tenha sido refinado a este estágio, deverá ser capaz de adquirir conhecimento numa ampla variedade de domínios, não se limitando apenas ao mundo do desenvolvimento de software.

À semelhança do desenvolvimento de software, espera-se que o ALIS expanda o seu âmbito de aplicação a várias atividades intelectuais que os humanos realizam utilizando computadores.

Mesmo em tais atividades puramente intelectuais, o ALIS possuirá uma qualidade semelhante à de uma IA incorporada em relação ao seu mundo-alvo.

Isto acontece porque reconhece a fronteira entre si e o mundo, age sobre o mundo através dessa fronteira e pode percecionar a informação recebida do mundo.

Quando esta fronteira com o mundo é fisicamente visível e localizada num único lugar, geralmente referimo-nos a ela como um corpo.

No entanto, mesmo que a fronteira seja invisível e espacialmente distribuída, a estrutura de perceção e ação através de uma fronteira permanece a mesma que quando se possui um corpo físico.

Neste sentido, um ALIS que realiza atividades intelectuais pode ser considerado como possuindo virtualmente as características de uma IA incorporada.

E, se o ALIS for refinado a um estágio em que possa aprender apropriadamente mesmo em mundos novos e desconhecidos, existe a possibilidade de o ALIS ser incorporado como parte de uma IA incorporada real que possui um corpo físico.

Desta forma, o ALIS acabará por ser aplicado ao mundo real e começará a aprender com ele.