원제: zkPyTorch - 영지식 증명을 통한 검증 가능한 PyTorch
작성자: Jiaheng Zhang
의료, 금융, 자율주행 등 핵심 분야에서 인공지능(AI)이 심층적으로 구현됨에 따라 머신러닝(ML) 추론 과정의 신뢰성, 투명성, 그리고 보안을 확보하는 것이 그 어느 때보다 중요해지고 있습니다.
그러나 기존의 머신러닝 서비스는 종종 "블랙박스"처럼 작동하여 사용자가 결과만 볼 수 있고 과정 검증이 어렵습니다. 이러한 불투명성으로 인해 모델 서비스는 다음과 같은 위험에 취약해집니다.
모델 도난,
추론 결과 악의적 변조,
사용자 데이터는 개인 정보 유출 위험에 직면합니다.
ZKML(제로 지식 머신 러닝)은 이러한 과제에 대한 새로운 암호화 솔루션을 제공합니다. 영어: Polyhedra Network는 기계 학습 모델이 암호학적으로 검증될 수 있는 기능을 제공하기 위해 영지식 증명(ZKP) 기술을 사용합니다. 즉, 민감한 정보를 공개하지 않고 계산이 올바르게 수행되었음을 증명합니다.
즉, ZKP를 통해 서비스 제공자는 사용자에게 다음을 증명할 수 있습니다.
"사용자가 얻는 추론 결과는 실제로 제가 훈련된 모델로 실행한 결과입니다. 하지만 모델 매개변수는 공개하지 않겠습니다."
즉, 사용자는 추론 결과의 진위를 신뢰할 수 있는 반면, 모델의 구조와 매개변수(종종 고가의 자산)는 비공개로 유지됩니다.
zkPyTorch는 PyTorch의 강력한 머신 러닝 기능과 최첨단 영지식 증명 엔진을 긴밀하게 통합합니다. AI 개발자는 프로그래밍 습관을 바꾸거나 새로운 ZK 언어를 배우지 않고도 익숙한 환경에서 검증 가능한 AI 애플리케이션을 구축할 수 있습니다.
이 컴파일러는 컨볼루션, 행렬 곱셈, ReLU, 소프트맥스, 어텐션 메커니즘과 같은 고수준 모델 연산을 암호학적으로 검증 가능한 ZKP 회로로 자동 변환할 수 있으며, Polyhedra가 자체 개발한 ZKML 최적화 제품군과 결합하여 주요 추론 경로를 지능적으로 압축하고 가속화하여 회로 정확성과 계산 효율성을 모두 보장합니다.
오늘날의 머신러닝 생태계는 데이터 보안, 계산 검증 가능성, 모델 투명성과 같은 여러 과제에 직면해 있습니다. 특히 의료, 금융, 자율주행과 같은 핵심 산업에서 AI 모델은 방대한 양의 민감한 개인정보를 포함할 뿐만 아니라 고부가가치 지적 재산권과 핵심 사업 비밀을 담고 있습니다.
영지식 머신러닝(ZKML)은 이러한 딜레마를 해결하는 데 중요한 돌파구가 되었습니다. ZKML은 영지식 증명(ZKP) 기술을 통해 모델 매개변수나 입력 데이터를 유출하지 않고도 모델 추론의 무결성 검증을 완료할 수 있어 개인 정보를 보호하고 신뢰성을 확보할 수 있습니다.
하지만 실제로 ZKML 개발은 종종 매우 높은 기준을 충족하고 전통적인 AI 엔지니어의 능력을 훨씬 뛰어넘는 암호화에 대한 심층적인 배경 지식을 요구합니다.
이것이 zkPyTorch의 사명입니다. PyTorch와 ZKP 엔진 사이에 브리지를 구축하여 개발자가 복잡한 암호화 언어를 다시 배우지 않고도 익숙한 코드로 개인 정보를 보호하고 검증 가능한 AI 시스템을 구축할 수 있도록 합니다.
zkPyTorch를 통해 Polyhedra Network는 ZKML의 기술적 장벽을 크게 낮추고 확장 가능하고 신뢰할 수 있는 AI 애플리케이션을 주류로 이끌며 AI 보안 및 개인 정보 보호에 대한 새로운 패러다임을 재구성합니다.

