OPML: Aprendizado de Máquina com Sistema Rollup Otimista

TL;DR

Propomos OPML (Optimistic Machine Learning), que pode usar métodos otimistas para raciocínio de modelo de IA e treinamento/ajuste de sistemas blockchain.

Comparado com o ZKML, o OPML pode fornecer serviços de ML de baixo custo e alta eficiência. Os requisitos de participação para OPML são baixos: agora podemos executar OPML com grandes modelos de linguagem, como 7B-LLaMA (tamanho do modelo ~26GB) em um PC comum sem uma GPU.

O OPML emprega um jogo de verificação (semelhante aos sistemas Truebit e Optimistic Rollup) para garantir a descentralização e o consenso verificável dos serviços ML.

  • O solicitante primeiro inicia uma tarefa de serviço de ML.
  • Em seguida, o servidor conclui a tarefa de serviço ML e envia o resultado para a cadeia.
  • O verificador verificará o resultado. Suponha que haja um validador afirmando que o resultado é falso. Ele inicia o jogo de verificação com o servidor (acordo bipartido) e tenta refutar a alegação identificando uma etapa incorreta específica.
  • Por fim, ocorre uma arbitragem de etapa única no contrato inteligente.

Jogo de Verificação de Fase Única

O protocolo de identificação de fase única funciona de forma semelhante à delegação de computação (RDoC), onde se assume que duas ou mais partes (com pelo menos uma parte honesta) executam o mesmo procedimento. Ambas as partes podem se questionar com precisão para identificar as etapas em disputa. Envie as etapas para um juiz menos poderoso computacionalmente (contrato inteligente no blockchain) para arbitragem.

No OPML de estágio único:

  • Construímos uma máquina virtual (VM) para execução off-chain e arbitragem on-chain. Garantimos a equivalência de VMs off-chain e VMs on-chain implementadas em contratos inteligentes.
  • Para garantir a eficiência da inferência de modelo de IA em máquinas virtuais, implementamos uma biblioteca DNN leve projetada especificamente para essa finalidade, em vez de depender de estruturas populares de ML, como Tensorflow ou PyTorch. Além disso, é fornecido um script que converte os modelos Tensorflow e PyTorch nessa biblioteca leve.
  • Use a tecnologia de compilação cruzada para compilar o código de raciocínio do modelo de inteligência artificial em instruções de programa de máquina virtual.
  • A imagem da máquina virtual é gerenciada com uma árvore Merkle e somente a raiz Merkle será carregada no contrato inteligente na cadeia. (A raiz de Merkel representa o estado da máquina virtual)

OPML: Machine Learning com Optimistic Rollup System

  • O acordo bipartido ajudará a localizar a etapa da disputa, que será enviada para o contrato de arbitragem no blockchain

OPML: Machine Learning com Optimistic Rollup System

Jogo de verificação em vários estágios

Limitações dos protocolos de localização monofásica

Transição para protocolo multifásico

Para abordar as limitações impostas pelo protocolo monofásico e garantir que o OPML possa atingir níveis de desempenho comparáveis aos ambientes nativos, propomos uma extensão para o protocolo multifásico. Usando essa abordagem, só precisamos realizar cálculos na VM no estágio final, semelhante a um protocolo de estágio único. Para outras etapas, temos a flexibilidade de realizar cálculos para realizar transições de estado em um ambiente nativo, aproveitando o poder de CPUs, GPUs, TPUs e até processamento paralelo. Ao reduzir a dependência da VM, reduzimos significativamente a sobrecarga e, assim, melhoramos significativamente o desempenho de execução do OPML, quase semelhante ao ambiente nativo.

A figura abaixo demonstra um jogo de verificação composto por duas fases (k = 2). Na Fase 1, o processo se assemelha a um jogo de verificação de estágio único, onde cada transição de estado corresponde a um único VM uop que altera o estado da máquina virtual. Na fase 2, as transições de estado correspondem a "grandes instruções" que contêm múltiplos uops que alteram o contexto computacional.

Committers e verificadores usarão primeiro o acordo bipartido para iniciar a segunda fase do jogo de verificação para localizar etapas disputadas no "grande pedido". Esta etapa enviará para a próxima fase, fase -1. O primeiro estágio funciona como um jogo de verificação de estágio único. O contrato bipartido da Fase 1 ajudará a localizar as etapas contestadas no VM uops. Esta etapa será enviada para o contrato de arbitragem na blockchain.

Para garantir a integridade e a segurança da transição para a próxima fase, contamos com as árvores Merkle. Esta operação consiste em extrair subárvores Merkle de estágios de nível superior, garantindo assim uma continuação perfeita do processo de verificação.

OPML: Machine Learning com Optimistic Rollup System

OPML de vários estágios

Nesta apresentação, propomos a abordagem OPML de dois estágios usada no modelo LLaMA:

  • O processo de cálculo do aprendizado de máquina (ML), especialmente rede neural profunda (DNN), pode ser expresso como um gráfico de cálculo, denotado como G. O gráfico consiste em vários nós de computação capazes de armazenar resultados de computação intermediários.
  • O raciocínio do modelo DNN é essencialmente um processo de cálculo no gráfico de cálculo acima. O gráfico inteiro pode ser visto como o estado de inferência (contexto computacional na Fase-2). À medida que cada nó é computado, o resultado é armazenado naquele nó, avançando assim o gráfico de computação para o próximo estado.

