画像: マイクロソフト
Windows 10にCortanaが初めて搭載されて以来、MicrosoftはWindowsに人工知能(AI)を組み込もうと試みてきました。そして今、CPUやGPUを活用してWindowsとそのアプリをさらにスマートにする「Windows ML」と呼ばれる新しいAPIの登場により、その取り組みはさらに本格化しています。
Windows MLは、「Windows 10の次期メジャーアップデート」、おそらく今月ハードウェアパートナー向けにリリースされる「Redstone 4」アップデートでデビューする予定です。APIであるため、Windows向けアプリを開発するすべての開発者が、この新しいAI機能を活用できるようになります。
マイクロソフトによると、将来的にはWindows MLが全く新しいチップ、つまりIntelの子会社Movidiusが開発したマシンビジョンまたは画像処理チップを活用する可能性もあるという。マイクロソフトはMovidiusと緊密に協力し、同社の2485 VPUアクセラレータのサポートに取り組んでいるという。このアクセラレータは、既存のウェブカメラと連携したり、あるいはウェブカメラを置き換えることも可能だ。

マイクロソフトによれば、Windows ML の実用的な用途としては、回路基板の欠陥を視覚的に検査することが挙げられるという。
これがユーザーにとって何を意味するか:一方で、これはMicrosoftにとって賢明で進化的な一歩と言えるでしょう。例えば、フォトアプリで「ビーチ」の写真を検索したり、顔を認識したりできるようになります。Cortanaは予定に合わせて出発する時間を提案してくれます。しかし、開発者が独自のアイデアを注入できるようにすることは、さらに理にかなっています。一方で、Microsoftは、ゲームをプレイしているときにWindowsがGPUのリソースを奪ってしまうことを懸念するゲーマーなどのユーザーグループをなだめる必要があるでしょう。
Windows を進化させてよりスマートに
「Windowsでは、既に幅広い用途でAIを活用しています」と、Microsoftのグループプログラムマネージャーであるカム・ヴェドブラット氏は述べ、Microsoft Developer DayのウェブキャストでWindows MLについて説明しました。「手書き認識、セキュリティ脅威の分離、そしてCortanaのようなサービスの強化にAIを活用しています。では、Windows規模でAIを導入するにはどうすればいいのでしょうか?」

マイクロソフトのグループ プログラム マネージャーである Kam VedBrat 氏が、Movidius チップを掲げている。
解決策は、ローカル処理と、データをMicrosoftのAzureクラウドに送り返して処理させることの組み合わせにあるようだ。VedBrat氏によると、状況によってはデータセットが大きすぎたり、Microsoftに送り返すには費用がかかりすぎたりする場合がある。また、デバイスが単にアクティブなデータ接続を持っているだけという場合もある。その場合、デバイスがAI処理能力を自ら供給できるはずだと彼は述べた。
「WindowsデバイスでAIを活用すれば、即座に結果が得られます」とヴェドブラット氏は述べた。「Windowsはデバイスのハードウェア機能を活用し、低遅延で優れたパフォーマンスを実現します。」

VedBrat は、Movidius チップの動作を示すこの Windows dxdiag 画面も提供しました。
Windows MLはCPUとGPUの両方を利用でき、IntelのAVX512のような高度なCPU命令セットをサポートします。VedBrat氏はデモとして、CPUを使って静止画像を操作し、芸術的なキャンディーのような外観(このページ上部参照)を実現する方法を披露しました。しかし、このアプリをSurface Bookの内蔵GPUで実行すると、低フレームレートではあるものの、Bookのカメラで撮影したライブビデオに同じフィルターを適用することができました。
将来、MicrosoftはMovidiusビジュアルプロセッサのようなデバイスにML機能を搭載したいと考えています。Intelは、このプロセッサが将来の自動運転車のエンジンとなることを期待しています。Intelは、PC向けに最初のRealSense深度カメラの1つを提供しました。このカメラは、今日のPCでほぼ一般的になっているWindows Helloブランドの生体認証カメラへと進化しました。