그림 1: ZKPyTorch의 전체 아키텍처 개요
그림 1에서 볼 수 있듯이 zkPyTorch는 신중하게 설계된 세 가지 모듈을 통해 표준 PyTorch 모델을 ZKP(영지식 증명) 호환 회로로 자동 변환합니다. 이 세 가지 모듈에는 전처리 모듈, 영지식 친화적 양자화 모듈, 회로 최적화 모듈이 포함됩니다.
이 프로세스는 개발자가 암호화 회로나 특수 구문을 마스터할 것을 요구하지 않습니다. 개발자는 표준 PyTorch를 사용하여 모델을 작성하기만 하면 되고, zkPyTorch는 이를 Expander와 같은 영지식 증명 엔진이 인식할 수 있는 회로로 변환하고 해당 ZK 증명을 생성할 수 있습니다.
이러한 고도로 모듈화된 설계는 ZKML의 개발 임계값을 크게 낮추어 AI 개발자가 언어를 전환하거나 암호화를 배우지 않고도 효율적이고 안전하며 검증 가능한 머신 러닝 애플리케이션을 쉽게 빌드할 수 있도록 합니다.
첫 번째 단계에서 zkPyTorch는 PyTorch 모델을 ONNX(Open Neural Network Exchange) 형식을 사용하여 구조화된 계산 그래프로 변환합니다. ONNX는 업계에서 널리 사용되는 중간 표현 표준으로, 다양하고 복잡한 머신 러닝 연산을 균일하게 표현할 수 있습니다. zkPyTorch는 이러한 전처리 단계를 통해 모델 구조를 명확히 하고 핵심 컴퓨팅 프로세스를 분해하여 차세대 영지식 증명 회로를 위한 탄탄한 기반을 마련합니다.
양자화 모듈은 ZKML 시스템의 핵심 부분입니다. 기존의 머신 러닝 모델은 부동 소수점 연산에 의존하는 반면, ZKP 환경은 유한체에서의 정수 연산에 더 적합합니다. zkPyTorch는 유한체에 최적화된 정수 양자화 체계를 사용하여 부동 소수점 계산을 정수 계산으로 정확하게 매핑하는 동시에, ZKP에 적합하지 않은 비선형 연산(예: ReLU, Softmax)을 효율적인 조회 테이블 형태로 변환합니다.
이 전략은 회로의 복잡성을 크게 줄일 뿐만 아니라, 모델의 정확성을 보장하는 동시에 전체 시스템의 검증 가능성과 운영 효율성을 향상시킵니다.
zkPyTorch는 다음을 포함하여 회로 최적화를 위한 다단계 전략을 채택합니다.
일괄 최적화
직렬화된 컴퓨팅을 위해 특별히 설계되었으며, 한 번에 여러 추론 단계를 처리하여 계산 복잡성과 리소스 소비를 크게 줄입니다. 이는 특히 Transformer와 같은 대규모 언어 모델의 검증 시나리오에 적합합니다.
기본 연산 가속
고속 푸리에 변환(FFT) 합성곱과 조회 테이블 기술을 결합하여 합성곱 및 Softmax와 같은 기본 연산의 회로 실행 속도를 효과적으로 개선하고 전반적인 컴퓨팅 효율성을 근본적으로 향상시킵니다.
병렬 회로 실행
멀티코어 CPU 및 GPU의 컴퓨팅 성능 이점을 최대한 활용하고, 행렬 곱셈과 같은 부하가 큰 계산을 병렬 실행을 위한 여러 하위 작업으로 분할하고, 영지식 증명 생성의 속도와 확장성을 크게 향상시킵니다.
zkPyTorch는 방향성 비순환 그래프(DAG)를 사용하여 머신 러닝의 계산 프로세스를 관리합니다. DAG 구조는 그림 2와 같이 복잡한 모델 종속성을 체계적으로 포착할 수 있습니다. 그래프의 각 노드는 특정 연산(예: 행렬 전치, 행렬 곱셈, 나눗셈, 소프트맥스)을 나타내며, 간선은 이러한 연산 간의 데이터 흐름을 정확하게 설명합니다.
이러한 명확하고 구조화된 표현은 디버깅 프로세스를 크게 용이하게 할 뿐만 아니라 성능을 더욱 최적화하는 데에도 도움이 됩니다. DAG의 비순환적 특성은 순환적 종속성을 방지하고 계산 순서의 효율적이고 제어 가능한 실행을 보장하며, 이는 영지식 증명 회로 생성을 최적화하는 데 매우 중요합니다.
또한, DAG는 zkPyTorch가 Transformer 및 ResNet(Residual Network)과 같은 복잡한 모델 아키텍처를 효율적으로 처리할 수 있도록 지원합니다. 이러한 모델은 일반적으로 다중 경로, 비선형 및 복잡한 데이터 흐름을 갖습니다. DAG는 이러한 컴퓨팅 요구 사항을 충족하도록 설계되어 모델 추론의 정확성과 효율성을 보장합니다.

