IA em Cripto

intermediário9/19/2024, 2:23:31 AM
O lançamento do ChatGPT em novembro de 2022 abriu os olhos de vários players da indústria para o grande modelo de linguagem de IA. Essa dinâmica frenética permeou o espaço Cripto, e este artigo tem como objetivo apresentar o desenvolvimento da IA, seu status atual e a indústria que surgiu da combinação de IA+Cripto.

O lançamento do ChatGPT em novembro de 2022 abriu os olhos de vários players da indústria para o grande modelo de linguagem de IA. Essa dinâmica frenética permeou o espaço Cripto, e este artigo tem como objetivo introduzir o desenvolvimento da IA, seu status atual e a indústria que surgiu a partir da combinação de IA+Crypto.

O desenvolvimento da IA e seu estado atual

Tipos e Arquiteturas

A aprendizagem de máquina (ML) é uma tecnologia com capacidades de aprendizagem empírica, que aprende a discriminar animais, tradução de idiomas e outras tarefas específicas aprendendo a partir de grandes conjuntos de dados. A aprendizagem de máquina pertence à forma mais prática de realizar inteligência artificial no presente, de acordo com se os dados aprendidos são rotulados e as características podem ser divididas em aprendizagem supervisionada e aprendizagem não supervisionada.

Existem muitos tipos de modelos que podem realizar aprendizado supervisionado, incluindo modelos baseados em árvores, modelos de gráficos e as redes neurais recentemente surgidas. Com o rápido desenvolvimento da capacidade de computação e dados, o aprendizado profundo foi ainda mais desenvolvido com base na arquitetura das redes neurais. As arquiteturas atuais de aprendizado profundo comumente incluem, mas não se limitam a, CNNs, RNNs e mecanismos de atenção.

Classificação de aprendizado de máquina, fonte: Capital HashKey

Diferentes redes de aprendizado profundo têm a arquitetura básica de camada de entrada, camada oculta e camada de saída, a camada de entrada geralmente é texto, vídeo, áudio e outros dados após ser processada a "tokenização/incorporação". A camada oculta tem um design diferente (forma do modelo) dependendo do conjunto de dados e do propósito da tarefa, conforme mostrado na tabela.

Tipos de Redes Neurais, Fonte: Organizado por Capital HashKey

Trinta Anos de Desenvolvimento de Redes Neurais

30 anos de desenvolvimento de redes neurais, fonte: organizado por HashKey Capital

O treinamento de redes neurais teve origem no meio da década de 1980, quando Jordan treinou uma rede neural para aprender padrões sequenciais em seu artigo de 1986.Ordem Serial: Uma Abordagem de Processamento Distribuído Paralelo. A pequena rede tinha apenas alguns neurônios.

Na década de 1990, Jeffrey Ehrman expandiu a rede neural para uma rede de 50 neurônios com a descoberta de que a rede agrupa espacialmente palavras com base no significado. Por exemplo, separou substantivos inanimados e animados, e dentro dessas duas categorias, objetos animados foram subdivididos em categorias humanas e não humanas, e inanimados foram categorizados como quebráveis e comestíveis. Isso indica que a rede tem a capacidade de aprender explicações hierárquicas.

Ele observou ainda que as palavras podem ser representadas como pontos em um espaço de alta dimensão e, em seguida, uma sequência de palavras ou frases pode ser vista como um caminho. Esta grande descoberta permite que conjuntos de dados textuais sejam digitalizados, vetorizados e processados por computadores.

Origem: http://3b1b.co/neural-networks

Em 2011, os pesquisadores do Confluence treinaram redes maiores envolvendo milhares de neurônios e milhões de conexões, e foi encontrado um gargalo no estudo na capacidade da rede de manter um contexto coerente ao longo de sequências longas.

Em 2017, a OpenAI construiu sobre o trabalho de Kathy treinando em 82 milhões de avaliações da Amazon, nas quais foram descobertos neurônios emocionais. Tais neurônios categorizaram perfeitamente as emoções do texto.

Origem: Aprendendo a Gerar Avaliações e Descobrir Sentimentos

Em relação às limitações do tamanho do contexto, este artigo 2017 Attention Is All You Need apresenta uma solução. O artigo cria uma rede de camadas dinâmicas que adapta os pesos de conexão com base no contexto da rede. Funciona permitindo que as palavras na entrada visualizem, comparem outras palavras e encontrem as mais relevantes. Quanto mais próximas essas palavras estiverem em conceito, mais próximas estarão no espaço e poderão ter pesos de conexão mais altos. No entanto, o artigo focou apenas no problema da tradução.

Assim, os pesquisadores da OpenAI tentaram uma arquitetura de transformador mais poderosa e lançaram o GPT-3 em 2020, o que atraiu atenção generalizada de indústrias ao redor do mundo, desta vez com a rede atingindo 175B parâmetros, 96 camadas e uma janela de contexto de 1.000 palavras.

O que é uma rede neural?

Tomemos a seguinte imagem digital de 28x28 pixels como exemplo, os neurônios correspondem a cada pixel da imagem de entrada de 28x28, totalizando 784 neurônios, os números nos neurônios são os valores de ativação, que variam de 0 a 1.

Imagem digital de 28x28 pixels, Fonte: http://3b1b.co/neural-networks

Esses 784 neurônios formam a camada de entrada da rede. A camada final é a camada de saída, que contém dez neurônios representando os números 0–9, novamente com valores de ativação variando de 0–1. A camada intermediária é a camada oculta, onde o valor de ativação da camada anterior determina o valor de ativação da próxima camada à medida que a rede neural opera.

A profundidade do aprendizado profundo está no fato de que o modelo aprende muitas “camadas” de transformações, cada uma com uma representação diferente. Como mostrado na figura abaixo, por exemplo, em 9, diferentes camadas podem reconhecer diferentes características. Quanto mais próxima a camada de entrada estiver do nível mais baixo de detalhes dos dados, mais próxima a camada de saída estará dos conceitos mais específicos que podem ser usados para diferenciar.

Fonte: http://3b1b.co/neural-networks

Conforme o modelo fica maior, as camadas ocultas no meio envolvem centenas de bilhões de pesos por camada, e são esses pesos e vieses que realmente determinam o que a rede está fazendo. O processo de aprendizado de máquina é o processo de encontrar os parâmetros corretos, que são pesos e vieses.

A arquitetura do transformador usada no GPT, um modelo de linguagem grande, possui uma camada intermediária oculta composta por 96 camadas de módulos decodificadores, dos quais GPT1, GPT2 e GPT3 possuem 12, 48 e 96 camadas, respectivamente. O decodificador, por sua vez, contém componentes de rede neural de atenção e feedback direto.

Abordagem de treinamento

O processo de computação ou aprendizado envolve a definição de uma função de custo (ou função de perda) que soma os quadrados das diferenças entre as previsões de saída computadas da rede e os valores reais e, quando a soma é pequena, o modelo funciona dentro de limites aceitáveis.

O treinamento começa aleatorizando os parâmetros da rede e finalizando os parâmetros do modelo da rede encontrando o parâmetro que minimiza a função de custo. A maneira de convergir a função de custo é por descida de gradiente, pela qual o grau de impacto de cada mudança de parâmetro no custo/perda é examinado e, em seguida, os parâmetros são ajustados de acordo com esse grau de impacto.

O processo de cálculo do gradiente do parâmetro introduz a retropropagação ou retropropagação, que percorre a rede da camada de saída para a camada de entrada em ordem reversa de acordo com a regra da cadeia. O algoritmo também requer o armazenamento de quaisquer variáveis intermediárias (derivadas parciais) necessárias para calcular o gradiente.

Fatores de Desenvolvimento

Existem três fatores principais que afetam o desempenho dos grandes modelos de linguagem de IA durante o treinamento, nomeadamente o número de parâmetros do modelo, o tamanho do conjunto de dados e a quantidade de computação.

Fonte: Relatório OpenAI, Leis de Escala para Modelos de Linguagem Neural

Isso está de acordo com o desenvolvimento de conjuntos de dados e computadores (potência de computação) na realidade, mas também pode ser visto na tabela abaixo que a potência de computação está crescendo mais rápido do que os dados disponíveis, enquanto a memória é a mais lenta para se desenvolver.

O desenvolvimento de conjunto de dados, memória e poder de computação, Fonte: https://github.com/d2l-ai

Dados

Requisitos de Dados

Diante de um modelo grande, o overfitting tende a ocorrer quando os dados de treinamento são muito pequenos e, em geral, a precisão do modelo mais complexo melhora à medida que a quantidade de dados aumenta. Em relação à necessidade de dados para um modelo grande, pode ser decidido com base na regra do 10, que sugere que a quantidade de dados deve ser 10 vezes o parâmetro, mas alguns algoritmos de aprendizado profundo aplicam 1:1.

Dados rotulados

A aprendizagem supervisionada requer o uso de conjuntos de dados rotulados + em destaque para chegar a resultados válidos.

Fonte: Conjunto de Dados de Categorização de Roupas Fashion-MNIST

Dados sintéticos

Apesar do rápido aumento de dados nas últimas décadas e dos conjuntos de dados de código aberto atualmente disponíveis, incluindo Kaggle, Azure, AWS, banco de dados do Google, etc., quantidades limitadas, escassas e caras de dados estão gradualmente se tornando um gargalo para o desenvolvimento de IA devido a questões de privacidade, aumento de parâmetros de modelo e reprodutibilidade de dados. Diferentes soluções de dados são propostas com o objetivo de aliviar esse problema.

