A Perspectiva de Uma Pista Promissora: Mercado Descentralizado de Poder de Computação (Parte 1)

Avançado1/4/2024, 6:39:54 PM
Este artigo explora o potencial e os desafios do mercado de poder de computação descentralizado, destacando as dificuldades que enfrenta e apresentando dois projetos típicos - Gensyn e Together.AI.

Prefácio

Desde o nascimento do GPT-3, a IA generativa inaugurou um ponto de virada explosivo no campo da inteligência artificial com seu desempenho surpreendente e ampla gama de cenários de aplicação. Isso levou os gigantes da tecnologia a se lançarem na trilha da IA. No entanto, essa onda trouxe consigo inúmeros problemas. As operações de treinamento e inferência de grandes modelos de linguagem (LLMs) exigem muita potência de computação. Com a atualização iterativa desses modelos, a demanda e o custo da potência de computação estão aumentando exponencialmente. Tomando GPT-2 e GPT-3 como exemplos, a diferença no número de parâmetros entre GPT-2 e GPT-3 é de 1166 vezes (GPT-2 tem 150 milhões de parâmetros, enquanto GPT-3 tem 175 bilhões). O custo de uma única sessão de treinamento do GPT-3 foi calculado com base nos modelos de preços das nuvens públicas de GPU na época, chegando a até $12 milhões. Isso foi 200 vezes maior que o GPT-2. No uso prático, cada consulta do usuário requer cálculo de inferência. Com base nos 13 milhões de usuários independentes no início deste ano, a demanda correspondente por chips seria de mais de 30.000 GPUs A100. O custo inicial de investimento seria então de $800 milhões, com um custo estimado de inferência do modelo diário de $700.000.

A falta de poder de computação e os altos custos tornaram-se sérios desafios enfrentados por toda a indústria de IA. Notavelmente, uma questão semelhante parece estar enfrentando a indústria de blockchain. Por um lado, o quarto halving do Bitcoin e a aprovação de ETFs são iminentes. À medida que os preços futuros aumentam, a demanda dos mineradores por hardware de computação inevitavelmente aumentará significativamente. Por outro lado, a tecnologia de Prova de Conhecimento Zero (ZKP) está em alta, e Vitalik enfatizou várias vezes que o impacto do ZK no campo da blockchain nos próximos dez anos será tão importante quanto a própria blockchain. Enquanto essa tecnologia promete para o futuro da indústria de blockchain, o ZK também consome muito poder de computação e tempo na geração de provas devido ao seu processo de cálculo complexo, assim como a IA.

No futuro previsível, a escassez de poder de computação se tornará inevitável. Assim, o mercado descentralizado de poder de computação será um empreendimento lucrativo?

Definição de Mercado de Poder de Computação Descentralizado

O mercado descentralizado de poder de computação é na realidade equivalente à trilha descentralizada de computação em nuvem, mas pessoalmente acho que esse termo é mais adequado para descrever os novos projetos que serão discutidos posteriormente. O mercado descentralizado de poder de computação deve ser considerado um subconjunto de DePIN (Redes de Infraestrutura Física Descentralizada), cujo objetivo é criar um mercado aberto de poder de computação, onde qualquer pessoa com recursos de poder de computação ociosos pode oferecer seus recursos incentivados por tokens, servindo principalmente clientes B2B e comunidades de desenvolvedores. Em termos de projetos mais familiares, redes como a Render Network, que se baseia em soluções de renderização de GPU descentralizadas, e a Akash Network, um mercado distribuído peer-to-peer para computação em nuvem, pertencem a esta trilha.

O texto a seguir começará com os conceitos básicos e depois discutirá três mercados emergentes nesta trilha: o mercado de poder de computação AGI, o mercado de poder de computação Bitcoin e o mercado de poder de computação AGI no mercado de aceleração de hardware ZK. Os dois últimos serão discutidos em 'A Perspectiva de Uma Trilha Promissora: Mercado de Poder de Computação Descentralizado (Parte 2)'.

Visão geral do Poder de computação

O conceito de Poder de computação remonta à invenção do computador. O computador original utilizava dispositivos mecânicos para concluir tarefas de computação, e o Poder de computação referia-se à capacidade computacional do dispositivo mecânico. Com o desenvolvimento da tecnologia de computadores, o conceito de Poder de computação também evoluiu. O Poder de computação de hoje geralmente refere-se ao trabalho colaborativo do hardware de computador (CPUs, GPUs, FPGAs, etc.) e software (sistemas operacionais, compiladores, aplicativos, etc.).

Definição

O poder de computação refere-se à quantidade de dados que um computador ou outro dispositivo de computação pode processar dentro de um determinado período de tempo ou ao número de tarefas de computação que pode concluir. O poder de computação é geralmente usado para descrever o desempenho de um computador ou outros dispositivos de computação. É uma métrica importante das capacidades de processamento de um dispositivo de computação.

Métricas

O poder de computação pode ser medido de várias maneiras, como velocidade de computação, consumo de energia, precisão de computação e paralelismo. No campo da computação, as métricas de poder de computação comumente usadas incluem FLOPS (operações de ponto flutuante por segundo), IPS (instruções por segundo), TPS (transações por segundo), etc.

FLOPS mede a capacidade do computador de processar operações de ponto flutuante (operações matemáticas com pontos decimais que exigem consideração de questões de precisão e erros de arredondamento). Mede quantas operações de ponto flutuante um computador pode completar por segundo. FLOPS é uma medida das capacidades de computação de alto desempenho de um computador e é comumente usado para medir as capacidades de computação de supercomputadores, servidores de computação de alto desempenho, unidades de processamento gráfico (GPUs), etc. Por exemplo, se um sistema de computador tem 1 TFLOPS (um trilhão de operações de ponto flutuante por segundo), significa que ele pode completar 1 trilhão de operações de ponto flutuante por segundo.

IPS mede a velocidade com que um computador processa instruções. É uma medida de quantas instruções um computador pode executar por segundo e é uma medida do desempenho de uma única instrução de um computador, normalmente usada para medir o desempenho de uma unidade central de processamento (CPU). Por exemplo, uma CPU com um IPS de 3 GHz (3 bilhões de instruções por segundo) significa que ela pode executar 3 bilhões de instruções por segundo.

TPS mede a capacidade de um computador para processar transações. Avalia quantas transações um computador pode completar por segundo, geralmente usado para medir o desempenho do servidor de banco de dados. Por exemplo, um servidor de banco de dados tem um TPS de 1.000, significando que pode lidar com 1.000 transações de banco de dados por segundo.

Além disso, existem algumas métricas de poder de computação para cenários de aplicação específicos, como velocidade de inferência, velocidade de processamento de imagem e precisão de reconhecimento de voz.

Tipo de Poder de computação

O poder de computação da GPU refere-se à capacidade computacional das unidades de processamento gráfico (GPUs). Ao contrário das unidades de processamento central (CPUs), as GPUs são hardware especificamente projetado para processar dados gráficos, como imagens e vídeos. Elas têm um grande número de unidades de processamento e capacidades eficientes de computação paralela e podem realizar um grande número de operações de ponto flutuante simultaneamente. Como as GPUs foram originalmente projetadas para processamento gráfico de jogos, elas geralmente têm velocidades de clock mais altas e maior largura de banda de memória do que as CPUs para suportar cálculos gráficos complexos.

Diferença entre CPUs e GPUs

Arquitetura: CPUs e GPUs têm arquiteturas de computação diferentes. CPUs geralmente têm um ou mais núcleos, cada um dos quais é um processador de propósito geral capaz de realizar uma variedade de operações diferentes. Já as GPUs têm um grande número de Processadores de Fluxo e Shaders, que são especialmente usados para executar cálculos relacionados ao processamento de imagem;

Computação Paralela: As GPUs geralmente têm capacidades de computação paralela mais altas. Uma CPU tem um número limitado de núcleos, e cada núcleo só pode executar uma instrução, mas uma GPU pode ter milhares de processadores de fluxo que podem executar várias instruções e operações simultaneamente. Portanto, as GPUs geralmente são mais adequadas do que as CPUs para realizar tarefas de computação paralela, como aprendizado de máquina e aprendizado profundo, que requerem extensos cálculos paralelos;

Projeto de Programação: A programação para GPUs é relativamente mais complexa em comparação com CPUs. Requer o uso de linguagens de programação específicas (como CUDA ou OpenCL) e técnicas de programação específicas para utilizar as capacidades de computação paralela das GPUs. Por outro lado, a programação de CPU é mais simples e pode usar linguagens e ferramentas de programação de propósito geral.

A Importância do Poder de Computação

Na era da Revolução Industrial, o petróleo era o sangue vital do mundo e penetrou em todas as indústrias. Na próxima era da IA, o poder de computação será o "petróleo digital" do mundo. Desde a busca frenética das grandes empresas por chips de IA e ações da Nvidia superando um trilhão de dólares, até o recente bloqueio dos Estados Unidos de chips de alta tecnologia da China, incluindo capacidade de poder de computação, tamanho do chip e até planos de proibir as nuvens de GPU, a importância do poder de computação é evidente. O poder de computação será uma mercadoria da próxima era.

Visão Geral da Inteligência Artificial Geral

A Inteligência Artificial (IA) é uma nova ciência técnica que estuda, desenvolve e aplica teorias, métodos e tecnologias para simular, estender e expandir a inteligência humana. Ela teve origem nas décadas de 1950 e 1960 e, após mais de meio século de evolução, passou por desenvolvimentos entrelaçados por meio de três ondas: simbolismo, conexionismo e abordagens baseadas em agentes. Hoje, como uma tecnologia emergente de propósito geral, a IA está impulsionando mudanças profundas na vida social e em todas as indústrias. Uma definição mais específica da IA generativa atualmente é: Inteligência Artificial Geral (IAG), um sistema de inteligência artificial com uma ampla gama de capacidades de entendimento que pode realizar tarefas e operar em diversos domínios com inteligência semelhante ou superior aos níveis humanos. A IAG basicamente requer três elementos, aprendizado profundo (DL), big data e poder de computação substancial.