그림 2: 방향성 비순환 그래프(DAG) 형태로 표현된 머신 러닝 모델의 예
zkPyTorch에서 고급 양자화 기술은 부동 소수점 계산을 영지식 증명(ZKP) 시스템에서 효율적인 유한체 산술에 적합한 정수 연산으로 변환하는 핵심 단계입니다. zkPyTorch는 계산 효율성과 모델 정확도의 균형을 맞추도록 신중하게 설계된 정적 정수 양자화 방법을 사용하여 증명을 생성할 때 빠르고 정확하도록 보장합니다.
이 양자화 프로세스에는 오버플로 및 정확도의 상당한 손실 없이 부동 소수점 숫자를 효율적으로 표현하기 위한 최적의 양자화 스케일을 정확하게 결정하기 위한 엄격한 보정이 포함됩니다. ZKP의 고유한 비선형 연산 과제(예: Softmax 및 계층 정규화)에 대해 zkPyTorch는 이러한 복잡한 함수를 효율적인 테이블 조회 연산으로 혁신적으로 변환합니다. 이 전략은 증명 생성의 효율성을 크게 향상시킬 뿐만 아니라, 성능과 신뢰성을 모두 고려하여 생성된 증명 결과가 고정밀 양자화 모델의 출력과 완전히 일치하도록 보장하며, 검증 가능한 머신 러닝의 실제 적용을 촉진합니다.
zkPyTorch는 다차원에서 효율성과 확장성 측면에서 영지식 추론의 궁극적인 성능을 보장하기 위해 매우 정교한 다단계 회로 최적화 시스템을 채택합니다.
일괄 처리 최적화
여러 추론 작업을 일괄 처리로 패키징함으로써 전체 계산 복잡도가 크게 감소합니다. 이는 특히 Transformer와 같은 언어 모델의 순차적 연산 시나리오에 적합합니다. 그림 3에서 볼 수 있듯이 기존의 대규모 언어 모델(LLM) 추론 프로세스는 토큰 단위 생성 모드로 실행되는 반면, zkPyTorch의 혁신적인 방식은 모든 입력 및 출력 토큰을 단일 프롬프트 프로세스로 통합하여 검증합니다. 이 처리 방식은 LLM의 전체 추론이 정확한지 한 번에 확인하는 동시에 각 출력 토큰이 표준 LLM 추론과 일치하는지 확인할 수 있습니다.
LLM 추론에서 KV 캐시(키-값 캐시) 메커니즘의 정확성은 추론 출력의 신뢰성을 보장하는 핵심 요소입니다. 모델의 추론 논리가 잘못되면 캐시를 사용하더라도 표준 디코딩 프로세스와 일치하는 결과를 복원하는 것은 불가능합니다. zkPyTorch는 이 프로세스를 정확하게 재현함으로써 영지식 증명의 모든 출력이 검증 가능한 확실성과 무결성을 갖도록 보장합니다.