Técnicas de aumento de dados podem ser uma solução eficaz ao fornecer dados insuficientes ao modelo sem adquirir novas amostras, como escalonamento, rotação, reflexão, recorte, tradução, adição de ruído gaussiano, mixup, etc.

Dados sintéticos são outra opção. Dados sintéticos são dados que podem ser gerados artificialmente por simulação de computador ou algoritmos com ou sem um conjunto de dados de referência anterior. Em relação ao desenvolvimento de ferramentas para gerar dados sintéticos, Ian J. Goodfellow inventou a Rede Adversária Generativa (GAN), que é uma arquitetura de aprendizado profundo.

Ele treina duas redes neurais para competir entre si, o que pode gerar novos dados mais realistas a partir de um conjunto de dados de treinamento fornecido. A arquitetura suporta a geração de imagens, preenchimento de informações ausentes, geração de dados de treinamento para outros modelos, geração de modelos 3D com base em dados 2D e muito mais.

Ainda é cedo no desenvolvimento do campo, com a maioria das empresas existentes que trabalham com dados sintéticos sendo fundadas em 2021 ou 2022, e algumas em 2023.

O estado do financiamento para empresas de dados sintéticos. Fonte: https://frontline.vc/blog/dados-sinteticos/

Banco de Dados de Vetores

O processo de treinamento de AI envolve um grande número de operações de matriz, desde a incorporação de palavras, matriz transformadora QKV, até operações softmax, e assim por diante através das operações de matriz, os parâmetros do modelo inteiro também são transportados na matriz.

exemplo de banco de dados de vetor, Fonte : https://x.com/ProfTomYeh/status/1795076707386360227

Recursos de Hardware de Computador

Grandes modelos trazem uma enorme demanda de hardware de computador, que é principalmente categorizada em treinamento e inferência.

Pré-treinamento, ajuste fino e inferência

Pré-treinamento e ajuste fino podem ser divididos ainda sob treinamento. Como mencionado anteriormente, a construção de um modelo de rede requer inicializar os parâmetros aleatoriamente, depois treinar a rede e ajustar continuamente os parâmetros até que a perda da rede atinja uma faixa aceitável. A diferença entre pré-treinamento e ajuste fino é que

o pré-treinamento começa com cada camada de parâmetros a partir da inicialização aleatória, enquanto algumas camadas de ajuste fino podem usar diretamente os parâmetros do modelo previamente treinado como os parâmetros de inicialização para esta tarefa (congelando os parâmetros das camadas anteriores) e atuando em um conjunto de dados específico.

Fonte: https://d2l.ai/chapter_computer-vision/fine-tuning.html

O pré-treinamento e o ajuste fino envolvem mudanças nos parâmetros do modelo, o que resulta, em última análise, em uma otimização do modelo ou dos parâmetros, enquanto a inferência é o cálculo da inferência carregando um modelo após as entradas do usuário e obtendo feedback e resultados de saída.

O pré-treinamento, ajuste fino e inferência são classificados de maior para menor em termos de requisitos de computador. A tabela a seguir compara os requisitos de hardware de computador para treinamento e inferência. Os requisitos de hardware de computador dos dois são significativamente diferentes em termos de potência de computação, memória e comunicação/largura de banda devido às diferenças no processo de computação e nos requisitos de precisão, e ao mesmo tempo existe um Trilema Impossível em potência de computação, memória e comunicação/largura de banda.

As medidas estatísticas nesta tabela são baseadas em um único modelo processando um único token, um único parâmetro. \ FLOPs: operações de ponto flutuante por segundo, o número de cálculos de matriz. \
*DP, TP, PP: paralelismo de dados, paralelismo de tensores, paralelismo de pipeline.

Comparação de hardware de computador entre treinamento e inferência, Fonte: Organizado por HashKey Capital

O processo de treinamento de uma rede neural requer alternância entre propagação para frente e para trás, usando o gradiente fornecido pela propagação para trás para atualizar os parâmetros do modelo. Por outro lado, a inferência requer apenas propagação para frente. Essa diferença se torna um fator influente que diferencia principalmente os requisitos de recursos de hardware de computador para treinamento e inferência.

Em termos de potência de computação, como mostrado na tabela, há uma relação multiplicativa simples entre o número de parâmetros do modelo e o consumo de energia de computação, com o treinamento exigindo 6-8 operações de ponto flutuante e a inferência exigindo 2. Isso se deve à retropropagação envolvida no treinamento, que requer o dobro de energia de computação da propagação direta, e assim o consumo de energia de computação do treinamento é muito maior do que a inferência.

Em termos de memória, a retropropagação usada para o treinamento reutiliza os valores intermediários armazenados na propagação direta para evitar cálculos repetidos. Portanto, o processo de treinamento precisa manter os valores intermediários até que a retropropagação seja concluída. O consumo de memória resultante durante o treinamento contém principalmente parâmetros do modelo, valores de ativação intermediários gerados durante o cálculo direto, gradientes gerados pelo cálculo de retropropagação e estados do otimizador. A fase de inferência não precisa de retropropagação, estados e gradientes do otimizador, etc., e seu uso de consumo de memória é muito menor do que o do treinamento.

Em termos de comunicação/largura de banda, para melhorar o desempenho do treinamento de IA, o treinamento do modelo principal geralmente usa três estratégias paralelas: paralelismo de dados, paralelismo de tensor e paralelismo de pipeline.

  • Data parallel refere-se a replicar múltiplas réplicas de modelo que são executadas em diferentes dispositivos, com cada réplica do modelo atuando em diferentes conjuntos de dados e sincronizando os dados de gradiente durante o ciclo de treinamento.
  • Por outro lado, o paralelismo de pipeline divide as camadas intermediárias ocultas e cada nó de cálculo é responsável por várias dessas camadas transformadoras. Esse método também é conhecido como paralelismo entre camadas.
  • Por outro lado, o paralelismo tensorial divide cada um desses módulos de transformador e também é conhecido como paralelismo intra-camada.

Fonte: OpenAI, https://openai.com/index/techniques-for-training-large-neural-networks/

Para essas três estratégias, é projetado que a frequência de comunicação TP é a maior, o volume de comunicação é o mais alto e está relacionado ao número de tokens, largura do modelo e número de camadas. O volume e a frequência de comunicação do PP são menores do que os da TP e estão relacionados ao número de tokens e à largura do modelo. O volume e a frequência de comunicação do DP são os menores e são independentes dos tokens de entrada.

Trilema Impossível

O gargalo dos recursos de hardware de computador em modelos grandes é principalmente limitado pelo poder de computação, largura de banda/comunicação e memória, e há verificações e equilíbrios entre os três, resultando no problema do Trilema Impossível. Por exemplo, devido aos gargalos de comunicação, o desempenho do cluster não pode ser melhorado simplesmente otimizando o poder de um único computador.

Portanto, embora as arquiteturas paralelas sejam usadas para acelerar o desempenho do cluster, a maioria das arquiteturas paralelas na verdade sacrifica a comunicação ou o armazenamento em prol da potência de computação.

Sacrificar comunicação e armazenamento em troca de poder de computação:

Em PP, se uma GPU for atribuída a cada camada dos transformadores, apesar do aumento de potência computacional em unidades de tempo, os requisitos de comunicação entre as camadas também aumentam, resultando em um aumento do volume de dados e da latência. Além disso, o requisito de armazenamento de estado intermediário para a propagação direta aumenta extremamente rápido.

Sacrificar a comunicação pelo poder de computação:

Em TP, cada transformador é desmontado para computação paralela. Uma vez que o transformador é composto por dois componentes (cabeça de atenção e rede feed-forward), a tarefa pode ser dividida dentro da camada para a cabeça de atenção ou para a rede neural feed-forward. Essa abordagem TP pode aliviar o problema de uma hierarquia PP muito grande devido às GPUs não conseguirem ajustar o modelo. No entanto, essa abordagem ainda possui uma sobrecarga de comunicação séria.

Cripto+AI

Neste artigo, acreditamos que atualmente existem as seguintes principais categorias de IA no campo cripto:

Origem: Organizado pela HashKey Capital

Conforme mencionado anteriormente, os três componentes mais críticos em AI são dados, modelos e poder computacional, que servem como infraestrutura para capacitar a Cripto AI.

A sua combinação na verdade acaba por formar uma rede de computação, com um grande número de middleware aparecendo no processo de computação para ser eficiente e mais alinhado com o espírito cripto. A jusante estão Agentes baseados nesses resultados verificáveis, que podem servir diferentes papéis para diferentes públicos de usuários.

Outro fluxograma pode ser usado para expressar a ecologia básica da Cripto IA da seguinte forma:

Fluxograma ecológico, fonte: organizado pela HashKey Capital

Claro, mecanismos tokenômicos são necessários no espaço cripto para incentivar a coordenação da participação de diferentes players.

Dados

Para conjuntos de dados, é possível escolher entre fontes de dados públicas ou fontes de dados privadas específicas próprias.

