zkPyTorch: Trayendo Pruebas de Conocimiento Cero a la Inferencia de PyTorch para una IA Verdaderamente Confiable

Intermedio6/11/2025, 3:25:52 AM
Este artículo profundiza en cómo el compilador zkPyTorch lanzado por Polyhedra Network integra el marco de IA principal PyTorch con la tecnología zk-SNARKs, reduciendo el umbral de desarrollo para ZKML y logrando una verificación creíble y protección de la privacidad en el proceso de inferencia de aprendizaje automático. Cubre sus tres módulos centrales (preprocesamiento, cuantización, optimización de circuitos), tecnologías clave (DAG, tablas de búsqueda, convolución FFT), estrategias de optimización de circuitos de múltiples niveles y muestra avances en el rendimiento y la precisión de zkPyTorch a través de datos empíricos de VGG-16 y Llama-3.

A medida que la inteligencia artificial (IA) se implementa cada vez más en áreas clave como la atención médica, las finanzas y la conducción autónoma, asegurar la fiabilidad, transparencia y seguridad del proceso de inferencia del aprendizaje automático (ML) se está volviendo más importante que nunca.

Sin embargo, los servicios de aprendizaje automático tradicionales a menudo operan como una "caja negra", donde los usuarios solo pueden ver los resultados y les resulta difícil verificar el proceso. Esta falta de transparencia hace que los servicios de modelos sean vulnerables a riesgos:

El modelo ha sido robado,

El resultado de la inferencia ha sido manipulado maliciosamente,

Los datos de los usuarios están en riesgo de violaciones de privacidad.

ZKML (aprendizaje automático zk-SNARKs) proporciona una nueva solución criptográfica a este desafío. Se basa en la tecnología zk-SNARKs, otorgando a los modelos de aprendizaje automático la capacidad de estar cifrados de manera verificable: demostrando que un cálculo se ha ejecutado correctamente sin revelar ninguna información sensible.

En otras palabras, las Pruebas de conocimiento cero permiten a los proveedores de servicios demostrar a los usuarios que:

“Los resultados de inferencia que obtuviste son, de hecho, generados por el modelo entrenado que ejecuté — pero no revelaré ningún parámetro del modelo.”

Esto significa que los usuarios pueden confiar en la autenticidad de los resultados de la inferencia, mientras que la estructura y los parámetros del modelo (que a menudo son activos de alto valor) permanecen privados.

zkPyTorch:

Polyhedra Network ha lanzado zkPyTorch, un compilador revolucionario especialmente diseñado para la prueba de conocimiento cero en aprendizaje automático (ZKML), destinado a cerrar la última milla entre los marcos de IA convencionales y la tecnología ZK.

zkPyTorch integra profundamente las poderosas capacidades de aprendizaje automático de PyTorch con los motores de zk-SNARKs de vanguardia, lo que permite a los desarrolladores de IA construir aplicaciones de IA verificables en un entorno familiar sin cambiar sus hábitos de programación ni aprender un nuevo lenguaje ZK completamente.

Este compilador puede traducir automáticamente operaciones de modelos de alto nivel (como convolución, multiplicación de matrices, ReLU, softmax y mecanismos de atención) en circuitos ZKP verificables criptográficamente. Combina la suite de optimización ZKML desarrollada por Polyhedra para comprimir y acelerar de manera inteligente las rutas de inferencia principales, asegurando tanto la corrección como la eficiencia computacional de los circuitos.

Infraestructura clave para construir un ecosistema de IA confiable

El actual ecosistema de aprendizaje automático enfrenta múltiples desafíos como la seguridad de los datos, la verificabilidad computacional y la transparencia del modelo. Especialmente en industrias críticas como la salud, las finanzas y la conducción autónoma, los modelos de IA no solo implican una gran cantidad de información personal sensible, sino que también poseen propiedad intelectual de alto valor y secretos comerciales fundamentales.

El Aprendizaje Automático de Conocimiento Cero (ZKML) ha surgido como un importante avance para abordar este dilema. A través de la tecnología de Prueba de Conocimiento Cero (ZKP), ZKML puede completar la verificación de integridad de la inferencia del modelo sin revelar los parámetros del modelo o los datos de entrada, protegiendo la privacidad mientras se asegura la confianza.

Pero en realidad, desarrollar ZKML a menudo tiene un alto umbral, requiriendo un profundo conocimiento en criptografía, lo cual está lejos de lo que los ingenieros de IA tradicionales pueden manejar fácilmente.

Esta es precisamente la misión de zkPyTorch. Construye un puente entre PyTorch y el motor ZKP, permitiendo a los desarrolladores construir sistemas de IA con protección de la privacidad y verificabilidad utilizando código familiar, sin necesidad de reaprender lenguajes criptográficos complejos.

A través de zkPyTorch, Polyhedra Network está reduciendo significativamente las barreras técnicas de ZKML, impulsando aplicaciones de IA escalables y confiables hacia el mainstream, y reconstruyendo un nuevo paradigma de seguridad y privacidad en IA.

flujo de trabajo zkPyTorch


Figura 1: Visión general de la arquitectura general de ZKPyTorch

