드래곤플라이 파트너: 탈중앙화 추론의 "신뢰하지 말고 검증하라"

이 기사는 기계로 번역되었습니다
원문 표시
블록체인과 머신러닝(ML) 분명히 공통점이 많습니다.

하시브 쿠레시가 각본을 맡은 작품

편집자: 테크 플로우 (Techflowpost) TechFlow

Llama2–70B와 같은 대규모 언어 모델을 실행하려고 합니다. 이러한 대형 모델에는 140GB 이상의 메모리가 필요하므로 가정용 컴퓨터에서는 원본 모델을 실행할 수 없습니다. 그렇다면 당신의 선택은 무엇입니까? 클라우드 서비스 공급자에게 의지할 수도 있지만 중앙화된 단일 회사가 이 워크로드를 처리하고 모든 사용 데이터를 수집하도록 신뢰하기는 어려울 수 있습니다. 그렇다면 필요한 것은 단일 공급자에 얽매이지 않고 머신러닝(ML) 모델을 실행할 수 있는 탈중앙화 추론입니다.

신뢰 문제

탈중앙화 네트워크에서는 모델을 실행하고 결과를 신뢰하는 것만으로는 충분하지 않습니다. 네트워크에 Llama2-70B를 사용하여 거버넌스 딜레마를 분석하도록 요청한다고 가정해 보겠습니다. 네트워크가 실제로 Llama2-13B를 사용하지 않았다는 것을 어떻게 알 수 있으며, 더 나쁜 분석을 제공하고 그 차이를 감당할 수 있을까요?

중앙 집중화된 세계에서는 OpenAI와 같은 회사의 평판이 위험하기 때문에 정직하다고 믿을 수 있습니다(그리고 어느 정도 LLM의 품질은 자명합니다). 그러나 탈중앙화 세계에서는 정직이 기본이 아니며 검증이 필요합니다.

이것이 검증 가능한 추론이 작용하는 곳입니다. 쿼리에 대한 응답을 제공하는 것 외에도 요청한 모델에서 쿼리가 올바르게 실행되는지 증명해야 합니다. 하지만 어떻게?

가장 간단한 방법은 모델을 스마트 계약으로 온 온체인 에서 실행하는 것입니다. 이는 확실히 출력의 검증을 보장하지만 매우 비실용적입니다. GPT-3은 단어를 표현하기 위해 차원 12,288의 임베딩을 사용합니다. 이 크기의 단일 행렬 곱셈을 온체인 수행하면 현재 가스 가격을 기준으로 약 100억 달러의 비용이 들고, 이 계산은 약 한 달 동안 모든 블록을 채울 것입니다.

그러므로 우리는 다른 접근 방식을 취해야 합니다.

현장을 관찰한 후 검증 가능한 추론을 해결하기 위한 세 가지 주요 접근 방식, 즉 영지식 증명, 낙관적 사기 증명, 암호경제학을 분명히 확인했습니다. 각 방법에는 안전과 비용에 대한 영향이 있습니다.

1. 영지식 증명(ZK ML)

대형 모델을 실행했지만 모델의 크기에 관계없이 증명의 크기가 효과적으로 고정되었음을 증명할 수 있다고 상상해 보세요. 이것이 바로 ZK-SNARK를 통해 전달되는 ZK ML(머신러닝(ML))이 약속하는 것입니다.

원칙적으로는 우아하게 들리지만 심층 신경망을 영지식 회로로 컴파일하고 이를 증명하는 것은 매우 어렵습니다. 그리고 비용이 매우 많이 듭니다. 적어도 추론 비용이 1000배 증가하고 지연 시간(증명을 생성하는 데 걸리는 시간)이 1000배 증가할 것으로 예상됩니다. 이전에 모델 자체를 회로로 컴파일하는 것은 말할 것도 없습니다. 무슨 일이든 일어납니다. 결국 이 비용은 사용자에게 전가되어야 하므로 최종 사용자에게는 매우 비싼 비용이 됩니다.

반면에 이는 암호화 방식으로 정확성이 보장되는 유일한 방법입니다. ZK를 사용하면 모델 제공자가 아무리 노력해도 속일 수 없습니다. 그러나 그렇게 하는 데 드는 비용이 높기 때문에 가까운 미래에 대형 모델에는 실용적이지 않습니다.

예: EZKL , Modulus Labs , Giza

2. 낙관적 사기 증명(Optimistic ML)