OPML: Machine Learning com Optimistic Rollup System

  • Portanto, podemos primeiro realizar o jogo de verificação no grafo computacional (na fase 2). Na segunda etapa do jogo de verificação, o cálculo do nó do grafo pode ser realizado no ambiente local usando CPU ou GPU multi-threaded. O acordo bipartido ajudará a localizar o nó disputado cuja computação será enviada para a próxima fase (fase-1) do acordo bipartido.
  • Na bisseção da primeira fase, convertemos a computação de um único nó em instruções de máquina virtual (VM), semelhante ao que é feito no protocolo monofásico.

Vale a pena notar que antecipamos a introdução de métodos OPML de vários estágios (compreendendo mais de dois estágios) quando a computação de um único nó no grafo computacional ainda é computacionalmente complexa. Esta extensão irá melhorar ainda mais a eficiência e eficácia geral do processo de validação.

Melhorias de desempenho

Aqui, fornecemos uma breve discussão e análise de nossa proposta de estrutura de verificação em vários estágios.

Assumindo que existem n nós no gráfico de cálculo DNN, cada nó precisa buscar m microinstruções da VM para concluir o cálculo na VM. Suponha que a taxa de aceleração de computação para cada nó usando GPU ou computação paralela seja α. Essa proporção representa o aumento de velocidade alcançado pela GPU ou computação paralela e pode atingir valores significativos, muitas vezes dezenas ou até centenas de vezes mais rápido que a execução da VM.

Com base nessas considerações, tiramos as seguintes conclusões:

  1. O OPML de dois estágios é superior ao OPML de estágio único e realiza o cálculo da aceleração α vezes. O uso da verificação em vários estágios nos permite aproveitar o poder de computação acelerado fornecido por GPUs ou processamento paralelo, melhorando significativamente o desempenho geral.

  2. Ao comparar o tamanho das árvores Merkle, descobrimos que no OPML de dois estágios, o tamanho é O(m+n), enquanto no OPML de estágio único, o tamanho é significativamente maior do que O(mn). A redução no tamanho da árvore Merkle destaca ainda mais a eficiência e a escalabilidade do projeto de vários estágios.

Em resumo, a estrutura de verificação de vários estágios fornece melhorias significativas de desempenho, garantindo cálculos mais eficientes e rápidos, especialmente ao explorar os recursos de aceleração de GPUs ou processamento paralelo. Além disso, o tamanho reduzido da árvore Merkle aumenta a eficácia e a escalabilidade do sistema, tornando o OPML de vários estágios a escolha para vários aplicativos.

Consistência e Determinismo

No OPML, garantir a consistência dos resultados do ML é fundamental.

Durante a execução nativa dos cálculos DNN, principalmente em diferentes plataformas de hardware, devido às características dos números de ponto flutuante, podem ocorrer diferenças nos resultados da execução. Por exemplo, cálculos paralelos envolvendo números de ponto flutuante, como (a+b)+c e a+(b+c), geralmente produzem resultados diferentes devido a erros de arredondamento. Além disso, fatores como linguagem de programação, versão do compilador e sistema operacional podem afetar os resultados de cálculo de números de ponto flutuante, levando a mais inconsistências nos resultados de ML.

Para enfrentar esses desafios e garantir a consistência do OPML, adotamos duas abordagens principais:

  1. Usando o algoritmo de ponto fixo, também conhecido como tecnologia de quantização. Essa técnica nos permite representar e realizar cálculos usando precisão fixa em vez de números de ponto flutuante. Ao fazer isso, mitigamos os efeitos dos erros de arredondamento de ponto flutuante, resultando em resultados mais confiáveis e consistentes.

  2. Utilizamos bibliotecas de ponto flutuante baseadas em software projetadas para manter a funcionalidade consistente em diferentes plataformas. Essas bibliotecas garantem a consistência entre plataformas e o determinismo dos resultados de ML, independentemente da configuração subjacente de hardware ou software.

Combinando aritmética de ponto fixo e bibliotecas de ponto flutuante baseadas em software, estabelecemos uma base sólida para resultados de ML consistentes e confiáveis dentro da estrutura OPML. Essa coordenação de técnicas nos permite superar os desafios inerentes impostos por variáveis de ponto flutuante e diferenças de plataforma, aprimorando a integridade e a confiabilidade dos cálculos OPML.

OPML x ZKML

OPML: Machine Learning com Optimistic Rollup System

*: Na estrutura OPML atual, nosso foco principal é a inferência de modelos ML, permitindo a computação de modelo eficiente e segura. No entanto, deve-se enfatizar que nossa estrutura também suporta o processo de treinamento, tornando-a uma solução geral para várias tarefas de aprendizado de máquina.

Observe que o OPML ainda está em desenvolvimento. Se você estiver interessado em fazer parte deste empolgante programa e contribuir para o projeto OPML, sinta-se à vontade para nos contatar.

Ver original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • Comentário
  • Compartilhar
Comentário
0/400
Sem comentários
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)