SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

avatar
SevenX Ventures
11個月前
本文約9245字,閱讀全文需要約12分鐘
ZK和區塊鍊為AI/ML的運作提供了一個安全且值得信賴的環境。

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

本文為SevenX 研究團隊原創,僅供交流學習,不構成任何投資參考。如需引用,請註明來源。

原版英文報告於2023 年5 月發表於SevenX 的Mirror 平台。更多中文投研內容,請關注公眾號【SevenXVentures】。

感謝Brian Retford, SunYi, Jason Morton, Shumo, Feng Boyuan, Daniel, Aaron Greenblatt, Nick Matthew, Baz, Marcin, 和Brent 對本文提供寶貴的見解、回饋與審查。

作者:GraceHill

對於我們這些加密愛好者來說,人工智能已經火了好一陣子。有趣的是,沒人願意看到人工智能失控的情況。區塊鏈發明的初衷是防止美元失控,所以我們可能會嘗試防止人工智慧的失控。此外,我們現在有了一種稱為零知識證明的新技術,用於確保事情不會出錯。然而,要駕馭人工智能這個野獸,我們必須了解它的工作原理。

機器學習的簡單介紹

人工智能已經經歷了幾個名字的變化,從“專家系統”到“神經網絡”,然後是“圖形模型”,最後演變為“機器學習”。所有這些都是「人工智能」的子集,人們給它起了不同的名字,我們對人工智能的了解也不斷加深。讓我們稍微深入了解機器學習,揭開機器學習的神秘面紗。

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

注意:如今,大多數機器學習模型都是神經網絡,因為它們在許多任務中具有優異的表現。我們主要將機器學習稱為神經網路機器學習。

機器學習是如何運作的?

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

首先,讓我們快速了解機器學習的內部運作:

  1. 輸入資料預處理:輸入資料需要處理成可以作為模型輸入的格式。這通常涉及預處理和特徵工程,以提取有用的信息並將數據轉換成合適的形式,例如輸入矩陣或張量(高維矩陣)。這是專家系統方法。隨著深度學習的出現,處理層自動處理預處理。

  2. 設定初始模型參數:初始模型參數包含多個層、活化函數、初始權重、偏移、學習率等。有些參數可以在訓練過程中透過優化演算法進行調整以提高模型的準確性。

  3. 訓練資料:

    • 輸入資料輸入到神經網路中,通常從一個或多個特徵提取和關係建模層開始,如卷積層(CNN),循環層(RNN)或自註意力層。這些層學會從輸入資料中提取相關特徵並建模這些特徵之間的關係。

    • 然後這些層的輸出傳遞給一個或多個額外的層,這些層對輸入資料執行不同的計算和轉換。這些層通常主要涉及可學習權重矩陣的矩陣乘法和非線性激活函數的應用,但也可能包括其他操作,如卷積神經網絡中的捲積和池化,或循環神經網絡中的迭代。這些層的輸出作為模型中下一層的輸入,或作為最終的預測輸出。

  4. 取得模型的輸出:神經網絡計算的輸出通常是向量或矩陣,表示影像分類的機率、情緒分析分數或其他結果,取決於網絡的應用。通常還有一個錯誤評估和參數更新模組,根據模型的目的自動更新參數。

    神經網絡計算的輸出通常是向量或矩陣,表示圖像分類的機率、情緒分析分數或其他結果,取決於網路的應用。通常還有一個錯誤評估和參數更新模組,根據模型的目的自動更新參數。如果上述解釋看起來太晦澀,可以參考以下使用CNN 模型辨識蘋果圖片的例子。SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

    • 將影像以像素值矩陣的形式載入模型。此矩陣可以表示為具有尺寸(高度、寬度、通道)的3D張量。

    • 設定CNN 模型的初始參數。

    • 輸入影像透過CNN 中的多個隱藏層,每層應用卷積濾波器從影像中提取越來越複雜的特徵。每層的輸出通過非線性激活函數,然後進行池化以減少特徵圖的維度。最後一層通常是一個全連接層,根據提取的特徵產生輸出預測。

    • CNN 的最終輸出是機率最高的類別。這是輸入影像的預測標籤。

機器學習的信任框架

