DNN 計算グラフに n 個のノードがあると仮定すると、VM で計算を完了するには、各ノードが m 個の VM マイクロ命令をフェッチする必要があります。 GPUや並列計算による各ノードの計算高速化率をαとする。この比率は、GPU または並列コンピューティングによって達成される高速化を表しており、VM の実行よりも数十倍、さらには数百倍という大幅な値に達する可能性があります。
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.
OPML: オプティミスティック ロールアップ システムを使用した機械学習
TL;DR
私たちは、AI モデル推論とブロックチェーン システムのトレーニング/微調整にオプティミスティック手法を使用できる OPML (Optimistic Machine Learning) を提案します。
OPML は ZKML と比較して、低コストで高効率な ML サービスを提供できます。 OPML への参加要件は低く、GPU のない通常の PC 上で 7B-LLaMA (モデル サイズ ~26 GB) などの大規模な言語モデルを使用して OPML を実行できるようになりました。
OPML は、ML サービスの分散化と検証可能なコンセンサスを保証するために、検証ゲーム (Truebit および Optimistic Rollup システムと同様) を採用しています。
単相検証ゲーム
単相ピンポインティング プロトコルは、計算の委任 (RDoC) と同様に機能します。RDoC では、2 つ以上の当事者 (少なくとも 1 つの誠実な当事者) が同じ手順を実行すると想定されます。その後、両当事者はお互いに正確に質問して、争点となっているステップを特定できます。仲裁のために、計算能力の低い裁判官 (ブロックチェーン上のスマート コントラクト) にステップを送信します。
単一ステージ 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
このプレゼンテーションでは、LLaMA モデルで使用される 2 段階の OPML アプローチを提案します。
計算グラフ内の単一ノードの計算がまだ計算的に複雑な場合、マルチステージ OPML メソッド (2 つ以上のステージで構成される) の導入が予想されることは注目に値します。この拡張により、検証プロセスの全体的な効率と有効性がさらに向上します。
パフォーマンスの向上
ここでは、私たちが提案する多段階検証フレームワークについて簡単に説明し、分析します。
DNN 計算グラフに n 個のノードがあると仮定すると、VM で計算を完了するには、各ノードが m 個の VM マイクロ命令をフェッチする必要があります。 GPUや並列計算による各ノードの計算高速化率をαとする。この比率は、GPU または並列コンピューティングによって達成される高速化を表しており、VM の実行よりも数十倍、さらには数百倍という大幅な値に達する可能性があります。
これらの考慮事項に基づいて、次の結論を導き出します。
2段OPMLは1段OPMLに比べて優れており、α倍の演算高速化を実現します。多段階検証を使用すると、GPU または並列処理によって高速化されたコンピューティング能力を活用できるため、全体的なパフォーマンスが大幅に向上します。
マークル ツリーのサイズを比較すると、2 段階の OPML ではサイズが O(m+n) であるのに対し、1 段階の OPML ではサイズが O(mn) よりも大幅に大きいことがわかります。マークル ツリー サイズの縮小により、マルチステージ設計の効率性とスケーラビリティがさらに強調されます。
要約すると、多段階検証フレームワークによりパフォーマンスが大幅に向上し、特に GPU や並列処理の高速化機能を利用する場合に、より効率的で高速な計算が保証されます。さらに、マークル ツリー サイズの縮小によりシステムの有効性とスケーラビリティが向上し、さまざまなアプリケーションでマルチステージ OPML が選択できるようになります。
一貫性と決定性
OPML では、ML 結果の一貫性を確保することが重要です。
DNN 計算のネイティブ実行中、特に異なるハードウェア プラットフォーム上で、浮動小数点数の特性により、実行結果に差異が発生する可能性があります。たとえば、(a+b)+c や a+(b+c) などの浮動小数点数を含む並列計算では、丸め誤差により異なる結果が生成されることがよくあります。さらに、プログラミング言語、コンパイラのバージョン、オペレーティング システムなどの要因はすべて浮動小数点数の計算結果に影響を与える可能性があり、ML 結果の不一致がさらに生じる可能性があります。
これらの課題に対処し、OPML の一貫性を保証するために、私たちは 2 つの重要なアプローチを採用しました。
量子化テクノロジとも呼ばれる固定小数点アルゴリズムを使用します。この手法を使用すると、浮動小数点数ではなく固定精度を使用して計算を表現および実行できます。これにより、浮動小数点の丸め誤差の影響が軽減され、より信頼性の高い一貫した結果が得られます。
当社では、さまざまなプラットフォーム間で一貫した機能を維持するように設計されたソフトウェアベースの浮動小数点ライブラリを利用しています。これらのライブラリは、基盤となるハードウェアまたはソフトウェアの構成に関係なく、クロスプラットフォームの一貫性と ML 結果の決定性を保証します。
固定小数点演算とソフトウェアベースの浮動小数点ライブラリを組み合わせることで、OPML フレームワーク内で一貫性と信頼性の高い ML 結果を実現する強固な基盤を確立しました。この技術の調整により、浮動小数点変数とプラットフォームの違いによってもたらされる固有の課題を克服でき、最終的には OPML 計算の整合性と信頼性が向上します。
OPML 対 ZKML
*: 現在の OPML フレームワークでは、効率的かつ安全なモデル計算を可能にする ML モデルの推論に主に焦点を当てています。ただし、私たちのフレームワークはトレーニング プロセスもサポートしており、さまざまな機械学習タスクに対する一般的なソリューションになっているということを強調しなければなりません。
OPML はまだ開発中であることに注意してください。このエキサイティングなプログラムに参加し、OPML プロジェクトに貢献することに興味がある場合は、お気軽にお問い合わせください。