Como se muestra en la Figura 1, zkPyTorch convierte automáticamente modelos estándar de PyTorch en circuitos compatibles con ZKP (zk-SNARKs) a través de tres módulos cuidadosamente diseñados. Estos tres módulos incluyen: módulo de preprocesamiento, módulo de cuantización amigable con conocimiento cero y módulo de optimización de circuitos.

Este proceso no requiere que los desarrolladores dominen circuitos criptográficos o sintaxis especializada: los desarrolladores solo necesitan escribir modelos utilizando PyTorch estándar, y zkPyTorch puede convertirlos en circuitos que pueden ser reconocidos por motores de prueba de conocimiento cero como Expander, generando la prueba ZK correspondiente.

Este diseño altamente modular reduce significativamente el umbral de desarrollo de ZKML, permitiendo a los desarrolladores de IA construir fácilmente aplicaciones de aprendizaje automático eficientes, seguras y verificables sin necesidad de cambiar de lenguajes o aprender criptografía.

Bloque Uno: Preprocesamiento del Modelo

En la primera fase, zkPyTorch convertirá el modelo de PyTorch en un gráfico de computación estructurado utilizando el formato Open Neural Network Exchange (ONNX). ONNX es un estándar de representación intermedia adoptado en toda la industria que puede representar uniformemente diversas operaciones complejas de aprendizaje automático. A través de este paso de preprocesamiento, zkPyTorch es capaz de clarificar la estructura del modelo y desglosar el proceso de computación central, sentando una base sólida para generar circuitos zk-SNARKs en los pasos posteriores.

Módulo 2: Cuantificación amigable con la Prueba de conocimiento cero

El módulo de cuantización es un componente clave del sistema ZKML. Los modelos de aprendizaje automático tradicionales dependen de operaciones en punto flotante, mientras que el entorno ZKP es más adecuado para operaciones enteras en campos finitos. zkPyTorch adopta un esquema de cuantización entera optimizado para campos finitos, mapeando con precisión los cálculos en punto flotante a cálculos enteros, mientras transforma operaciones no lineales que son desfavorables para ZKP (como ReLU y Softmax) en formas eficientes de tabla de búsqueda.

Esta estrategia no solo reduce significativamente la complejidad del circuito, sino que también mejora la verificabilidad y la eficiencia operativa del sistema en general, al tiempo que garantiza la precisión del modelo.

Módulo 3: Optimización de Circuitos Jerárquicos

zkPyTorch adopta una estrategia de múltiples niveles para la optimización de circuitos, que incluye específicamente:

Optimización por lotes
Diseñado específicamente para la computación serializada, reduce significativamente la complejidad computacional y el consumo de recursos al procesar múltiples pasos de inferencia a la vez, lo que lo hace especialmente adecuado para escenarios de verificación de grandes modelos de lenguaje como Transformers.

Aceleración de operación en lenguaje original
Al combinar la convolución de Transformada Rápida de Fourier (FFT) con la tecnología de tabla de búsqueda, se mejora efectivamente la velocidad de ejecución de operaciones básicas como la convolución y Softmax, mejorando fundamentalmente la eficiencia computacional general.

Ejecución de circuitos en paralelo
Aproveche al máximo las ventajas de potencia computacional de las CPU y GPU de múltiples núcleos dividiendo las computaciones de alta carga, como la multiplicación de matrices, en múltiples subtareas para su ejecución en paralelo, mejorando significativamente la velocidad y escalabilidad de la generación de Prueba de conocimiento cero.

Discusión técnica en profundidad

Grafico acíclico dirigido (DAG)

zkPyTorch utiliza un Grafo Dirigido Acíclico (DAG) para gestionar el flujo computacional del aprendizaje automático. La estructura del DAG captura sistemáticamente las dependencias complejas del modelo, como se muestra en la Figura 2, donde cada nodo representa una operación específica (como transposición de matrices, multiplicación de matrices, división y Softmax), y los bordes describen con precisión el flujo de datos entre estas operaciones.

Esta representación clara y estructurada no solo facilita en gran medida el proceso de depuración, sino que también ayuda en la optimización en profundidad del rendimiento. La naturaleza acíclica del DAG evita dependencias circulares, asegurando una ejecución eficiente y controlable del orden de computación, lo cual es crucial para optimizar la generación de circuitos de Prueba de conocimiento cero.

Además, DAG permite que zkPyTorch maneje de manera eficiente arquitecturas de modelos complejas como Transformers y Redes Residuales (ResNet), que a menudo tienen flujos de datos complejos no lineales y de múltiples caminos. El diseño de DAG se alinea perfectamente con sus necesidades computacionales, asegurando la precisión y eficiencia de la inferencia del modelo.


Figura 2: Un ejemplo de un modelo de aprendizaje automático representado como un grafo acíclico dirigido (DAG)

Técnicas Cuantitativas Avanzadas

En zkPyTorch, las técnicas avanzadas de cuantización son un paso clave para convertir cálculos de punto flotante en operaciones enteras adecuadas para una aritmética eficiente en campos finitos en sistemas de prueba de conocimiento cero (ZKP). zkPyTorch emplea un método de cuantización entera estática, cuidadosamente diseñado para equilibrar la eficiencia computacional y la precisión del modelo, asegurando que la generación de pruebas sea rápida y precisa.