낙관적인 접근 방식은 믿으되 검증하는 것입니다. 달리 입증되지 않는 한 추론이 정확하다고 가정합니다. 노드가 부정 행위를 시도하는 경우 "관찰자"는 네트워크의 부정 행위자를 지적하고 사기 증명을 사용하여 이에 대해 도전할 수 있습니다. 이러한 관찰자는 항상 체인을 관찰하고 자체 모델을 다시 실행하여 출력이 올바른지 확인해야 합니다.

이러한 사기 증명은 버그를 찾을 때까지 온체인 모델 실행 추적을 반복적으로 분할하는 Truebit: Response Games 스타일의 대화형 과제입니다.

이런 일이 발생한다면 이러한 프로그램은 규모가 크고 내부 상태도 크기 때문에 비용이 매우 많이 들 것입니다. 단일 GPT-3 추론 비용은 약 1페타플롭(10⁵ 부동 소수점 연산)입니다. 그러나 게임 이론에서는 이것이 거의 불가능하다는 것을 보여줍니다. (이 코드는 실제 프로덕션에서는 거의 실행되지 않기 때문에 코딩할 때 사기 증명을 올바르게 작성하는 것도 매우 어렵습니다.)

낙관주의의 장점은 정직한 관찰자가 주의를 기울이는 한 ML이 안전하다는 것입니다. ZK ML보다 저렴하지만 네트워크의 모든 관찰자가 모든 쿼리를 다시 실행한다는 점을 명심하세요. 균형상으로는 관찰자가 10명이면 보안 비용은 사용자에게 전가되어야 하므로 추론 비용의 10배 이상(또는 관찰자가 있는 수만큼)을 지불해야 한다는 의미입니다.

단점은 낙관적 집계 기술과 마찬가지로 응답이 검증되었는지 확인하기 위해 챌린지 기간이 끝날 때까지 기다려야 한다는 것입니다. 그러나 네트워크 매개변수 설정 방법에 따라 며칠이 아닌 몇 분만 기다려야 할 수도 있습니다.

예: Ora , Gensyn

3. 암호경제학 ML

여기서 우리는 모든 화려한 기술을 버리고 간단한 작업을 수행합니다. 바로 지분 가중치 투표입니다. 사용자는 쿼리를 실행해야 하는 노드 수를 결정하고 각 노드는 응답을 공개하며, 응답 간에 차이가 있는 경우 홀수 노드가 잘립니다. 표준 오라클 메커니즘은 사용자가 원하는 보안 수준을 설정하고 비용과 신뢰의 균형을 맞출 수 있는 보다 간단한 접근 방식입니다. Chainlink가 ML을 수행했다면 다음과 같이 수행했을 것입니다.

여기서 대기 시간은 빠르며 각 노드에 대해 커밋과 공개만 필요합니다. 이것이 블록체인에 기록된다면 기술적으로 이는 두 개의 블록에서 발생할 수 있습니다.

다만 보안이 가장 취약합니다. 다수의 노드가 협력할 의지가 있다면 합리적으로 공모를 선택할 수 있습니다. 사용자로서 당신은 이 노드들이 얼마나 투자했는지, 그리고 부정행위로 인해 얼마나 많은 비용이 들 것인지 생각해야 합니다. 즉, Eigenlayer와 같은 스테이킹 및 귀속 보안을 사용하여 네트워크는 보안 실패 시 효과적인 보험을 제공할 수 있습니다.

하지만 이 시스템의 좋은 점은 사용자가 원하는 보안 수준을 지정할 수 있다는 것입니다. 쿼럼에 3개 노드 또는 5개 노드를 포함하거나 네트워크의 모든 노드를 포함하도록 선택할 수 있습니다. 또는 위험을 감수하고 싶다면 n=1을 선택할 수도 있습니다. 여기서 비용 함수는 간단합니다. 사용자는 자신의 쿼럼에서 원하는 쿼럼 양만큼 비용을 지불합니다. 3개를 선택하면 추론 비용의 3배를 지불하게 됩니다.

여기서 어려운 질문은: n=1을 안전하게 만들 수 있습니까? 간단한 구현에서는 격리된 노드가 감시하는 사람이 없는 경우 매번 부정 행위를 해야 합니다. 그러나 쿼리를 암호화하고 인텐트를 통해 지불하면 실제로 이 작업에 응답하는 유일한 노드라는 사실을 노드에서 숨길 수 있을 것으로 생각됩니다. 이 경우 일반 사용자에게 추론 비용의 2배 미만을 청구할 수 있습니다.