我們可以將上述內容總結為一個機器學習信任框架,包括四個機器學習的基本層,整個機器學習過程需要這些層是可信的才能可靠:

  • 輸入:原始資料需要預處理,有時需要保密。

    完整性:輸入資料未被篡改,未被惡意輸入污染,並且正確地進行了預處理。

    隱私:如有需要,輸入資料不會外洩。

  • 輸出:需要準確產生和傳輸

    完整性:輸出正確產生。

    隱私:如有需要,輸出不會洩漏。

  • 模型類型/演算法:模型應正確計算

    完整性:模型執行正確。

    隱私:如有需要,模型本身或計算不會洩漏。

    不同的神經網絡模型具有不同的演算法和層,適用於不同的用例和輸入。

    卷積神經網絡(CNN)通常用於涉及網格狀資料的任務,如影像,其中局部模式和特徵可以通過對小輸入區域應用卷積操作來捕獲。

    另一方面,循環神經網絡(RNN)非常適合順序數據,例如時間序列或自然語言,其中隱藏狀態可以捕獲來自先前時間步的信息並建模時間依賴關係。

    自註意力層對於捕捉輸入序列中元素之間的關係非常有用,使其對於諸如機器翻譯或摘要之類的任務非常有效,這些任務中長程依賴關係至關重要。

    還有其他類型的模型,包括多層感知機(MLP)等。

  • 模型參數:在某些情況下,參數應該是透明或民主生成,但在所有情況下都不易被竄改。完整性:參數以正確的方式產生、維護和管理。隱私權:模型所有者通常會對機器學習模型參數保密,以保護開發該模型的組織的知識產權和競爭優勢。這種現像只在變壓器模型變得瘋狂昂貴的訓練前非常普遍,但對產業來說仍然是一個主要問題。

機器學習的信任問題

隨著機器學習(ML)應用的爆炸性增長(複合年增長率超過20% )以及它們在日常生活中的日益融入,例如最近備受歡迎的ChatGPT,機器學習的信任問題變得越來越關鍵,不容忽視。因此,發現並解決這些信任問題至關重要,以確保負責任地使用AI 並防止其潛在濫用。然而,究竟是哪些問題呢?讓我們深入了解。SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

透明度或可證明性不足

信任問題長期困擾機器學習,主要原因有二:

  • 隱私性質:如上所述,模型參數通常是私密的,而在某些情況下,模型輸入也需要保密,這自然會在模型所有者和模型使用者之間帶來一些信任問題。

  • 算法黑盒:機器學習模型有時被稱為“黑盒”,因為它們在計算過程中涉及許多難以理解或解釋的自動化步驟。這些步驟涉及複雜的算法和大量的數據,帶來不確定性和有時隨機的輸出,使得算法容易受到偏見甚至歧視的指責。

在更深入之前,本文的一個更大的假設是模型已經“準備好使用”,這意味著它經過良好的訓練並符合目的。模型可能不適用於所有情況,而且模型以驚人的速度改進,機器學習模型的正常使用壽命在2到18個月之間,具體取決於應用場景。

機器學習信任問題的詳細分解

模型訓練過程中存在一些信任問題,Gensyn目前正在努力產生有效證明以促進此過程。然而,本文主要關注模型推理過程。現在讓我們使用機器學習的四個建構模組來發現潛在的信任問題:

  • 輸入:

    資料來源是防篡改的

    私有輸入資料不會被模型操作者竊取(隱私問題)

  • 模型:

    模型本身如宣傳的那樣準確

    計算過程正確完成

  • 參數:

    模型參數沒有被改變或與宣傳的一致

    在過程中,對模型所有者有價值的模型參數沒有洩漏(隱私問題)

  • 輸出:

    輸出結果可證明是正確的(可能隨著上述所有元素的改進而改進)

如何將ZK 應用到機器學習信任框架中