그림 3: 대규모 언어 모델(LLM) 계산의 일괄 검증. 여기서 L은 입력 시퀀스 길이, N은 출력 시퀀스 길이, H는 모델의 은닉층 차원을 나타냅니다.
핵심 연산 최적화
zkPyTorch는 기본 머신 러닝 기본 요소를 심층적으로 최적화하여 회로 효율을 크게 향상시켰습니다. 예를 들어, 합성곱 연산은 항상 계산량이 많은 작업이었습니다. zkPyTorch는 고속 푸리에 변환(FFT) 기반 최적화 방법을 사용하여 공간 영역에서 수행된 합성곱 연산을 주파수 영역의 곱셈 연산으로 변환하여 계산 비용을 크게 줄입니다. 동시에 ReLU 및 softmax와 같은 비선형 함수의 경우, 시스템은 ZKP에 적합하지 않은 비선형 계산을 피하기 위해 미리 계산된 조회 테이블 방식을 사용하여 추론 회로의 작동 효율을 크게 향상시킵니다.
병렬 회로 실행
zkPyTorch는 복잡한 ML 연산을 병렬 회로로 자동 컴파일하여 멀티코어 CPU/GPU의 하드웨어 잠재력을 최대한 활용하고 대규모 병렬 증명 생성을 지원합니다. 예를 들어, 텐서 곱셈을 수행할 때 zkPyTorch는 계산 작업을 여러 개의 독립적인 하위 작업으로 자동 분할하여 여러 처리 장치에 분산시켜 동시 실행을 지원합니다. 이러한 병렬화 전략은 회로 실행 처리량을 크게 향상시킬 뿐만 아니라 대규모 모델의 효율적인 검증을 실현하여 확장 가능한 ZKML의 새로운 지평을 엽니다.
zkPyTorch는 엄격한 벤치마크 테스트를 통해 여러 주류 머신 러닝 모델에서 탁월한 성능과 실질적인 사용성을 입증했습니다.
VGG-16 모델 테스트
CIFAR-10 데이터셋에서 zkPyTorch는 단일 이미지에 대한 VGG-16 증명 생성을 단 6.3초 만에 완료했으며, 정확도는 기존 부동 소수점 계산과 거의 동일합니다. 이는 zkML이 이미지 인식과 같은 기존 작업에서 실용적인 역량을 갖추고 있음을 나타냅니다.
Llama-3 모델 테스트
최대 80억 개의 매개변수를 가진 Llama-3 대규모 언어 모델에서 zkPyTorch는 토큰당 약 150초의 효율적인 증명 생성을 달성합니다. 더욱 인상적인 점은 원래 모델과 비교했을 때 출력이 99.32%의 코사인 유사도를 유지한다는 점입니다. 이는 모델 출력의 의미적 일관성을 고려하면서도 높은 신뢰성을 보장합니다.

표 1: 합성곱 신경망과 변환 신경망에서 다양한 ZKP 기법의 성능
검증 가능한 서비스형 머신 러닝(Verifiable MLaaS)
머신 러닝 모델의 가치가 지속적으로 상승함에 따라, 점점 더 많은 AI 개발자들이 자체 모델을 클라우드에 구축하고 외부에 MLaaS(Machine-Learning-as-a-Service) 서비스를 제공하기로 선택하고 있습니다. 그러나 실제로 사용자는 추론 결과의 진위 여부를 확인하기 어려운 경우가 많습니다. 모델 제공자는 모델 구조 및 매개변수와 같은 핵심 자산을 보호하여 도난이나 남용을 방지하고자 합니다.
zkPyTorch는 이러한 모순을 해결하기 위해 탄생했습니다. 클라우드 AI 서비스가 기본적으로 "영지식 검증 기능"을 갖추고 추론 결과의 암호화 수준을 구현할 수 있도록 지원합니다. 검증 가능합니다.
그림 4에서 볼 수 있듯이 개발자는 Llama-3와 같은 대규모 모델을 zkPyTorch에 직접 연결하여 영지식 증명 기능을 갖춘 신뢰할 수 있는 MLaaS 시스템을 구축할 수 있습니다. zkPyTorch는 기본 ZKP 엔진과 완벽하게 통합되어 모델 세부 정보를 노출하지 않고 자동으로 증명을 생성하여 각 추론이 올바르게 실행되는지 검증할 수 있습니다. 이를 통해 모델 제공자와 사용자에게 진정으로 신뢰할 수 있는 상호 작용 기반을 구축할 수 있습니다.