Aprendizado Profundo

A aprendizagem profunda é um subcampo da aprendizagem de máquina (ML), e os algoritmos de aprendizagem profunda são redes neurais modeladas após o cérebro humano. Por exemplo, o cérebro humano contém milhões de neurônios interconectados que trabalham juntos para aprender e processar informações. Da mesma forma, as redes neurais de aprendizagem profunda (ou redes neurais artificiais) são compostas por múltiplas camadas de neurônios artificiais que trabalham juntos dentro de um computador. Esses neurônios artificiais, conhecidos como nós, usam cálculos matemáticos para processar dados. As redes neurais artificiais são algoritmos de aprendizagem profunda que usam esses nós para resolver problemas complexos.

As redes neurais podem ser divididas em camada de entrada, camadas ocultas e camada de saída. As conexões entre essas diferentes camadas são compostas por parâmetros.

Camada de entrada: A camada de entrada é a primeira camada da rede neural e é responsável por receber dados de entrada externos. Cada neurônio na camada de entrada corresponde a uma característica dos dados de entrada. Por exemplo, no processamento de imagens, cada neurônio pode corresponder ao valor de um pixel na imagem.

Camadas Ocultas: A camada de entrada processa dados e os repassa para camadas mais profundas dentro da rede. Essas camadas ocultas processam informações em diferentes níveis, ajustando seu comportamento ao receber novas informações. Redes de aprendizado profundo podem ter centenas de camadas ocultas, o que lhes permite analisar problemas a partir de múltiplas perspectivas diferentes. Por exemplo, se você recebe uma imagem de um animal desconhecido que precisa ser classificado, você pode compará-lo com animais que você já conhece. Por exemplo, você pode dizer que tipo de animal é pela forma de suas orelhas, pelo número de pernas e pelo tamanho de suas pupilas. As camadas ocultas em redes neurais profundas funcionam de maneira semelhante. Se um algoritmo de aprendizado profundo está tentando classificar uma imagem de um animal, cada camada oculta irá processar diferentes características dos animais e tentar classificá-los com precisão.

Camada de Saída: A camada de saída é a última camada da rede neural e é responsável por gerar a saída da rede. Cada neurônio na camada de saída representa uma possível categoria ou valor de saída. Por exemplo, em um problema de classificação, cada neurônio na camada de saída pode corresponder a uma categoria, enquanto em um problema de regressão, a camada de saída pode ter apenas um neurônio cujo valor representa o resultado da predição;

Parâmetros: Nas redes neurais, as conexões entre diferentes camadas são representadas por pesos e viés, que são otimizados durante o processo de treinamento para permitir que a rede identifique com precisão padrões nos dados e faça previsões. O aumento nos parâmetros pode melhorar a capacidade do modelo da rede neural, ou seja, a capacidade do modelo de aprender e representar padrões complexos nos dados. Mas, correspondemente, o aumento nos parâmetros aumentará a demanda por poder de computação.

Big Data

Para serem treinadas de forma eficaz, as redes neurais geralmente requerem dados grandes, diversos e de alta qualidade de múltiplas fontes. Esses dados são a base para o treinamento e validação do modelo de aprendizado de máquina. Ao analisar big data, os modelos de aprendizado de máquina podem aprender padrões e relacionamentos nos dados, o que lhes permite fazer previsões ou classificações.

Poder de computação massivo

A demanda por poder de computação substancial surge de vários aspectos das redes neurais: estruturas complexas de várias camadas, um grande número de parâmetros, a necessidade de processar vastas quantidades de dados e métodos de treinamento iterativos (durante a fase de treinamento, o modelo deve iterar repetidamente, realizando cálculos de propagação para a frente e para trás para cada camada, incluindo cálculos para funções de ativação, funções de perda, gradientes e atualizações de peso), a necessidade de cálculos de alta precisão, capacidades de computação paralela, técnicas de otimização e regularização e processos de avaliação e verificação do modelo. À medida que o aprendizado profundo avança, a exigência por um poder de computação massivo para a IA geral está aumentando em cerca de 10 vezes a cada ano. O modelo mais recente até agora, GPT-4, contém 1,8 trilhão de parâmetros, com um custo de treinamento único de mais de $60 milhões e requisitos de poder de computação de 2.15e25 FLOPS (21.5 quintilhões de operações de ponto flutuante). A demanda por poder de computação para o treinamento de modelos futuros ainda está se expandindo, e novos modelos estão sendo desenvolvidos em um ritmo crescente.

Economia de Poder de Computação de IA

Tamanho Futuro do Mercado

De acordo com as estimativas mais autorizadas, o “Relatório de Avaliação do Índice de Poder de Computação Global 2022-2023” compilado em conjunto pela International Data Corporation (IDC), Inspur Information e pelo Instituto de Pesquisa da Indústria Global da Universidade Tsinghua, o tamanho do mercado global de computação AI deverá aumentar de $19.5 bilhões em 2022 para $34.66 bilhões em 2026. O mercado de computação AI generativa deve crescer de $820 milhões em 2022 para $10.99 bilhões em 2026. A participação da computação AI generativa no mercado global de computação AI deverá aumentar de 4.2% para 31.7%.

Monopólio no Poder de Computação na Economia

A produção de GPUs de IA tem sido exclusivamente monopolizada pela NVIDIA e elas são extremamente caras (o mais recente H100 foi vendido por $40.000 por unidade). Assim que as GPUs são lançadas, elas são rapidamente adquiridas pelas gigantes de tecnologia do Vale do Silício. Alguns desses dispositivos são usados para treinar seus próprios novos modelos. O restante é alugado para desenvolvedores de IA por meio de plataformas de nuvem, como aquelas de propriedade do Google, Amazon e Microsoft, que controlam uma vasta quantidade de recursos de computação, como servidores, GPUs e TPUs. O poder de computação se tornou um novo recurso monopolizado por essas gigantes. Muitos desenvolvedores de IA nem sequer podem comprar uma GPU dedicada sem um ágio. Para usar o equipamento mais recente, os desenvolvedores têm que alugar servidores de nuvem da AWS ou da Microsoft. Relatórios financeiros indicam que esse negócio tem lucros extremamente altos. Os serviços de nuvem da AWS ostentam uma margem de lucro bruto de 61%, enquanto a margem de lucro bruto da Microsoft é ainda maior, chegando a 72%.

Então, nós temos que aceitar essa autoridade centralizada e controle, e pagar uma margem de lucro de 72% para recursos de computação? Será que os gigantes que monopolizaram a Web2 também irão dominar a próxima era?

Desafios do Poder de Computação AGI Descentralizado

Quando se trata de antitruste, a descentralização é geralmente vista como a solução ideal. Olhando para projetos existentes, podemos alcançar o poder de computação massivo necessário para a IA por meio de projetos de armazenamento DePIN combinados com protocolos como RDNR para utilização ociosa da GPU? A resposta é não. O caminho para matar o dragão não é tão simples. Os projetos iniciais não foram especificamente projetados para o poder de computação AGI e não são viáveis. Trazer o poder de computação para o blockchain enfrenta pelo menos os seguintes cinco desafios:

  1. Verificação do trabalho: Para construir uma rede de computação verdadeiramente sem confiança que forneça incentivos econômicos aos participantes, a rede deve ter um modo de verificar se os cálculos de aprendizado profundo foram realmente realizados. A questão central aqui é a dependência de estado dos modelos de aprendizado profundo; nesses modelos, a entrada para cada camada depende da saída da camada anterior. Isso significa que você não pode simplesmente validar uma única camada em um modelo sem levar em consideração todas as camadas anteriores a ela. A computação para cada camada é baseada nos resultados de todas as camadas anteriores. Portanto, para verificar o trabalho concluído em um ponto específico (como uma camada específica), todo o trabalho desde o início do modelo até esse ponto específico deve ser executado;

  2. Mercado: Como um mercado emergente, o mercado de poder de computação de IA está sujeito a dilemas de oferta e demanda, como o problema do início a frio. A liquidez de oferta e demanda precisa ser aproximadamente correspondida desde o início, para que o mercado possa crescer com sucesso. A fim de capturar o fornecimento potencial de poder de computação, os participantes devem ser fornecidos com incentivos claros em troca de seus recursos de computação. O mercado precisa de um mecanismo para rastrear cálculos concluídos e pagar os provedores de acordo com isso, de maneira oportuna. Em mercados tradicionais, intermediários lidam com tarefas como gerenciamento e integração, enquanto reduzem os custos operacionais, estabelecendo limites mínimos de pagamento. No entanto, essa abordagem é cara ao expandir o tamanho do mercado. Apenas uma pequena parte da oferta pode ser capturada de forma econômica, levando a um estado de equilíbrio de limite no qual o mercado só pode capturar e manter um fornecimento limitado sem poder crescer ainda mais.

  3. Problema de interrupção: O problema de interrupção é uma questão fundamental na teoria da computação, que envolve determinar se uma tarefa de computação dada terminará em um tempo finito ou executará indefinidamente. Este problema é indecidível, o que significa que não há um algoritmo universal que possa prever se qualquer computação dada irá parar em um tempo finito. Por exemplo, a execução de contratos inteligentes no Ethereum também enfrenta um problema de interrupção semelhante. É impossível determinar antecipadamente quanto recurso de computação a execução de um contrato inteligente requererá, ou se ele será concluído em um tempo razoável.