궁극적으로 암호경제학적 접근 방식은 가장 단순하고 쉬우며 아마도 가장 저렴할 것입니다. 그러나 원칙적으로는 가장 매력이 적고 안전성도 가장 낮습니다. 하지만 늘 그렇듯이 악마는 디테일에 있습니다.

예: 의식 , Atoma Network

검증 가능한 ML이 어려운 이유

여러분은 이렇게 생각할 수도 있습니다. 왜 우리는 이 모든 것을 이미 갖고 있지 않은 걸까요? 결국, ML 모델은 단지 매우 큰 컴퓨터 프로그램일 뿐입니다. 올바르게 실행되는 프로그램이 항상 블록체인의 핵심이라는 것을 증명하는 것입니다.

이것이 바로 이 세 가지 검증 방법이 ZK 증명을 사용한 ZK 롤업, 사기 증명을 사용한 낙관적 롤업, 암호 경제학을 사용한 대부분의 L1 블록체인을 통해 블록체인이 블록 공간을 보호하는 방법을 반영하는 이유입니다. 의심할 바 없이 우리는 본질적으로 동일한 솔루션을 얻게 될 것입니다. 그렇다면 ML에 적용할 때 이를 어렵게 만드는 것은 무엇입니까?

ML 계산은 일반적으로 GPU에서 효율적으로 실행되도록 설계된 조밀한 계산 그래프로 표현된다는 점에서 ML이 독특합니다. 이는 입증되도록 설계되지 않았습니다. 따라서 ZK 또는 낙관적 환경에서 ML 계산을 증명하려면 실행 가능한 형식으로 다시 컴파일해야 하며 이는 매우 복잡하고 비용이 많이 듭니다.

머신러닝(ML) 의 두 번째 근본적인 어려움은 비결정론입니다. 프로그램 검증에서는 프로그램의 출력이 결정적이라고 가정합니다. 그러나 다른 GPU 아키텍처나 CUDA 버전에서 동일한 모델을 실행하면 다른 결과를 얻게 됩니다. 모든 노드가 동일한 아키텍처를 사용하도록 강제하더라도 알고리즘에 사용되는 무작위성 문제(확산 모델의 노이즈 또는 LLM의 토큰 샘플링)에 여전히 문제가 발생합니다. 난수 시드를 제어하여 이 무작위성을 수정할 수 있습니다. 그러나 그럼에도 불구하고 여전히 마지막 문제인 부동 소수점 산술에 내재된 비결정성 문제에 직면해 있습니다.

거의 모든 GPU 작업은 부동 소수점 숫자에서 수행됩니다. 부동 소수점 숫자는 결합적이지 않기 때문에 작업하기가 어렵습니다. 즉, 부동 소수점 숫자의 (a + b) + c가 항상 a + (b + c)와 동일하다는 것은 사실이 아닙니다. GPU는 고도로 병렬화되어 있으므로 각 실행마다 덧셈이나 곱셈의 순서가 다를 수 있으며 이로 인해 출력에 작은 차이가 발생할 수 있습니다. 이는 단어의 이산적 특성으로 인해 LLM의 출력에 영향을 미칠 가능성이 없지만 이미지 모델의 경우 픽셀 값이 미묘하게 달라져 두 이미지가 정확히 일치하지 않을 수 있습니다.

이는 성능에 큰 타격을 줄 수 있는 부동 소수점 숫자 사용을 피하거나 출력을 비교할 때 어느 정도 유연성을 허용해야 함을 의미합니다. 어느 쪽이든, 세부 사항은 까다롭고 추상화할 수 없습니다. (이것이 이더 Virtual Machine이 NEAR와 같은 일부 블록체인이 부동 소수점 숫자를 지원하지 않는 이유입니다.)

간단히 말해서, 추론 네트워크를 탈중앙화 모든 세부 사항이 중요하고 실제로는 놀라울 정도로 많은 세부 사항이 있기 때문에 어렵습니다.

요약하다

현재 블록체인과 머신러닝(ML) 분명히 공통점이 많습니다. 하나는 신뢰를 만들어내는 기술이고, 다른 하나는 신뢰가 절실히 요구되는 기술입니다. 탈중앙화 각 접근 방식에는 고유한 장단점이 있지만, 저는 기업가가 이러한 도구를 활용하여 최상의 네트워크를 구축하는 방법을 보는 데 매우 관심이 있습니다.

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
즐겨찾기에 추가
코멘트