그림 4: 검증 가능한 머신러닝 서비스(Verifiable MLaaS)에서 zkPyTorch의 적용 시나리오.
zkPyTorch는 안전하고 검증 가능한 AI 모델 평가 메커니즘을 제공하여 이해관계자가 모델 세부 정보를 노출하지 않고 핵심 성과 지표를 신중하게 평가할 수 있도록 합니다. 이 "누출 제로" 평가 방식은 AI 모델에 대한 새로운 신뢰 기준을 확립하는 동시에 상거래의 효율성을 높이고 개발자의 지적 재산 보안을 보호합니다. 이는 모델 가치의 가시성을 향상시킬 뿐만 아니라 AI 산업 전체의 투명성과 공정성을 향상시킵니다.
zkPyTorch는 Polyhedra Network가 독자적으로 개발한 EXPchain 블록체인 네트워크를 기본적으로 통합하여 신뢰할 수 있는 탈중앙화 AI 인프라를 공동으로 구축합니다. 이러한 통합은 스마트 계약 호출 및 온체인 검증을 위한 고도로 최적화된 경로를 제공하여 AI 추론 결과를 암호화된 방식으로 검증하고 블록체인에 영구적으로 저장할 수 있도록 합니다.
zkPyTorch와 EXPchain의 협업을 통해 개발자는 모델 배포, 추론 계산에서 온체인 검증까지 종단 간 검증 가능한 AI 애플리케이션을 구축하여 투명하고 신뢰할 수 있으며 감사 가능한 AI 컴퓨팅 프로세스를 진정으로 실현하고 차세대 블록체인 + AI 애플리케이션에 대한 기본 지원을 제공할 수 있습니다.
Polyhedra는 다음 방향에 중점을 두고 zkPyTorch의 발전을 지속적으로 촉진할 것입니다.
오픈 소스 및 커뮤니티 공동 구축
전 세계 개발자 참여를 촉진하고 제로 지식 머신 러닝 분야에서 협력적 혁신과 생태적 번영을 촉진하기 위해 zkPyTorch 핵심 구성 요소를 점진적으로 오픈 소스화합니다.
모델 및 프레임워크 호환성 확장
주류 머신 러닝 모델 및 프레임워크의 지원 범위를 확장하고, zkPyTorch의 적응성과 다양성을 더욱 개선하며, 다양한 AI 워크플로에 유연하게 내장할 수 있도록 합니다.
개발 도구 및 SDK 구축
종합적인 개발 도구 체인과 소프트웨어 개발 키트(SDK)를 도입하여 통합 프로세스를 간소화하고 실제 비즈니스 시나리오에서 zkPyTorch의 배포 및 적용을 가속화합니다.
zkPyTorch는 신뢰할 수 있는 AI 미래를 향한 길에서 중요한 이정표입니다. zkPyTorch는 성숙한 PyTorch 프레임워크와 최첨단 영지식 증명 기술을 긴밀하게 통합하여 머신러닝의 보안성과 검증 가능성을 크게 향상시킬 뿐만 아니라 AI 애플리케이션의 배포 방식과 신뢰 경계를 새롭게 정의합니다.
Polyhedra는 "안전한 AI" 분야에서 혁신을 지속하고, 개인정보 보호, 결과 검증 및 모델 준수 측면에서 머신러닝의 수준을 더욱 높이고, 투명하고 신뢰할 수 있으며 확장 가능한 지능형 시스템 구축을 지원할 것입니다.
저희의 최신 진행 상황을 확인하고 zkPyTorch가 보안 인텔리전스 시대의 미래를 어떻게 변화시키는지 직접 확인해 보시기 바랍니다.
본 기사는 기고문에서 발췌되었으며 BlockBeats의 견해를 대변하지 않습니다.
BlockBeats 공식 커뮤니티에 참여하세요:
Telegram 구독 그룹:https://t.me/theblockbeats
Telegram 토론 그룹:https://t.me/BlockBeats_App
Twitter 공식 계정:https://twitter.com/BlockBeatsAsia