Microsoftは公式ブログで、Webアプリケーションでニューラルネットワーク推論タスクを効率的に実行できるJavaScript APIである「WebNN」の概要やアーキテクチャ、メリットなどを解説した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
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の概要やメリット、アーキテクチャの概要、活用の可能性について次のように解説している。
ソフトウェアとハードウェアの両方のエコシステムで新しいML技術が登場する中で、Webにとっての主な課題の一つは、ソフトウェアとハードウェアの開発を橋渡しし、ハードウェアプラットフォーム全体に拡張し、ユーザーがWebベースでMLの効果を体験するためにあらゆるフレームワークで動作するソリューションを提供することにある。
WebNNは、Webアプリケーションにおけるニューラルネットワーク推論の高速化のために設計された、ハードウェアに依存しない抽象化レイヤーだ。主にトレーニングよりも推論タスクを対象としている。これにより、Webアプリケーションは、CPU、GPU、専用AI(人工知能)アクセラレーターなど、さまざまなデバイス上でML処理を効率的に実行できる。
開発者はWebNNを活用してWebアプリケーションで推論タスクを実行し、レイテンシの削減、プライバシーの強化、GPUアクセラレーションの恩恵を受けることができる。WebNNは、WebサイトやWebアプリケーション内でAI機能を直接実行するためのインタフェースを提供する。
WebNNのアーキテクチャ(下図)は、WebNNがWebベースのMLワークフローの各種コンポーネントとどう統合されるかを示している。
開発者は、事前にトレーニングされたモデル(ONNXやTensorFlowなど)とJavaScript MLフレームワーク(TensorFlow.jsやONNX.jsなど)を使用して、ML機能を備えたWebアプリケーションを構築できる。
Webアプリケーションは、WebNN APIをサポートするWebブラウザで実行される。ブラウザは、高性能計算のためにWebGPUを利用し、ニューラルネットワーク推論のためにWebNNを使用し、パフォーマンスが重要なコードを実行するためにWebAssemblyを活用できる。
ブラウザ内のWebNN APIは、高レベルのニューラルネットワーク操作を、OSが提供するネイティブのML APIへの呼び出しに変換する。これにより、Webアプリケーションは、macOS、Windows、Android、Linuxのどれで実行されても、デバイスで利用可能な最良のハードウェアアクセラレーションを活用できる。
ネイティブのML APIは、ニューラルネットワークの計算を効率的に実行するために、CPU並列処理、GPUアクセラレーション、またはML専用アクセラレーターなどの基礎となるハードウェア機能を利用する。
WebNNはハードウェアに依存しないレイヤーを提供するため、開発者はプラットフォーム固有のコードを書く必要がない。同じWebアプリケーションを異なるデバイスやOS上で効率的に実行できる。
ネイティブのML APIとハードウェアアクセラレーションを活用することで、WebアプリケーションはMLタスクで高いパフォーマンスが実現できる。
データはデバイス上に保存されるため、機密情報をリモートサーバに送信する必要性が減少する。
ブラウザ内での推論により、サーバとデータの送受信に伴う遅延が減少し、ビデオ分析や顔認識などのリアルタイムアプリケーションが可能になる。
以下のサンプルコードは、WebNNの簡単な使い方を示している。
Microsoftは「顔認識や顔ランドマーク検出、画像分類、物体検知、音声ノイズ抑制、背景除去、領域分類といったユースケースにおいてWebNNが活用できる。エッジAI機能、インタラクティブな体験の提供、プライバシー重視のAI機能の提供など、次世代のWeb開発において重要な役割を果たすだろう」と述べている。
Copyright © ITmedia, Inc. All Rights Reserved.