Microsoft、ブラウザでAI推論が可能になる「WebNN」を解説 「次世代のWeb開発において重要な役割を果たす」アーキテクチャの概要、ユースケースとは?

Microsoftは公式ブログで、Webアプリケーションでニューラルネットワーク推論タスクを効率的に実行できるJavaScript APIである「WebNN」の概要やアーキテクチャ、メリットなどを解説した。

» 2024年07月11日 20時30分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2024年6月24日(米国時間)に公式ブログで、Webアプリケーションでニューラルネットワーク推論タスクを効率的に実行できるJavaScript APIである「WebNN(Web Neural Network API)」について、概要やアーキテクチャ、メリットなどを解説した。

 Microsoftは「WebNNは、Web開発者がWebアプリケーション内でニューラルネットワークの機械学習(ML)処理を直接実行できるようにするJavaScript APIだ」とした上で「WebNNはMLモデルのWebアプリケーションへの統合を簡素化し、ブラウザ上で動作するインタラクティブでインテリジェントなアプリケーションの新しい可能性を開くものだ」と述べている。

 WebNNは、2024年7月時点で、インターネット標準を策定するW3C(World Wide Web Consortium)の勧告候補(Candidate Recommendation)となっている。

 Microsoftは、WebNNの概要やメリット、アーキテクチャの概要、活用の可能性について次のように解説している。

WebNNとは

 ソフトウェアとハードウェアの両方のエコシステムで新しいML技術が登場する中で、Webにとっての主な課題の一つは、ソフトウェアとハードウェアの開発を橋渡しし、ハードウェアプラットフォーム全体に拡張し、ユーザーがWebベースでMLの効果を体験するためにあらゆるフレームワークで動作するソリューションを提供することにある。

 WebNNは、Webアプリケーションにおけるニューラルネットワーク推論の高速化のために設計された、ハードウェアに依存しない抽象化レイヤーだ。主にトレーニングよりも推論タスクを対象としている。これにより、Webアプリケーションは、CPU、GPU、専用AI(人工知能)アクセラレーターなど、さまざまなデバイス上でML処理を効率的に実行できる。

 開発者はWebNNを活用してWebアプリケーションで推論タスクを実行し、レイテンシの削減、プライバシーの強化、GPUアクセラレーションの恩恵を受けることができる。WebNNは、WebサイトやWebアプリケーション内でAI機能を直接実行するためのインタフェースを提供する。

WebNNのアーキテクチャ

 WebNNのアーキテクチャ(下図)は、WebNNがWebベースのMLワークフローの各種コンポーネントとどう統合されるかを示している。

WebNNのアーキテクチャ(提供:Microsoft) WebNNのアーキテクチャ(提供:Microsoft)

Webアプリケーションレイヤー

 開発者は、事前にトレーニングされたモデル(ONNXやTensorFlowなど)とJavaScript MLフレームワーク(TensorFlow.jsやONNX.jsなど)を使用して、ML機能を備えたWebアプリケーションを構築できる。

Webブラウザレイヤー

 Webアプリケーションは、WebNN APIをサポートするWebブラウザで実行される。ブラウザは、高性能計算のためにWebGPUを利用し、ニューラルネットワーク推論のためにWebNNを使用し、パフォーマンスが重要なコードを実行するためにWebAssemblyを活用できる。

ネイティブML APIレイヤー

 ブラウザ内のWebNN APIは、高レベルのニューラルネットワーク操作を、OSが提供するネイティブのML APIへの呼び出しに変換する。これにより、Webアプリケーションは、macOS、Windows、Android、Linuxのどれで実行されても、デバイスで利用可能な最良のハードウェアアクセラレーションを活用できる。

ハードウェアレイヤー

 ネイティブのML APIは、ニューラルネットワークの計算を効率的に実行するために、CPU並列処理、GPUアクセラレーション、またはML専用アクセラレーターなどの基礎となるハードウェア機能を利用する。

WebNNアーキテクチャのメリット

ハードウェアに依存しない

 WebNNはハードウェアに依存しないレイヤーを提供するため、開発者はプラットフォーム固有のコードを書く必要がない。同じWebアプリケーションを異なるデバイスやOS上で効率的に実行できる。

パフォーマンスの最適化

 ネイティブのML APIとハードウェアアクセラレーションを活用することで、WebアプリケーションはMLタスクで高いパフォーマンスが実現できる。

プライバシー

 データはデバイス上に保存されるため、機密情報をリモートサーバに送信する必要性が減少する。

レイテンシの削減

 ブラウザ内での推論により、サーバとデータの送受信に伴う遅延が減少し、ビデオ分析や顔認識などのリアルタイムアプリケーションが可能になる。

 以下のサンプルコードは、WebNNの簡単な使い方を示している。

WebNNのサンプルコード(提供:Microsoft) WebNNのサンプルコード(提供:Microsoft)

 Microsoftは「顔認識や顔ランドマーク検出、画像分類、物体検知、音声ノイズ抑制、背景除去、領域分類といったユースケースにおいてWebNNが活用できる。エッジAI機能、インタラクティブな体験の提供、プライバシー重視のAI機能の提供など、次世代のWeb開発において重要な役割を果たすだろう」と述べている。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。