Fonte de dados:

  • Grass é o projeto que rastreia fontes de dados em cima da Solana, o fundo é devido ao fato de que muitas empresas bloqueiam rastreamentos de IP de data centers, mas não bloqueiam usuários residenciais, Grass atua como um provedor de serviços descentralizado que incentiva usuários residenciais a contribuírem com sua largura de banda via token.
  • Vana, como DATA DAO, também fornece sua própria solução, onde o criador cria diferentes data dao para diferentes fontes de dados na cadeia e configura diferentes programas de incentivo para os usuários enviarem seus dados. Até agora, foram criados data dao para o reddit (rDAO), onde mais de 154.000 usuários fornecem seus dados pessoais ao rDAO para treinamento de IA.
  • Os dados relevantes são coletados na forma de DePINs, que permitem que os usuários conectem seus veículos à plataforma DIMO por meio de um dispositivo de hardware, por exemplo. Informações básicas sobre esse veículo e dados de padrões de direção mais avançados, etc. serão transmitidos com segurança para a rede DIMO, armazenados on-chain e vinculados ao ID do veículo correspondente (NFT). Outro exemplo é o Hivemapper, que coleta dados de mapa enquanto o usuário está dirigindo.

Plataforma de Dados Sintéticos:

  • Dria é uma plataforma de geração de dados sintéticos (OPStack L2) que incentiva os usuários a gerar/comercializar dados sintéticos de forma descentralizada. Seu armazenamento de dados é feito no Arweave através do HollowDB. Quando os usuários iniciam uma solicitação de geração de dados sintéticos, a Dria aceitará a solicitação e dividirá a tarefa para os nós de computação na rede de dados sintéticos para executar, e após a verificação da rede, os dados sintéticos finais podem ser negociados no mercado de conhecimento.

Outros:

Plataforma de serviço de rotulagem de dados, atribuindo a tarefa de ordem de rotulagem a diferentes trabalhadores, esses trabalhadores podem obter o incentivo de token correspondente após completar a tarefa, como Cripto, Public AI e assim por diante. No entanto, o problema atual é que há mais pessoas fazendo rotulagem de dados do que dados, enquanto as empresas de IA têm fornecedores estáveis de rotulagem de dados para suas necessidades de dados rotulados, devido à existência pegajosa que torna sua vontade de trocar de plataformas descentralizadas fraca. Essas plataformas podem apenas ser capazes de obter a alocação da parte restante do pedido dos fornecedores de rotulagem de dados.

Redes de Computação

Redes de Computação Generalizadas

Redes de computação generalizadas, que se referem a redes que agregam recursos como GPUs e CPUs para serem capazes de fornecer serviços de computação generalizada, o que significa nenhuma distinção entre treinamento e inferência.

  • Akash, um projeto de 2020, atua como um mercado para combinar oferta e demanda computacionais, permitindo que fornecedores de computação licitem pedidos, com as correspondências finais sendo carregadas na blockchain como transações. Um validador separado é responsável por empacotar blocos e realizar validação. Esse processo não envolve como as tarefas de IA são atribuídas, nem valida o processo de computação e resultados, sem distinguir entre treinamento e inferência.
  • io.net, que até junho de 2022 desenvolvia sistemas de negociação quantitativa de nível institucional principalmente para o mercado de ações dos EUA e mercados de criptomoedas, descobriu Ray.io, uma biblioteca Python de código aberto para construir sistemas distribuídos de alto desempenho, ao longo do caminho. io.net utiliza Ray e bibliotecas especializadas para streaming de dados, treinamento, ajuste fino e combina com VPNs de Malha (que simplificam o processo de desenvolvimento e implantação de modelos de IA em grande escala em vastas redes de GPUs) para fornecer serviços de computação.
  • Bittensor, como uma plataforma aberta, permite aos usuários criar sub-redes em sua plataforma, cada uma com seus próprios incentivos exclusivos para motivar outros usuários a participar como mineradores de sub-redes, validadores de sub-redes, mineradores de sub-redes para executar tarefas específicas, e validadores para verificar essas tarefas dos mineradores.
  • Aethir, é uma infraestrutura de computação em nuvem que fornece serviços de alta qualidade para IA e jogos em nuvem. A Aethir se concentra em agregar recursos de GPU de alta qualidade, como o chip H100 da NVIDIA, de data centers, empresas de tecnologia, telcos, grandes estúdios de jogos e empresas de mineração de criptomoedas. A rede consiste em 3 atores principais: Container, Checker e Indexer. Os contêineres, incluindo o Aethir Edge, são onde os recursos de computação são realmente utilizados. O Verificador garante a integridade e o desempenho do Container. Se necessário, o Indexador faz a correspondência entre os usuários finais e os Contêineres apropriados com base nos requisitos do usuário final.

Redes específicas de computação

Pré-treinamento

No espaço Cripto, Gensyn, investido pela a16z, propõe uma rede de computação de treinamento descentralizada.

O processo é que depois que um usuário envia uma tarefa de requisito de treinamento, a plataforma a analisa, avalia a potência de computação necessária e a divide em um número mínimo de trabalhos de ML, momento em que o validador periodicamente pega a tarefa analisada para gerar limites para a comparação das provas de aprendizado downstream.

Uma vez que a tarefa entra na fase de treinamento, é executada pelo Solver, que armazena periodicamente os pesos do modelo e os índices de resposta do conjunto de dados de treinamento, além de gerar as provas de aprendizado, e o verificador também realiza o trabalho computacional reexecutando algumas das provas para realizar cálculos de distância para verificar se correspondem às provas. Os delatores realizam arbitragem com base em um programa de desafio pontual baseado em gráficos para verificar se o trabalho de validação foi realizado corretamente.

Ajuste fino

Aperfeiçoar é mais fácil e menos dispendioso de implementar do que pré-treinar diretamente um modelo grande, simplesmente aperfeiçoando o modelo pré-treinado com um conjunto de dados específico e adaptando o modelo a uma tarefa específica, preservando o modelo original.

Hugging Face pode ser acessado como um provedor de recursos de modelo de linguagem pré-treinado para a plataforma distribuída, o usuário seleciona o modelo a ser ajustado de acordo com os requisitos da tarefa e depois usa as GPUs e outros recursos fornecidos pela rede de computação para o ajuste fino da tarefa, que precisa ser baseado na complexidade da tarefa para determinar o tamanho do conjunto de dados, a complexidade do modelo, e para determinar ainda a necessidade de um nível mais alto de recursos como o A100.

Além do Gensyn, uma plataforma que pode suportar pré-treinamento, a maioria das plataformas de computação também pode suportar ajustes finos.

Inferência

Em comparação com o treinamento (pré-treinamento e ajuste fino), que requer ajuste dos parâmetros do modelo, o processo computacional de inferência envolve apenas a propagação direta e requer menos potência computacional. A maioria das redes de computação descentralizadas atualmente se concentra em serviços de inferência.

  • A rede Nosana é uma plataforma para executar cargas de trabalho de inferência de IA que fornece serviços de computação direcionados ao processo de inferência para os modelos LLama 2 e Stable Diffusion.
  • Ritual.AI, a primeira fase da plataforma é Infernet que é um framework leve. Com ele, os desenvolvedores de contratos inteligentes podem solicitar serviços de inferência fora da cadeia e entregá-los aos contratos inteligentes na cadeia. A segunda fase é a camada de execução, a Ritual Chain, que suporta operações nativas de IA.

Camadas/middleware adicionais

Quando a inferência é realizada, esta etapa já é a etapa de uso do modelo, então o middleware pode ser introduzido no momento certo:

  • Modelo Correspondente: Ao fazer inferências, geralmente é necessário determinar o modelo apropriado de acordo com os requisitos da tarefa.
  • API: Abstrair todas as interfaces unificadas de modelos de código aberto, como Redpill

Contrato inteligente on-chain para recuperar os resultados de cálculos de IA off-chain:

  • Protocolo ORA para fornecer resultados de inferência verificados para contratos inteligentes, por exemplo, o nó opML coleta solicitações opML enviadas da cadeia, executará inferência de IA e depois enviará os resultados para a cadeia e aguardará o período de desafio.

Outra camada de privacidade pode ser adicionada à rede de computação, que inclui principalmente a privacidade de dados e a privacidade do modelo, onde a privacidade dos dados é muito mais importante do que a privacidade do modelo.

  • Atualmente, o protocolo Oasis utiliza Intel TDX e NVIDIA TEEs para fornecer privacidade e verificabilidade para o treinamento de modelos de IA.

Verificação

A maioria das redes de computação constrói diferentes sistemas de validação para garantir que o sistema funcione com precisão, enquanto o link é uma parte que ainda não foi introduzida no campo tradicional de IA.

ZKML

O papel principal da prova ZK são os seguintes 2 pontos:

  • Usado para provar a precisão do modelo sem revelar quaisquer parâmetros
  • Prove que a computação foi feita corretamente e que o modelo + entradas correspondem às saídas: Modulus labs, Giza

A Modulus Labs mostrou que é possível criar provas para modelos de 18 milhões de parâmetros em 60-70 segundos usando o sistema de prova Plonky da Polygon. Para modelos pequenos, é possível usar ZKML neste estágio, mas o custo ainda é significativo:

  • O tempo de prova do ZKML cresce com o aumento dos parâmetros.
  • É muito caro em termos de consumo de memória do provador. O Worldcoin, por exemplo, usa um modelo com 1,8M parâmetros e 50 camadas para distinguir entre 10 bilhões de íris, para os quais provas de inferência podem ser geradas em apenas alguns minutos, mas o consumo de memória dentro do provador é muito alto para qualquer hardware móvel.

