OPML: オプティミスティック ロールアップ システムを使用した機械学習

TL;DR

私たちは、AI モデル推論とブロックチェーン システムのトレーニング/微調整にオプティミスティック手法を使用できる OPML (Optimistic Machine Learning) を提案します。

OPML は ZKML と比較して、低コストで高効率な ML サービスを提供できます。 OPML への参加要件は低く、GPU のない通常の PC 上で 7B-LLaMA (モデル サイズ ~26 GB) などの大規模な言語モデルを使用して OPML を実行できるようになりました。

OPML は、ML サービスの分散化と検証可能なコンセンサスを保証するために、検証ゲーム (Truebit および Optimistic Rollup システムと同様) を採用しています。

  • リクエスタは最初に ML サービス タスクを開始します。
  • その後、サーバーは ML サービス タスクを完了し、結果をチェーンに送信します。 ※検証者が結果を検証します。結果が false であると主張するバリデーターがあると仮定します。サーバーとの検証ゲーム (二者合意) を開始し、特定の間違ったステップを特定することで主張の反証を試みます。
  • 最後に、スマート コントラクトに対して単一ステップの仲裁が行われます。

単相検証ゲーム

単相ピンポインティング プロトコルは、計算の委任 (RDoC) と同様に機能します。RDoC では、2 つ以上の当事者 (少なくとも 1 つの誠実な当事者) が同じ手順を実行すると想定されます。その後、両当事者はお互いに正確に質問して、争点となっているステップを特定できます。仲裁のために、計算能力の低い裁判官 (ブロックチェーン上のスマート コントラクト) にステップを送信します。

単一ステージ OPML の場合:

  • オフチェーン実行とオンチェーン調停用の仮想マシン (VM) を構築しました。スマート コントラクトに実装されたオフチェーン VM とオンチェーン VM の同等性を保証します。
  • 仮想マシンでの AI モデル推論の効率を確保するために、Tensorflow や PyTorch などの一般的な ML フレームワークに依存するのではなく、この目的のために特別に設計された軽量 DNN ライブラリを実装しました。さらに、Tensorflow モデルと PyTorch モデルをこの軽量ライブラリに変換するスクリプトが提供されます。
  • クロスコンパイル テクノロジを使用して、人工知能モデル推論コードを仮想マシン プログラム命令にコンパイルします。 ※仮想マシンイメージはマークルツリーで管理されており、マークルルートのみチェーン上のスマートコントラクトにアップロードされます。 (メルケルのルートは仮想マシンの状態を表します)

OPML: 楽観的ロールアップ システムを使用した機械学習

  • 二者合意は、ブロックチェーン上の仲裁契約に送信される紛争ステップを特定するのに役立ちます

OPML: 楽観的ロールアップ システムを使用した機械学習

パフォーマンス: 基本的な AI モデル (MNIST 分類用の DNN モデル) を PC 上でテストしました。 VM では DNN 推論を 2 秒以内に完了することができ、ローカルの Ethereum テスト環境ではチャレンジ プロセス全体を 2 分以内に完了できます。

多段階検証ゲーム

単相ピンポイントプロトコルの制限

単一段階の検証ゲームには重大な欠点があります。すべての計算を仮想マシン (VM) 内で実行する必要があるため、GPU/TPU アクセラレーションや並列処理の可能性を最大限に活用できません。したがって、この制限は大規模モデル推論の効率を著しく妨げますが、これは現在の RDoC プロトコルの制限とも一致します。

マルチフェーズ プロトコルへの移行

シングルフェーズ プロトコルによって課せられる制限に対処し、OPML がネイティブ環境と同等のパフォーマンス レベルを達成できるようにするために、マルチフェーズ プロトコルの拡張を提案します。このアプローチを使用すると、単一ステージのプロトコルと同様に、最終ステージで VM で計算を実行するだけで済みます。他のステージでは、CPU、GPU、TPU、さらには並列処理の能力を活用して、ネイティブ環境での状態遷移を可能にし、柔軟に計算を実行できます。 VM への依存関係を減らすことでオーバーヘッドが大幅に削減され、ネイティブ環境とほぼ同様に OPML の実行パフォーマンスが大幅に向上します。

以下の図は、2 つのフェーズ (k = 2) で構成される検証ゲームを示しています。フェーズ 1 では、プロセスは単一ステージの検証ゲームに似ており、各状態遷移は仮想マシンの状態を変更する単一の VM uop に対応します。フェーズ 2 では、状態遷移は、計算コンテキストを変更する複数の uop を含む「大きな命令」に対応します。

コミッティーと検証者はまず二者合意を利用して検証ゲームの第2段階を開始し、「大きな注文」で争点となっているステップを特定する。このステップは次のフェーズであるフェーズ -1 に送信されます。最初のステージは単一ステージの検証ゲームのように機能します。フェーズ 1 の二者合意は、VM uops で係争中のステップを特定するのに役立ちます。このステップはブロックチェーン上の仲裁コントラクトに送信されます。

次のフェーズへの移行の整合性と安全性を確保するために、私たちはマークル ツリーに依存しています。この操作は、上位レベルのステージからマークル サブツリーを抽出することで構成され、検証プロセスのシームレスな継続を保証します。

OPML: 楽観的ロールアップ システムを使用した機械学習

マルチステージ OPML