Este proceso de cuantización implica una calibración estricta para determinar con precisión la escala de cuantización óptima para representar de manera efectiva los números de punto flotante, evitando el desbordamiento y la pérdida significativa de precisión. Para abordar los desafíos únicos de las operaciones no lineales de la Prueba de conocimiento cero (como Softmax y la normalización por capas), zkPyTorch transforma de manera innovadora estas funciones complejas en operaciones eficientes de búsqueda en tabla.

Esta estrategia no solo mejora significativamente la eficiencia de la generación de pruebas, sino que también garantiza que los resultados de las pruebas generadas sean completamente coherentes con las salidas de modelos cuantitativos de alta precisión, equilibrando el rendimiento y la credibilidad, y avanzando en la aplicación práctica del aprendizaje automático verificable.

Estrategia de optimización de circuitos de múltiples niveles

zkPyTorch adopta un sistema de optimización de circuitos de múltiples capas altamente sofisticado, asegurando el rendimiento óptimo del razonamiento de conocimiento cero en términos de eficiencia y escalabilidad desde múltiples dimensiones:

Optimización del procesamiento por lotes

Al empaquetar múltiples tareas de inferencia en procesamiento por lotes, la complejidad computacional general se reduce significativamente, siendo especialmente adecuada para operaciones secuenciales en modelos de lenguaje como Transformers. Como se muestra en la Figura 3, el proceso de inferencia tradicional de los modelos de lenguaje grandes (LLM) se ejecuta de manera generativa token por token, mientras que el enfoque innovador de zkPyTorch agrega todos los tokens de entrada y salida en un solo proceso de solicitud para validación. Este método de procesamiento puede confirmar la corrección general de la inferencia del LLM de una vez, asegurando que cada token de salida sea consistente con la inferencia estándar del LLM.

En la inferencia de LLM, la corrección del mecanismo de caché KV (caché de clave-valor) es clave para garantizar la fiabilidad de las salidas de inferencia. Si la lógica de inferencia del modelo es incorrecta, incluso con caché, no puede reproducir resultados consistentes con el proceso de decodificación estándar. zkPyTorch asegura que cada salida en zk-SNARKs tenga determinismo y completitud verificables al replicar precisamente este proceso.


Figura 3: Verificación por lotes de modelos de lenguaje a gran escala (LLMs), donde L representa la longitud de la secuencia de entrada, N representa la longitud de la secuencia de salida y H representa la dimensión de la capa oculta del modelo.

Operaciones primitivas optimizadas

zkPyTorch ha optimizado profundamente los primitivos subyacentes de aprendizaje automático, mejorando enormemente la eficiencia de los circuitos. Por ejemplo, las operaciones de convolución siempre han sido tareas que requieren mucho cálculo; zkPyTorch utiliza un método de optimización basado en la Transformada Rápida de Fourier (FFT) para convertir convoluciones que originalmente se ejecutaban en el dominio espacial en operaciones de multiplicación en el dominio de la frecuencia, reduciendo significativamente los costos computacionales. Al mismo tiempo, para funciones no lineales como ReLU y softmax, el sistema emplea un enfoque de tabla de búsqueda pre-calculada, evitando cálculos no lineales que no son amigables con ZKP, mejorando enormemente la eficiencia operativa de los circuitos de inferencia.

Ejecución de Circuito Paralelo

zkPyTorch compila automáticamente operaciones complejas de ML en circuitos paralelos, utilizando plenamente el potencial de hardware de CPU/GPUs multicore para lograr la generación de pruebas en paralelo a gran escala. Por ejemplo, al realizar la multiplicación de tensores, zkPyTorch divide automáticamente la tarea de cálculo en múltiples subtareas independientes, que luego se distribuyen a múltiples unidades de procesamiento para su ejecución concurrente. Esta estrategia de paralelización no solo mejora significativamente el rendimiento de la ejecución del circuito, sino que también hace que la verificación eficiente de modelos grandes sea una realidad, abriendo nuevas dimensiones para ZKML escalable.

Pruebas de rendimiento integrales: un doble avance en rendimiento y precisión

zkPyTorch demuestra un rendimiento excepcional y una usabilidad práctica en múltiples modelos de aprendizaje automático convencionales a través de pruebas rigurosas.

Pruebas del modelo VGG-16
En el conjunto de datos CIFAR-10, zkPyTorch tarda solo 6.3 segundos en generar una prueba VGG-16 para una sola imagen, y la precisión es casi indistinguible de la computación tradicional en punto flotante. Esto marca las capacidades prácticas de zkML en tareas clásicas como el reconocimiento de imágenes.

Pruebas del modelo Llama-3
Para el modelo de lenguaje grande Llama-3 con hasta 8 mil millones de parámetros, zkPyTorch logra una generación de pruebas eficiente de alrededor de 150 segundos por token. Aún más impresionante, su salida mantiene una similitud coseno de 99.32% en comparación con el modelo original, asegurando una alta credibilidad mientras preserva la consistencia semántica de la salida del modelo.


Tabla 1: Rendimiento de varios esquemas de Prueba de conocimiento cero en redes neuronales convolucionales y redes transformadoras

Una amplia gama de escenarios de aplicación en el mundo real

MLaaS verificable