Fonte: @ModulusLabs/chapter-5-the-cost-of-intelligence-da26dbf93307"">https://medium.com/@ModulusLabs/chapter-5-the-cost-of-intelligence-da26dbf93307

OPML

Dadas as limitações do ZKML descritas acima, o OPML é uma alternativa. Embora mais fraco em termos de segurança do que o ZKML, seu consumo de memória e tempo de computação da prova são significativamente melhores do que os do ZKML. De acordo com o relatório da ORA, é mostrado que para o mesmo modelo 7B-LLaMA (com um tamanho de modelo de cerca de 26GB), o opML pode ser processado dentro de 32GB de memória, enquanto o consumo de memória dos circuitos no zkML pode estar na ordem de terabytes ou até petabytes.

TEEML

O Ambiente de Execução Confiável fornece segurança em nível de hardware e pode ser uma alternativa ao ZKML e OPML. A prova de TEE é gerada como resultado da computação interna dentro do TEE e seu custo computacional é muito mais baixo do que o da prova zk. Além disso, o tamanho da prova do TEE geralmente é uma constante fixa (comprimento da assinatura) e, portanto, tem a vantagem de uma pegada menor e menor custo de validação on-chain.

Além da verificação, a ETE tem a vantagem de manter os dados confidenciais isolados, garantindo que processos ou cálculos externos não possam acessar ou alterar os dados dentro deles.

Projetos que usam TEE incluem:

  • rede Aizel (fornecendo inferência)
  • Rede Phala (focada na criação de agentes de IA)
  • Protocolo Oasia (treinamento de modelo de IA)
  • Protocolo Marlin (Oyster pode implantar e validar modelos de ML)

Fonte: https://arxiv.org/pdf/2401.17555,Protocolo Marlin

Além disso, o protocolo ORA desenvolveu opp/ai (IA Otimista de Preservação de Privacidade na Blockchain) além de suas próprias validações ZKML e OPML, e não está incluído na tabela de comparação acima.

Camada de Agente

O agente tem a capacidade de analisar as informações recebidas, avaliar as condições ambientais atuais e tomar decisões. A composição do agente é mostrada na figura a seguir, na qual o LLM é o componente central, além disso, é necessário alimentar o prompt apropriado para o LLM e, através da Memória, armazenar dados de curto prazo e dados históricos de longo prazo (dados externos).

Uma vez que tarefas complexas não podem ser concluídas de uma só vez, elas precisam ser divididas em tarefas menores pelo Plano, além disso, o Agente também pode chamar APIs externas para obter informações adicionais, incluindo informações atuais, capacidades de execução de código, acesso a fontes de informação proprietárias, e assim por diante.

Fonte: Uma Pesquisa sobre Agentes Autônomos Baseados em Modelos de Linguagem Grandes

A capacidade de tomada de decisão dos Agentes não teve um avanço certo até o surgimento do Grande Modelo de Linguagem LLM nos últimos anos. Um relatório compilou o número de artigos publicados sobre Agentes de 2021 a 2023, conforme mostrado na figura abaixo, na realidade existem apenas cerca de uma dúzia de artigos de pesquisa em 2021, mas há centenas de artigos publicados sobre eles em 2023. O artigo categorizou os Agentes em 7 categorias.

Fonte: Uma Pesquisa sobre Agentes Autônomos Baseados em Modelos de Linguagem Grande

No web3, os cenários em que os Agentes existem ainda são limitados em comparação com o mundo web2 e incluem atualmente compensação automatizada, construção de componentes de código (escrevendo contratos inteligentes, escrevendo circuitos zk), controle de risco em tempo real e execução de estratégias como arbitragem e agricultura de rendimento.

Criação de agentes e plataformas de negociação

  • Theoriq (ChainML) introduziu o conceito de Camada Base de Agente, que permite aos desenvolvedores anotar Agentes na forma de NFT e criar seus próprios Agentes, bem como construir um Coletivo de Agentes combinando Agentes para cumprir requisitos complexos. Esse processo avalia o desempenho e a ligação de diferentes Agentes por meio de prova de atribuição e prova de colaboração.
  • A Spectral Labs possui dois produtos principais, o Spectral Syntax, uma plataforma que permite aos usuários criar Agents na cadeia, e o Spectral Nova, um serviço de inferência que suporta solicitações de serviços de inferência. A criação de um Agente no Spectral Syntax utiliza o serviço de inferência do Spectral Nova, e essa inferência é garantida por prova ZK para garantir que funcione. Ao mesmo tempo, eles lançarão o Inferchain para permitir a comunicação de Agente para Agente.
  • Autonolas suporta a construção de serviços compostos por vários Agentes, o que permite ao Proprietário do Serviço criar um serviço e registrar o serviço correspondente no registro de serviços para iniciar o fluxo de trabalho, solicitar ao desenvolvedor que forneça os componentes do Agente e assim por diante. Os desenvolvedores podem desenvolver o Agente, componentes e outro código armazenado offchain, criar o NFT correspondente onchain, e consultar o hash IPFS dos metadados, e então consultar o código subjacente referenciando ainda mais o hash IPFS. Os serviços são tipicamente executados por um conjunto de Operadores, cada um executando pelo menos uma instância do Agente. Além disso, o Autonolas alcança consenso dentro do serviço para seus agentes por meio de um Dispositivo de Consenso que estabelece um acordo entre os agentes dentro do serviço.

Plataforma de Monitoramento de Agentes

  • AgentOpsAI é um parceiro da sentient, fornecendo serviços de monitoramento de agentes (eventos de log, chamadas, erros de agente, etc.), atualmente uma plataforma centralizada, sem token envolvido.

Fluxo de trabalho

Com base em diferentes Agentes, pode-se combinar/abstrair/criar um aplicativo específico, ao mesmo tempo, existem algumas plataformas de coordenação disponíveis para os usuários escolherem que tipo de Agentes usar para construir um tipo específico de aplicativo. Mas a maioria deles está limitada ao desenvolvimento de Agentes.

Aplicação

Desenvolvedores de Projeto

Alguns desenvolvedores usarão alguma IA para ajudar suas plataformas a serem mais inteligentes, por exemplo, em projetos de segurança, o aprendizado de máquina é usado para distinguir vulnerabilidades de ataque; protocolos DeFi usam IA para construir ferramentas de monitoramento em tempo real; e plataformas de análise de dados também usam IA para ajudar na limpeza e análise de dados.

Usuário

Janela de Perguntas e Respostas/Análise

  • Com Kaito.ai, os usuários podem usar o Q&A para obter informações sobre o sentimento da comunidade de um projeto, preço e movimentos da equipe principal.
  • 0xScope, o uso subjacente de grafos de conhecimento para integrar os dados na cadeia, ou seja, as características comportamentais do usuário, para fornecer serviços de análise de dados para os usuários, lançou a janela de perguntas e respostas do Scopechat a tempo para esta onda de IA.

Loja de aplicativos de IA

  • Myshell propõe uma camada de consumidor e cria a AI APP Store, que fornece diferentes componentes de IA e três modos de criação para facilitar os usuários a criarem diferentes aplicações de IA. Os widgets são divididos em componentes básicos e compostos. Os componentes básicos permitem que os usuários criem Prompt, Voz, Avatar e outros ativos em aplicativos de IA, enquanto os componentes compostos permitem que componentes personalizados sejam construídos usando uma combinação de vários modelos/componentes básicos. Os modos de criação incluem, clássico, dev e no-code, três modos para desenvolvedores e usuários com habilidades e necessidades diferentes.

Resumo

Neste artigo, gostaríamos de destacar os seguintes 3 pontos:

  • GPUAI

Em cripto, uma série de redes de computação surgem inevitavelmente fazer os usuários sentirem que GPU é IA, mas como analisado na seção anterior, há um trilema impossível de redes de computação, ou seja, poder de computação, largura de banda/comunicação e memória, bem como três tipos de estratégias paralelas usadas no treinamento de modelos, como paralelo de dados, tensor paralelo, e pipeline paralelo, todos apontam para os freios e contrapesos que são impostos na configuração da estrutura de rede de computação.

  • Mesmo Modelo & mesma DadosMesmo Resultado

A razão pela qual o mesmo modelo e os mesmos dados não necessariamente produzem o mesmo resultado é o uso de cálculos de ponto flutuante. Essa diferença nos cálculos também tem um impacto na construção da rede de computação.

  • Mais Agentes de IA

Os Agentes de IA começaram a mostrar mais utilidade apenas nos últimos anos, e esperamos que mais Agentes apareçam no mercado. Mas como os Agentes trabalham em cripto ou como encontrar os incentivos de token certos permanece um desafio.

声明:

  1. Este artigo foi republicado de[médio], o título original "AI into Cripto", os direitos autorais pertencem ao autor original[HashKey Capital ],如对转载有异议,请联系Equipe Gate Learn,a equipe lidará com isso o mais rápido possível de acordo com o processo relevante.

  2. Isenção de responsabilidade: As opiniões expressas neste artigo representam apenas a opinião pessoal do autor e não constituem qualquer tipo de conselho de investimento.

  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.ionão é permitida a cópia, distribuição ou plágio de artigos traduzidos.

IA em Cripto