このプレゼンテーションでは、LLaMA モデルで使用される 2 段階の OPML アプローチを提案します。

  • 機械学習 (ML)、特にディープ ニューラル ネットワーク (DNN) の計算プロセスは、G で示される計算グラフとして表現できます。グラフは、中間計算結果を保存できるさまざまな計算ノードで構成されます。 ※DNNモデル推論は基本的に上記の計算グラフ上の計算処理です。グラフ全体は推論状態 (フェーズ 2 の計算コンテキスト) として見ることができます。各ノードが計算されると、結果がそのノードに格納され、それによって計算グラフが次の状態に進みます。

OPML: オプティミスティック ロールアップ システムを使用した機械学習

  • したがって、最初に計算グラフ上で検証ゲームを実行できます (フェーズ 2)。検証ゲームの第 2 段階では、マルチスレッド CPU または GPU を使用して、ローカル環境でグラフ ノードの計算を実行できます。二者合意は、その計算が二者合意の次のフェーズ (フェーズ 1) に送信される係争中のノードを特定するのに役立ちます。
  • 最初のフェーズの二分化では、単一フェーズ プロトコルで行われるのと同様に、単一ノードの計算を仮想マシン (VM) 命令に変換します。

計算グラフ内の単一ノードの計算がまだ計算的に複雑な場合、マルチステージ OPML メソッド (2 つ以上のステージで構成される) の導入が予想されることは注目に値します。この拡張により、検証プロセスの全体的な効率と有効性がさらに向上します。

パフォーマンスの向上

ここでは、私たちが提案する多段階検証フレームワークについて簡単に説明し、分析します。

DNN 計算グラフに n 個のノードがあると仮定すると、VM で計算を完了するには、各ノードが m 個の VM マイクロ命令をフェッチする必要があります。 GPUや並列計算による各ノードの計算高速化率をαとする。この比率は、GPU または並列コンピューティングによって達成される高速化を表しており、VM の実行よりも数十倍、さらには数百倍という大幅な値に達する可能性があります。

これらの考慮事項に基づいて、次の結論を導き出します。

  1. 2段OPMLは1段OPMLに比べて優れており、α倍の演算高速化を実現します。多段階検証を使用すると、GPU または並列処理によって高速化されたコンピューティング能力を活用できるため、全体的なパフォーマンスが大幅に向上します。

  2. マークル ツリーのサイズを比較すると、2 段階の OPML ではサイズが O(m+n) であるのに対し、1 段階の OPML ではサイズが O(mn) よりも大幅に大きいことがわかります。マークル ツリー サイズの縮小により、マルチステージ設計の効率性とスケーラビリティがさらに強調されます。

要約すると、多段階検証フレームワークによりパフォーマンスが大幅に向上し、特に GPU や並列処理の高速化機能を利用する場合に、より効率的で高速な計算が保証されます。さらに、マークル ツリー サイズの縮小によりシステムの有効性とスケーラビリティが向上し、さまざまなアプリケーションでマルチステージ OPML が選択できるようになります。

一貫性と決定性

OPML では、ML 結果の一貫性を確保することが重要です。

DNN 計算のネイティブ実行中、特に異なるハードウェア プラットフォーム上で、浮動小数点数の特性により、実行結果に差異が発生する可能性があります。たとえば、(a+b)+c や a+(b+c) などの浮動小数点数を含む並列計算では、丸め誤差により異なる結果が生成されることがよくあります。さらに、プログラミング言語、コンパイラのバージョン、オペレーティング システムなどの要因はすべて浮動小数点数の計算結果に影響を与える可能性があり、ML 結果の不一致がさらに生じる可能性があります。

これらの課題に対処し、OPML の一貫性を保証するために、私たちは 2 つの重要なアプローチを採用しました。

  1. 量子化テクノロジとも呼ばれる固定小数点アルゴリズムを使用します。この手法を使用すると、浮動小数点数ではなく固定精度を使用して計算を表現および実行できます。これにより、浮動小数点の丸め誤差の影響が軽減され、より信頼性の高い一貫した結果が得られます。

  2. 当社では、さまざまなプラットフォーム間で一貫した機能を維持するように設計されたソフトウェアベースの浮動小数点ライブラリを利用しています。これらのライブラリは、基盤となるハードウェアまたはソフトウェアの構成に関係なく、クロスプラットフォームの一貫性と ML 結果の決定性を保証します。

固定小数点演算とソフトウェアベースの浮動小数点ライブラリを組み合わせることで、OPML フレームワーク内で一貫性と信頼性の高い ML 結果を実現する強固な基盤を確立しました。この技術の調整により、浮動小数点変数とプラットフォームの違いによってもたらされる固有の課題を克服でき、最終的には OPML 計算の整合性と信頼性が向上します。

OPML 対 ZKML

OPML: 楽観的ロールアップ システムを使用した機械学習

*: 現在の OPML フレームワークでは、効率的かつ安全なモデル計算を可能にする ML モデルの推論に主に焦点を当てています。ただし、私たちのフレームワークはトレーニング プロセスもサポートしており、さまざまな機械学習タスクに対する一般的なソリューションになっているということを強調しなければなりません。

OPML はまだ開発中であることに注意してください。このエキサイティングなプログラムに参加し、OPML プロジェクトに貢献することに興味がある場合は、お気軽にお問い合わせください。

原文表示
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • 報酬
  • コメント
  • 共有
コメント
0/400
コメントなし
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)