A medida que el valor de los modelos de aprendizaje automático sigue en aumento, cada vez más desarrolladores de IA eligen implementar sus modelos autodesarrollados en la nube, ofreciendo servicios de MLaaS (Machine-Learning-as-a-Service). Sin embargo, en la realidad, los usuarios a menudo encuentran difícil verificar si los resultados de la inferencia son auténticos y confiables; mientras tanto, los proveedores de modelos también desean proteger activos clave como la estructura y los parámetros del modelo para prevenir robos o mal uso.

zkPyTorch nació para resolver esta contradicción: permite a los servicios de IA en la nube tener capacidades nativas de "prueba de conocimiento cero", logrando resultados de inferencia a nivel de cifrado verificables.

Como se muestra en la Figura 4, los desarrolladores pueden integrar directamente grandes modelos como Llama-3 en zkPyTorch para construir un sistema MLaaS confiable con capacidades de prueba de conocimiento cero. Al integrarse sin problemas con el motor ZKP subyacente, zkPyTorch puede generar automáticamente pruebas sin exponer los detalles del modelo, verificando si cada inferencia se ejecuta correctamente, estableciendo así una verdadera base de confianza interactiva para los proveedores de modelos y los usuarios.


Figura 4: Los escenarios de aplicación de zkPyTorch en MLaaS verificable.

El acompañamiento seguro de la valoración de modelos

zkPyTorch proporciona un mecanismo de evaluación de modelos de IA seguro y verificable, permitiendo a las partes interesadas evaluar prudentemente los indicadores clave de rendimiento sin exponer los detalles del modelo. Este método de valoración de "cero filtraciones" establece un nuevo estándar de confianza para los modelos de IA, mejorando la eficiencia de las transacciones comerciales mientras protege los derechos de propiedad intelectual de los desarrolladores. No solo aumenta la visibilidad del valor del modelo, sino que también aporta mayor transparencia y equidad a toda la industria de la IA.

Integración profunda con la blockchain EXPchain

zkPyTorch se integra nativamente con la red blockchain EXPchain, desarrollada de forma independiente por Polyhedra Network, construyendo conjuntamente una infraestructura de IA descentralizada y confiable. Esta integración proporciona un camino altamente optimizado para las llamadas a contratos inteligentes y la verificación en la cadena, permitiendo que los resultados de inferencia de IA sean verificados criptográficamente y almacenados de forma permanente en la blockchain.

Con la colaboración de zkPyTorch y EXPchain, los desarrolladores pueden construir aplicaciones de IA verificables de extremo a extremo, desde el despliegue del modelo, el cálculo de inferencias hasta la verificación en cadena, realizando verdaderamente un proceso de computación de IA transparente, confiable y auditado, proporcionando soporte subyacente para la próxima generación de aplicaciones de blockchain + IA.

Hoja de ruta futura e innovación continua

Polyhedra continuará avanzando en la evolución de zkPyTorch, centrándose en los siguientes aspectos:

Código abierto y co-construcción comunitaria

Abrir gradualmente el código fuente de los componentes centrales de zkPyTorch, inspirando a desarrolladores de todo el mundo a participar y promoviendo la innovación colaborativa y la prosperidad ecológica en el campo de la prueba de conocimiento cero en el aprendizaje automático.

Ampliar la compatibilidad del modelo y del marco

Expanda el rango de soporte para modelos y marcos de aprendizaje automático convencionales, mejore aún más la adaptabilidad y versatilidad de zkPyTorch, haciéndolo flexible para integrarse en varios flujos de trabajo de IA.

Herramientas de desarrollo y construcción de SDK

Lanzar una herramienta de desarrollo integral y un kit de desarrollo de software (SDK) para simplificar el proceso de integración y acelerar el despliegue y la aplicación de zkPyTorch en escenarios empresariales prácticos.

Conclusión

zkPyTorch es un hito importante hacia un futuro de IA confiable. Al integrar profundamente el maduro marco de PyTorch con la tecnología de vanguardia zk-SNARKs, zkPyTorch no solo mejora significativamente la seguridad y la verificabilidad del aprendizaje automático, sino que también redefine los métodos de implementación y los límites de confianza de las aplicaciones de IA.

Polyhedra continuará innovando en el campo de "IA segura", avanzando el aprendizaje automático hacia estándares más altos en protección de la privacidad, verificabilidad de resultados y cumplimiento del modelo, ayudando a construir sistemas inteligentes transparentes, confiables y escalables.

Mantente atento a nuestras últimas actualizaciones y sé testigo de cómo zkPyTorch está remodelando el futuro de la era inteligente y segura.

Declaración:

  1. Este artículo es reproducido de [BLOCKBEATS] Los derechos de autor pertenecen al autor original [Jiaheng Zhang] Si tiene alguna objeción a la reimpresión, por favor contáctenos Equipo de Gate LearnEl equipo lo procesará lo más rápido posible de acuerdo con los procedimientos relevantes.
  2. Descargo de responsabilidad: Las opiniones y puntos de vista expresados en este artículo son únicamente del autor y no constituyen ningún consejo de inversión.
  3. Las versiones en otros idiomas del artículo son traducidas por el equipo de Gate Learn, a menos que se indique lo contrario.GateBajo tales circunstancias, no se permite copiar, distribuir o plagiar artículos traducidos.