上述一些信任問題可以透過上鍊來解決;將輸入和機器學習參數上傳到鏈上,並在鏈上計算模型,可以確保輸入、參數和模型計算的正確性。但這種方法可能會犧牲可擴展性和隱私性。 Giza 正在Starknet 上進行這項工作,但由於成本問題,它僅支援像回歸這樣的簡單機器學習模型,不支援神經網路。 ZK 技術可以更有效地解決上述信任問題。目前,ZKML 的ZK 通常指zkSNARK。首先,讓我們快速回顧一下zkSNARK 的一些基本概念:SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?一個zkSNARK 證明是證明我知道一些秘密輸入w,使得這個計算f 的結果為OUT 是真實的,而不告訴你w 是什麼。證明生成過程可以總結為以下步驟:

  1. 制定需要證明的陳述:f(x, w)=true

    “我使用具有私有參數w 的機器學習模型f 正確地對這個圖像x 進行了分類。”

  2. 將陳述轉換為電路(算術化):不同的電路建構方法包括R 1 CS、QAP、Plonkish 等。
    與其他用例相比,ZKML 需要一個額外的步驟,稱為量化。神經網絡推斷通常使用浮點算術完成,而在算術電路的主要領域中模擬浮點算術非常昂貴。不同的量化方法在精度和設備要求之間取得折衷。

    一些像R 1 CS 這樣的電路建構方法對神經網路來說效率不高。這部分可以調整以提高效能。

  3. 產生一個證明密鑰和一個驗證密鑰

  4. 建立一個見證:當w=w*時,f(x, w)=true

  5. 建立一個哈希承諾:見證人w*承諾使用加密哈希函數產生一個哈希值。這個哈希值可以公諸於世。

    這有助於確保在計算過程中,私有輸入或模型參數沒有被篡改或修改。這一步至關重要,因為即使是細微的修改也可能對模型的行為和輸出產生重大影響。

  6. 產生證明:不同的證明系統使用不同的證明來產生演算法。

    需要為機器學習操作設計特殊的零知識規則,如矩陣乘法和卷積層,以便實現這些計算的子線性時間高效協議。

    ✓ 像groth 16 這樣的通用zkSNARK 系統可能無法有效處理神經網絡,因為計算負載過大。

    ✓ 自2020 年以來,許多新的ZK 證明系統應運而生,以優化模型推理過程的ZK 證明,包括vCNN、ZEN、ZKCNN 和pvCNN。然而,它們中的大多數都針對CNN 模型進行了優化。它們只能應用於一些主要的資料集,如MNIST 或CIFAR-10 。

    ✓ 2022 年,Daniel Kang Tatsunori Hashimoto、Ion Stoica 和Yi Sun(Axiom 創始人)提出了一種基於Halo 2 的新證明方案,首次實現了對ImageNet 數據集的ZK 證明生成。他們的優化主要集中在算術化部分,具有用於非線性的新穎查找參數和跨層重用子電路。

    ✓ Modulus Labs 正在為鏈上推理對不同證明系統進行基準測試,發現在證明時間方面,ZKCNN 和plonky 2 表現最佳;在峰值證明者內存使用方面,ZKCNN 和halo 2 表現良好;而plonky 雖然表現良好,但犧牲了內存消耗,而且ZKCNN 僅適用於CNN 模型。它還正在開發一個專門為ZKML 設計的新zkSNARK 系統,以及一個新的虛擬機器。

  7. 驗證證明:驗證者使用驗證金鑰進行驗證,無需知道見證人的知識。

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

因此,我們可以證明將零知識技術應用於機器學習模型可以解決許多信任問題。使用互動式驗證的類似技術可以達到類似的效果,但在驗證者方面需要更多資源,並可能面臨更多的隱私問題。值得注意的是,根據具體的模型,為它們產生證明可能需要時間和資源,因此在將此技術最終應用於現實世界的用例時,各方面將存在折衷。

目前解決方案的現狀

