Escrito por: Maggie, Pesquisa prospectiva

ZKML (Aprendizado de máquina com conhecimento zero) é uma tecnologia que usa prova de conhecimento zero para aprendizado de máquina. ZKML é uma ponte entre IA e blockchain. O ZKML pode resolver o problema da proteção da privacidade dos modelos/entradas de IA e o problema do processo de raciocínio verificável, para que pequenos modelos ou ZKP inferidos possam ser colocados na cadeia. O significado da prova de modelo/inferência na cadeia é:
Deixe o blockchain perceber o mundo físico. Por exemplo: um modelo de reconhecimento facial executado no blockchain pode perceber o rosto do blockchain. Através do modelo de IA na cadeia, o blockchain pode entender que o rosto pode ser o de uma mulher e sua idade aproximada, etc.
Deixe os contratos inteligentes tomarem decisões. Por exemplo: o modelo de previsão de preços WETH na cadeia pode ajudar os contratos inteligentes a tomar decisões comerciais.
Execute modelos de IA de forma privada. Por exemplo: uma empresa gasta muito poder computacional para treinar um modelo e espera fornecer serviços de inferência de maneira que proteja a privacidade, ou a entrada do usuário deseja garantir a privacidade. O uso do ZKML pode não apenas garantir a privacidade do modelo/entrada, mas também provar aos usuários que a inferência é realizada corretamente, alcançando uma inferência sem confiança.
Aplicação do ZKML
IA on-chain: Coloque o modelo de IA/prova de raciocínio de IA na cadeia para que os contratos inteligentes possam usar a IA para tomar decisões. Por exemplo, o sistema de negociação on-chain é usado para decisões de investimento on-chain.
Blockchain de autoaperfeiçoamento: permitir que o blockchain use recursos de IA para melhorar e revisar continuamente estratégias com base em dados históricos. Por exemplo, um sistema de reputação na cadeia baseado em IA.
AIGC on-chain: O conteúdo/arte gerado pelo AIGC é carregado no Mint no NFT, e ZK pode provar a exatidão do processo. Nenhuma imagem protegida por direitos autorais é usada no conjunto de dados, etc.
Autenticação biométrica (KYC) da carteira: A prova de reconhecimento facial está na cadeia e a carteira completa o KYC.
Segurança de IA: Use IA para detecção de fraudes, prevenção de ataques de bruxas, etc.
Jogos ZKML on-chain: jogadores de xadrez com inteligência artificial on-chain, personagens NFT baseados em redes neurais, etc.
ZKML tecnicamente
Objetivo: Converter redes neurais em circuitos ZK. Dificuldades: 1. Os circuitos ZK não suportam números de ponto flutuante. 2. Redes neurais muito grandes são difíceis de converter.
Progresso atual:
A primeira biblioteca ZKML foi há 2 anos e a história de desenvolvimento de toda a tecnologia é muito curta. Atualmente, a biblioteca ZKML mais recente oferece suporte a algumas redes neurais simples ZKization e é aplicada ao blockchain. Diz-se que modelos básicos de regressão linear podem ser colocados na cadeia, e outros tipos de modelos de redes neurais menores podem apoiar a prova de serem colocados na cadeia. Mas vi muito poucas demonstrações e só vi um reconhecimento de número manuscrito.
Diz-se que algumas ferramentas suportam parâmetros de 100M e outras afirmam ser capazes de converter GPT2 em circuitos ZK e gerar certificados ZK.
Direção de desenvolvimento:
A quantização de rede (quantização de rede) converte números de ponto flutuante em redes neurais em números de ponto fixo e redes neurais leves (compatíveis com ZK).
Tente converter redes neurais de parâmetros de grande escala em circuitos ZK e melhorar a eficiência da prova (expandir as capacidades do ZK).
Resumir:
ZKML é uma ponte entre IA e blockchain. Seu significado reside em permitir que o blockchain perceba o mundo físico, permitindo que contratos inteligentes tomem decisões e executem modelos de IA para proteger a privacidade.
Esta tecnologia tem uma história curta, mas está se desenvolvendo rapidamente. Atualmente, alguns modelos simples de redes neurais podem ser convertidos em circuitos ZK e os modelos podem ser carregados ou as provas de inferência podem ser carregadas. No entanto, a linguagem é relativamente difícil. Atualmente, Ddkang/zkml afirma ser capaz de gerar a versão ZK dos modelos de processamento de linguagem natural GPT2, Bert e Diffusion, mas o efeito real não é claro. carregado na cadeia. Acredita-se que com o desenvolvimento da tecnologia de volume de rede, tecnologia ZK e tecnologia de expansão blockchain, o modelo de linguagem ZKML estará disponível em breve.
1. Antecedentes
(Se você sabe algo sobre ZK e ML, pode pular este capítulo).
Prova de conhecimento zero (ZK): Prova de conhecimento zero significa que o provador pode convencer o verificador de que uma determinada afirmação está correta sem fornecer qualquer informação útil ao verificador. ZK é usado principalmente para provar que o processo de cálculo foi executado corretamente e proteger a privacidade.
Prove a exatidão do processo de cálculo: tome o ZK-rollup como exemplo. A operação do ZK-rollup é simplesmente empacotar várias transações, publicá-las em L1 e, ao mesmo tempo, publicar uma prova (usando tecnologia de prova de conhecimento zero. ) para reivindicar essas transações como válidas, assim que for verificado em L1 que ela é realmente válida, o status do zk-rollup será atualizado.
Proteção de privacidade: Tomemos como exemplo o protocolo Aztec. Os ativos no zk.money da Aztec existem na forma de notas, semelhante ao UTXO do Bitcoin. será destruída e uma nova fatura será criada para o beneficiário e para você (dar o troco). A prova de conhecimento zero é usada para proteger a privacidade e provar que a quantidade de notas destruídas e recém-criadas é a mesma, e o usuário tem o direito de controlar as notas.
Aprendizado de máquina: o aprendizado de máquina é um ramo da inteligência artificial. A teoria do aprendizado de máquina envolve principalmente o projeto e a análise de algoritmos que permitem aos computadores “aprender” automaticamente. Os algoritmos de aprendizado de máquina analisam e obtêm automaticamente padrões de dados e usam os padrões para prever dados desconhecidos. O aprendizado de máquina tem sido amplamente utilizado em áreas como visão computacional, processamento de linguagem natural, identificação biométrica, mecanismos de busca, diagnóstico médico, detecção de fraudes com cartões de crédito, análise de mercado de valores mobiliários, sequenciamento de sequências de DNA, reconhecimento de fala e escrita, jogos e robôs.
2. Que problemas o ZKML resolve?
ZKML é um campo de pesquisa e desenvolvimento que causou sensação na comunidade criptográfica nos últimos dois anos. Usando provas de conhecimento zero para aprendizado de máquina
, o principal objetivo desta tecnologia é usar a prova de conhecimento zero para resolver os problemas de proteção de privacidade e verificabilidade do aprendizado de máquina. Isso permite que pequenos modelos ou ZKPs inferidos sejam colocados na cadeia e se tornem uma ponte entre IA e blockchain:
Modelo on-chain: os modelos ML podem ser convertidos em circuitos ZK, e pequenos modelos ZKML podem ser armazenados em contratos inteligentes no blockchain. Os usuários podem usar o modelo chamando métodos de contrato inteligente. Por exemplo, RockyBot da Modulus Labs construiu um modelo de IA on-chain para prever o preço do WETH para decisões comerciais.
O raciocínio e a prova do modelo são carregados na cadeia: converta o modelo ML em um circuito ZK, execute o raciocínio fora da cadeia e gere uma prova ZK. A prova ZK pode provar que o processo de raciocínio é executado corretamente. Os resultados da inferência e a prova ZK são enviados à cadeia para referência do chamador e verificação da prova pelo contrato inteligente.
Qual é o sentido de colocar prova de modelo/inferência na cadeia?
Deixe o blockchain perceber o mundo físico. Por exemplo: um modelo de reconhecimento facial executado no blockchain pode perceber o rosto do blockchain. Através do modelo de IA na cadeia, o blockchain pode entender que o rosto pode ser o de uma mulher, quantos anos ela tem, etc.
Deixe os contratos inteligentes tomarem decisões. Por exemplo: o modelo de previsão de preços WETH na cadeia pode ajudar os contratos inteligentes a tomar decisões comerciais.
Execute modelos de IA de forma privada. Por exemplo: uma empresa gasta muito poder computacional para treinar um modelo e espera fornecer serviços de inferência de maneira que proteja a privacidade, ou a entrada do usuário deseja garantir a privacidade. O uso do ZKML pode não apenas garantir a privacidade do modelo/entrada, mas também provar aos usuários que a inferência é realizada corretamente, alcançando uma inferência sem confiança.
O papel da prova de conhecimento zero no ZKML:
Proteção de privacidade: proteja a privacidade dos dados de entrada no modelo de ML ou no processo de previsão.
Privacidade de dados (Modelo Público + Dados Privados): Tenho alguns dados sensíveis, como dados médicos, imagens faciais, etc. Posso usar ZKML para proteger a privacidade dos dados de entrada, executar um modelo de rede neural pública nesses dados e obter os resultados. Por exemplo, modelos de reconhecimento facial,
Privacidade do modelo (modelo privado + dados públicos): por exemplo, gastei muito dinheiro para treinar um modelo e não quero expor meu modelo, então preciso proteger a privacidade do modelo. Posso usar ZKML para executar um modelo de rede neural privada que preserva a privacidade e pode raciocinar sobre entradas públicas e obter resultados.
Verificabilidade: Use ZKP para provar a execução correta do processo de raciocínio de ML, tornando o processo de aprendizado de máquina verificável.
Suponha que a execução do modelo não esteja no meu servidor, mas preciso garantir que a inferência seja executada corretamente. Posso usar o ZKML para realizar uma inferência em uma determinada entrada e modelo, e ele produz uma saída. O ZKP pode provar que o processo foi executado corretamente. Mesmo que o processo em execução não esteja no meu computador, posso verificar se a inferência está correta. verificando o ZKP executado e, portanto, acredite no resultado.
3. Casos de uso para ZKML
integridade computacional
IA on-chain: A implantação do modelo de IA no blockchain permite que contratos inteligentes tenham recursos de tomada de decisão por meio do modelo de IA.
Modulus Labs: RockyBot bot de negociação de ML verificável na cadeia (bot de negociação de aprendizado de máquina verificável no blockchain)
Blockchain de autoaperfeiçoamento: permitir que o blockchain use recursos de IA para melhorar e revisar continuamente estratégias com base em dados históricos.
O AMM da Lyra Finance é aprimorado com inteligência artificial.
Crie um sistema de reputação baseado em IA para Astraly.
Crie recursos de conformidade inteligentes baseados em IA em nível de contrato para o protocolo Aztec
Modulus Labs: Blockchains que se auto-aprimoram (link):
AIGC on-chain: O conteúdo/arte gerado pelo AIGC é carregado no Mint no NFT, e ZK pode provar a exatidão do processo. Nenhuma imagem protegida por direitos autorais é usada no conjunto de dados, etc.
Transparência do ML como serviço (MLaaS) (link)
Segurança de IA: Use IA para detecção de fraudes, prevenção de ataques de bruxas, etc. Treine o modelo de detecção de anomalias de IA com base em dados de contratos inteligentes. Se o indicador for anormal, o contrato será suspenso e o ZK será usado para realizar a detecção de anomalias para provar que foi carregado na cadeia.
Jogos ZKML on-chain: jogadores de xadrez com inteligência artificial on-chain, personagens NFT baseados em redes neurais, etc.
Teste de benchmark verificável do modelo de IA: Use ZK para fornecer prova de teste de benchmark do modelo e fornecer verificabilidade para os resultados do teste de desempenho e efeito do modelo.
Prova de correção do treinamento do modelo: Como o treinamento do modelo consome muitos recursos, a prova da correção do treinamento do modelo usando ZK não está disponível atualmente, mas muitas pessoas acreditam que a tecnologia é viável e estão tentando usar ZK para provar que o modelo é certos dados/não usar certos dados para resolver problemas de direitos autorais da AIGC.
Proteção de privacidade
Autenticação Biométrica/Identidade Digital para Carteira
WordCoin está fornecendo aos usuários uma identidade digital única e verificável por meio do dispositivo biométrico Orb, que escaneia a íris. A WorldCoin está trabalhando no zkml, que planeja usar para atualizar o World ID. Após a atualização, os usuários poderão manter autonomamente a biometria de sua assinatura em armazenamento criptografado em seus dispositivos móveis, baixar o modelo de ML gerado pelo código da íris e criar. provas de conhecimento zero localmente, provando que seu código de íris é de fato gerado a partir da imagem da assinatura usando o modelo correto.
Plataforma de recompensas de aprendizado de máquina baseada em blockchain
A empresa emite recompensas e fornece dados públicos e privados. Os dados públicos são usados para treinar o modelo e os dados privados são usados para previsão. Alguns provedores de serviços de IA treinam modelos e os convertem em circuitos ZK. Criptografe o modelo e envie-o ao contrato para verificação. Para dados privados, são feitas previsões, os resultados são obtidos e as provas ZK são geradas. As provas ZK são submetidas ao contrato para verificação. O provedor de serviços de IA recebe uma recompensa após concluir uma série de operações. zkML: demonstração para circcomlib-ml na rede de teste Goerli
Inferência que preserva a privacidade: por exemplo, usar dados privados de pacientes para diagnóstico médico e, em seguida, enviar resultados de inferência confidenciais (como resultados de testes de câncer) ao paciente. (artigo vCNN, página 2/16)
4. Território do ZKML
A julgar pelo layout ZKML compilado pela SevenX Ventures.
Aceleração de hardware: Muitas instituições estão desenvolvendo ativamente aceleração de hardware para ZKP, o que também é benéfico para o desenvolvimento de ZKML. A geração de ZKP é geralmente acelerada através de chips FPGA, GPU e ASIC. Por exemplo: Accseal está desenvolvendo chips ASIC para aceleração de hardware ZKP, e Ingonyama está construindo uma biblioteca de aceleração ZK ICIClE, projetada para GPUs que suportam CUDA. Supranational se concentra na aceleração de GPU, e Cysic e Ulvetanna se concentram na aceleração de FPGA.
Entrada: Para usar a entrada de dados on-chain, Axiom, Herodotus, Hyper Oracle, Lagrange melhorarão o acesso do usuário aos dados blockchain e fornecerão visualizações mais complexas dos dados on-chain. Os dados de entrada de ML podem então ser extraídos dos dados históricos importados
Raciocínio: ModulusLabs está desenvolvendo um novo sistema zkSNARK especificamente para ZKML. Esta parte pode ser mesclada com a parte do conjunto de ferramentas ZKML, que é usada principalmente para ZK do modelo e do conjunto de ferramentas necessário no processo ZK. Giza é uma plataforma de aprendizado de máquina baseada em StarkNet que se concentra em extensões de implantação de modelos totalmente on-chain.
Computação: Focado na construção de redes computacionais descentralizadas para treinamento de modelos de IA acessíveis a todos. Eles permitem que as pessoas usem recursos de computação de ponta a um custo menor para treinar modelos de IA.
Poder de treinamento/computação descentralizado: Concentre-se na construção de uma rede de computação descentralizada para treinar modelos de IA que seja acessível a todos. Eles permitem que as pessoas usem recursos de computação de ponta a um custo menor para treinar modelos de IA.
Conjunto de ferramentas ZKML: Consulte o Capítulo 5 História do desenvolvimento de tecnologia. O ZAMA na imagem usa principalmente criptografia totalmente homomórfica (FHE) para proteção de privacidade no aprendizado de máquina. Em comparação com o ZKML, o FHEML fornece apenas privacidade sem verificação confiável.
Caso de uso: Worldcoin, usando ZKML para autenticação de identidade digital. A assinatura biométrica do usuário é criptografada e armazenada no dispositivo, e o modelo de aprendizado de máquina de reconhecimento de íris baseado em ZK é usado para executar o modelo durante o reconhecimento de identidade para verificar se os recursos biométricos correspondem. Use ZKP para provar a exatidão do processo em execução. Modulars Labs constrói robôs de negociação de IA on-chain. Padrão EIP7007, zkML AIGC-NFT de Cathie. Jogadores de xadrez com inteligência artificial on-chain, personagens NFT baseados em redes neurais, etc.