(No contexto do aprendizado profundo, esse problema será mais complexo, pois os modelos e estruturas mudarão da construção de gráficos estáticos para a construção e execução dinâmica.)

  1. Privacidade: O design e desenvolvimento com consciência de privacidade é um imperativo para as equipes de projeto. Embora uma grande quantidade de pesquisa em aprendizado de máquina possa ser realizada em conjuntos de dados públicos, a fim de melhorar o desempenho do modelo e adaptá-lo a aplicações específicas, o modelo geralmente precisa ser ajustado com base em dados de usuários proprietários. Esse processo de ajuste fino pode envolver o processamento de dados pessoais, portanto, os requisitos de proteção de privacidade precisam ser considerados.

  2. Paralelização: Este é um fator chave na falta de viabilidade dos projetos atuais. Os modelos de aprendizado profundo geralmente são treinados em paralelo em grandes clusters de hardware com arquiteturas proprietárias e latência extremamente baixa, e as GPUs em redes de computação distribuída incorreriam em latência devido a trocas frequentes de dados e seriam limitadas pelo desempenho da GPU mais lenta. Quando as fontes de computação são pouco confiáveis e não confiáveis, como alcançar a paralelização heterogênea é um problema que deve ser resolvido. O método viável atual é alcançar a paralelização por meio de modelos de transformadores, como os Transformadores de Comutação, que agora têm características altamente paralelizadas.

Soluções: Embora as tentativas atuais de um mercado descentralizado de poder de computação AGI ainda estejam em estágios iniciais, existem dois projetos que inicialmente resolveram o design de consenso das redes descentralizadas e a implementação das redes de poder de computação descentralizado no treinamento e inferência de modelos. O seguinte usará Gensyn e Together como exemplos para analisar os métodos de design e problemas do mercado descentralizado de poder de computação AGI.

Gensyn

Gensyn é um mercado de poder de computação AGI que ainda está na fase de construção, com o objetivo de resolver os vários desafios da computação descentralizada de aprendizado profundo e reduzir os custos associados ao aprendizado profundo atual. Gensyn é essencialmente um protocolo de prova de participação de primeira camada baseado na rede Polkadot, que recompensa diretamente os solucionadores (aqueles que resolvem tarefas computacionais) por meio de contratos inteligentes em troca de seus dispositivos GPU inativos para computação e realização de tarefas de aprendizado de máquina.

Voltando à pergunta anterior, o cerne da construção de uma rede de computação verdadeiramente sem confiança está em verificar o trabalho de aprendizado de máquina concluído. Este é um problema altamente complexo que requer encontrar um equilíbrio entre a interseção da teoria da complexidade, teoria dos jogos, criptografia e otimização.

Gensyn propõe uma solução simples onde os solvers submetem os resultados das tarefas de aprendizado de máquina que concluíram. Para verificar se esses resultados são precisos, outro verificador independente tenta reexecutar o mesmo trabalho. Esta abordagem pode ser chamada de replicação única porque apenas um verificador reexecutaria a tarefa. Isso significa que há apenas um trabalho adicional para verificar a precisão do trabalho original. No entanto, se a pessoa que verifica o trabalho não for o solicitante original, então a questão da confiança ainda existe. Os verificadores em si podem não ser honestos, e seu trabalho precisa ser verificado. Isso leva a um problema potencial onde, se a pessoa que verifica o trabalho não for o solicitante original, então será necessário outro verificador para verificar seu trabalho. Mas esse novo verificador também pode não ser confiável, então será necessário outro verificador para verificar seu trabalho, o que poderia continuar indefinidamente, criando uma cadeia de replicação infinita. Aqui precisamos introduzir três conceitos-chave e entrelaçá-los para construir um sistema de participantes com quatro papéis para resolver o problema da cadeia infinita.

Provas de aprendizado probabilístico: Constrói certificados de trabalho concluído usando metadados do processo de otimização baseado em gradientes. Ao replicar certas etapas, esses certificados podem ser rapidamente verificados para garantir que o trabalho tenha sido concluído conforme esperado.

Protocolo de posicionamento preciso baseado em gráficos: Usando protocolos de posicionamento preciso baseados em gráficos de múltipla granularidade e execução consistente de avaliadores cruzados. Isso permite a reexecução e comparação do trabalho de verificação para garantir consistência, o que é confirmado pelo próprio blockchain.

Jogo de incentivo no estilo Truebit: Use apostas e penalizações para construir um jogo de incentivo que garanta que todo participante economicamente razoável atue honestamente e execute suas tarefas esperadas.

O sistema de participantes é composto por submissor, solucionador, verificador e denunciante.

Submissões:

Os submetedores são os usuários finais do sistema que fornecem tarefas a serem calculadas e pagam pelas unidades de trabalho concluídas;

Solvers:

Os solvers são os trabalhadores principais do sistema, realizando o treinamento do modelo e gerando provas que são verificadas pelo verificador;

Verificadores:

Verificadores são essenciais para conectar o processo de treinamento não determinístico com cálculos lineares determinísticos, replicando partes da prova do solucionador e comparando distâncias com os limiares esperados;

Denunciantes:

Denunciantes são a última linha de defesa, verificando o trabalho dos verificadores e levantando desafios na esperança de receber pagamentos generosos de recompensa.

Operação do sistema

O sistema de jogo projetado pelo protocolo opera por oito etapas, abrangendo quatro principais papéis de participantes, para completar todo o processo, desde a submissão da tarefa até a verificação final.

Submissão de Tarefa: As tarefas consistem em três peças específicas de informação:

Metadados descrevendo a tarefa e hiperparâmetros;

Um arquivo binário de modelo (ou arquitetura básica);

Dados de treinamento pré-processados publicamente acessíveis.

Para enviar uma tarefa, o remetente especifica os detalhes da tarefa em um formato legível por máquina e a envia para a cadeia juntamente com o arquivo binário do modelo (ou arquitetura legível por máquina) e uma localização publicamente acessível dos dados de treinamento pré-processados. Os dados públicos podem ser armazenados em um armazenamento de objeto simples como o S3 da AWS, ou em um armazenamento descentralizado como IPFS, Arweave ou Subspace.

Perfilamento: O processo de perfilamento estabelece um limite de distância de referência para a verificação da prova de aprendizado. Os verificadores buscarão periodicamente tarefas de perfilamento e gerarão limites de mutação para a comparação das provas de aprendizado. Para gerar o limite, o verificador executará de forma determinística partes do treinamento usando diferentes sementes aleatórias, gerando e verificando suas próprias provas. Durante esse processo, o verificador estabelece um limite de distância esperado geral para o trabalho não determinístico da solução que pode ser usado para verificação.

Treinamento: Após o perfilamento, as tarefas entram na fila de tarefas pública (similar ao Mempool da Ethereum). Selecione um resolvedor para executar a tarefa e remover a tarefa da fila de tarefas. Os resolvedores executam a tarefa com base nos metadados enviados pelo remetente e no modelo e nos dados de treinamento fornecidos. Ao executar tarefas de treinamento, os resolvedores também geram provas de aprendizado verificando regularmente pontos e armazenando metadados (incluindo parâmetros) durante o processo de treinamento, para que os verificadores possam replicar as seguintes etapas de otimização o mais precisamente possível.

Geração de prova: Os solucionadores armazenam periodicamente pesos do modelo ou atualizações e seus índices correspondentes do conjunto de dados de treinamento para identificar as amostras usadas para gerar as atualizações de peso. A frequência do ponto de verificação pode ser ajustada para fornecer garantias mais fortes ou para economizar espaço de armazenamento. As provas podem ser “empilhadas”, o que significa que elas podem começar a partir de uma distribuição aleatória usada para inicializar os pesos, ou a partir de pesos pré-treinados gerados usando suas próprias provas. Isso permite que o protocolo construa um conjunto de modelos básicos pré-treinados comprovados, que podem ser ajustados para tarefas mais específicas.

Verificação de prova: Após a conclusão da tarefa, os solvers registram a conclusão da tarefa na cadeia e exibem sua prova de aprendizado em um local de acesso público para que os verificadores acessem. Os verificadores retiram tarefas de verificação do pool de tarefas público e realizam trabalho computacional para reexecutar parte da prova e executar cálculos de distância. A cadeia, juntamente com o limiar calculado durante a fase de perfilamento, usa então a distância resultante para determinar se a verificação corresponde à prova.

Desafio de localização baseado em gráfico: Após verificar a prova de aprendizagem, os denunciantes podem replicar o trabalho dos verificadores para verificar se o trabalho de verificação em si foi executado corretamente. Se os denunciantes acreditarem que a verificação foi executada incorretamente (maliciosamente ou não), eles podem desafiá-la para arbitragem contratual por uma recompensa. Essa recompensa pode vir dos depósitos de solucionador e validador (no caso de um verdadeiro positivo), ou de um bônus de loteria do pool (no caso de um falso positivo), com a arbitragem realizada usando a própria cadeia. Os denunciantes (atuando como verificadores em seu caso) verificarão e desafiarão o trabalho apenas se esperarem receber uma compensação adequada. Na prática, isso significa que os denunciantes são esperados para se juntar e deixar a rede com base no número de outros denunciantes ativos (ou seja, com depósitos ativos e desafios). Portanto, a estratégia padrão esperada para qualquer denunciante é se juntar à rede quando houver menos outros denunciantes, postar um depósito, selecionar aleatoriamente uma tarefa ativa e iniciar seu processo de verificação. Após uma tarefa, eles pegarão outra tarefa ativa aleatória e repetirão até que o número de denunciantes exceda seu limite de pagamento determinado, momento em que deixarão a rede (ou mais provável, mudarão para outro papel na rede - verificador ou solucionador - com base em suas capacidades de hardware) até que a situação se inverta novamente.

Arbitragem de contrato: Quando os verificadores são desafiados por denunciantes, eles entram em um processo com a cadeia para descobrir a localização da operação ou entrada disputada, e, por fim, a cadeia realizará a operação básica final e determinará se o desafio é justificado. Para manter os denunciantes honestos e superar o dilema do verificador, erros forçados periódicos e pagamentos de jackpot são introduzidos aqui.

Assentamento: Durante o processo de assentamento, os participantes são pagos com base nas conclusões de verificações probabilísticas e determinísticas. Diferentes cenários de pagamento surgem dependendo dos resultados de verificações e desafios anteriores. Se o trabalho for considerado realizado corretamente e todas as verificações passarem, tanto os provedores de soluções quanto os verificadores são recompensados com base nas operações realizadas.

Revisão Breve do Projeto