接下來,現有的解決方案是什麼?請注意,模型提供者可能有很多不想產生ZKML 證明的原因。對於那些勇敢嘗試ZKML 並且解決方案有意義的人,他們可以根據模型和輸入所在的位置選擇幾種不同的解決方案:

  • 如果輸入資料在鏈上,可以考慮使用Axiom 作為解決方案:

    Axiom 正在為以太坊建立一個零知識協處理器,以改善用戶對區塊鏈資料的存取並提供更複雜數字化的鏈上資料視圖。在鏈上資料上進行可靠的機器學習計算是可行的:

    首先,Axiom 通過在其智慧合約AxiomV 0 中儲存以太坊區塊雜湊的梅克爾根來導入鏈上數據,這些數據通過ZK-SNARK 驗證過程進行無信任驗證。然後,AxiomV 0 StoragePf 合約允許對AxiomV 0 中緩存的區塊哈希給出的信任根進行任意歷史以太坊儲存證明的批量驗證。

    接下來,可以從匯入的歷史資料中擷取機器學習輸入資料。

    然後,Axiom 可以在頂部應用經過驗證的機器學習操作;使用經過優化的halo 2 作為後端來驗證每個計算部分的有效性。

    最後,Axiom 會附上每個查詢結果的zk 證明,並且Axiom 智慧合約會驗證zk 證明。任何想要證明的相關方都可以從智慧合約中存取它。

  • 如果將模型放在鏈條上,可以考慮使用RISC Zero 作為解決方案:

    首先,需要將模型的原始碼編譯成RISC-V 二進位。當這個二進位檔案在ZKVM 中執行時,輸出會與一個包含加密密封的計算收據配對。這個密封作為計算完整性的零知識論點,將加密的imageID(識別執行的RISC-V 二進位)與聲明的代碼輸出關聯起來,以便第三方快速驗證。

    當模型在ZKVM 中執行時,關於狀態變更的計算完全在VM 內部完成。它不會向外部洩露有關模型內部狀態的任何資訊。

    一旦模型執行完畢,產生的密封就成為計算完整性的零知識證明。 RISC Zero ZKVM 是一個RISC-V 虛擬機,它可以產生對其執行的代碼的零知識證明。使用ZKVM,可以產生一個加密收據,任何人都可以驗證這個收據是由ZKVM 的客戶代碼產生的。發布收據時,不會洩露有關代碼執行的其他資訊(例如,所提供的輸入)。

    通過在RISC Zero 的ZKVM 中運行機器學習模型,可以證明模型涉及的確切計算是正確執行的。運算和驗證過程可以在使用者喜歡的環境中離線完成,或者在Bonsai Network 中完成,Bonsai Network 是通用的roll-up。

    產生ZK 證明的具體過程涉及一個與隨機oracle 作為驗證者的交互協議。 RISC Zero 收據上的密封本質上就是這個互動協議的記錄。

  • SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?
  • 如果您想要直接從常用的機器學習軟件(如Tensorflow 或Pytorch)匯入模型,可以考慮使用ezkl 作為解決方案:

    首先,將最終模型匯出為.onnx 文件,將一些樣本輸入匯出為.json 檔案。

    然後,將ezkl 指向.onnx 和.json 文件,以產生可以證明ZKML 語句的ZK-SNARK 電路。

    Ezkl 是一個函式庫和命令列工具,用於在zkSNARK 中進行深度學習模型和其他計算圖的推論。

    看起來簡單,對吧? Ezkl 的目標是提供一個抽象層,允許在Halo 2 電路中呼叫和佈局高階操作。 Ezkl 抽象化了許多複雜性,同時保持了令人難以置信的靈活性。他們的量化模型具有自動量化的縮放因子。他們支援靈活地更改為新解決方案所涉及的其他證明系統。他們也支援多種類型的虛擬機,包括EVM 和WASM。

    關於證明系統,ezkl 通過聚合證明(透過中介將難以驗證的證明轉換為易於驗證的證明)和遞歸(可以解決內存問題,但難以適應halo 2)來定制halo 2 電路。 Ezkl 還透過整合和抽象(可以透過高級證明減少開銷)來優化整個流程。

  • 值得注意的是,與其他通用zkml 項目相比,Accessor Labs 專注於為完全上鍊遊戲提供專門設計的zkml 工具,可能涉及AI NPC、遊戲玩法的自動更新、涉及自然語言的遊戲界面等。

用例在哪裡

通過ZK 技術解決機器學習的信任問題意味著它現在可以應用於更多“高風險”和“高度確定性”的用例,而不僅僅是與人們的對話保持同步或將貓的圖片與狗的圖片區分開來。 Web3 已經在探索許多這樣的用例。這並非巧合,因為大多數Web3 應用程序都在區塊鏈上運行或打算在區塊鏈上運行,這是因為區塊鏈具有特定的特性,可以安全運行,難以篡改,並且具有確定性計算。一個可驗證的行為良好的AI 應該是能夠在無信任和去中心化的環境中進行活動的AI,對吧?

Web3中可套用ZK+ML 的用例

許多Web3應用程式為了安全性和去中心化而犧牲了使用者體驗,因為這顯然是它們的優先事項,而基礎設施的限制也存在。 AI/ML 有潛力豐富用戶體驗,這無疑是有幫助的,但以前在不妥協的情況下似乎是不可能的。現在,多虧了ZK,我們可以舒適地看到AI/ML 與Web3應用的結合,而不會在安全性和去中心化方面做太多犧牲。