5. História de desenvolvimento técnico do ZKML
Os principais desafios na conversão de redes neurais em circuitos ZK são:
O circuito requer operações de ponto fixo, mas números de ponto flutuante são amplamente utilizados em redes neurais.
O problema é o tamanho do modelo. É difícil converter modelos grandes e o circuito é grande.
A história de desenvolvimento da biblioteca ZKML é a seguinte:
2021年,zk-ml/linear-regression-demo,Peiyuan Liao
Um circuito de regressão linear é implementado. A regressão linear é um algoritmo de previsão muito básico. Ele assume uma relação linear entre variáveis de saída e variáveis de entrada. Por exemplo: prever preços de casas com base na área da casa e outras características, ou prever vendas futuras com base em dados históricos de vendas, etc.
2022年, 0xZKML/zk-mnist, 0xZKML
Com base no conjunto de dados MNIST, foi construído um circuito de rede neural ZK que pode reconhecer dígitos manuscritos. Por exemplo: se você escrever à mão um número 2, a caligrafia é reconhecida como 2 e é gerada uma prova do processo de raciocínio. A prova pode ser colocada na cadeia, e a prova na cadeia pode ser verificada usando ethers + snarkjs.
Na verdade, a biblioteca zk-mnist atualmente converte apenas a última camada em um circuito, mas não converte a rede neural completa em um circuito.
2022, socathie/zkML, Cathie
Comparado com o zk-mnist, o ZKML converte uma rede neural completa em um circuito. O zkMachine Learning de Cathie fornece vários kits de ferramentas ZKML cirocmlib-ml e keras2circom para ajudar os engenheiros de ML a converter modelos em circuitos.
Novembro de 2022, zk-ml/uchikoma, Peiyuan Liao
Converta operações de ponto flutuante em redes neurais em operações de ponto fixo. Criou e abriu o código-fonte de uma ferramenta e estrutura geral que converte quase qualquer algoritmo de aprendizado de máquina em um circuito à prova de conhecimento zero que é facilmente integrado ao blockchain.
Modelo de Visão->AIGC
Modelo de linguagem-> Chatbot, assistente de redação
Modelos lineares e árvores de decisão -> Detecção de fraude, prevenção de ataques Sybil
Modelo multimodal -> Sistema de recomendação
Um modelo de aprendizado de máquina de geração de conteúdo compatível com blockchain (AIGC) foi treinado e convertido em um circuito ZK. Use-o para gerar arte, gerar provas ZK concisas e, finalmente, cunhar a arte em NFT.
Julho de 2022, atualizado em março de 2023, zkonduit/ezkl
etc.
é uma biblioteca e ferramenta de linha de comando para inferência em modelos de aprendizado profundo e outros gráficos computacionais em zk-snark (ZKML). Use Halo2 como sistema de prova.
Você pode definir um gráfico computacional, como uma rede neural, e então usar ezkl para gerar um circuito ZK-SNARK. O ZKP gerado para inferência pode ser verificado com contratos inteligentes.
Diz-se que pode suportar um modelo com parâmetros de 100M, mas pode consumir muito recursos.
Maio de 2023, Ddkang/zkml (Link)
zkml afirma ser capaz de usar ZK para transformar os modelos GPT2, Bert e Diffusion. No entanto, pode exigir uma grande quantidade de memória e não está claro se a prova pode ser armazenada em um contrato inteligente.
zkml pode verificar a execução do modelo no ImageNet com 92,4% de precisão e também pode provar um modelo MNIST com 99% de precisão em quatro segundos.
Maio de 2023, zkp-gravity/0g
A rede neural leve oferece suporte a dados privados + modelos públicos.
Em geral, podemos ver a atual direção de exploração da tecnologia ZKML:
A quantização de rede (quantização de rede) converte números de ponto flutuante em redes neurais em números de ponto fixo e redes neurais leves (compatíveis com ZK).
Tente converter redes neurais de parâmetros de grande escala em circuitos ZK e melhorar a eficiência da prova (expandir as capacidades do ZK).
6. Resumo
ZKML é uma ponte entre IA e blockchain. Seu significado é permitir que o blockchain perceba o mundo físico, permitir que contratos inteligentes tomem decisões e executem modelos de IA para proteger a privacidade.
ZKML tem uma história curta e está se desenvolvendo rapidamente. Atualmente, alguns modelos simples de redes neurais podem ser convertidos em circuitos ZK, e os modelos podem ser carregados ou as provas de inferência podem ser carregadas. Os modelos de linguagem são relativamente difíceis. Atualmente, Ddkang/zkml afirma ser capaz de gerar a versão ZK dos modelos GPT2, Bert e Diffusion. Acredita-se que com o desenvolvimento da tecnologia de volume de rede, tecnologia ZK e tecnologia de expansão blockchain, o modelo de linguagem ZKML estará disponível em breve.
