홈
AI AI
속보
심층
이벤트
Pro
더보기
자금 조달 정보
특집
온체인 생태계
용어
팟캐스트
데이터
OPRR
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
XRP
$2.25
2.07%
DOGE
$0.325
2.23%
USDC
$0.999
3.05%
Partnered With:

머신 러닝 모델을 위한 커널 수준 증명 메커니즘

이 글을 읽으려면 12 분
zkCUDA는 ZKP 메모리 장벽을 돌파합니다. GKR 프로토콜에 따라 조정되는 모델 분해 및 하드웨어 스케줄링 프레임워크를 통해 초대규모 머신 러닝에 대한 효율적인 제로 지식 검증이 달성됩니다.
원제: 머신 러닝 모델을 위한 커널 기반 증명
원저자: 팡지용


코끼리를 어떻게 먹을까요? 한 입씩 먹어 치우세요.


최근 몇 년 동안 머신 러닝 모델은 놀라운 속도로 비약적인 발전을 이루었습니다. 모델의 성능이 향상됨에 따라 복잡성 또한 급격히 증가했습니다. 오늘날의 고급 모델은 수백만 개 또는 수십억 개의 매개변수를 포함하는 경우가 많습니다. 이러한 규모 문제를 해결하기 위해 다양한 영지식 증명 시스템이 등장했으며, 이 시스템들은 증명 시간, 검증 시간, 그리고 증명 크기 간의 역동적인 균형을 달성하기 위해 끊임없이 노력하고 있습니다.


표 1: 모델 매개변수 크기의 기하급수적 증가



영지식 증명 분야의 현재 연구 대부분은 증명 시스템 자체의 최적화에 초점을 맞추고 있지만, 중요한 측면, 즉 대규모 모델을 증명을 위해 더 작고 관리하기 쉬운 하위 모듈로 적절하게 분할하는 방법이 간과되는 경우가 많습니다. 이것이 왜 그렇게 중요한지 궁금하실 수 있습니다.


자세히 설명해 보겠습니다.


현대 머신 러닝 모델은 종종 수십억 개의 매개변수를 사용하는데, 이는 암호화 처리 없이도 이미 많은 메모리 리소스를 차지합니다. 이러한 과제는 영지식 증명(ZKP) 맥락에서 더욱 심화됩니다.


각 부동 소수점 매개변수는 산술 필드의 원소로 변환되어야 하는데, 이로 인해 메모리 사용량이 약 5~10배 증가합니다. 또한, 대수 필드에서 부동 소수점 연산을 정확하게 시뮬레이션하기 위해 일반적으로 약 5배에 달하는 추가적인 연산 오버헤드가 발생합니다.


이러한 요소들이 합쳐지면 모델의 전체 메모리 요구량은 원래 크기의 25~50배까지 증가할 수 있습니다. 예를 들어, 10억 개의 32비트 부동 소수점 매개변수를 가진 모델은 변환된 매개변수를 저장하는 데만 100~200GB의 메모리가 필요할 수 있습니다. 중간 계산 값과 증명 시스템 자체의 오버헤드를 고려하면 전체 메모리 사용량은 TB 수준을 쉽게 초과합니다.


Groth16 및 Plonk와 같은 현재 주류 증명 시스템은 일반적으로 최적화되지 않은 구현에서 모든 관련 데이터가 동시에 메모리에 로드될 수 있다고 가정합니다. 이러한 가정은 기술적으로 가능하지만, 실제 하드웨어 조건에서는 매우 어렵고 사용 가능한 증명 컴퓨팅 리소스를 크게 제한합니다.


Polyhedra 솔루션: zkCuda


zkCuda란 무엇인가요?


zkCUDA 기술 문서에서 설명했듯이,
Polyhedra의 zkCUDA는 고성능 회로 개발을 위한 제로 지식 컴퓨팅 환경으로, 증명 생성 효율성을 향상시키도록 설계되었습니다. zkCUDA는 회로 표현력을 저하시키지 않으면서 기본 증명기와 하드웨어 병렬 처리를 최대한 활용하여 빠른 ZK 증명 생성을 달성할 수 있습니다.


zkCUDA 언어는 구문 및 의미론 측면에서 CUDA와 매우 유사하며, 기존 CUDA 경험이 있는 개발자에게 매우 친화적입니다. 보안과 성능을 모두 보장하기 위해 최하위 계층은 Rust로 구현됩니다.


zkCUDA를 사용하면 개발자는 다음과 같은 이점을 얻을 수 있습니다.


고성능 ZK 회로를 빠르게 구축합니다.


MPI를 지원하는 GPU 또는 클러스터 환경과 같은 분산 하드웨어 리소스를 효율적으로 스케줄링하고 활용하여 대규모 병렬 컴퓨팅을 구현합니다.


zkCUDA를 선택해야 하는 이유는 무엇일까요?