從本質上講,這將是一個Web3應用程式(在撰寫本文時可能存在或不存在),以無需信任的方式實現ML/AI。在無需信任的方式下,我們指的是它是否在無需信任的環境/平台上運行,或者其操作是否可以被證明是可驗證的。請注意,並非所有ML/AI 用例(即使在Web3中)都需要或更喜歡以無需信任的方式運行。我們將分析在各種Web3領域中使用的ML 功能的每個部分。然後,我們將確定需要ZKML 的部分,通常是人們願意為證明支付額外費用的高價值部分。以下提到的大多數用例/應用仍處於實驗研究階段。因此,它們距離實際採用還很遙遠。我們稍後會討論原因。

Defi   SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?Defi 是區塊鏈協議和Web3 應用中為數不多的產品市場契合度證明之一。以無需許可的方式創建、儲存和管理財富和資本在人類歷史上是前所未有的。我們已經確定了許多需要AI/ML 模型無需許可地運行以確保安全性和去中心化的用例。

  • 風險評估:現代金融需要AI/ML 模式進行各種風險評估,從防止詐騙和洗錢到發放無擔保貸款。確保這種AI/ML 模型以可驗證的方式運作意味著我們可以防止它們被操縱以實現審查制度,從而阻礙使用Defi 產品的無需許可的性質。

  • 資產管理:自動交易策略對傳統金融和Defi 來說並不新鮮。已經有人嘗試應用AI/ML 產生的交易策略,但只有少數去中心化的策略取得了成功。目前Defi 領域的典型應用包括Modulus Labs 實驗的Rocky Bot。

    一個在L1 上持有資金並在Uniswap 上交換WEth / USDC 的合約。

    一個L2 合約實現了一個簡單(但靈活)的三層神經網絡,用於預測未來的WEth 價格。合約使用歷史WETH 價格資訊作為輸入。

    一個簡單的前端用於可視化以及用於訓練回歸器和分類器的PyTorch 代碼。

    這適用於ML 信任框架的「輸出」部分。輸出是在L2 上產生的,傳輸到L1,並用於執行。在此過程中,不會被篡改。

    這適用於“輸入”和“模型”部分。歷史價格資訊輸入來自區塊鏈。模型的執行是在CairoVM(一種ZKVM)中計算的,其執行追蹤將產生一個用於驗證的ZK 證明。

    Rocky Bot:Modulus Labs 在StarkNet 上使用AI 進行決策創造了一個交易機器人。

  • SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?
  • Automated MM and liquidity provision:

    本質上,這是風險評估和資產管理中進行的類似努力的結合,只是在交易量、時間軸和資產類型方面採用了不同的方式。關於如何在股票市場中使用ML 進行做市的研究論文有很多。在一些研究成果適用於Defi 產品可能只是時間問題。

    例如,Lyra Finance 正與Modulus Labs 合作,透過智慧功能提升其AMM,使其資本利用效率更高。

  • 榮譽提名:

    Warp.cc 團隊開發了一個教程項目,介紹如何部署一個運行訓練好的神經網絡以預測比特幣價格的智慧合約。這符合我們框架的「輸入」和「模型」部分,因為輸入使用RedStone Oracles 提供的數據,模型作為一個Warp 智慧合約在Arweave 上執行。

    這是第一次迭代並涉及ZK,所以它屬於我們的榮譽提名,但在未來,Warp 團隊考慮實現一個ZK 部分。

遊戲

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