intermediário9/19/2024, 2:23:31 AM
O lançamento do ChatGPT em novembro de 2022 abriu os olhos de vários players da indústria para o grande modelo de linguagem de IA. Essa dinâmica frenética permeou o espaço Cripto, e este artigo tem como objetivo apresentar o desenvolvimento da IA, seu status atual e a indústria que surgiu da combinação de IA+Cripto.

O lançamento do ChatGPT em novembro de 2022 abriu os olhos de vários players da indústria para o grande modelo de linguagem de IA. Essa dinâmica frenética permeou o espaço Cripto, e este artigo tem como objetivo introduzir o desenvolvimento da IA, seu status atual e a indústria que surgiu a partir da combinação de IA+Crypto.

O desenvolvimento da IA e seu estado atual

Tipos e Arquiteturas

A aprendizagem de máquina (ML) é uma tecnologia com capacidades de aprendizagem empírica, que aprende a discriminar animais, tradução de idiomas e outras tarefas específicas aprendendo a partir de grandes conjuntos de dados. A aprendizagem de máquina pertence à forma mais prática de realizar inteligência artificial no presente, de acordo com se os dados aprendidos são rotulados e as características podem ser divididas em aprendizagem supervisionada e aprendizagem não supervisionada.

Existem muitos tipos de modelos que podem realizar aprendizado supervisionado, incluindo modelos baseados em árvores, modelos de gráficos e as redes neurais recentemente surgidas. Com o rápido desenvolvimento da capacidade de computação e dados, o aprendizado profundo foi ainda mais desenvolvido com base na arquitetura das redes neurais. As arquiteturas atuais de aprendizado profundo comumente incluem, mas não se limitam a, CNNs, RNNs e mecanismos de atenção.

Classificação de aprendizado de máquina, fonte: Capital HashKey

Diferentes redes de aprendizado profundo têm a arquitetura básica de camada de entrada, camada oculta e camada de saída, a camada de entrada geralmente é texto, vídeo, áudio e outros dados após ser processada a "tokenização/incorporação". A camada oculta tem um design diferente (forma do modelo) dependendo do conjunto de dados e do propósito da tarefa, conforme mostrado na tabela.

Tipos de Redes Neurais, Fonte: Organizado por Capital HashKey

Trinta Anos de Desenvolvimento de Redes Neurais

30 anos de desenvolvimento de redes neurais, fonte: organizado por HashKey Capital

O treinamento de redes neurais teve origem no meio da década de 1980, quando Jordan treinou uma rede neural para aprender padrões sequenciais em seu artigo de 1986.Ordem Serial: Uma Abordagem de Processamento Distribuído Paralelo. A pequena rede tinha apenas alguns neurônios.

Na década de 1990, Jeffrey Ehrman expandiu a rede neural para uma rede de 50 neurônios com a descoberta de que a rede agrupa espacialmente palavras com base no significado. Por exemplo, separou substantivos inanimados e animados, e dentro dessas duas categorias, objetos animados foram subdivididos em categorias humanas e não humanas, e inanimados foram categorizados como quebráveis e comestíveis. Isso indica que a rede tem a capacidade de aprender explicações hierárquicas.

Ele observou ainda que as palavras podem ser representadas como pontos em um espaço de alta dimensão e, em seguida, uma sequência de palavras ou frases pode ser vista como um caminho. Esta grande descoberta permite que conjuntos de dados textuais sejam digitalizados, vetorizados e processados por computadores.

Origem: http://3b1b.co/neural-networks

Em 2011, os pesquisadores do Confluence treinaram redes maiores envolvendo milhares de neurônios e milhões de conexões, e foi encontrado um gargalo no estudo na capacidade da rede de manter um contexto coerente ao longo de sequências longas.

Em 2017, a OpenAI construiu sobre o trabalho de Kathy treinando em 82 milhões de avaliações da Amazon, nas quais foram descobertos neurônios emocionais. Tais neurônios categorizaram perfeitamente as emoções do texto.

Origem: Aprendendo a Gerar Avaliações e Descobrir Sentimentos

Em relação às limitações do tamanho do contexto, este artigo 2017 Attention Is All You Need apresenta uma solução. O artigo cria uma rede de camadas dinâmicas que adapta os pesos de conexão com base no contexto da rede. Funciona permitindo que as palavras na entrada visualizem, comparem outras palavras e encontrem as mais relevantes. Quanto mais próximas essas palavras estiverem em conceito, mais próximas estarão no espaço e poderão ter pesos de conexão mais altos. No entanto, o artigo focou apenas no problema da tradução.

Assim, os pesquisadores da OpenAI tentaram uma arquitetura de transformador mais poderosa e lançaram o GPT-3 em 2020, o que atraiu atenção generalizada de indústrias ao redor do mundo, desta vez com a rede atingindo 175B parâmetros, 96 camadas e uma janela de contexto de 1.000 palavras.

O que é uma rede neural?

Tomemos a seguinte imagem digital de 28x28 pixels como exemplo, os neurônios correspondem a cada pixel da imagem de entrada de 28x28, totalizando 784 neurônios, os números nos neurônios são os valores de ativação, que variam de 0 a 1.

Imagem digital de 28x28 pixels, Fonte: http://3b1b.co/neural-networks

Esses 784 neurônios formam a camada de entrada da rede. A camada final é a camada de saída, que contém dez neurônios representando os números 0–9, novamente com valores de ativação variando de 0–1. A camada intermediária é a camada oculta, onde o valor de ativação da camada anterior determina o valor de ativação da próxima camada à medida que a rede neural opera.

A profundidade do aprendizado profundo está no fato de que o modelo aprende muitas “camadas” de transformações, cada uma com uma representação diferente. Como mostrado na figura abaixo, por exemplo, em 9, diferentes camadas podem reconhecer diferentes características. Quanto mais próxima a camada de entrada estiver do nível mais baixo de detalhes dos dados, mais próxima a camada de saída estará dos conceitos mais específicos que podem ser usados para diferenciar.

Fonte: http://3b1b.co/neural-networks

Conforme o modelo fica maior, as camadas ocultas no meio envolvem centenas de bilhões de pesos por camada, e são esses pesos e vieses que realmente determinam o que a rede está fazendo. O processo de aprendizado de máquina é o processo de encontrar os parâmetros corretos, que são pesos e vieses.

A arquitetura do transformador usada no GPT, um modelo de linguagem grande, possui uma camada intermediária oculta composta por 96 camadas de módulos decodificadores, dos quais GPT1, GPT2 e GPT3 possuem 12, 48 e 96 camadas, respectivamente. O decodificador, por sua vez, contém componentes de rede neural de atenção e feedback direto.

Abordagem de treinamento

O processo de computação ou aprendizado envolve a definição de uma função de custo (ou função de perda) que soma os quadrados das diferenças entre as previsões de saída computadas da rede e os valores reais e, quando a soma é pequena, o modelo funciona dentro de limites aceitáveis.

O treinamento começa aleatorizando os parâmetros da rede e finalizando os parâmetros do modelo da rede encontrando o parâmetro que minimiza a função de custo. A maneira de convergir a função de custo é por descida de gradiente, pela qual o grau de impacto de cada mudança de parâmetro no custo/perda é examinado e, em seguida, os parâmetros são ajustados de acordo com esse grau de impacto.

O processo de cálculo do gradiente do parâmetro introduz a retropropagação ou retropropagação, que percorre a rede da camada de saída para a camada de entrada em ordem reversa de acordo com a regra da cadeia. O algoritmo também requer o armazenamento de quaisquer variáveis intermediárias (derivadas parciais) necessárias para calcular o gradiente.

Fatores de Desenvolvimento

Existem três fatores principais que afetam o desempenho dos grandes modelos de linguagem de IA durante o treinamento, nomeadamente o número de parâmetros do modelo, o tamanho do conjunto de dados e a quantidade de computação.

Fonte: Relatório OpenAI, Leis de Escala para Modelos de Linguagem Neural

Isso está de acordo com o desenvolvimento de conjuntos de dados e computadores (potência de computação) na realidade, mas também pode ser visto na tabela abaixo que a potência de computação está crescendo mais rápido do que os dados disponíveis, enquanto a memória é a mais lenta para se desenvolver.

O desenvolvimento de conjunto de dados, memória e poder de computação, Fonte: https://github.com/d2l-ai

Dados

Requisitos de Dados

Diante de um modelo grande, o overfitting tende a ocorrer quando os dados de treinamento são muito pequenos e, em geral, a precisão do modelo mais complexo melhora à medida que a quantidade de dados aumenta. Em relação à necessidade de dados para um modelo grande, pode ser decidido com base na regra do 10, que sugere que a quantidade de dados deve ser 10 vezes o parâmetro, mas alguns algoritmos de aprendizado profundo aplicam 1:1.

Dados rotulados

A aprendizagem supervisionada requer o uso de conjuntos de dados rotulados + em destaque para chegar a resultados válidos.

Fonte: Conjunto de Dados de Categorização de Roupas Fashion-MNIST

Dados sintéticos

Apesar do rápido aumento de dados nas últimas décadas e dos conjuntos de dados de código aberto atualmente disponíveis, incluindo Kaggle, Azure, AWS, banco de dados do Google, etc., quantidades limitadas, escassas e caras de dados estão gradualmente se tornando um gargalo para o desenvolvimento de IA devido a questões de privacidade, aumento de parâmetros de modelo e reprodutibilidade de dados. Diferentes soluções de dados são propostas com o objetivo de aliviar esse problema.

