AIの推論デバイスと化すスマートフォン

現代に巻き起こる第三次人口知能ブームは新たなフェーズへと突入しているようです。この人口知能ブームのきっかけとなった多層のニューラル・ネットワークを用いたディープ・ラーニングと呼ばれる手法は、学習だけでなくそのモデルによって推論をする際にもある程度の演算能力が必要となります。現在我々の生活に根付いているスマートフォンは推論を効率良く行える方向に進化しているようです。

例えば、Google翻訳は画像にある文字を翻訳したり、音声を翻訳したりと様々な機能がありとても便利な翻訳アプリケーションですが、このような機械翻訳アプリケーションは、外国語を学ぶ際や外国に行く際に心強い味方となりますね。ディープ・ラーニングを用いて高精度化した翻訳アプリケーションを動かす際には推論が行われています。このようなアプリケーションは現状ではデータをサーバーに送信して推論の結果を返すといった処理をしなければならないことが多いですが、スマートフォンが推論を効率良く行えるようになればネットワークに繋がっていない場所でもそのような翻訳アプリケーションを使うことができるようになります。

その他にも、カメラを使用する際の高度な物体検出や、高精度な音声認識にもそのような技術が使われていて、今日でもスマートフォン上で推論をするという需要は少なくないと言えます。また、AIを応用したスマートフォン・アプリは今後増えて行くことが予想されます。頻繁にそのようなアプリを使うようになれば、電力効率も気になるようになるでしょう。

QualcommのNeural Processing Engine

スマートフォン向けSoCメーカーとして最大手であるQualcommは、Neural Network(以下NN)のモデルの実行、すなわち推論のために設計されたNeural Processing Engine(以下NPE) SDKと呼ばれる開発キットを用意しています。

Androidとその他のLinux OS向けのランタイムが提供されていて、QualcommのHexagon DSP、Adreno GPU、Kryo CPUによるアクセラレーションをサポートします。スマートフォン向けのSoCながら、Hxagon DSPやAdreno GPUはかなりの演算能力を持つのでNN向けの専用ハードウエアでは無いものの、高い性能及び効率で推論を行えます。

Caffe, Caffe2, TensorFlowによって生成されたモデルがNPEのサポート対象となっているようです。CaffeはFacebookが、TensorFlowはGoogleが中心となって開発してる機械学習プラットフォームです。

ソース

https://developer.qualcomm.com/software/snapdragon-neural-processing-engine-ai

QualcommのSoCは多くのスマートフォン・メーカーが採用しています。そのシェアはPhoneArenaによると2017年第三四半期で42%となっています。これは20%のシェアを持つiPhoneを含めた数値ですので、Androidスマートフォンの半分以上にQualcommのSoCが搭載されていることになります。

ソース

https://www.phonearena.com/news/Qualcomm-had-the-highest-share-of-the-smartphone-SoC-market-during-Q3-2017-followed-by-Apple_id101167

QualcommのSoC上でNNのモデルが動くということは、非常に大きなインパクトを持つと言えるでしょう。

AppleのNeural Engine

AppleのiPhone 8 Plusに搭載されたA11 bionic SoCには、Neural Engineと呼ばれるプロセッサが統合されていることが話題になりました。前述の通りiPhoneは全てのスマートフォンの中で20%のシェアを誇っており、その影響は小さくはありません。Neural EngineはNNのモデルの演算について、最大600GOPS(Giga Operations Per Second)の演算能力を持っています。Extremetech.comによるとAppleは以下のように主張しているようです。

The new A11 Bionic neural engine is a dual-core design and performs up to 600 billion operations per second for real-time processing. A11 Bionic neural engine is designed for specific machine learning algorithms and enables Face ID, Animoji and other features.

合計600GOPSでデュアル・コアとのことなので、1コアで300GOPSを捌くということなのでしょうか。Face IDやAnimojiなどのiPhoneの独自機能に必要な演算能力をまかなえるとのことです。

ソース

https://www.extremetech.com/mobile/255780-apple-neural-engine-a11-bionic-soc

HiSilicon(Huawei) Kirin 970のNPU

Huaweiの端末に搭載されるHiSiliconのKirin 970には、Neural Processing Unitと呼ばれるNN専用のアクセラレータが搭載されています。これにより、HuaweiのMate 10 Proは非常に高い性能、高い効率で推論を行えます。

Anandtechによると、Mate 10 ProはQualcomm 835に搭載されているHexagon 682を使用するNPEを用いた実装と比較して、電力効率はQualcomm 835と同等で、性能は最大で3.92倍高速だったようです。またHuaweiのスライドによると、A11 bionicを搭載したAppleのiPhone 8 Plusよりも大幅に高速に様々な推論をこなすようです。

NPUの高い性能を背景にMate 10 Proのカメラ・アプリはシーンを検出しそれに応じてカメラの設定を自動で最適化するようです。また、Microsoftと共同開発したオフラインでの翻訳アプリケーションを使用でき、またギャラリー・アプリでは画像の分類がなされるようです。

ソース

https://www.anandtech.com/show/12195/hisilicon-kirin-970-power-performance-overview/6

ARMのProject Trillium

ARM ISAやCortex AシリーズやMaliシリーズなどを設計するARMは、物体検出や機械学習に特化したProject Trilliumを発表しました。このプロジェクトは物体検出、機械学習関連のソフトウエア、ハードウエアのIPについての包括的なプロジェクトのようで、たとえば機械学習用途のプロセッサは7nmプロセスで実装した場合に8bit INTの最大スループットが4.6TOPSを超えるようです。これは1.5W程度の電力で動くようで、効率は最大で3TOPS/Wとなります。この性能は次世代のスマートフォン向けのNNアクセラレータの一つの基準となりそうです。

また、ARM NNと呼ばれるソフトウエアも整備され、NNのモデルをARMの設計するプロセッサで実行する環境が与えられるようです。TensorFlowやCaffe、Andrond NNAPI、MXNetなどのモデルに対応する予定のようです。

ソース

https://www.anandtech.com/show/12427/arm-announces-trillium-machine-learning-ip

AI時代のスマートフォン

大量のGPUを用いて研究、開発されるAIは、これからの時代において様々な場面で私たちの生活を変えるとされていますが、最も直接的な変化はスマートフォンを通してもたらされるのかもしれません。スマートフォンは多くの人の生活に密着しているコンピュータ・デバイスですので、この進化は順当な進化だと言えるでしょう。最新のスマートフォンの進化から目が離せません。

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)