一文详解EIP-6963:多钱包冲
ZKML——迈向可验证人工智能的未来
原文:Avant Blockchain Capital
编译:GWEI Research
带有提示的 text2img 模型的结果:“AI+Blockchain”背景
在过去的几个月里,人工智能行业出现了多项突破。 GPT4 和 Stable Diffusion 等模型正在改变人们生成软件和互联网以及与之交互的方式。
尽管这些新的 AI 模型具有令人印象深刻的功能,但一些人仍然担心 AI 的不可预测性和一致性问题。例如,在线服务领域缺乏透明度,其中大部分后端工作由 AI 模型运行。验证这些模型是否以预期的方式运行是一项挑战。此外,用户隐私也是一个问题,因为我们提供给模型 API 的所有数据都可用于改进 AI 或被黑客利用。
ZKML 可能是解决这些问题的新方法。通过将可验证和无需信任的属性注入机器学习模型,区块链和 ZK 技术可以形成 AI 对齐的框架。
什么是 ZKML
本文中的零知识机器学习(ZKML)是指在不暴露模型输入或模型参数的情况下,使用zkSNARK(一种零知识证明)来证明机器学习推理的正确性。根据隐私信息的不同,ZKML 的用例可以分为以下类型:
公共模型+私有数据:
私有模型+公共数据:
公开模型+公开数据:
由于 zkSNARK 将成为加密世界的一项非常重要的技术,ZKML 也有可能改变加密领域。通过在智能合约中加入AI能力,ZKML可以解锁更复杂的链上应用。这种集成在 ZKML 社区中被描述为“赋予区块链眼睛”。
技术瓶颈
然而,ZK-ML 带来了一些当前必须解决的技术挑战。
量化:ZKP 在场上工作,但神经网络在浮点数中训练。这意味着为了使神经网络模型 zk/blockchain 友好,它需要转换为具有完整计算跟踪的固定点算术表示。这可能会牺牲模型性能,因为参数的精度较低。
跨语言翻译:神经网络 AI 模型是用 python 和 cpp 编写的,而 ZKP 电路需要 rust。所以我们需要一个翻译层来将模型转换为基于 ZKP 的运行时。通常这种类型的翻译层是模型特定的,很难设计一个通用的。
ZKP 的计算成本:ZKP 的成本基本上会比原来的 ML 计算高很多。根据 Modulus labs 的实验,对于一个 20M 参数的模型,根据不同的 ZK 证明系统,生成证明需要 1-5 分钟以上的时间,内存消耗在 20-60GB 左右。
智能的成本 — Modulus Labs现状
即使面临这些挑战,我们也看到 ZKML 引起了加密社区的极大兴趣,并且有一些优秀的团队正在探索这一领域。
基础设施
模型编译器
由于 ZKML 的主要瓶颈是将 AI 模型转换为 ZK 电路,一些团队正在研究 ZK 模型编译器等基础层。从 1 年前的逻辑回归模型或简单的 CNN 模型开始,该领域已经快速进入更复杂的模型。
EZKL 项目现在支持高达 100mm 参数的模型。它使用 ONNX 格式和 halo2 ZKP 系统。该库还支持仅提交模型的一部分。
ZKML库已经支持GPT2、Bert和diffusion模型的ZKP!
ZKVM
ZKML 编译器也属于一些更通用的零知识虚拟机领域。
Risc Zero是一个使用开源RiscV指令集的zkVM,因此可以支持c++和rust的ZKP。这个 zkDTP 项目展示了如何将决策树 ML 模型转换为 Rust 并在 Risc Zero 上运行。
我们还看到一些团队正在尝试通过 Startnet(吉萨)和 Aleo(零重力)将 AI 模型带到链上。
应用
除了基础设施,其他团队也开始探索 ZKML 的应用