zkPyTorch: Trayendo Pruebas de Conocimiento Cero a la Inferencia de PyTorch para una IA Verdaderamente Confiable

Intermedio6/11/2025, 3:25:52 AM
Este artículo profundiza en cómo el compilador zkPyTorch lanzado por Polyhedra Network integra el marco de IA principal PyTorch con la tecnología zk-SNARKs, reduciendo el umbral de desarrollo para ZKML y logrando una verificación creíble y protección de la privacidad en el proceso de inferencia de aprendizaje automático. Cubre sus tres módulos centrales (preprocesamiento, cuantización, optimización de circuitos), tecnologías clave (DAG, tablas de búsqueda, convolución FFT), estrategias de optimización de circuitos de múltiples niveles y muestra avances en el rendimiento y la precisión de zkPyTorch a través de datos empíricos de VGG-16 y Llama-3.

A medida que la inteligencia artificial (IA) se implementa cada vez más en áreas clave como la atención médica, las finanzas y la conducción autónoma, asegurar la fiabilidad, transparencia y seguridad del proceso de inferencia del aprendizaje automático (ML) se está volviendo más importante que nunca.

Sin embargo, los servicios de aprendizaje automático tradicionales a menudo operan como una "caja negra", donde los usuarios solo pueden ver los resultados y les resulta difícil verificar el proceso. Esta falta de transparencia hace que los servicios de modelos sean vulnerables a riesgos:

El modelo ha sido robado,

El resultado de la inferencia ha sido manipulado maliciosamente,

Los datos de los usuarios están en riesgo de violaciones de privacidad.

ZKML (aprendizaje automático zk-SNARKs) proporciona una nueva solución criptográfica a este desafío. Se basa en la tecnología zk-SNARKs, otorgando a los modelos de aprendizaje automático la capacidad de estar cifrados de manera verificable: demostrando que un cálculo se ha ejecutado correctamente sin revelar ninguna información sensible.

En otras palabras, las Pruebas de conocimiento cero permiten a los proveedores de servicios demostrar a los usuarios que:

“Los resultados de inferencia que obtuviste son, de hecho, generados por el modelo entrenado que ejecuté — pero no revelaré ningún parámetro del modelo.”

Esto significa que los usuarios pueden confiar en la autenticidad de los resultados de la inferencia, mientras que la estructura y los parámetros del modelo (que a menudo son activos de alto valor) permanecen privados.

zkPyTorch:

Polyhedra Network ha lanzado zkPyTorch, un compilador revolucionario especialmente diseñado para la prueba de conocimiento cero en aprendizaje automático (ZKML), destinado a cerrar la última milla entre los marcos de IA convencionales y la tecnología ZK.

zkPyTorch integra profundamente las poderosas capacidades de aprendizaje automático de PyTorch con los motores de zk-SNARKs de vanguardia, lo que permite a los desarrolladores de IA construir aplicaciones de IA verificables en un entorno familiar sin cambiar sus hábitos de programación ni aprender un nuevo lenguaje ZK completamente.

Este compilador puede traducir automáticamente operaciones de modelos de alto nivel (como convolución, multiplicación de matrices, ReLU, softmax y mecanismos de atención) en circuitos ZKP verificables criptográficamente. Combina la suite de optimización ZKML desarrollada por Polyhedra para comprimir y acelerar de manera inteligente las rutas de inferencia principales, asegurando tanto la corrección como la eficiencia computacional de los circuitos.

Infraestructura clave para construir un ecosistema de IA confiable

El actual ecosistema de aprendizaje automático enfrenta múltiples desafíos como la seguridad de los datos, la verificabilidad computacional y la transparencia del modelo. Especialmente en industrias críticas como la salud, las finanzas y la conducción autónoma, los modelos de IA no solo implican una gran cantidad de información personal sensible, sino que también poseen propiedad intelectual de alto valor y secretos comerciales fundamentales.

El Aprendizaje Automático de Conocimiento Cero (ZKML) ha surgido como un importante avance para abordar este dilema. A través de la tecnología de Prueba de Conocimiento Cero (ZKP), ZKML puede completar la verificación de integridad de la inferencia del modelo sin revelar los parámetros del modelo o los datos de entrada, protegiendo la privacidad mientras se asegura la confianza.

Pero en realidad, desarrollar ZKML a menudo tiene un alto umbral, requiriendo un profundo conocimiento en criptografía, lo cual está lejos de lo que los ingenieros de IA tradicionales pueden manejar fácilmente.

Esta es precisamente la misión de zkPyTorch. Construye un puente entre PyTorch y el motor ZKP, permitiendo a los desarrolladores construir sistemas de IA con protección de la privacidad y verificabilidad utilizando código familiar, sin necesidad de reaprender lenguajes criptográficos complejos.

A través de zkPyTorch, Polyhedra Network está reduciendo significativamente las barreras técnicas de ZKML, impulsando aplicaciones de IA escalables y confiables hacia el mainstream, y reconstruyendo un nuevo paradigma de seguridad y privacidad en IA.

flujo de trabajo zkPyTorch


Figura 1: Visión general de la arquitectura general de ZKPyTorch