Gensyn projetou um sistema sofisticado de teoria dos jogos na camada de verificação e camadas de incentivo, que permite a identificação rápida e retificação de erros ao apontar divergências dentro da rede. No entanto, ainda há muitos detalhes faltando no sistema atual. Por exemplo, como definir parâmetros para garantir que as recompensas e penalidades sejam razoáveis sem definir o limite muito alto? Você considerou cenários extremos e o poder de computação diferente dos solucionadores nos aspectos de teoria dos jogos? Não há uma descrição detalhada da execução paralela heterogênea na versão atual do whitepaper. Gensyn ainda tem um longo caminho a percorrer.

Together.ai

Together.ai é uma empresa que se concentra em soluções computacionais de IA descentralizadas de código aberto para grandes modelos. O objetivo é que qualquer pessoa possa acessar IA em qualquer lugar. Estritamente falando, Together não é um projeto de blockchain, mas resolveu preliminarmente os problemas de latência dentro de redes computacionais AGI descentralizadas. Portanto, o artigo a seguir apenas analisa as soluções da Together e não avalia o projeto em si.

Como alcançar o treinamento e a inferência de modelos grandes quando as redes descentralizadas são 100 vezes mais lentas do que os centros de dados?

Vamos imaginar a distribuição de GPUs participando de uma rede descentralizada. Esses dispositivos serão espalhados por diferentes continentes e cidades, cada um precisando se conectar com latências e larguras de banda variadas. Como mostrado na figura abaixo, um cenário distribuído simulado mostra dispositivos localizados na América do Norte, Europa e Ásia, com larguras de banda e latências diferentes entre eles. O que precisa ser feito para conectá-los efetivamente?

Modelagem computacional de treinamento distribuído: O diagrama abaixo mostra a situação de treinar um modelo base em vários dispositivos, apresentando três tipos de comunicação: Ativação Adiante, Gradiente Retroativo e Comunicação Lateral.

Combinando largura de banda de comunicação e latência, duas formas de paralelismo precisam ser consideradas: paralelismo de pipeline e paralelismo de dados, correspondendo aos três tipos de comunicação no cenário de vários dispositivos:

No paralelismo de pipeline, todas as camadas do modelo são divididas em várias etapas, onde cada dispositivo processa uma etapa, que é uma sequência de camadas consecutivas, como vários blocos de Transformer. Durante a propagação para a frente, as ativações são passadas para a próxima etapa e, durante a propagação para trás, os gradientes das ativações são passados de volta para a etapa anterior.

No paralelismo de dados, os dispositivos calculam independentemente os gradientes para diferentes microlotes, mas precisam sincronizar esses gradientes por meio da comunicação.

Otimização de agendamento:

Em um ambiente descentralizado, o processo de treinamento muitas vezes é limitado pela comunicação. Algoritmos de agendamento geralmente atribuem tarefas que exigem extensa comunicação para dispositivos com conexões mais rápidas. Considerando as dependências entre tarefas e a heterogeneidade da rede, é primeiro necessário modelar o custo de estratégias de agendamento específicas. Para capturar o custo complexo de comunicação de treinamento de modelos base, a Together propõe uma formulação inovadora e decompõe o modelo de custo em dois níveis usando teoria dos grafos:

A teoria dos grafos é um ramo da matemática que estuda as propriedades e estruturas dos grafos (redes). Um grafo é composto por vértices (nós) e arestas (linhas que conectam os nós). O principal objetivo da teoria dos grafos é estudar várias propriedades dos grafos, como a conectividade, coloração e a natureza dos caminhos e ciclos nos grafos.

O primeiro nível é um problema de particionamento de gráfico equilibrado (dividindo o conjunto de vértices de um gráfico em vários subconjuntos de tamanho igual ou quase igual, enquanto minimiza o número de arestas entre os subconjuntos). Neste particionamento, cada subconjunto representa uma partição, e os custos de comunicação são reduzidos minimizando as arestas entre as partições, correspondendo aos custos de comunicação do paralelismo de dados.

O segundo nível envolve um problema conjunto de correspondência de gráficos e de vendedor viajante (um problema de otimização combinatória que combina elementos de correspondência de gráficos e do problema do vendedor viajante). O problema de correspondência de gráficos envolve encontrar uma correspondência no gráfico que minimize ou maximize algum custo. O problema do vendedor viajante busca o caminho mais curto que visita todos os nós no gráfico, correspondendo aos custos de comunicação do paralelismo de pipeline.

O diagrama acima é um esquema do processo. Devido aos cálculos complexos envolvidos na implementação real, o processo descrito no diagrama é simplificado para facilitar a compreensão. Para uma implementação detalhada, pode-se consultar a documentação no site oficial da Together.

Suponha que haja um conjunto de NN dispositivos, DD, com atrasos de comunicação incertos (matriz AA) e larguras de banda (matriz BB), com base no conjunto de dispositivos DD, primeiro geramos uma partição de gráfico equilibrada. Cada partição ou grupo de dispositivos contém aproximadamente o mesmo número de dispositivos e todos lidam com a mesma etapa de pipeline. Isso garante que durante o paralelismo de dados, cada grupo de dispositivos execute uma quantidade semelhante de trabalho. De acordo com os atrasos de comunicação e larguras de banda, uma fórmula pode calcular o "custo" de transferência de dados entre grupos de dispositivos. Cada grupo equilibrado é fundido para criar um gráfico grosseiro totalmente conectado, onde cada nó representa uma etapa de pipeline e as arestas representam o custo de comunicação entre duas etapas. Para minimizar os custos de comunicação, um algoritmo de correspondência é usado para determinar quais grupos de dispositivos devem trabalhar juntos.

Para uma otimização adicional, esse problema também pode ser modelado como um problema do caixeiro viajante de circuito aberto (circuito aberto significa que não é necessário retornar ao ponto de partida do caminho) para encontrar um caminho ótimo para transmitir dados em todos os dispositivos. Finalmente, Together utiliza um algoritmo de agendamento inovador para encontrar a estratégia de alocação ótima para o modelo de custo dado, minimizando assim os custos de comunicação e maximizando a taxa de transferência de treinamento. De acordo com testes, mesmo se a rede for 100 vezes mais lenta sob essa otimização de agendamento, a taxa de transferência de treinamento de ponta a ponta é apenas cerca de 1,7 a 2,3 vezes mais lenta.

Otimização de Compressão de Comunicação:

