Microsoft、WebブラウザでMLモデルを実行できる「ONNX Runtime Web」を公開:速度を犠牲にせず、ポータビリティーが向上する
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とは?
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」で新たに導入された。
ORT WebによるWebブラウザ内推論にはどのようなメリットがあるのか
MLベースWebアプリケーションをWebブラウザで実行することが、AIコミュニティーの注目を集めている。
ネイティブAIアプリケーションは、さまざまなプラットフォームへのポータビリティーを確保することが難しい。特定のプログラミング言語やデプロイ環境に依存しているからだ。
だが、Webアプリケーションでは、Webブラウザで同じ実装を使用するクロスプラットフォームのポータビリティーを簡単に実現できる。さらにMLモデルをWebブラウザで実行すれば、クライアントとサーバ間の通信を減らすことでパフォーマンスの向上が可能だ。追加のライブラリやドライバのインストールが不要なため、配布を簡素化できるというメリットもある。
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.
関連記事
- 5分で分かる機械学習(ML)
機械学習をビジネスで活用したい人に向け、最新技術情報に基づき、機械学習の概要、統計学との違い、機械学習の作業フローと学習方法、回帰/分類/クラスタリング/次元削減に使える手法、次の一歩を踏み出すための参考情報を、5分で読めるコンパクトな内容で紹介する。 - 画像認識の機械学習を、無料で誰でも簡単に作れる「Microsoft Lobe」
画像分類を行う機械学習モデルを「無料」で作成できるLobe。その機能と特徴を作業手順の流れで一通り解説。知識ゼロでもGUI操作で簡単に機械学習できるLobeを体感してみよう。 - 第4のWebブラウザ用言語「WebAssembly」、誰がどのように使っているのか
ソフトウェアコンサルティング会社のScott Logicが第4のWebブラウザ用言語「WebAssembly」の使用状況について、調査結果を発表した。WebAssemblyアプリケーションの作成に使われている言語やWebAssemblyの使用目的、今後大きな影響を与える分野、改善を要する分野などが明らかになった。