Como se muestra en la Figura 1, zkPyTorch convierte automáticamente modelos estándar de PyTorch en circuitos compatibles con ZKP (zk-SNARKs) a través de tres módulos cuidadosamente diseñados. Estos tres módulos incluyen: módulo de preprocesamiento, módulo de cuantización amigable con conocimiento cero y módulo de optimización de circuitos.

Este proceso no requiere que los desarrolladores dominen circuitos criptográficos o sintaxis especializada: los desarrolladores solo necesitan escribir modelos utilizando PyTorch estándar, y zkPyTorch puede convertirlos en circuitos que pueden ser reconocidos por motores de prueba de conocimiento cero como Expander, generando la prueba ZK correspondiente.

Este diseño altamente modular reduce significativamente el umbral de desarrollo de ZKML, permitiendo a los desarrolladores de IA construir fácilmente aplicaciones de aprendizaje automático eficientes, seguras y verificables sin necesidad de cambiar de lenguajes o aprender criptografía.

Bloque Uno: Preprocesamiento del Modelo

En la primera fase, zkPyTorch convertirá el modelo de PyTorch en un gráfico de computación estructurado utilizando el formato Open Neural Network Exchange (ONNX). ONNX es un estándar de representación intermedia adoptado en toda la industria que puede representar uniformemente diversas operaciones complejas de aprendizaje automático. A través de este paso de preprocesamiento, zkPyTorch es capaz de clarificar la estructura del modelo y desglosar el proceso de computación central, sentando una base sólida para generar circuitos zk-SNARKs en los pasos posteriores.

Módulo 2: Cuantificación amigable con la Prueba de conocimiento cero

El módulo de cuantización es un componente clave del sistema ZKML. Los modelos de aprendizaje automático tradicionales dependen de operaciones en punto flotante, mientras que el entorno ZKP es más adecuado para operaciones enteras en campos finitos. zkPyTorch adopta un esquema de cuantización entera optimizado para campos finitos, mapeando con precisión los cálculos en punto flotante a cálculos enteros, mientras transforma operaciones no lineales que son desfavorables para ZKP (como ReLU y Softmax) en formas eficientes de tabla de búsqueda.

Esta estrategia no solo reduce significativamente la complejidad del circuito, sino que también mejora la verificabilidad y la eficiencia operativa del sistema en general, al tiempo que garantiza la precisión del modelo.

Módulo 3: Optimización de Circuitos Jerárquicos

zkPyTorch adopta una estrategia de múltiples niveles para la optimización de circuitos, que incluye específicamente:

Optimización por lotes
Diseñado específicamente para la computación serializada, reduce significativamente la complejidad computacional y el consumo de recursos al procesar múltiples pasos de inferencia a la vez, lo que lo hace especialmente adecuado para escenarios de verificación de grandes modelos de lenguaje como Transformers.

Aceleración de operación en lenguaje original
Al combinar la convolución de Transformada Rápida de Fourier (FFT) con la tecnología de tabla de búsqueda, se mejora efectivamente la velocidad de ejecución de operaciones básicas como la convolución y Softmax, mejorando fundamentalmente la eficiencia computacional general.

Ejecución de circuitos en paralelo
Aproveche al máximo las ventajas de potencia computacional de las CPU y GPU de múltiples núcleos dividiendo las computaciones de alta carga, como la multiplicación de matrices, en múltiples subtareas para su ejecución en paralelo, mejorando significativamente la velocidad y escalabilidad de la generación de Prueba de conocimiento cero.

Discusión técnica en profundidad

Grafico acíclico dirigido (DAG)

zkPyTorch utiliza un Grafo Dirigido Acíclico (DAG) para gestionar el flujo computacional del aprendizaje automático. La estructura del DAG captura sistemáticamente las dependencias complejas del modelo, como se muestra en la Figura 2, donde cada nodo representa una operación específica (como transposición de matrices, multiplicación de matrices, división y Softmax), y los bordes describen con precisión el flujo de datos entre estas operaciones.

Esta representación clara y estructurada no solo facilita en gran medida el proceso de depuración, sino que también ayuda en la optimización en profundidad del rendimiento. La naturaleza acíclica del DAG evita dependencias circulares, asegurando una ejecución eficiente y controlable del orden de computación, lo cual es crucial para optimizar la generación de circuitos de Prueba de conocimiento cero.

Además, DAG permite que zkPyTorch maneje de manera eficiente arquitecturas de modelos complejas como Transformers y Redes Residuales (ResNet), que a menudo tienen flujos de datos complejos no lineales y de múltiples caminos. El diseño de DAG se alinea perfectamente con sus necesidades computacionales, asegurando la precisión y eficiencia de la inferencia del modelo.


Figura 2: Un ejemplo de un modelo de aprendizaje automático representado como un grafo acíclico dirigido (DAG)

Técnicas Cuantitativas Avanzadas

En zkPyTorch, las técnicas avanzadas de cuantización son un paso clave para convertir cálculos de punto flotante en operaciones enteras adecuadas para una aritmética eficiente en campos finitos en sistemas de prueba de conocimiento cero (ZKP). zkPyTorch emplea un método de cuantización entera estática, cuidadosamente diseñado para equilibrar la eficiencia computacional y la precisión del modelo, asegurando que la generación de pruebas sea rápida y precisa.