遊戲與機器學習有許多交集:圖中的灰色區域代表了我們對遊戲部分中的機器學習功能是否需要與相應的ZKML 證明配對的初步評估。 Leela Chess Zero 是將ZKML 應用於遊戲的一個非常有趣的例子:

  • AI 代理

    LC 0 和人類集體輪流進行遊戲(正如像棋應有的那樣)。

    LC 0 的移動是透過簡化的、適合電路的LC 0 模型計算出來的。

    Leela Chess Zero (LC 0):由Modulus Labs 建造的一款完全基於鏈上的AI 棋手,與來自社區的一群人類玩家對戰。

    LC 0 的移動有一個Halo 2 snark 證明,以確保沒有人類智囊團的干預。只有簡化的LC 0 模型在那裡做決策。

    這符合“模型”部分。模型的執行有一個ZK 證明,以驗證計算沒有被篡改。

  • SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

    數據分析與預測:這一直是Web2 遊戲世界中AI/ML 的常見用途。然而,我們發現在這個ML 過程中實現ZK 的理由非常少。為了不讓過多的價值直接涉及這個過程,這可能不值得付出努力。然而,如果某些分析和預測被用來為用戶確定獎勵,那麼ZK 可能會被實施以確保結果是正確的。

  • 榮譽提名:

    AI Arena 是一款以太坊原生遊戲,來自世界各地的玩家可以設計、訓練和戰鬥由人工神經網路驅動的NFT 角色。來自世界各地的才華橫溢的研究人員競相創建最佳機器學習(ML)模型來參與遊戲戰鬥。 AI Arena 主要關注前饋神經網絡。整體而言,它們的計算開銷比卷積神經網絡(CNNs)或循環神經網絡(RNNs)低。儘管如此,目前模型只在訓練完成後上傳到平台,因此值得一提。

    GiroGiro.AI 正在建立一個AI 工具包,使大眾能夠為個人或商業用途創建人工智能。使用者可以根據直覺且自動化的AI 工作流程平台建立各種類型的AI 系統。只要輸入少量資料和選擇算法(或用於改進的模型),使用者就可以產生並利用心中的AI 模型。儘管該項目處於非常早期階段,但我們非常期待看到GiroGiro 可以為遊戲金融和元宇宙為重點的產品帶來什麼,因此將其列為榮譽提名。

DID 和社交 

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

在DID 和社交領域,Web3 和ML 的交叉點目前主要體現在人類證明和憑證證明領域;其他部分可能會發展,但需要更長的時間。

  • 人類證明

    用戶的應用程式在本地產生一個錢包地址。

    應用程式使用Semaphore 證明它擁有先前註冊的一個公鑰的私鑰。因為這是零知識證明,所以它不會透露是哪個公鑰。

    證明再次發送到順序器,順序器驗證證明並啟動將代幣存入提供的錢包地址的過程。所謂的零件隨證明一起發送,確保用戶不能領取兩次獎勵。

    用戶在手機上產生一個Semaphore 密鑰對,並透過二維碼向Orb 提供哈希後的公鑰。

    Orb 掃描使用者的虹膜並在本地計算使用者的IrisHash。然後,它將包含哈希公鑰和IrisHash 的簽名訊息傳送到註冊順序節點。

    順序節點驗證Orb 的簽名,然後檢查IrisHash 是否與資料庫中已有的簽名。如果唯一性檢查通過,IrisHash 和公鑰將被保存。

    Worldcoin 使用一種名為Orb 的裝置來判斷某人是否是真實存在的人,而不是試圖欺詐驗證。它通過各種攝像機傳感器和機器學習模型分析面部和虹膜特徵來實現這一目標。一旦做出這個判斷,Orb 就會拍攝一組人的虹膜照片,並使用多個機器學習模型和其他電腦視覺技術創建虹膜編碼,這是一個表示個體虹膜圖案最重要特徵的數字表示。具體的註冊步驟如下:

    Worldcoin 使用開源的Semaphore 零知識證明系統將IrisHash 的唯一性轉換為使用者帳戶的唯一性,而不會將它們關聯起來。這確保新註冊的用戶可以成功領取他/她的WorldCoins。步驟如下:

    WorldCoin 使用ZK 技術確保其ML 模型的輸出不會洩露用戶的個人數據,因為它們之間沒有關聯。在這種情況下,它屬於我們信任框架的「輸出」部分,因為它確保了輸出以期望的方式傳輸和使用,在這種情況下是私密的。

從用例角度重新檢視ML 信任框架

可以看到,Web3 中ZKML 的潛在用例尚處於起步階段,但不能被忽視;未來,隨著ZKML 使用的不斷擴大,可能會出現對ZKML 提供者的需求,形成下圖中的閉環:SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?ZKML 服務提供者主要關注ML 信任框架的「模型」和「參數」部分。儘管我們現在看到的大部分與“參數”相關的更多是“模型”相關。需要注意的是,「輸入」和「輸出」部分更多地由基於區塊鏈的解決方案解決,無論是作為資料來源還是資料目的地。單獨使用ZK 或區塊鏈可能無法實現完全的可信度,但它們聯合起來可能會實現。

大規模應用還有多遠?

