Windows 10で機械学習ライブラリを実行するための「Windows ML」とは何か鈴木淳也の「Windowsフロントライン」

» 2018年03月27日 14時00分 公開

 Microsoftを含む多くのITベンダーは、クラウド上での機械学習や、学習済みの機械学習ライブラリを用いた高速大容量処理の仕組みを推進している。

 一方で、PCやスマートフォンなどを含む“エッジ”デバイスの世界においても、機械学習ライブラリを使った処理高速化の活用が進みつつある状況だ。これは、主に小型エッジデバイス向けSoC(System on a Chip)の性能向上を受けたものだが、専用のコプロセッサや処理ブロックを備えたSoCも登場しており、差異化ポイントの1つとして最近のトレンドとなりつつある。

 そんな中、米Microsoftは3月7日(現地時間)に、学習済みの機械学習ライブラリをWindows上でローカルに動作させるためのAPI「Windows ML(Machine Learning)」を発表した。今回はこのWindows MLを巡る最新情報を整理する。

Windows ML Windows MLのデモ動画より。左が元の映像、右が学習済みライブラリを実行した出力結果。動画が即座に絵画調へ変換されている

機械学習ライブラリをエッジデバイスで実行するメリット

 クラウド上ではなく、エッジデバイス上で機械学習ライブラリを動作させるメリットは幾つかある。

 まずクラウドに接続する必要がないため、ネットワーク環境のないオフライン状態でも利用できることが挙げられる。またネットワークを介さないことで、膨大なデータが行き来することによるネットワークへの負荷を低減し、秒程度のラグが発生する可能性のあるクラウドアクセス時におけるレスポンスの問題も回避できる。

 機械学習ライブラリをエッジデバイス上で動作させることは、特に高速な応答を求められる監視カメラや認証カメラなどのセキュリティ用途、また今後爆発的な普及が見込まれる自動運転車で非常に重要となる。場所によってはネットワークが安定しない可能性があることに加えて、秒単位の遅延が致命的となるからだ。

 こうした機械学習によって認識力の強化されたエッジデバイスは「インテリジェントエッジ」のようなキーワードで表現されることが多いが、インテリジェントエッジはインフラや産業向けデバイスだけの話ではない。

 最近ではスマートフォンの機能が大幅に向上したことで、“遊び”の部分でも活用されるケースが増えてきている。一般の目にはむしろ、こちらの方がなじみがあるかもしれない。Facebookの顔認識や、SNOWようなAR型コミュニケーションアプリ、ビューティーモードの付加された中国系スマートフォンのカメラ機能など、画像認識の仕組みだけでも身近に広く浸透している。

 QualcommはSnapdragon SoCの世代ごとにどのようなAI機能が実現可能かをデモストレーションしているが、現在はクラウド頼りの音声認識と構文解析も、待ち時間なしで手元のデバイスだけで完結できるようになるなど、より自然なコンピュータとの対話が行える世界が近づきつつある。

 では、Windows上にこうした仕組みを取り込むことで、どのようなことが実現できるのだろうか。

 Windows 10デバイスは世界中で6億台(2017年末にMicrosoftが発表した台数)が稼働しており、既にさまざまな用途で使われている。

 インテリジェントエッジ化するWindows 10デバイスは、フィルターを使った単純な画像加工をはじめ、カメラを組み合わせたリアルタイム監視、リアルタイム翻訳など、できることは非常に多い。全てはアプリの作り方次第だが、ホビーからプロフェッショナル、そして企業や産業向けまで、幅広い用途で活躍することだろう。

Windows 10次期大型アップデートで利用可能に

 MicrosoftはWindows MLのリリースに合わせて「Windows Machine Learning」と「ONNX Models to be Runnable Natively on 100s of Millions of Windows Devices」という2種類の文書を公開した。

 Windows MLの仕組みを簡単にいえば、「機械学習ライブラリの共通フォーマットであるONNX(Open Neural Network eXchange)を介して、学習済みの機械学習ライブラリをWindows 10で動作するUWP(Universal Windows Platform)アプリに直接組み込める」というものだ。