Este proceso de cuantización implica una calibración estricta para determinar con precisión la escala de cuantización óptima para representar de manera efectiva los números de punto flotante, evitando el desbordamiento y la pérdida significativa de precisión. Para abordar los desafíos únicos de las operaciones no lineales de la Prueba de conocimiento cero (como Softmax y la normalización por capas), zkPyTorch transforma de manera innovadora estas funciones complejas en operaciones eficientes de búsqueda en tabla.

Esta estrategia no solo mejora significativamente la eficiencia de la generación de pruebas, sino que también garantiza que los resultados de las pruebas generadas sean completamente coherentes con las salidas de modelos cuantitativos de alta precisión, equilibrando el rendimiento y la credibilidad, y avanzando en la aplicación práctica del aprendizaje automático verificable.

Estrategia de optimización de circuitos de múltiples niveles

zkPyTorch adopta un sistema de optimización de circuitos de múltiples capas altamente sofisticado, asegurando el rendimiento óptimo del razonamiento de conocimiento cero en términos de eficiencia y escalabilidad desde múltiples dimensiones:

Optimización del procesamiento por lotes

Al empaquetar múltiples tareas de inferencia en procesamiento por lotes, la complejidad computacional general se reduce significativamente, siendo especialmente adecuada para operaciones secuenciales en modelos de lenguaje como Transformers. Como se muestra en la Figura 3, el proceso de inferencia tradicional de los modelos de lenguaje grandes (LLM) se ejecuta de manera generativa token por token, mientras que el enfoque innovador de zkPyTorch agrega todos los tokens de entrada y salida en un solo proceso de solicitud para validación. Este método de procesamiento puede confirmar la corrección general de la inferencia del LLM de una vez, asegurando que cada token de salida sea consistente con la inferencia estándar del LLM.

En la inferencia de LLM, la corrección del mecanismo de caché KV (caché de clave-valor) es clave para garantizar la fiabilidad de las salidas de inferencia. Si la lógica de inferencia del modelo es incorrecta, incluso con caché, no puede reproducir resultados consistentes con el proceso de decodificación estándar. zkPyTorch asegura que cada salida en zk-SNARKs tenga determinismo y completitud verificables al replicar precisamente este proceso.


Figura 3: Verificación por lotes de modelos de lenguaje a gran escala (LLMs), donde L representa la longitud de la secuencia de entrada, N representa la longitud de la secuencia de salida y H representa la dimensión de la capa oculta del modelo.

Operaciones primitivas optimizadas

zkPyTorch ha optimizado profundamente los primitivos subyacentes de aprendizaje automático, mejorando enormemente la eficiencia de los circuitos. Por ejemplo, las operaciones de convolución siempre han sido tareas que requieren mucho cálculo; zkPyTorch utiliza un método de optimización basado en la Transformada Rápida de Fourier (FFT) para convertir convoluciones que originalmente se ejecutaban en el dominio espacial en operaciones de multiplicación en el dominio de la frecuencia, reduciendo significativamente los costos computacionales. Al mismo tiempo, para funciones no lineales como ReLU y softmax, el sistema emplea un enfoque de tabla de búsqueda pre-calculada, evitando cálculos no lineales que no son amigables con ZKP, mejorando enormemente la eficiencia operativa de los circuitos de inferencia.

Ejecución de Circuito Paralelo

zkPyTorch compila automáticamente operaciones complejas de ML en circuitos paralelos, utilizando plenamente el potencial de hardware de CPU/GPUs multicore para lograr la generación de pruebas en paralelo a gran escala. Por ejemplo, al realizar la multiplicación de tensores, zkPyTorch divide automáticamente la tarea de cálculo en múltiples subtareas independientes, que luego se distribuyen a múltiples unidades de procesamiento para su ejecución concurrente. Esta estrategia de paralelización no solo mejora significativamente el rendimiento de la ejecución del circuito, sino que también hace que la verificación eficiente de modelos grandes sea una realidad, abriendo nuevas dimensiones para ZKML escalable.

Pruebas de rendimiento integrales: un doble avance en rendimiento y precisión

zkPyTorch demuestra un rendimiento excepcional y una usabilidad práctica en múltiples modelos de aprendizaje automático convencionales a través de pruebas rigurosas.

Pruebas del modelo VGG-16
En el conjunto de datos CIFAR-10, zkPyTorch tarda solo 6.3 segundos en generar una prueba VGG-16 para una sola imagen, y la precisión es casi indistinguible de la computación tradicional en punto flotante. Esto marca las capacidades prácticas de zkML en tareas clásicas como el reconocimiento de imágenes.

Pruebas del modelo Llama-3
Para el modelo de lenguaje grande Llama-3 con hasta 8 mil millones de parámetros, zkPyTorch logra una generación de pruebas eficiente de alrededor de 150 segundos por token. Aún más impresionante, su salida mantiene una similitud coseno de 99.32% en comparación con el modelo original, asegurando una alta credibilidad mientras preserva la consistencia semántica de la salida del modelo.


Tabla 1: Rendimiento de varios esquemas de Prueba de conocimiento cero en redes neuronales convolucionales y redes transformadoras

Una amplia gama de escenarios de aplicación en el mundo real

MLaaS verificable