Para a otimização da compressão de comunicação, Together introduziu o algoritmo AQ-SGD (para um processo de cálculo detalhado, consulte o artigo "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). O algoritmo AQ-SGD é uma nova técnica de compressão de ativação projetada para resolver problemas de eficiência de comunicação durante o treinamento paralelo de pipeline em redes lentas. Diferente dos métodos anteriores de comprimir diretamente os valores de ativação, o AQ-SGD concentra-se em comprimir as mudanças nos valores de ativação da mesma amostra de treinamento em diferentes períodos. Este método único introduz uma interessante dinâmica "auto-executável", onde se espera que o desempenho do algoritmo melhore gradualmente à medida que o treinamento se estabiliza. O algoritmo AQ-SGD tem sido rigorosamente analisado teoricamente e comprovado ter boas taxas de convergência sob certas condições técnicas e funções de quantização de erros limitados. O algoritmo pode ser efetivamente implementado sem adicionar sobrecarga de tempo de execução de ponta a ponta adicional, embora exija o uso de mais memória e SSD para armazenar valores de ativação. Por meio de extensos experimentos em conjuntos de dados de classificação de sequência e modelagem de linguagem, foi demonstrado que o AQ-SGD comprime valores de ativação para 2–4 bits sem sacrificar o desempenho de convergência. Além disso, o AQ-SGD pode ser integrado com algoritmos de compressão de gradiente de última geração para alcançar "compressão de comunicação de ponta a ponta", o que significa que as trocas de dados entre todas as máquinas, incluindo gradientes de modelo, valores de ativação para frente e gradientes para trás, são compactadas com baixa precisão, melhorando significativamente a eficiência de comunicação do treinamento distribuído. Em comparação com o desempenho de treinamento de ponta a ponta em uma rede de computação centralizada (como 10 Gbps) sem compactação, atualmente é apenas 31% mais lento. Combinado com os dados sobre otimização de agendamento, embora ainda haja uma certa lacuna entre as redes de computação centralizadas, há uma grande esperança de recuperação no futuro.

Conclusão

No período de dividendos trazido pela onda de IA, o mercado de poder de computação AGI é, sem dúvida, o mercado com o maior potencial e a maior demanda entre os diversos mercados de poder de computação. No entanto, a maior dificuldade de desenvolvimento, requisitos de hardware e demandas de capital estão trazendo desafios para esta indústria. Combinando os dois projetos apresentados acima, ainda temos algum tempo antes que o mercado de poder de computação AGI seja lançado. A rede descentralizada real também é muito mais complicada do que o cenário ideal. Atualmente, não é suficiente para competir com os gigantes da nuvem.

No momento da escrita, também observei que alguns projetos de pequena escala que ainda estão em sua infância (estágio PPT) começaram a explorar alguns novos pontos de entrada, como focar no estágio de inferência AGI menos desafiador em vez do estágio de treinamento. No entanto, a longo prazo, a importância da descentralização e dos sistemas sem permissão é profunda. O direito de acessar e treinar o poder de computação AGI não deve ser concentrado nas mãos de alguns gigantes centralizados. A humanidade não precisa de uma nova 'teocracia' ou de um novo 'papa', nem deve pagar caras taxas de associação.

Aviso Legal:

  1. Este artigo é reimpresso de [GateYBB Capital]. Todos os direitos autorais pertencem ao autor original [Zeke]. Se houver objeções a este reenvio, entre em contato com o Gate Aprender equipe, e eles vão lidar com isso prontamente.
  2. Isenção de responsabilidade: Os pontos de vista e opiniões expressos neste artigo são exclusivamente do autor e não constituem qualquer conselho de investimento.
  3. As traduções do artigo para outros idiomas são feitas pela equipe do Gate Learn. Salvo indicação em contrário, é proibida a cópia, distribuição ou plágio dos artigos traduzidos.

A Perspectiva de Uma Pista Promissora: Mercado Descentralizado de Poder de Computação (Parte 1)

Avançado1/4/2024, 6:39:54 PM
Este artigo explora o potencial e os desafios do mercado de poder de computação descentralizado, destacando as dificuldades que enfrenta e apresentando dois projetos típicos - Gensyn e Together.AI.

Prefácio

Desde o nascimento do GPT-3, a IA generativa inaugurou um ponto de virada explosivo no campo da inteligência artificial com seu desempenho surpreendente e ampla gama de cenários de aplicação. Isso levou os gigantes da tecnologia a se lançarem na trilha da IA. No entanto, essa onda trouxe consigo inúmeros problemas. As operações de treinamento e inferência de grandes modelos de linguagem (LLMs) exigem muita potência de computação. Com a atualização iterativa desses modelos, a demanda e o custo da potência de computação estão aumentando exponencialmente. Tomando GPT-2 e GPT-3 como exemplos, a diferença no número de parâmetros entre GPT-2 e GPT-3 é de 1166 vezes (GPT-2 tem 150 milhões de parâmetros, enquanto GPT-3 tem 175 bilhões). O custo de uma única sessão de treinamento do GPT-3 foi calculado com base nos modelos de preços das nuvens públicas de GPU na época, chegando a até $12 milhões. Isso foi 200 vezes maior que o GPT-2. No uso prático, cada consulta do usuário requer cálculo de inferência. Com base nos 13 milhões de usuários independentes no início deste ano, a demanda correspondente por chips seria de mais de 30.000 GPUs A100. O custo inicial de investimento seria então de $800 milhões, com um custo estimado de inferência do modelo diário de $700.000.

A falta de poder de computação e os altos custos tornaram-se sérios desafios enfrentados por toda a indústria de IA. Notavelmente, uma questão semelhante parece estar enfrentando a indústria de blockchain. Por um lado, o quarto halving do Bitcoin e a aprovação de ETFs são iminentes. À medida que os preços futuros aumentam, a demanda dos mineradores por hardware de computação inevitavelmente aumentará significativamente. Por outro lado, a tecnologia de Prova de Conhecimento Zero (ZKP) está em alta, e Vitalik enfatizou várias vezes que o impacto do ZK no campo da blockchain nos próximos dez anos será tão importante quanto a própria blockchain. Enquanto essa tecnologia promete para o futuro da indústria de blockchain, o ZK também consome muito poder de computação e tempo na geração de provas devido ao seu processo de cálculo complexo, assim como a IA.

No futuro previsível, a escassez de poder de computação se tornará inevitável. Assim, o mercado descentralizado de poder de computação será um empreendimento lucrativo?

Definição de Mercado de Poder de Computação Descentralizado

O mercado descentralizado de poder de computação é na realidade equivalente à trilha descentralizada de computação em nuvem, mas pessoalmente acho que esse termo é mais adequado para descrever os novos projetos que serão discutidos posteriormente. O mercado descentralizado de poder de computação deve ser considerado um subconjunto de DePIN (Redes de Infraestrutura Física Descentralizada), cujo objetivo é criar um mercado aberto de poder de computação, onde qualquer pessoa com recursos de poder de computação ociosos pode oferecer seus recursos incentivados por tokens, servindo principalmente clientes B2B e comunidades de desenvolvedores. Em termos de projetos mais familiares, redes como a Render Network, que se baseia em soluções de renderização de GPU descentralizadas, e a Akash Network, um mercado distribuído peer-to-peer para computação em nuvem, pertencem a esta trilha.

O texto a seguir começará com os conceitos básicos e depois discutirá três mercados emergentes nesta trilha: o mercado de poder de computação AGI, o mercado de poder de computação Bitcoin e o mercado de poder de computação AGI no mercado de aceleração de hardware ZK. Os dois últimos serão discutidos em 'A Perspectiva de Uma Trilha Promissora: Mercado de Poder de Computação Descentralizado (Parte 2)'.

Visão geral do Poder de computação

O conceito de Poder de computação remonta à invenção do computador. O computador original utilizava dispositivos mecânicos para concluir tarefas de computação, e o Poder de computação referia-se à capacidade computacional do dispositivo mecânico. Com o desenvolvimento da tecnologia de computadores, o conceito de Poder de computação também evoluiu. O Poder de computação de hoje geralmente refere-se ao trabalho colaborativo do hardware de computador (CPUs, GPUs, FPGAs, etc.) e software (sistemas operacionais, compiladores, aplicativos, etc.).

Definição

O poder de computação refere-se à quantidade de dados que um computador ou outro dispositivo de computação pode processar dentro de um determinado período de tempo ou ao número de tarefas de computação que pode concluir. O poder de computação é geralmente usado para descrever o desempenho de um computador ou outros dispositivos de computação. É uma métrica importante das capacidades de processamento de um dispositivo de computação.

Métricas

O poder de computação pode ser medido de várias maneiras, como velocidade de computação, consumo de energia, precisão de computação e paralelismo. No campo da computação, as métricas de poder de computação comumente usadas incluem FLOPS (operações de ponto flutuante por segundo), IPS (instruções por segundo), TPS (transações por segundo), etc.

FLOPS mede a capacidade do computador de processar operações de ponto flutuante (operações matemáticas com pontos decimais que exigem consideração de questões de precisão e erros de arredondamento). Mede quantas operações de ponto flutuante um computador pode completar por segundo. FLOPS é uma medida das capacidades de computação de alto desempenho de um computador e é comumente usado para medir as capacidades de computação de supercomputadores, servidores de computação de alto desempenho, unidades de processamento gráfico (GPUs), etc. Por exemplo, se um sistema de computador tem 1 TFLOPS (um trilhão de operações de ponto flutuante por segundo), significa que ele pode completar 1 trilhão de operações de ponto flutuante por segundo.

IPS mede a velocidade com que um computador processa instruções. É uma medida de quantas instruções um computador pode executar por segundo e é uma medida do desempenho de uma única instrução de um computador, normalmente usada para medir o desempenho de uma unidade central de processamento (CPU). Por exemplo, uma CPU com um IPS de 3 GHz (3 bilhões de instruções por segundo) significa que ela pode executar 3 bilhões de instruções por segundo.

TPS mede a capacidade de um computador para processar transações. Avalia quantas transações um computador pode completar por segundo, geralmente usado para medir o desempenho do servidor de banco de dados. Por exemplo, um servidor de banco de dados tem um TPS de 1.000, significando que pode lidar com 1.000 transações de banco de dados por segundo.

Além disso, existem algumas métricas de poder de computação para cenários de aplicação específicos, como velocidade de inferência, velocidade de processamento de imagem e precisão de reconhecimento de voz.

Tipo de Poder de computação

O poder de computação da GPU refere-se à capacidade computacional das unidades de processamento gráfico (GPUs). Ao contrário das unidades de processamento central (CPUs), as GPUs são hardware especificamente projetado para processar dados gráficos, como imagens e vídeos. Elas têm um grande número de unidades de processamento e capacidades eficientes de computação paralela e podem realizar um grande número de operações de ponto flutuante simultaneamente. Como as GPUs foram originalmente projetadas para processamento gráfico de jogos, elas geralmente têm velocidades de clock mais altas e maior largura de banda de memória do que as CPUs para suportar cálculos gráficos complexos.

Diferença entre CPUs e GPUs

Arquitetura: CPUs e GPUs têm arquiteturas de computação diferentes. CPUs geralmente têm um ou mais núcleos, cada um dos quais é um processador de propósito geral capaz de realizar uma variedade de operações diferentes. Já as GPUs têm um grande número de Processadores de Fluxo e Shaders, que são especialmente usados para executar cálculos relacionados ao processamento de imagem;

Computação Paralela: As GPUs geralmente têm capacidades de computação paralela mais altas. Uma CPU tem um número limitado de núcleos, e cada núcleo só pode executar uma instrução, mas uma GPU pode ter milhares de processadores de fluxo que podem executar várias instruções e operações simultaneamente. Portanto, as GPUs geralmente são mais adequadas do que as CPUs para realizar tarefas de computação paralela, como aprendizado de máquina e aprendizado profundo, que requerem extensos cálculos paralelos;

Projeto de Programação: A programação para GPUs é relativamente mais complexa em comparação com CPUs. Requer o uso de linguagens de programação específicas (como CUDA ou OpenCL) e técnicas de programação específicas para utilizar as capacidades de computação paralela das GPUs. Por outro lado, a programação de CPU é mais simples e pode usar linguagens e ferramentas de programação de propósito geral.

A Importância do Poder de Computação

Na era da Revolução Industrial, o petróleo era o sangue vital do mundo e penetrou em todas as indústrias. Na próxima era da IA, o poder de computação será o "petróleo digital" do mundo. Desde a busca frenética das grandes empresas por chips de IA e ações da Nvidia superando um trilhão de dólares, até o recente bloqueio dos Estados Unidos de chips de alta tecnologia da China, incluindo capacidade de poder de computação, tamanho do chip e até planos de proibir as nuvens de GPU, a importância do poder de computação é evidente. O poder de computação será uma mercadoria da próxima era.

Visão Geral da Inteligência Artificial Geral

A Inteligência Artificial (IA) é uma nova ciência técnica que estuda, desenvolve e aplica teorias, métodos e tecnologias para simular, estender e expandir a inteligência humana. Ela teve origem nas décadas de 1950 e 1960 e, após mais de meio século de evolução, passou por desenvolvimentos entrelaçados por meio de três ondas: simbolismo, conexionismo e abordagens baseadas em agentes. Hoje, como uma tecnologia emergente de propósito geral, a IA está impulsionando mudanças profundas na vida social e em todas as indústrias. Uma definição mais específica da IA generativa atualmente é: Inteligência Artificial Geral (IAG), um sistema de inteligência artificial com uma ampla gama de capacidades de entendimento que pode realizar tarefas e operar em diversos domínios com inteligência semelhante ou superior aos níveis humanos. A IAG basicamente requer três elementos, aprendizado profundo (DL), big data e poder de computação substancial.

Aprendizado Profundo

A aprendizagem profunda é um subcampo da aprendizagem de máquina (ML), e os algoritmos de aprendizagem profunda são redes neurais modeladas após o cérebro humano. Por exemplo, o cérebro humano contém milhões de neurônios interconectados que trabalham juntos para aprender e processar informações. Da mesma forma, as redes neurais de aprendizagem profunda (ou redes neurais artificiais) são compostas por múltiplas camadas de neurônios artificiais que trabalham juntos dentro de um computador. Esses neurônios artificiais, conhecidos como nós, usam cálculos matemáticos para processar dados. As redes neurais artificiais são algoritmos de aprendizagem profunda que usam esses nós para resolver problemas complexos.

As redes neurais podem ser divididas em camada de entrada, camadas ocultas e camada de saída. As conexões entre essas diferentes camadas são compostas por parâmetros.

Camada de entrada: A camada de entrada é a primeira camada da rede neural e é responsável por receber dados de entrada externos. Cada neurônio na camada de entrada corresponde a uma característica dos dados de entrada. Por exemplo, no processamento de imagens, cada neurônio pode corresponder ao valor de um pixel na imagem.

Camadas Ocultas: A camada de entrada processa dados e os repassa para camadas mais profundas dentro da rede. Essas camadas ocultas processam informações em diferentes níveis, ajustando seu comportamento ao receber novas informações. Redes de aprendizado profundo podem ter centenas de camadas ocultas, o que lhes permite analisar problemas a partir de múltiplas perspectivas diferentes. Por exemplo, se você recebe uma imagem de um animal desconhecido que precisa ser classificado, você pode compará-lo com animais que você já conhece. Por exemplo, você pode dizer que tipo de animal é pela forma de suas orelhas, pelo número de pernas e pelo tamanho de suas pupilas. As camadas ocultas em redes neurais profundas funcionam de maneira semelhante. Se um algoritmo de aprendizado profundo está tentando classificar uma imagem de um animal, cada camada oculta irá processar diferentes características dos animais e tentar classificá-los com precisão.

Camada de Saída: A camada de saída é a última camada da rede neural e é responsável por gerar a saída da rede. Cada neurônio na camada de saída representa uma possível categoria ou valor de saída. Por exemplo, em um problema de classificação, cada neurônio na camada de saída pode corresponder a uma categoria, enquanto em um problema de regressão, a camada de saída pode ter apenas um neurônio cujo valor representa o resultado da predição;

Parâmetros: Nas redes neurais, as conexões entre diferentes camadas são representadas por pesos e viés, que são otimizados durante o processo de treinamento para permitir que a rede identifique com precisão padrões nos dados e faça previsões. O aumento nos parâmetros pode melhorar a capacidade do modelo da rede neural, ou seja, a capacidade do modelo de aprender e representar padrões complexos nos dados. Mas, correspondemente, o aumento nos parâmetros aumentará a demanda por poder de computação.

Big Data

Para serem treinadas de forma eficaz, as redes neurais geralmente requerem dados grandes, diversos e de alta qualidade de múltiplas fontes. Esses dados são a base para o treinamento e validação do modelo de aprendizado de máquina. Ao analisar big data, os modelos de aprendizado de máquina podem aprender padrões e relacionamentos nos dados, o que lhes permite fazer previsões ou classificações.

Poder de computação massivo

A demanda por poder de computação substancial surge de vários aspectos das redes neurais: estruturas complexas de várias camadas, um grande número de parâmetros, a necessidade de processar vastas quantidades de dados e métodos de treinamento iterativos (durante a fase de treinamento, o modelo deve iterar repetidamente, realizando cálculos de propagação para a frente e para trás para cada camada, incluindo cálculos para funções de ativação, funções de perda, gradientes e atualizações de peso), a necessidade de cálculos de alta precisão, capacidades de computação paralela, técnicas de otimização e regularização e processos de avaliação e verificação do modelo. À medida que o aprendizado profundo avança, a exigência por um poder de computação massivo para a IA geral está aumentando em cerca de 10 vezes a cada ano. O modelo mais recente até agora, GPT-4, contém 1,8 trilhão de parâmetros, com um custo de treinamento único de mais de $60 milhões e requisitos de poder de computação de 2.15e25 FLOPS (21.5 quintilhões de operações de ponto flutuante). A demanda por poder de computação para o treinamento de modelos futuros ainda está se expandindo, e novos modelos estão sendo desenvolvidos em um ritmo crescente.

Economia de Poder de Computação de IA

Tamanho Futuro do Mercado

De acordo com as estimativas mais autorizadas, o “Relatório de Avaliação do Índice de Poder de Computação Global 2022-2023” compilado em conjunto pela International Data Corporation (IDC), Inspur Information e pelo Instituto de Pesquisa da Indústria Global da Universidade Tsinghua, o tamanho do mercado global de computação AI deverá aumentar de $19.5 bilhões em 2022 para $34.66 bilhões em 2026. O mercado de computação AI generativa deve crescer de $820 milhões em 2022 para $10.99 bilhões em 2026. A participação da computação AI generativa no mercado global de computação AI deverá aumentar de 4.2% para 31.7%.

Monopólio no Poder de Computação na Economia

A produção de GPUs de IA tem sido exclusivamente monopolizada pela NVIDIA e elas são extremamente caras (o mais recente H100 foi vendido por $40.000 por unidade). Assim que as GPUs são lançadas, elas são rapidamente adquiridas pelas gigantes de tecnologia do Vale do Silício. Alguns desses dispositivos são usados para treinar seus próprios novos modelos. O restante é alugado para desenvolvedores de IA por meio de plataformas de nuvem, como aquelas de propriedade do Google, Amazon e Microsoft, que controlam uma vasta quantidade de recursos de computação, como servidores, GPUs e TPUs. O poder de computação se tornou um novo recurso monopolizado por essas gigantes. Muitos desenvolvedores de IA nem sequer podem comprar uma GPU dedicada sem um ágio. Para usar o equipamento mais recente, os desenvolvedores têm que alugar servidores de nuvem da AWS ou da Microsoft. Relatórios financeiros indicam que esse negócio tem lucros extremamente altos. Os serviços de nuvem da AWS ostentam uma margem de lucro bruto de 61%, enquanto a margem de lucro bruto da Microsoft é ainda maior, chegando a 72%.

Então, nós temos que aceitar essa autoridade centralizada e controle, e pagar uma margem de lucro de 72% para recursos de computação? Será que os gigantes que monopolizaram a Web2 também irão dominar a próxima era?

Desafios do Poder de Computação AGI Descentralizado

Quando se trata de antitruste, a descentralização é geralmente vista como a solução ideal. Olhando para projetos existentes, podemos alcançar o poder de computação massivo necessário para a IA por meio de projetos de armazenamento DePIN combinados com protocolos como RDNR para utilização ociosa da GPU? A resposta é não. O caminho para matar o dragão não é tão simples. Os projetos iniciais não foram especificamente projetados para o poder de computação AGI e não são viáveis. Trazer o poder de computação para o blockchain enfrenta pelo menos os seguintes cinco desafios:

  1. Verificação do trabalho: Para construir uma rede de computação verdadeiramente sem confiança que forneça incentivos econômicos aos participantes, a rede deve ter um modo de verificar se os cálculos de aprendizado profundo foram realmente realizados. A questão central aqui é a dependência de estado dos modelos de aprendizado profundo; nesses modelos, a entrada para cada camada depende da saída da camada anterior. Isso significa que você não pode simplesmente validar uma única camada em um modelo sem levar em consideração todas as camadas anteriores a ela. A computação para cada camada é baseada nos resultados de todas as camadas anteriores. Portanto, para verificar o trabalho concluído em um ponto específico (como uma camada específica), todo o trabalho desde o início do modelo até esse ponto específico deve ser executado;

  2. Mercado: Como um mercado emergente, o mercado de poder de computação de IA está sujeito a dilemas de oferta e demanda, como o problema do início a frio. A liquidez de oferta e demanda precisa ser aproximadamente correspondida desde o início, para que o mercado possa crescer com sucesso. A fim de capturar o fornecimento potencial de poder de computação, os participantes devem ser fornecidos com incentivos claros em troca de seus recursos de computação. O mercado precisa de um mecanismo para rastrear cálculos concluídos e pagar os provedores de acordo com isso, de maneira oportuna. Em mercados tradicionais, intermediários lidam com tarefas como gerenciamento e integração, enquanto reduzem os custos operacionais, estabelecendo limites mínimos de pagamento. No entanto, essa abordagem é cara ao expandir o tamanho do mercado. Apenas uma pequena parte da oferta pode ser capturada de forma econômica, levando a um estado de equilíbrio de limite no qual o mercado só pode capturar e manter um fornecimento limitado sem poder crescer ainda mais.

  3. Problema de interrupção: O problema de interrupção é uma questão fundamental na teoria da computação, que envolve determinar se uma tarefa de computação dada terminará em um tempo finito ou executará indefinidamente. Este problema é indecidível, o que significa que não há um algoritmo universal que possa prever se qualquer computação dada irá parar em um tempo finito. Por exemplo, a execução de contratos inteligentes no Ethereum também enfrenta um problema de interrupção semelhante. É impossível determinar antecipadamente quanto recurso de computação a execução de um contrato inteligente requererá, ou se ele será concluído em um tempo razoável.

(No contexto do aprendizado profundo, esse problema será mais complexo, pois os modelos e estruturas mudarão da construção de gráficos estáticos para a construção e execução dinâmica.)

  1. Privacidade: O design e desenvolvimento com consciência de privacidade é um imperativo para as equipes de projeto. Embora uma grande quantidade de pesquisa em aprendizado de máquina possa ser realizada em conjuntos de dados públicos, a fim de melhorar o desempenho do modelo e adaptá-lo a aplicações específicas, o modelo geralmente precisa ser ajustado com base em dados de usuários proprietários. Esse processo de ajuste fino pode envolver o processamento de dados pessoais, portanto, os requisitos de proteção de privacidade precisam ser considerados.

  2. Paralelização: Este é um fator chave na falta de viabilidade dos projetos atuais. Os modelos de aprendizado profundo geralmente são treinados em paralelo em grandes clusters de hardware com arquiteturas proprietárias e latência extremamente baixa, e as GPUs em redes de computação distribuída incorreriam em latência devido a trocas frequentes de dados e seriam limitadas pelo desempenho da GPU mais lenta. Quando as fontes de computação são pouco confiáveis e não confiáveis, como alcançar a paralelização heterogênea é um problema que deve ser resolvido. O método viável atual é alcançar a paralelização por meio de modelos de transformadores, como os Transformadores de Comutação, que agora têm características altamente paralelizadas.

Soluções: Embora as tentativas atuais de um mercado descentralizado de poder de computação AGI ainda estejam em estágios iniciais, existem dois projetos que inicialmente resolveram o design de consenso das redes descentralizadas e a implementação das redes de poder de computação descentralizado no treinamento e inferência de modelos. O seguinte usará Gensyn e Together como exemplos para analisar os métodos de design e problemas do mercado descentralizado de poder de computação AGI.

Gensyn

Gensyn é um mercado de poder de computação AGI que ainda está na fase de construção, com o objetivo de resolver os vários desafios da computação descentralizada de aprendizado profundo e reduzir os custos associados ao aprendizado profundo atual. Gensyn é essencialmente um protocolo de prova de participação de primeira camada baseado na rede Polkadot, que recompensa diretamente os solucionadores (aqueles que resolvem tarefas computacionais) por meio de contratos inteligentes em troca de seus dispositivos GPU inativos para computação e realização de tarefas de aprendizado de máquina.

Voltando à pergunta anterior, o cerne da construção de uma rede de computação verdadeiramente sem confiança está em verificar o trabalho de aprendizado de máquina concluído. Este é um problema altamente complexo que requer encontrar um equilíbrio entre a interseção da teoria da complexidade, teoria dos jogos, criptografia e otimização.

Gensyn propõe uma solução simples onde os solvers submetem os resultados das tarefas de aprendizado de máquina que concluíram. Para verificar se esses resultados são precisos, outro verificador independente tenta reexecutar o mesmo trabalho. Esta abordagem pode ser chamada de replicação única porque apenas um verificador reexecutaria a tarefa. Isso significa que há apenas um trabalho adicional para verificar a precisão do trabalho original. No entanto, se a pessoa que verifica o trabalho não for o solicitante original, então a questão da confiança ainda existe. Os verificadores em si podem não ser honestos, e seu trabalho precisa ser verificado. Isso leva a um problema potencial onde, se a pessoa que verifica o trabalho não for o solicitante original, então será necessário outro verificador para verificar seu trabalho. Mas esse novo verificador também pode não ser confiável, então será necessário outro verificador para verificar seu trabalho, o que poderia continuar indefinidamente, criando uma cadeia de replicação infinita. Aqui precisamos introduzir três conceitos-chave e entrelaçá-los para construir um sistema de participantes com quatro papéis para resolver o problema da cadeia infinita.

Provas de aprendizado probabilístico: Constrói certificados de trabalho concluído usando metadados do processo de otimização baseado em gradientes. Ao replicar certas etapas, esses certificados podem ser rapidamente verificados para garantir que o trabalho tenha sido concluído conforme esperado.

Protocolo de posicionamento preciso baseado em gráficos: Usando protocolos de posicionamento preciso baseados em gráficos de múltipla granularidade e execução consistente de avaliadores cruzados. Isso permite a reexecução e comparação do trabalho de verificação para garantir consistência, o que é confirmado pelo próprio blockchain.

Jogo de incentivo no estilo Truebit: Use apostas e penalizações para construir um jogo de incentivo que garanta que todo participante economicamente razoável atue honestamente e execute suas tarefas esperadas.

O sistema de participantes é composto por submissor, solucionador, verificador e denunciante.

Submissões:

Os submetedores são os usuários finais do sistema que fornecem tarefas a serem calculadas e pagam pelas unidades de trabalho concluídas;

Solvers:

Os solvers são os trabalhadores principais do sistema, realizando o treinamento do modelo e gerando provas que são verificadas pelo verificador;

Verificadores:

Verificadores são essenciais para conectar o processo de treinamento não determinístico com cálculos lineares determinísticos, replicando partes da prova do solucionador e comparando distâncias com os limiares esperados;

Denunciantes:

Denunciantes são a última linha de defesa, verificando o trabalho dos verificadores e levantando desafios na esperança de receber pagamentos generosos de recompensa.

Operação do sistema

O sistema de jogo projetado pelo protocolo opera por oito etapas, abrangendo quatro principais papéis de participantes, para completar todo o processo, desde a submissão da tarefa até a verificação final.

Submissão de Tarefa: As tarefas consistem em três peças específicas de informação:

Metadados descrevendo a tarefa e hiperparâmetros;

Um arquivo binário de modelo (ou arquitetura básica);

Dados de treinamento pré-processados publicamente acessíveis.

Para enviar uma tarefa, o remetente especifica os detalhes da tarefa em um formato legível por máquina e a envia para a cadeia juntamente com o arquivo binário do modelo (ou arquitetura legível por máquina) e uma localização publicamente acessível dos dados de treinamento pré-processados. Os dados públicos podem ser armazenados em um armazenamento de objeto simples como o S3 da AWS, ou em um armazenamento descentralizado como IPFS, Arweave ou Subspace.

Perfilamento: O processo de perfilamento estabelece um limite de distância de referência para a verificação da prova de aprendizado. Os verificadores buscarão periodicamente tarefas de perfilamento e gerarão limites de mutação para a comparação das provas de aprendizado. Para gerar o limite, o verificador executará de forma determinística partes do treinamento usando diferentes sementes aleatórias, gerando e verificando suas próprias provas. Durante esse processo, o verificador estabelece um limite de distância esperado geral para o trabalho não determinístico da solução que pode ser usado para verificação.

Treinamento: Após o perfilamento, as tarefas entram na fila de tarefas pública (similar ao Mempool da Ethereum). Selecione um resolvedor para executar a tarefa e remover a tarefa da fila de tarefas. Os resolvedores executam a tarefa com base nos metadados enviados pelo remetente e no modelo e nos dados de treinamento fornecidos. Ao executar tarefas de treinamento, os resolvedores também geram provas de aprendizado verificando regularmente pontos e armazenando metadados (incluindo parâmetros) durante o processo de treinamento, para que os verificadores possam replicar as seguintes etapas de otimização o mais precisamente possível.

Geração de prova: Os solucionadores armazenam periodicamente pesos do modelo ou atualizações e seus índices correspondentes do conjunto de dados de treinamento para identificar as amostras usadas para gerar as atualizações de peso. A frequência do ponto de verificação pode ser ajustada para fornecer garantias mais fortes ou para economizar espaço de armazenamento. As provas podem ser “empilhadas”, o que significa que elas podem começar a partir de uma distribuição aleatória usada para inicializar os pesos, ou a partir de pesos pré-treinados gerados usando suas próprias provas. Isso permite que o protocolo construa um conjunto de modelos básicos pré-treinados comprovados, que podem ser ajustados para tarefas mais específicas.

Verificação de prova: Após a conclusão da tarefa, os solvers registram a conclusão da tarefa na cadeia e exibem sua prova de aprendizado em um local de acesso público para que os verificadores acessem. Os verificadores retiram tarefas de verificação do pool de tarefas público e realizam trabalho computacional para reexecutar parte da prova e executar cálculos de distância. A cadeia, juntamente com o limiar calculado durante a fase de perfilamento, usa então a distância resultante para determinar se a verificação corresponde à prova.

Desafio de localização baseado em gráfico: Após verificar a prova de aprendizagem, os denunciantes podem replicar o trabalho dos verificadores para verificar se o trabalho de verificação em si foi executado corretamente. Se os denunciantes acreditarem que a verificação foi executada incorretamente (maliciosamente ou não), eles podem desafiá-la para arbitragem contratual por uma recompensa. Essa recompensa pode vir dos depósitos de solucionador e validador (no caso de um verdadeiro positivo), ou de um bônus de loteria do pool (no caso de um falso positivo), com a arbitragem realizada usando a própria cadeia. Os denunciantes (atuando como verificadores em seu caso) verificarão e desafiarão o trabalho apenas se esperarem receber uma compensação adequada. Na prática, isso significa que os denunciantes são esperados para se juntar e deixar a rede com base no número de outros denunciantes ativos (ou seja, com depósitos ativos e desafios). Portanto, a estratégia padrão esperada para qualquer denunciante é se juntar à rede quando houver menos outros denunciantes, postar um depósito, selecionar aleatoriamente uma tarefa ativa e iniciar seu processo de verificação. Após uma tarefa, eles pegarão outra tarefa ativa aleatória e repetirão até que o número de denunciantes exceda seu limite de pagamento determinado, momento em que deixarão a rede (ou mais provável, mudarão para outro papel na rede - verificador ou solucionador - com base em suas capacidades de hardware) até que a situação se inverta novamente.

Arbitragem de contrato: Quando os verificadores são desafiados por denunciantes, eles entram em um processo com a cadeia para descobrir a localização da operação ou entrada disputada, e, por fim, a cadeia realizará a operação básica final e determinará se o desafio é justificado. Para manter os denunciantes honestos e superar o dilema do verificador, erros forçados periódicos e pagamentos de jackpot são introduzidos aqui.

Assentamento: Durante o processo de assentamento, os participantes são pagos com base nas conclusões de verificações probabilísticas e determinísticas. Diferentes cenários de pagamento surgem dependendo dos resultados de verificações e desafios anteriores. Se o trabalho for considerado realizado corretamente e todas as verificações passarem, tanto os provedores de soluções quanto os verificadores são recompensados com base nas operações realizadas.

Revisão Breve do Projeto

Gensyn projetou um sistema sofisticado de teoria dos jogos na camada de verificação e camadas de incentivo, que permite a identificação rápida e retificação de erros ao apontar divergências dentro da rede. No entanto, ainda há muitos detalhes faltando no sistema atual. Por exemplo, como definir parâmetros para garantir que as recompensas e penalidades sejam razoáveis sem definir o limite muito alto? Você considerou cenários extremos e o poder de computação diferente dos solucionadores nos aspectos de teoria dos jogos? Não há uma descrição detalhada da execução paralela heterogênea na versão atual do whitepaper. Gensyn ainda tem um longo caminho a percorrer.

Together.ai

Together.ai é uma empresa que se concentra em soluções computacionais de IA descentralizadas de código aberto para grandes modelos. O objetivo é que qualquer pessoa possa acessar IA em qualquer lugar. Estritamente falando, Together não é um projeto de blockchain, mas resolveu preliminarmente os problemas de latência dentro de redes computacionais AGI descentralizadas. Portanto, o artigo a seguir apenas analisa as soluções da Together e não avalia o projeto em si.

Como alcançar o treinamento e a inferência de modelos grandes quando as redes descentralizadas são 100 vezes mais lentas do que os centros de dados?

Vamos imaginar a distribuição de GPUs participando de uma rede descentralizada. Esses dispositivos serão espalhados por diferentes continentes e cidades, cada um precisando se conectar com latências e larguras de banda variadas. Como mostrado na figura abaixo, um cenário distribuído simulado mostra dispositivos localizados na América do Norte, Europa e Ásia, com larguras de banda e latências diferentes entre eles. O que precisa ser feito para conectá-los efetivamente?

Modelagem computacional de treinamento distribuído: O diagrama abaixo mostra a situação de treinar um modelo base em vários dispositivos, apresentando três tipos de comunicação: Ativação Adiante, Gradiente Retroativo e Comunicação Lateral.

Combinando largura de banda de comunicação e latência, duas formas de paralelismo precisam ser consideradas: paralelismo de pipeline e paralelismo de dados, correspondendo aos três tipos de comunicação no cenário de vários dispositivos:

No paralelismo de pipeline, todas as camadas do modelo são divididas em várias etapas, onde cada dispositivo processa uma etapa, que é uma sequência de camadas consecutivas, como vários blocos de Transformer. Durante a propagação para a frente, as ativações são passadas para a próxima etapa e, durante a propagação para trás, os gradientes das ativações são passados de volta para a etapa anterior.

No paralelismo de dados, os dispositivos calculam independentemente os gradientes para diferentes microlotes, mas precisam sincronizar esses gradientes por meio da comunicação.

Otimização de agendamento:

Em um ambiente descentralizado, o processo de treinamento muitas vezes é limitado pela comunicação. Algoritmos de agendamento geralmente atribuem tarefas que exigem extensa comunicação para dispositivos com conexões mais rápidas. Considerando as dependências entre tarefas e a heterogeneidade da rede, é primeiro necessário modelar o custo de estratégias de agendamento específicas. Para capturar o custo complexo de comunicação de treinamento de modelos base, a Together propõe uma formulação inovadora e decompõe o modelo de custo em dois níveis usando teoria dos grafos:

A teoria dos grafos é um ramo da matemática que estuda as propriedades e estruturas dos grafos (redes). Um grafo é composto por vértices (nós) e arestas (linhas que conectam os nós). O principal objetivo da teoria dos grafos é estudar várias propriedades dos grafos, como a conectividade, coloração e a natureza dos caminhos e ciclos nos grafos.

O primeiro nível é um problema de particionamento de gráfico equilibrado (dividindo o conjunto de vértices de um gráfico em vários subconjuntos de tamanho igual ou quase igual, enquanto minimiza o número de arestas entre os subconjuntos). Neste particionamento, cada subconjunto representa uma partição, e os custos de comunicação são reduzidos minimizando as arestas entre as partições, correspondendo aos custos de comunicação do paralelismo de dados.

O segundo nível envolve um problema conjunto de correspondência de gráficos e de vendedor viajante (um problema de otimização combinatória que combina elementos de correspondência de gráficos e do problema do vendedor viajante). O problema de correspondência de gráficos envolve encontrar uma correspondência no gráfico que minimize ou maximize algum custo. O problema do vendedor viajante busca o caminho mais curto que visita todos os nós no gráfico, correspondendo aos custos de comunicação do paralelismo de pipeline.

O diagrama acima é um esquema do processo. Devido aos cálculos complexos envolvidos na implementação real, o processo descrito no diagrama é simplificado para facilitar a compreensão. Para uma implementação detalhada, pode-se consultar a documentação no site oficial da Together.

Suponha que haja um conjunto de NN dispositivos, DD, com atrasos de comunicação incertos (matriz AA) e larguras de banda (matriz BB), com base no conjunto de dispositivos DD, primeiro geramos uma partição de gráfico equilibrada. Cada partição ou grupo de dispositivos contém aproximadamente o mesmo número de dispositivos e todos lidam com a mesma etapa de pipeline. Isso garante que durante o paralelismo de dados, cada grupo de dispositivos execute uma quantidade semelhante de trabalho. De acordo com os atrasos de comunicação e larguras de banda, uma fórmula pode calcular o "custo" de transferência de dados entre grupos de dispositivos. Cada grupo equilibrado é fundido para criar um gráfico grosseiro totalmente conectado, onde cada nó representa uma etapa de pipeline e as arestas representam o custo de comunicação entre duas etapas. Para minimizar os custos de comunicação, um algoritmo de correspondência é usado para determinar quais grupos de dispositivos devem trabalhar juntos.

Para uma otimização adicional, esse problema também pode ser modelado como um problema do caixeiro viajante de circuito aberto (circuito aberto significa que não é necessário retornar ao ponto de partida do caminho) para encontrar um caminho ótimo para transmitir dados em todos os dispositivos. Finalmente, Together utiliza um algoritmo de agendamento inovador para encontrar a estratégia de alocação ótima para o modelo de custo dado, minimizando assim os custos de comunicação e maximizando a taxa de transferência de treinamento. De acordo com testes, mesmo se a rede for 100 vezes mais lenta sob essa otimização de agendamento, a taxa de transferência de treinamento de ponta a ponta é apenas cerca de 1,7 a 2,3 vezes mais lenta.

Otimização de Compressão de Comunicação:

Para a otimização da compressão de comunicação, Together introduziu o algoritmo AQ-SGD (para um processo de cálculo detalhado, consulte o artigo "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). O algoritmo AQ-SGD é uma nova técnica de compressão de ativação projetada para resolver problemas de eficiência de comunicação durante o treinamento paralelo de pipeline em redes lentas. Diferente dos métodos anteriores de comprimir diretamente os valores de ativação, o AQ-SGD concentra-se em comprimir as mudanças nos valores de ativação da mesma amostra de treinamento em diferentes períodos. Este método único introduz uma interessante dinâmica "auto-executável", onde se espera que o desempenho do algoritmo melhore gradualmente à medida que o treinamento se estabiliza. O algoritmo AQ-SGD tem sido rigorosamente analisado teoricamente e comprovado ter boas taxas de convergência sob certas condições técnicas e funções de quantização de erros limitados. O algoritmo pode ser efetivamente implementado sem adicionar sobrecarga de tempo de execução de ponta a ponta adicional, embora exija o uso de mais memória e SSD para armazenar valores de ativação. Por meio de extensos experimentos em conjuntos de dados de classificação de sequência e modelagem de linguagem, foi demonstrado que o AQ-SGD comprime valores de ativação para 2–4 bits sem sacrificar o desempenho de convergência. Além disso, o AQ-SGD pode ser integrado com algoritmos de compressão de gradiente de última geração para alcançar "compressão de comunicação de ponta a ponta", o que significa que as trocas de dados entre todas as máquinas, incluindo gradientes de modelo, valores de ativação para frente e gradientes para trás, são compactadas com baixa precisão, melhorando significativamente a eficiência de comunicação do treinamento distribuído. Em comparação com o desempenho de treinamento de ponta a ponta em uma rede de computação centralizada (como 10 Gbps) sem compactação, atualmente é apenas 31% mais lento. Combinado com os dados sobre otimização de agendamento, embora ainda haja uma certa lacuna entre as redes de computação centralizadas, há uma grande esperança de recuperação no futuro.

Conclusão

No período de dividendos trazido pela onda de IA, o mercado de poder de computação AGI é, sem dúvida, o mercado com o maior potencial e a maior demanda entre os diversos mercados de poder de computação. No entanto, a maior dificuldade de desenvolvimento, requisitos de hardware e demandas de capital estão trazendo desafios para esta indústria. Combinando os dois projetos apresentados acima, ainda temos algum tempo antes que o mercado de poder de computação AGI seja lançado. A rede descentralizada real também é muito mais complicada do que o cenário ideal. Atualmente, não é suficiente para competir com os gigantes da nuvem.

No momento da escrita, também observei que alguns projetos de pequena escala que ainda estão em sua infância (estágio PPT) começaram a explorar alguns novos pontos de entrada, como focar no estágio de inferência AGI menos desafiador em vez do estágio de treinamento. No entanto, a longo prazo, a importância da descentralização e dos sistemas sem permissão é profunda. O direito de acessar e treinar o poder de computação AGI não deve ser concentrado nas mãos de alguns gigantes centralizados. A humanidade não precisa de uma nova 'teocracia' ou de um novo 'papa', nem deve pagar caras taxas de associação.

Aviso Legal:

  1. Este artigo é reimpresso de [GateYBB Capital]. Todos os direitos autorais pertencem ao autor original [Zeke]. Se houver objeções a este reenvio, entre em contato com o Gate Aprender equipe, e eles vão lidar com isso prontamente.
  2. Isenção de responsabilidade: Os pontos de vista e opiniões expressos neste artigo são exclusivamente do autor e não constituem qualquer conselho de investimento.
  3. As traduções do artigo para outros idiomas são feitas pela equipe do Gate Learn. Salvo indicação em contrário, é proibida a cópia, distribuição ou plágio dos artigos traduzidos.
今すぐ始める
登録して、
$100
のボーナスを獲得しよう!