Técnicas de aumento de dados podem ser uma solução eficaz ao fornecer dados insuficientes ao modelo sem adquirir novas amostras, como escalonamento, rotação, reflexão, recorte, tradução, adição de ruído gaussiano, mixup, etc.

Dados sintéticos são outra opção. Dados sintéticos são dados que podem ser gerados artificialmente por simulação de computador ou algoritmos com ou sem um conjunto de dados de referência anterior. Em relação ao desenvolvimento de ferramentas para gerar dados sintéticos, Ian J. Goodfellow inventou a Rede Adversária Generativa (GAN), que é uma arquitetura de aprendizado profundo.

Ele treina duas redes neurais para competir entre si, o que pode gerar novos dados mais realistas a partir de um conjunto de dados de treinamento fornecido. A arquitetura suporta a geração de imagens, preenchimento de informações ausentes, geração de dados de treinamento para outros modelos, geração de modelos 3D com base em dados 2D e muito mais.

Ainda é cedo no desenvolvimento do campo, com a maioria das empresas existentes que trabalham com dados sintéticos sendo fundadas em 2021 ou 2022, e algumas em 2023.

O estado do financiamento para empresas de dados sintéticos. Fonte: https://frontline.vc/blog/dados-sinteticos/

Banco de Dados de Vetores

O processo de treinamento de AI envolve um grande número de operações de matriz, desde a incorporação de palavras, matriz transformadora QKV, até operações softmax, e assim por diante através das operações de matriz, os parâmetros do modelo inteiro também são transportados na matriz.

exemplo de banco de dados de vetor, Fonte : https://x.com/ProfTomYeh/status/1795076707386360227

Recursos de Hardware de Computador

Grandes modelos trazem uma enorme demanda de hardware de computador, que é principalmente categorizada em treinamento e inferência.

Pré-treinamento, ajuste fino e inferência

Pré-treinamento e ajuste fino podem ser divididos ainda sob treinamento. Como mencionado anteriormente, a construção de um modelo de rede requer inicializar os parâmetros aleatoriamente, depois treinar a rede e ajustar continuamente os parâmetros até que a perda da rede atinja uma faixa aceitável. A diferença entre pré-treinamento e ajuste fino é que

o pré-treinamento começa com cada camada de parâmetros a partir da inicialização aleatória, enquanto algumas camadas de ajuste fino podem usar diretamente os parâmetros do modelo previamente treinado como os parâmetros de inicialização para esta tarefa (congelando os parâmetros das camadas anteriores) e atuando em um conjunto de dados específico.

Fonte: https://d2l.ai/chapter_computer-vision/fine-tuning.html

O pré-treinamento e o ajuste fino envolvem mudanças nos parâmetros do modelo, o que resulta, em última análise, em uma otimização do modelo ou dos parâmetros, enquanto a inferência é o cálculo da inferência carregando um modelo após as entradas do usuário e obtendo feedback e resultados de saída.

O pré-treinamento, ajuste fino e inferência são classificados de maior para menor em termos de requisitos de computador. A tabela a seguir compara os requisitos de hardware de computador para treinamento e inferência. Os requisitos de hardware de computador dos dois são significativamente diferentes em termos de potência de computação, memória e comunicação/largura de banda devido às diferenças no processo de computação e nos requisitos de precisão, e ao mesmo tempo existe um Trilema Impossível em potência de computação, memória e comunicação/largura de banda.

As medidas estatísticas nesta tabela são baseadas em um único modelo processando um único token, um único parâmetro. \ FLOPs: operações de ponto flutuante por segundo, o número de cálculos de matriz. \
*DP, TP, PP: paralelismo de dados, paralelismo de tensores, paralelismo de pipeline.

Comparação de hardware de computador entre treinamento e inferência, Fonte: Organizado por HashKey Capital

O processo de treinamento de uma rede neural requer alternância entre propagação para frente e para trás, usando o gradiente fornecido pela propagação para trás para atualizar os parâmetros do modelo. Por outro lado, a inferência requer apenas propagação para frente. Essa diferença se torna um fator influente que diferencia principalmente os requisitos de recursos de hardware de computador para treinamento e inferência.

Em termos de potência de computação, como mostrado na tabela, há uma relação multiplicativa simples entre o número de parâmetros do modelo e o consumo de energia de computação, com o treinamento exigindo 6-8 operações de ponto flutuante e a inferência exigindo 2. Isso se deve à retropropagação envolvida no treinamento, que requer o dobro de energia de computação da propagação direta, e assim o consumo de energia de computação do treinamento é muito maior do que a inferência.

Em termos de memória, a retropropagação usada para o treinamento reutiliza os valores intermediários armazenados na propagação direta para evitar cálculos repetidos. Portanto, o processo de treinamento precisa manter os valores intermediários até que a retropropagação seja concluída. O consumo de memória resultante durante o treinamento contém principalmente parâmetros do modelo, valores de ativação intermediários gerados durante o cálculo direto, gradientes gerados pelo cálculo de retropropagação e estados do otimizador. A fase de inferência não precisa de retropropagação, estados e gradientes do otimizador, etc., e seu uso de consumo de memória é muito menor do que o do treinamento.

Em termos de comunicação/largura de banda, para melhorar o desempenho do treinamento de IA, o treinamento do modelo principal geralmente usa três estratégias paralelas: paralelismo de dados, paralelismo de tensor e paralelismo de pipeline.

  • Data parallel refere-se a replicar múltiplas réplicas de modelo que são executadas em diferentes dispositivos, com cada réplica do modelo atuando em diferentes conjuntos de dados e sincronizando os dados de gradiente durante o ciclo de treinamento.
  • Por outro lado, o paralelismo de pipeline divide as camadas intermediárias ocultas e cada nó de cálculo é responsável por várias dessas camadas transformadoras. Esse método também é conhecido como paralelismo entre camadas.
  • Por outro lado, o paralelismo tensorial divide cada um desses módulos de transformador e também é conhecido como paralelismo intra-camada.

Fonte: OpenAI, https://openai.com/index/techniques-for-training-large-neural-networks/

Para essas três estratégias, é projetado que a frequência de comunicação TP é a maior, o volume de comunicação é o mais alto e está relacionado ao número de tokens, largura do modelo e número de camadas. O volume e a frequência de comunicação do PP são menores do que os da TP e estão relacionados ao número de tokens e à largura do modelo. O volume e a frequência de comunicação do DP são os menores e são independentes dos tokens de entrada.

Trilema Impossível

O gargalo dos recursos de hardware de computador em modelos grandes é principalmente limitado pelo poder de computação, largura de banda/comunicação e memória, e há verificações e equilíbrios entre os três, resultando no problema do Trilema Impossível. Por exemplo, devido aos gargalos de comunicação, o desempenho do cluster não pode ser melhorado simplesmente otimizando o poder de um único computador.

Portanto, embora as arquiteturas paralelas sejam usadas para acelerar o desempenho do cluster, a maioria das arquiteturas paralelas na verdade sacrifica a comunicação ou o armazenamento em prol da potência de computação.

Sacrificar comunicação e armazenamento em troca de poder de computação:

Em PP, se uma GPU for atribuída a cada camada dos transformadores, apesar do aumento de potência computacional em unidades de tempo, os requisitos de comunicação entre as camadas também aumentam, resultando em um aumento do volume de dados e da latência. Além disso, o requisito de armazenamento de estado intermediário para a propagação direta aumenta extremamente rápido.

Sacrificar a comunicação pelo poder de computação:

Em TP, cada transformador é desmontado para computação paralela. Uma vez que o transformador é composto por dois componentes (cabeça de atenção e rede feed-forward), a tarefa pode ser dividida dentro da camada para a cabeça de atenção ou para a rede neural feed-forward. Essa abordagem TP pode aliviar o problema de uma hierarquia PP muito grande devido às GPUs não conseguirem ajustar o modelo. No entanto, essa abordagem ainda possui uma sobrecarga de comunicação séria.

Cripto+AI

Neste artigo, acreditamos que atualmente existem as seguintes principais categorias de IA no campo cripto:

Origem: Organizado pela HashKey Capital

Conforme mencionado anteriormente, os três componentes mais críticos em AI são dados, modelos e poder computacional, que servem como infraestrutura para capacitar a Cripto AI.

A sua combinação na verdade acaba por formar uma rede de computação, com um grande número de middleware aparecendo no processo de computação para ser eficiente e mais alinhado com o espírito cripto. A jusante estão Agentes baseados nesses resultados verificáveis, que podem servir diferentes papéis para diferentes públicos de usuários.

Outro fluxograma pode ser usado para expressar a ecologia básica da Cripto IA da seguinte forma:

Fluxograma ecológico, fonte: organizado pela HashKey Capital

Claro, mecanismos tokenômicos são necessários no espaço cripto para incentivar a coordenação da participação de diferentes players.

Dados

Para conjuntos de dados, é possível escolher entre fontes de dados públicas ou fontes de dados privadas específicas próprias.