A medida que el valor de los modelos de aprendizaje automático sigue en aumento, cada vez más desarrolladores de IA eligen implementar sus modelos autodesarrollados en la nube, ofreciendo servicios de MLaaS (Machine-Learning-as-a-Service). Sin embargo, en la realidad, los usuarios a menudo encuentran difícil verificar si los resultados de la inferencia son auténticos y confiables; mientras tanto, los proveedores de modelos también desean proteger activos clave como la estructura y los parámetros del modelo para prevenir robos o mal uso.

zkPyTorch nació para resolver esta contradicción: permite a los servicios de IA en la nube tener capacidades nativas de "prueba de conocimiento cero", logrando resultados de inferencia a nivel de cifrado verificables.

Como se muestra en la Figura 4, los desarrolladores pueden integrar directamente grandes modelos como Llama-3 en zkPyTorch para construir un sistema MLaaS confiable con capacidades de prueba de conocimiento cero. Al integrarse sin problemas con el motor ZKP subyacente, zkPyTorch puede generar automáticamente pruebas sin exponer los detalles del modelo, verificando si cada inferencia se ejecuta correctamente, estableciendo así una verdadera base de confianza interactiva para los proveedores de modelos y los usuarios.


Figura 4: Los escenarios de aplicación de zkPyTorch en MLaaS verificable.

El acompañamiento seguro de la valoración de modelos

zkPyTorch proporciona un mecanismo de evaluación de modelos de IA seguro y verificable, permitiendo a las partes interesadas evaluar prudentemente los indicadores clave de rendimiento sin exponer los detalles del modelo. Este método de valoración de "cero filtraciones" establece un nuevo estándar de confianza para los modelos de IA, mejorando la eficiencia de las transacciones comerciales mientras protege los derechos de propiedad intelectual de los desarrolladores. No solo aumenta la visibilidad del valor del modelo, sino que también aporta mayor transparencia y equidad a toda la industria de la IA.

Integración profunda con la blockchain EXPchain

zkPyTorch se integra nativamente con la red blockchain EXPchain, desarrollada de forma independiente por Polyhedra Network, construyendo conjuntamente una infraestructura de IA descentralizada y confiable. Esta integración proporciona un camino altamente optimizado para las llamadas a contratos inteligentes y la verificación en la cadena, permitiendo que los resultados de inferencia de IA sean verificados criptográficamente y almacenados de forma permanente en la blockchain.

Con la colaboración de zkPyTorch y EXPchain, los desarrolladores pueden construir aplicaciones de IA verificables de extremo a extremo, desde el despliegue del modelo, el cálculo de inferencias hasta la verificación en cadena, realizando verdaderamente un proceso de computación de IA transparente, confiable y auditado, proporcionando soporte subyacente para la próxima generación de aplicaciones de blockchain + IA.

Hoja de ruta futura e innovación continua

Polyhedra continuará avanzando en la evolución de zkPyTorch, centrándose en los siguientes aspectos:

Código abierto y co-construcción comunitaria

Abrir gradualmente el código fuente de los componentes centrales de zkPyTorch, inspirando a desarrolladores de todo el mundo a participar y promoviendo la innovación colaborativa y la prosperidad ecológica en el campo de la prueba de conocimiento cero en el aprendizaje automático.

Ampliar la compatibilidad del modelo y del marco

Expanda el rango de soporte para modelos y marcos de aprendizaje automático convencionales, mejore aún más la adaptabilidad y versatilidad de zkPyTorch, haciéndolo flexible para integrarse en varios flujos de trabajo de IA.

Herramientas de desarrollo y construcción de SDK

Lanzar una herramienta de desarrollo integral y un kit de desarrollo de software (SDK) para simplificar el proceso de integración y acelerar el despliegue y la aplicación de zkPyTorch en escenarios empresariales prácticos.

Conclusión

zkPyTorch es un hito importante hacia un futuro de IA confiable. Al integrar profundamente el maduro marco de PyTorch con la tecnología de vanguardia zk-SNARKs, zkPyTorch no solo mejora significativamente la seguridad y la verificabilidad del aprendizaje automático, sino que también redefine los métodos de implementación y los límites de confianza de las aplicaciones de IA.

Polyhedra continuará innovando en el campo de "IA segura", avanzando el aprendizaje automático hacia estándares más altos en protección de la privacidad, verificabilidad de resultados y cumplimiento del modelo, ayudando a construir sistemas inteligentes transparentes, confiables y escalables.

Mantente atento a nuestras últimas actualizaciones y sé testigo de cómo zkPyTorch está remodelando el futuro de la era inteligente y segura.

Declaración:

  1. Este artículo es reproducido de [BLOCKBEATS] Los derechos de autor pertenecen al autor original [Jiaheng Zhang] Si tiene alguna objeción a la reimpresión, por favor contáctenos Equipo de Gate LearnEl equipo lo procesará lo más rápido posible de acuerdo con los procedimientos relevantes.
  2. Descargo de responsabilidad: Las opiniones y puntos de vista expresados en este artículo son únicamente del autor y no constituyen ningún consejo de inversión.
  3. Las versiones en otros idiomas del artículo son traducidas por el equipo de Gate Learn, a menos que se indique lo contrario.GateBajo tales circunstancias, no se permite copiar, distribuir o plagiar artículos traducidos.
Empieza ahora
¡Registrarse y recibe un bono de
$100
!