最後,我們可以關註一下ZKML 的當前可行性狀態,以及我們離ZKML 大規模應用還有多遠。
Modulus Labs 的論文透過測試Worldcoin(具有嚴格的精度和記憶需求)和AI Arena(具有成本效益和時間要求)為我們提供了一些關於ZKML 應用可行性的數據和見解:SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?如果Worldcon 使用ZKML,證明者的記憶體消耗將超過任何商用行動硬件的承受能力。如果AI Arena 的比賽使用ZKML,使用ZKCNNs 將使時間和成本增加100 倍(0.6 s 對比原來的0.008 s)。所以遺憾的是,這兩者都不適合直接應用ZKML 技術來證明時間和證明者記憶體使用。SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

那麼證明大小和驗證時間呢?我們可以參考Daniel Kang、Tatsunori Hashimoto、Ion Stoica 和Yi Sun 的論文。如下所示,他們的DNN 推理解決方案在ImageNet(模型類型:DCNN, 16 層, 3.4 百萬參數)上的準確率可以達到79% ,同時驗證時間僅需10 秒,證明大小為5952 字節。此外,zkSNARKs 可縮小到59% 準確率時驗證時間僅需0.7 秒。這些結果表明,在證明大小和驗證時間方面,對ImageNet 規模的模型進行zkSNARKing 是可行的。目前主要的技術瓶頸在於證明時間和記憶體消耗。在web3 案例中應用ZKML 在技術上尚不可行。 ZKML 是否有潛力趕上AI 的發展?我們可以比較幾個經驗數據:

  • 機器學習模型的發展速度: 2019 年發布的GPT-1 模型具有1.5 億個參數,而2020 年發布的最新GPT-3 模型具有1, 750 億個參數,僅兩年間參數數量增加了1, 166 倍。

  • 零知識系統的優化速度:零知識系統的效能成長基本上遵循「摩爾定律」式的步伐。幾乎每年都會出現新的零知識系統,我們預期證明者表現的快速成長將持續一段時間。

SevenX Ventures:一文讀懂ZKML - 零知識證明和區塊鏈如何在人工智能和機器學習領域發揮作用?

從這些數據來看,儘管機器學習模型的發展速度非常快,但零知識證明系統的優化速度也穩定提升。在未來一段時間內,ZKML 可能仍有機會逐步趕上AI 的發展,但它需要不斷地進行技術創新和優化以縮小差距。這意味著,儘管目前ZKML 在web3 應用中存在技術瓶頸,但隨著零知識證明技術的不斷發展,我們仍有理由期待ZKML 在未來能夠在web3 場景中發揮更大的作用。對比前沿的ML 與ZK 的改進率,前景並不十分樂觀。不過,隨著卷積性能、ZK 硬件的不斷完善,以及基於高度結構化的神經網絡操作而量身定做的ZK 證明系統,希望ZKML 的發展能夠滿足web3的需求,先從提供一些老式的機器學習功能開始。雖然我們可能很難用區塊鏈+ZK 來驗證ChatGPT 回饋給我的資訊是否可信,但我們也許可以在ZK 電路中安裝一些較小且較老的ML 模型。

結論

"權力趨於腐敗,而絕對的權力會使人絕對腐敗"。隨著人工智能和ML 的令人難以置信的力量,目前還沒有萬無一失的方法將其置於治理之下。事實一再證明,政府要麼提供後期介入的後遺症,要麼提前徹底禁止。區塊鏈+ZK 提供了為數不多的解決方案,能夠以可證明和可核實的方式馴服野獸。

我們期待在ZKML 領域看到更多的產品創新,ZK 和區塊鍊為AI/ML 的運作提供了一個安全且值得信賴的環境。我們也期待這些產品創新產生全新的商業模式,因為在無授權的加密貨幣世界裡,我們不受這裡的去SaaS 商業化模式的限制。我們期待著支持更多的建設者,在這個"西部荒野無政府狀態"和"象牙塔精英"的迷人重疊中,來建立他們令人興奮的想法。我們仍處於早期階段,但我們可能已經在拯救世界的路上。

原創文章,作者:SevenX Ventures。轉載/內容合作/尋求報導請聯系 report@odaily.email;違規轉載法律必究。

ODAILY提醒,請廣大讀者樹立正確的貨幣觀念和投資理念,理性看待區塊鏈,切實提高風險意識; 對發現的違法犯罪線索,可積極向有關部門舉報反映。

推薦閱讀
星球精選