Fonte de dados:

  • Grass é o projeto que rastreia fontes de dados em cima da Solana, o fundo é devido ao fato de que muitas empresas bloqueiam rastreamentos de IP de data centers, mas não bloqueiam usuários residenciais, Grass atua como um provedor de serviços descentralizado que incentiva usuários residenciais a contribuírem com sua largura de banda via token.
  • Vana, como DATA DAO, também fornece sua própria solução, onde o criador cria diferentes data dao para diferentes fontes de dados na cadeia e configura diferentes programas de incentivo para os usuários enviarem seus dados. Até agora, foram criados data dao para o reddit (rDAO), onde mais de 154.000 usuários fornecem seus dados pessoais ao rDAO para treinamento de IA.
  • Os dados relevantes são coletados na forma de DePINs, que permitem que os usuários conectem seus veículos à plataforma DIMO por meio de um dispositivo de hardware, por exemplo. Informações básicas sobre esse veículo e dados de padrões de direção mais avançados, etc. serão transmitidos com segurança para a rede DIMO, armazenados on-chain e vinculados ao ID do veículo correspondente (NFT). Outro exemplo é o Hivemapper, que coleta dados de mapa enquanto o usuário está dirigindo.

Plataforma de Dados Sintéticos:

  • Dria é uma plataforma de geração de dados sintéticos (OPStack L2) que incentiva os usuários a gerar/comercializar dados sintéticos de forma descentralizada. Seu armazenamento de dados é feito no Arweave através do HollowDB. Quando os usuários iniciam uma solicitação de geração de dados sintéticos, a Dria aceitará a solicitação e dividirá a tarefa para os nós de computação na rede de dados sintéticos para executar, e após a verificação da rede, os dados sintéticos finais podem ser negociados no mercado de conhecimento.

Outros:

Plataforma de serviço de rotulagem de dados, atribuindo a tarefa de ordem de rotulagem a diferentes trabalhadores, esses trabalhadores podem obter o incentivo de token correspondente após completar a tarefa, como Cripto, Public AI e assim por diante. No entanto, o problema atual é que há mais pessoas fazendo rotulagem de dados do que dados, enquanto as empresas de IA têm fornecedores estáveis de rotulagem de dados para suas necessidades de dados rotulados, devido à existência pegajosa que torna sua vontade de trocar de plataformas descentralizadas fraca. Essas plataformas podem apenas ser capazes de obter a alocação da parte restante do pedido dos fornecedores de rotulagem de dados.

Redes de Computação

Redes de Computação Generalizadas

Redes de computação generalizadas, que se referem a redes que agregam recursos como GPUs e CPUs para serem capazes de fornecer serviços de computação generalizada, o que significa nenhuma distinção entre treinamento e inferência.

  • Akash, um projeto de 2020, atua como um mercado para combinar oferta e demanda computacionais, permitindo que fornecedores de computação licitem pedidos, com as correspondências finais sendo carregadas na blockchain como transações. Um validador separado é responsável por empacotar blocos e realizar validação. Esse processo não envolve como as tarefas de IA são atribuídas, nem valida o processo de computação e resultados, sem distinguir entre treinamento e inferência.
  • io.net, que até junho de 2022 desenvolvia sistemas de negociação quantitativa de nível institucional principalmente para o mercado de ações dos EUA e mercados de criptomoedas, descobriu Ray.io, uma biblioteca Python de código aberto para construir sistemas distribuídos de alto desempenho, ao longo do caminho. io.net utiliza Ray e bibliotecas especializadas para streaming de dados, treinamento, ajuste fino e combina com VPNs de Malha (que simplificam o processo de desenvolvimento e implantação de modelos de IA em grande escala em vastas redes de GPUs) para fornecer serviços de computação.
  • Bittensor, como uma plataforma aberta, permite aos usuários criar sub-redes em sua plataforma, cada uma com seus próprios incentivos exclusivos para motivar outros usuários a participar como mineradores de sub-redes, validadores de sub-redes, mineradores de sub-redes para executar tarefas específicas, e validadores para verificar essas tarefas dos mineradores.
  • Aethir, é uma infraestrutura de computação em nuvem que fornece serviços de alta qualidade para IA e jogos em nuvem. A Aethir se concentra em agregar recursos de GPU de alta qualidade, como o chip H100 da NVIDIA, de data centers, empresas de tecnologia, telcos, grandes estúdios de jogos e empresas de mineração de criptomoedas. A rede consiste em 3 atores principais: Container, Checker e Indexer. Os contêineres, incluindo o Aethir Edge, são onde os recursos de computação são realmente utilizados. O Verificador garante a integridade e o desempenho do Container. Se necessário, o Indexador faz a correspondência entre os usuários finais e os Contêineres apropriados com base nos requisitos do usuário final.

Redes específicas de computação

Pré-treinamento

No espaço Cripto, Gensyn, investido pela a16z, propõe uma rede de computação de treinamento descentralizada.

O processo é que depois que um usuário envia uma tarefa de requisito de treinamento, a plataforma a analisa, avalia a potência de computação necessária e a divide em um número mínimo de trabalhos de ML, momento em que o validador periodicamente pega a tarefa analisada para gerar limites para a comparação das provas de aprendizado downstream.

Uma vez que a tarefa entra na fase de treinamento, é executada pelo Solver, que armazena periodicamente os pesos do modelo e os índices de resposta do conjunto de dados de treinamento, além de gerar as provas de aprendizado, e o verificador também realiza o trabalho computacional reexecutando algumas das provas para realizar cálculos de distância para verificar se correspondem às provas. Os delatores realizam arbitragem com base em um programa de desafio pontual baseado em gráficos para verificar se o trabalho de validação foi realizado corretamente.

Ajuste fino

Aperfeiçoar é mais fácil e menos dispendioso de implementar do que pré-treinar diretamente um modelo grande, simplesmente aperfeiçoando o modelo pré-treinado com um conjunto de dados específico e adaptando o modelo a uma tarefa específica, preservando o modelo original.

Hugging Face pode ser acessado como um provedor de recursos de modelo de linguagem pré-treinado para a plataforma distribuída, o usuário seleciona o modelo a ser ajustado de acordo com os requisitos da tarefa e depois usa as GPUs e outros recursos fornecidos pela rede de computação para o ajuste fino da tarefa, que precisa ser baseado na complexidade da tarefa para determinar o tamanho do conjunto de dados, a complexidade do modelo, e para determinar ainda a necessidade de um nível mais alto de recursos como o A100.

Além do Gensyn, uma plataforma que pode suportar pré-treinamento, a maioria das plataformas de computação também pode suportar ajustes finos.

Inferência

Em comparação com o treinamento (pré-treinamento e ajuste fino), que requer ajuste dos parâmetros do modelo, o processo computacional de inferência envolve apenas a propagação direta e requer menos potência computacional. A maioria das redes de computação descentralizadas atualmente se concentra em serviços de inferência.

  • A rede Nosana é uma plataforma para executar cargas de trabalho de inferência de IA que fornece serviços de computação direcionados ao processo de inferência para os modelos LLama 2 e Stable Diffusion.
  • Ritual.AI, a primeira fase da plataforma é Infernet que é um framework leve. Com ele, os desenvolvedores de contratos inteligentes podem solicitar serviços de inferência fora da cadeia e entregá-los aos contratos inteligentes na cadeia. A segunda fase é a camada de execução, a Ritual Chain, que suporta operações nativas de IA.

Camadas/middleware adicionais

Quando a inferência é realizada, esta etapa já é a etapa de uso do modelo, então o middleware pode ser introduzido no momento certo:

  • Modelo Correspondente: Ao fazer inferências, geralmente é necessário determinar o modelo apropriado de acordo com os requisitos da tarefa.
  • API: Abstrair todas as interfaces unificadas de modelos de código aberto, como Redpill

Contrato inteligente on-chain para recuperar os resultados de cálculos de IA off-chain:

  • Protocolo ORA para fornecer resultados de inferência verificados para contratos inteligentes, por exemplo, o nó opML coleta solicitações opML enviadas da cadeia, executará inferência de IA e depois enviará os resultados para a cadeia e aguardará o período de desafio.

Outra camada de privacidade pode ser adicionada à rede de computação, que inclui principalmente a privacidade de dados e a privacidade do modelo, onde a privacidade dos dados é muito mais importante do que a privacidade do modelo.

  • Atualmente, o protocolo Oasis utiliza Intel TDX e NVIDIA TEEs para fornecer privacidade e verificabilidade para o treinamento de modelos de IA.

Verificação

A maioria das redes de computação constrói diferentes sistemas de validação para garantir que o sistema funcione com precisão, enquanto o link é uma parte que ainda não foi introduzida no campo tradicional de IA.

ZKML

O papel principal da prova ZK são os seguintes 2 pontos:

  • Usado para provar a precisão do modelo sem revelar quaisquer parâmetros
  • Prove que a computação foi feita corretamente e que o modelo + entradas correspondem às saídas: Modulus labs, Giza

A Modulus Labs mostrou que é possível criar provas para modelos de 18 milhões de parâmetros em 60-70 segundos usando o sistema de prova Plonky da Polygon. Para modelos pequenos, é possível usar ZKML neste estágio, mas o custo ainda é significativo:

  • O tempo de prova do ZKML cresce com o aumento dos parâmetros.
  • É muito caro em termos de consumo de memória do provador. O Worldcoin, por exemplo, usa um modelo com 1,8M parâmetros e 50 camadas para distinguir entre 10 bilhões de íris, para os quais provas de inferência podem ser geradas em apenas alguns minutos, mas o consumo de memória dentro do provador é muito alto para qualquer hardware móvel.