zkCuda는 GPU 컴퓨팅에서 영감을 받은 고성능 제로 지식 컴퓨팅 프레임워크입니다. 초대규모 머신 러닝 모델을 더 작고 관리하기 쉬운 컴퓨팅 단위(커널)로 분할하고 CUDA와 유사한 프런트엔드 언어를 통해 효율적인 제어를 구현할 수 있습니다. 이러한 설계는 다음과 같은 주요 이점을 제공합니다.


1. 정확하게 매칭된 증명 시스템 선택


zkCUDA는 각 컴퓨팅 커널에 대한 세밀한 분석을 지원하고 가장 적합한 영지식 증명 시스템과 매칭합니다. 예를 들면 다음과 같습니다.


고병렬 컴퓨팅 작업의 경우, 구조적 병렬 처리에 효과적인 GKR과 같은 프로토콜을 사용할 수 있습니다.


작거나 불규칙적으로 구조화된 작업의 경우, 소규모 컴퓨팅 시나리오에서 오버헤드가 낮은 Groth16과 같은 증명 시스템을 사용하는 것이 더 적합합니다.


zkCUDA는 백엔드 선택을 사용자 지정함으로써 다양한 ZK 프로토콜의 성능 이점을 극대화할 수 있습니다.


2. 더욱 스마트한 리소스 스케줄링 및 병렬 최적화


다양한 증명 커널은 CPU, 메모리 및 I/O에 대한 리소스 요구 사항이 상당히 다릅니다. zkCUDA는 각 작업의 리소스 소비를 정확하게 평가하고 전체 처리량을 극대화하도록 지능적으로 스케줄링할 수 있습니다.



더 중요한 것은 zkCUDA가 CPU, GPU 및 FPGA를 포함한 이기종 컴퓨팅 플랫폼 간 작업 분산을 지원하여 하드웨어 리소스를 최적으로 활용하고 시스템 수준 성능을 크게 향상시킨다는 것입니다.


ZkCuda는 GKR 프로토콜과 자연스럽게 호환됩니다.


zkCuda는 다양한 제로 지식 증명 시스템과 호환되는 일반 컴퓨팅 프레임워크로 설계되었지만 GKR(Goldwasser-Kalai-Rothblum) 프로토콜과 자연스럽게 높은 수준의 아키텍처 적합성을 갖습니다.



아키텍처 설계 측면에서 zkCUDA는 다항식 커밋 메커니즘을 도입하여 모든 하위 계산이 일관된 공유 데이터에서 실행되도록 하여 다양한 하위 계산 커널을 연결합니다. 이 메커니즘은 시스템 무결성을 유지하는 데 필수적이지만, 상당한 계산 비용을 초래합니다.


반대로, GKR 프로토콜은 더욱 효율적인 대안 경로를 제공합니다. 각 커널이 내부 제약 조건을 완전히 증명해야 하는 기존의 영지식 시스템과 달리, GKR은 계산 정확성 검증을 커널 출력에서 입력까지 재귀적으로 추적할 수 있도록 합니다. 이 메커니즘을 통해 각 모듈에서 완전히 검증하는 대신 커널 간 정확성을 전송할 수 있습니다. 핵심 아이디어는 머신 러닝의 그래디언트 역전파(gradient backpropagation)와 유사하며, 계산 그래프를 통해 정확성 주장을 추적하고 전송합니다. 이러한 "증명 그래디언트"를 여러 경로로 병합하는 것은 어느 정도 복잡성을 수반하지만, 바로 이 메커니즘이 zkCUDA와 GKR 간의 긴밀한 협업의 기반을 형성합니다. 머신 러닝 학습 프로세스의 구조적 특징을 조정함으로써 zkCUDA는 대규모 모델 시나리오에서 더욱 긴밀한 시스템 통합과 더욱 효율적인 영지식 증명 생성을 달성할 것으로 예상됩니다. 예비 결과 및 향후 방향


zkCuda 프레임워크의 초기 개발을 완료하고 Keccak 및 SHA-256과 같은 암호화 해시 함수와 소규모 머신 러닝 모델을 포함한 다양한 시나리오에서 성공적으로 테스트했습니다.


앞으로 메모리 효율적 스케줄링 및 그래프 수준 최적화와 같은 최신 머신 러닝 학습에 여러 가지 성숙한 엔지니어링 기법을 도입하고자 합니다. 이러한 전략을 영지식 증명 생성 프로세스에 통합하면 시스템의 성능 한계와 적응 유연성이 크게 향상될 것으로 기대합니다.


이것은 단지 시작점일 뿐입니다. zkCuda는 효율적이고 확장성이 뛰어나며 적응성이 뛰어난 일반 증명 프레임워크를 향해 계속 나아갈 것입니다.


원본 링크



BlockBeats 공식 커뮤니티에 참여하세요:

Telegram 구독 그룹:https://t.me/theblockbeats

Telegram 토론 그룹:https://t.me/BlockBeats_App

Twitter 공식 계정:https://twitter.com/BlockBeatsAsia

举报 오류 신고/제보
문고 선택
새 문고 추가
취소
완료
새 문고 추가
자신만 보기
공개
저장
오류 신고/제보
제출