Microsoftはあらゆる機械学習(ML)モデルを実行できる「ONNX Runtime Web」を公開した。オープンソース推論エンジン「ONNX Runtime」の新機能だ。JavaScript開発者はMLモデルをWebブラウザで実行、デプロイできる。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2021年9月2日(米国時間)、「ONNX Runtime」の新機能「ONNX Runtime Web」(ORT Web)を公開した。
ORT Webを利用することで、JavaScript開発者は機械学習(ML)モデルをWebブラウザで実行、デプロイできる。さらにORT Webは、新タイプのオンデバイスコンピュテーションの実現を支援する。
ORT Webは、近いうちに非推奨となる「onnx.js」に取って代わるものだ。サーバ側とクライアント側の推論パッケージでのより一貫した開発者エクスペリエンスや、改善された推論パフォーマンス、対応するモデルの拡大といった機能強化が施されている。
ONNX RuntimeはあらゆるMLモデルを実行できるオープンソースのクロスプラットフォーム推論エンジン。「TensorFlow」「PyTorch」「SciKit Learn」など、主要な全てのトレーニングフレームワークをサポートしている。AI開発者がさまざまなハードウェアプラットフォームやソフトウェアプラットフォームでMLモデルを容易に実行できることが目的だ。
ONNX Runtimeはサーバ側推論を高速化する他、「ONNX Runtime 1.5」以降では、「ONNX Runtime for Mobile」も用意されている。Webブラウザ内の推論にフォーカスしたORT Webは、「ONNX Runtime 1.8」で新たに導入された。
MLベースWebアプリケーションをWebブラウザで実行することが、AIコミュニティーの注目を集めている。
ネイティブAIアプリケーションは、さまざまなプラットフォームへのポータビリティーを確保することが難しい。特定のプログラミング言語やデプロイ環境に依存しているからだ。
だが、Webアプリケーションでは、Webブラウザで同じ実装を使用するクロスプラットフォームのポータビリティーを簡単に実現できる。さらにMLモデルをWebブラウザで実行すれば、クライアントとサーバ間の通信を減らすことでパフォーマンスの向上が可能だ。追加のライブラリやドライバのインストールが不要なため、配布を簡素化できるというメリットもある。
ORT WebはWebブラウザ内でのモデル推論を、CPUとGPUの両方で、それぞれ「WebAssembly」(WASM)バックエンドと「WebGL」バックエンドで高速化する。
CPUを用いた推論について、ORT Webはオープンソースのコンパイラツールチェーン「Emscripten」を使って、ONNX Runtime C++コードをWASMにコンパイルし、Webブラウザにロードできるようにする。
これにより、ONNX RuntimeコアとネイティブCPUエンジンの再利用が可能になる。ORT WebのWASMバックエンドは任意のONNXモデルを実行でき、ネイティブONNX Runtimeが提供するほとんどの機能をサポートできる。
一方、WebGLは、「OpenGL ES 2.0」規格に準拠したJavaScript APIだ。GPU機能にアクセスするためのポピュラーな標準となっており、GPUで高いパフォーマンスを実現するためにORT Webで採用された。OpenGL ES 2.0は、主要なWebブラウザとさまざまなプラットフォーム(WindowsやLinux、macOS、Android、iOSなど)でサポートされている。
ORT WebのGPUバックエンドはWebGL上に構築されており、サポートされている幅広い環境で動作する。そのため、ユーザーはさまざまなプラットフォーム間でディープラーニングモデルをシームレスにポートできる。
Copyright © ITmedia, Inc. All Rights Reserved.