Fonte: @ModulusLabs/chapter-5-the-cost-of-intelligence-da26dbf93307"">https://medium.com/@ModulusLabs/chapter-5-the-cost-of-intelligence-da26dbf93307

OPML

Dadas as limitações do ZKML descritas acima, o OPML é uma alternativa. Embora mais fraco em termos de segurança do que o ZKML, seu consumo de memória e tempo de computação da prova são significativamente melhores do que os do ZKML. De acordo com o relatório da ORA, é mostrado que para o mesmo modelo 7B-LLaMA (com um tamanho de modelo de cerca de 26GB), o opML pode ser processado dentro de 32GB de memória, enquanto o consumo de memória dos circuitos no zkML pode estar na ordem de terabytes ou até petabytes.

TEEML

O Ambiente de Execução Confiável fornece segurança em nível de hardware e pode ser uma alternativa ao ZKML e OPML. A prova de TEE é gerada como resultado da computação interna dentro do TEE e seu custo computacional é muito mais baixo do que o da prova zk. Além disso, o tamanho da prova do TEE geralmente é uma constante fixa (comprimento da assinatura) e, portanto, tem a vantagem de uma pegada menor e menor custo de validação on-chain.

Além da verificação, a ETE tem a vantagem de manter os dados confidenciais isolados, garantindo que processos ou cálculos externos não possam acessar ou alterar os dados dentro deles.

Projetos que usam TEE incluem:

  • rede Aizel (fornecendo inferência)
  • Rede Phala (focada na criação de agentes de IA)
  • Protocolo Oasia (treinamento de modelo de IA)
  • Protocolo Marlin (Oyster pode implantar e validar modelos de ML)

Fonte: https://arxiv.org/pdf/2401.17555,Protocolo Marlin

Além disso, o protocolo ORA desenvolveu opp/ai (IA Otimista de Preservação de Privacidade na Blockchain) além de suas próprias validações ZKML e OPML, e não está incluído na tabela de comparação acima.

Camada de Agente

O agente tem a capacidade de analisar as informações recebidas, avaliar as condições ambientais atuais e tomar decisões. A composição do agente é mostrada na figura a seguir, na qual o LLM é o componente central, além disso, é necessário alimentar o prompt apropriado para o LLM e, através da Memória, armazenar dados de curto prazo e dados históricos de longo prazo (dados externos).

Uma vez que tarefas complexas não podem ser concluídas de uma só vez, elas precisam ser divididas em tarefas menores pelo Plano, além disso, o Agente também pode chamar APIs externas para obter informações adicionais, incluindo informações atuais, capacidades de execução de código, acesso a fontes de informação proprietárias, e assim por diante.

Fonte: Uma Pesquisa sobre Agentes Autônomos Baseados em Modelos de Linguagem Grandes

A capacidade de tomada de decisão dos Agentes não teve um avanço certo até o surgimento do Grande Modelo de Linguagem LLM nos últimos anos. Um relatório compilou o número de artigos publicados sobre Agentes de 2021 a 2023, conforme mostrado na figura abaixo, na realidade existem apenas cerca de uma dúzia de artigos de pesquisa em 2021, mas há centenas de artigos publicados sobre eles em 2023. O artigo categorizou os Agentes em 7 categorias.

Fonte: Uma Pesquisa sobre Agentes Autônomos Baseados em Modelos de Linguagem Grande

No web3, os cenários em que os Agentes existem ainda são limitados em comparação com o mundo web2 e incluem atualmente compensação automatizada, construção de componentes de código (escrevendo contratos inteligentes, escrevendo circuitos zk), controle de risco em tempo real e execução de estratégias como arbitragem e agricultura de rendimento.

Criação de agentes e plataformas de negociação

  • Theoriq (ChainML) introduziu o conceito de Camada Base de Agente, que permite aos desenvolvedores anotar Agentes na forma de NFT e criar seus próprios Agentes, bem como construir um Coletivo de Agentes combinando Agentes para cumprir requisitos complexos. Esse processo avalia o desempenho e a ligação de diferentes Agentes por meio de prova de atribuição e prova de colaboração.
  • A Spectral Labs possui dois produtos principais, o Spectral Syntax, uma plataforma que permite aos usuários criar Agents na cadeia, e o Spectral Nova, um serviço de inferência que suporta solicitações de serviços de inferência. A criação de um Agente no Spectral Syntax utiliza o serviço de inferência do Spectral Nova, e essa inferência é garantida por prova ZK para garantir que funcione. Ao mesmo tempo, eles lançarão o Inferchain para permitir a comunicação de Agente para Agente.
  • Autonolas suporta a construção de serviços compostos por vários Agentes, o que permite ao Proprietário do Serviço criar um serviço e registrar o serviço correspondente no registro de serviços para iniciar o fluxo de trabalho, solicitar ao desenvolvedor que forneça os componentes do Agente e assim por diante. Os desenvolvedores podem desenvolver o Agente, componentes e outro código armazenado offchain, criar o NFT correspondente onchain, e consultar o hash IPFS dos metadados, e então consultar o código subjacente referenciando ainda mais o hash IPFS. Os serviços são tipicamente executados por um conjunto de Operadores, cada um executando pelo menos uma instância do Agente. Além disso, o Autonolas alcança consenso dentro do serviço para seus agentes por meio de um Dispositivo de Consenso que estabelece um acordo entre os agentes dentro do serviço.

Plataforma de Monitoramento de Agentes

  • AgentOpsAI é um parceiro da sentient, fornecendo serviços de monitoramento de agentes (eventos de log, chamadas, erros de agente, etc.), atualmente uma plataforma centralizada, sem token envolvido.

Fluxo de trabalho

Com base em diferentes Agentes, pode-se combinar/abstrair/criar um aplicativo específico, ao mesmo tempo, existem algumas plataformas de coordenação disponíveis para os usuários escolherem que tipo de Agentes usar para construir um tipo específico de aplicativo. Mas a maioria deles está limitada ao desenvolvimento de Agentes.

Aplicação

Desenvolvedores de Projeto

Alguns desenvolvedores usarão alguma IA para ajudar suas plataformas a serem mais inteligentes, por exemplo, em projetos de segurança, o aprendizado de máquina é usado para distinguir vulnerabilidades de ataque; protocolos DeFi usam IA para construir ferramentas de monitoramento em tempo real; e plataformas de análise de dados também usam IA para ajudar na limpeza e análise de dados.

Usuário

Janela de Perguntas e Respostas/Análise

  • Com Kaito.ai, os usuários podem usar o Q&A para obter informações sobre o sentimento da comunidade de um projeto, preço e movimentos da equipe principal.
  • 0xScope, o uso subjacente de grafos de conhecimento para integrar os dados na cadeia, ou seja, as características comportamentais do usuário, para fornecer serviços de análise de dados para os usuários, lançou a janela de perguntas e respostas do Scopechat a tempo para esta onda de IA.

Loja de aplicativos de IA

  • Myshell propõe uma camada de consumidor e cria a AI APP Store, que fornece diferentes componentes de IA e três modos de criação para facilitar os usuários a criarem diferentes aplicações de IA. Os widgets são divididos em componentes básicos e compostos. Os componentes básicos permitem que os usuários criem Prompt, Voz, Avatar e outros ativos em aplicativos de IA, enquanto os componentes compostos permitem que componentes personalizados sejam construídos usando uma combinação de vários modelos/componentes básicos. Os modos de criação incluem, clássico, dev e no-code, três modos para desenvolvedores e usuários com habilidades e necessidades diferentes.

Resumo

Neste artigo, gostaríamos de destacar os seguintes 3 pontos:

  • GPUAI

Em cripto, uma série de redes de computação surgem inevitavelmente fazer os usuários sentirem que GPU é IA, mas como analisado na seção anterior, há um trilema impossível de redes de computação, ou seja, poder de computação, largura de banda/comunicação e memória, bem como três tipos de estratégias paralelas usadas no treinamento de modelos, como paralelo de dados, tensor paralelo, e pipeline paralelo, todos apontam para os freios e contrapesos que são impostos na configuração da estrutura de rede de computação.

  • Mesmo Modelo & mesma DadosMesmo Resultado

A razão pela qual o mesmo modelo e os mesmos dados não necessariamente produzem o mesmo resultado é o uso de cálculos de ponto flutuante. Essa diferença nos cálculos também tem um impacto na construção da rede de computação.

  • Mais Agentes de IA

Os Agentes de IA começaram a mostrar mais utilidade apenas nos últimos anos, e esperamos que mais Agentes apareçam no mercado. Mas como os Agentes trabalham em cripto ou como encontrar os incentivos de token certos permanece um desafio.

声明:

  1. Este artigo foi republicado de[médio], o título original "AI into Cripto", os direitos autorais pertencem ao autor original[HashKey Capital ],如对转载有异议,请联系Equipe Gate Learn,a equipe lidará com isso o mais rápido possível de acordo com o processo relevante.

  2. Isenção de responsabilidade: As opiniões expressas neste artigo representam apenas a opinião pessoal do autor e não constituem qualquer tipo de conselho de investimento.

  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.ionão é permitida a cópia, distribuição ou plágio de artigos traduzidos.

Розпочати зараз
Зареєструйтеся та отримайте ваучер на
$100
!