Windows ML Windows MLの仕組み
Windows ML Windows MLを用いたアプリ開発の手順

 ONNXとはMicrosoft、Amazon Web Services(AWS)、Facebookが主導で開発した、異なるAIフレームワーク間で機械学習ライブラリを交換するための仕組みだ。このオープンソースのプロジェクトはGitHubで公開されており、AMD、Arm、Huawei、IBM、Intel、Qualcommといった主要なプロセッサベンダーが対応を表明し、2017年12月には「ONNX 1.0」が正式リリースされた。

Windows ML Windows MLがサポートするONNX

 Windows MLの使い方はシンプルで、用意するものは「Spring Creators Update(1803)」の名称がうわさされるWindows 10次期大型アップデート「Redstone 4(RS4)」相当ビルドのWindows 10 Insider Preview、「Windows SDK - Build 17110」以降、そしてONNXの学習済み機械学習ライブラリ(Microsoft Azureなどであらかじめ学習させたもの)だ。

 Caffe 2、PyTorch、CNTK(Microsoft Cognitive Toolkit)、ChainerといったONNXが標準でサポートする形式からの出力に加えて、WinMLToolsを使ったCore ML、Scikit-Learn、XGBoost、LibSVMといった既存ライブラリからのコンバートも可能になっている。

 Visual Studio version 15.7 Preview 1以降の環境では、こうしたライブラリをUWPプロジェクトに組み込むことでWindows ML APIを呼び出すラッパークラスを自動生成する仕組みが用意されており、学習済みライブラリの仕組みを比較的容易にUWPアプリから利用することが可能だ。YouTubeにもWindows MLの簡単な紹介動画がある。

動画が取得できませんでした

 Windows MLの利用により、CPUとGPUの併用によるハードウェアアクセラレーションに加えて、動作の最適化が可能となる。Intelによれば、Windows MLは汎用(はんよう)のGPUだけでなく「Intel Movidius Myriad X VPU」のようなAIプロセッサにも対応しているとのことで、この辺りは対応デバイスの多いWindowsならではのメリットかもしれない。

 またMicrosoft動向に詳しい米ZDNetのメアリー・ジョー・フォリー氏によれば、Win32とWinRTのいずれのAPIからもアクセス可能とのことだ。これは、いわゆるUWPでパッケージ化されたデスクトップ型アプリケーションだけでなく、Windows PC以外のプラットフォームからの利用も可能なことを意味している。

 Windows MLはまだまだ走り始めたばかりだが、この辺りの仕組みは今後も継続的にMicrosoft自身がフォローアップしていくと思われるので、引き続きウォッチしていきたい。

 同社はどちらかといえばAzureクラウドや自社データセンター上で動作する「BrainWave」のような大規模な仕組みに注力している印象があるが、Windowsを搭載したエッジデバイスにおいてもこの最新の仕組みを積極的に導入していくことで、AIの世界でもWindowsの存在感をアピールしていくようだ。

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2024年04月19日 更新
  1. バッファロー製Wi-Fiルーターに脆弱性 対象機種は今すぐファームウェア更新を (2024年04月17日)
  2. ノートPCに外付けキーボードを“載せて”使える「タイプスティックス/打ち箸」に新色 (2024年04月18日)
  3. さらなる高速化を実現! PCI Express 5.0接続SSDの新モデル「Crucial T705」を試して分かったこと (2024年04月18日)
  4. ついに8K対応した「Insta360 X4」の画質をX3と1インチ360度版で比較 今買うべき全天球カメラだと確信した (2024年04月16日)
  5. SwitchBotのミニプラグに不具合 「断続的にオン/オフを繰り返す、異音」などで該当製品の交換を呼びかけ (2024年04月17日)
  6. アイロボットが4万円切りの「水拭き対応ロボット掃除機」を投入 “一家に1台”を目指す (2024年04月17日)
  7. 「JBL GO 4」でBluetoothスピーカーデビュー! 累計出荷台数5700万台を突破した人気製品の最新モデルを試す (2024年04月17日)
  8. あなたのPCのWindows 10/11の「ライセンス」はどうなっている? 調べる方法をチェック! (2023年10月20日)
  9. 無線LANルーター「Aterm」シリーズの一部に複数の脆弱性 設定変更や買い替えをアナウンス (2024年04月11日)
  10. NVIDIA、Ampereアーキテクチャを採用したシングルスロット設計のデスクトップ向けGPU「NVIDIA RTX A400/A1000」を発表 (2024年04月17日)
最新トピックスPR

過去記事カレンダー