クアルコムが Snapdragon 865 で AI を大幅に改善した方法

click fraud protection

クアルコムは、新しい Snapdragon 865 SoC で AI パフォーマンスを大幅に向上させました。 クアルコムが機械学習を加速するために行った変更を分析します。

ニュースで「人工知能」を見ない日はないと思われますが、先週も例外ではなく、少なからず Snapdragon Tech Summit のおかげでした。 クアルコムは毎年、Hexagon DSP と Qualcomm AI Engine にもたらす数多くの改良点を発表しています。 彼らが AI について話すときに、異種コンピューティング プラットフォーム (CPU、GPU、DSP) 全体に対して使用する用語 作業量。 数年前、CPU パフォーマンスの年々の向上など、従来の論点から話を逸らそうとするクアルコムの主張は少し奇妙に思えました。 しかし、2019 年の時点では、Snapdragon 865 によって、ヘテロジニアス コンピューティングが実際にモバイル コンピューティング推進の主導権を握っていることがわかります。 ハードウェア高速化されたワークロードは、ソーシャル メディアから日常生活に至るまで、幅広いユースケースやアプリケーションに侵入しているようです。 サービス。

Snapdragon 865 はクアルコムの第 5 世代 AI エンジンを搭載しており、それに伴いパフォーマンスと電力効率が大幅に向上していますが、それは予想通りです。 仕様、性能数値、派手なエンジニアリング用語、退屈なマーケティングの流行語の波の中で、これらの改善が実際に何を意味するのかを見失いがちです。 彼らは何を説明しているのでしょうか? これらのアップグレードは、現在アプリに AI を実装している人々にとって、そしておそらくはさらに重要なことに、将来そうしようとしている人々にとって、なぜそれほど意味があるのでしょうか?

この記事では、Qualcomm AI Engine の歴史、コンポーネント、Snapdragon 865 のアップグレードを詳しく調べながら、わかりやすく徹底的に説明します。そして最も重要なことは、 なぜ または どうやって これらはそれぞれ、面白いフィルターからデジタル アシスタントに至るまで、今日のスマートフォンのエクスペリエンスに貢献してきました。

Hexagon DSP と Qualcomm AI エンジン: ブランディングが違いを生むとき

今週の Snapdragon Tech Summit には参加できませんでしたが、2015 年以来他のイベントにはすべて参加しています。 思い返してみれば、 それ 今年は、Snapdragon 810 が大騒ぎになった年でした。そのため、ニューヨーク市のチェルシー ロフトにいたジャーナリストたちは、Snapdragon 820 が同社をどのように取り戻すかを知りたくて熱心でした。 そして、それは素晴らしいチップセットでした。クアルコムが定評だった当時実証済みのカスタム コアに戻ることで、(スロットリングなしで)健全なパフォーマンスの向上が約束されました。 しかし、今にして思えば、もっと注目されるべきだった非常に微妙な発表も覚えています。 第 2 世代 Hexagon 680 DSP とその単一命令、複数データ (SIMD) Hexagon Vector Extensions、または HVX。 おそらくエンジニアがこの機能に名前を付けていなかったら、当然の注目を集めていたでしょう。

このコプロセッサにより、スカラー DSP ユニットのハードウェア スレッドが HVX の「コンテキスト」(レジスタ ファイル) にアクセスして、幅広いベクトル処理機能を実現できます。 これにより、電力を大量に消費する CPU または GPU から重要な計算ワークロードをオフロードできるようになりました。 電力効率の高い DSP により、イメージングおよびコンピュータ ビジョンのタスクを大幅に向上したパフォーマンスで実行できるようになります。 ミリワットあたり。 これらは、連続するベクトル要素 (元は単なる整数) に同一の演算を適用するのに最適であり、コンピューター ビジョンのワークロードに適しています。 DSP と HVX については過去に詳細な記事を書きました、HVX アーキテクチャは並列化に適しており、明らかに大きな入力ベクトルの処理に適していると述べています。 当時、クアルコムは、DSP と HVX の改良点を説明することによって、ほぼ独占的に DSP と HVX の両方を宣伝していました。 Harris コーナー検出器やその他のスライディング ウィンドウなどのワークロードをコンピュータ ビジョンにもたらす可能性があります。 方法。

消費者向けモバイル アプリケーションにディープ ラーニングが登場するまで、DSP、そのベクトルは プロセッシング ユニット (そして現在はテンソル アクセラレータ) が AI とニューラル ネットワークと結合することになります。 特定の。 しかし、振り返ってみると、それは完全に理にかなっています。デジタル シグナル プロセッサ (DSP) アーキテクチャは、もともとデジタル化されたデータを処理するために設計されました。 実世界またはアナログ信号入力は、多くの機械学習アルゴリズムやニューラルと同じワークロードの多くに適しています。 ネットワーク。 たとえば、DSP はフィルター カーネル、畳み込み演算と相関演算、8 ビット計算、大量の演算などに合わせて調整されています。 線形代数 (ベクトル積と行列積) と積和演算 (MAC) 演算は、すべて次の場合に最も効率的です。 並列化されています。 ニューラル ネットワークのランタイムは、大きなベクトル、行列、テンソルの乗算にも大きく依存しているため、 DSP のパフォーマンス上の利点がニューラル ネットワーク アーキテクチャに適切に反映されるのは当然のことです。 良い。 このトピックについては、簡単にもう一度説明します。

その後数年間、クアルコムは自社が提供するものではないことを強調し続けました。 ただ チップセットですが、 モバイルプラットフォーム、集中していないこと ただ 特定のコンポーネントを改善しながら、「異種」コンピューティングを実現します。 2017 年に、同社は Snapdragon Neural Processing Engine SDK (ランタイム アクセラレーション用) を Qualcomm Developer Network でリリースし、2018 年初頭には 同社は、複数の AI 対応ハードウェア (CPU、GPU、DSP) とソフトウェア コンポーネントを 1 つのコンポーネントに統合する Qualcomm Artificial Intelligence Engine を発表しました。 名前。 この便利な命名法により、Snapdragon 855 と Snapdragon 855 の両方で AI パフォーマンスの向上をきちんと宣伝することができました。 Snapdragon 865、1 秒あたりの操作数(TOPS)と前年比を快適に詳細に把握できる 改善。 CPU、GPU、DSP の世代間の向上を活用 - すべてが独自の AI に焦点を当てています アップグレード - 同社は競合他社に対して優れたベンチマークを記録することができます。これについては後ほど詳しく説明します。 間もなく。 同社の最近のマーケティング活動と、ヘテロジニアス コンピューティングにおける統一された一貫したメッセージングにより、同社の AI ブランドは、ジャーナリストやテクノロジー愛好家の間でついに注目を集めています。

ニューラル ネットワークの謎を解く: ありふれた線形代数の山

この記事の後半で出てくる多くの専門用語を解くためには、短い入門書が必要です。 ニューラルネットワークとは何ですか そして 速くするために何が必要か. 専門用語や表記法をできる限り避けて、ニューラル ネットワークの数学的基礎の一部を非常に簡単に説明したいと思います。 このセクションの目的は、基本的にニューラル ネットワークが何を行っているかを明らかにすることです。 算術演算 上記の操作を正当化する理論的根拠ではなく、それが実行されます (これははるかに複雑です!)。 Qualcomm AI Engine のアップグレードに直接進みたい場合は、次のセクションに進んでください。

「ベクトル数学はディープラーニングの基礎です。」 – 2017 Snapdragon Tech Summit にて、Qualcomm 製品管理シニア ディレクター、Travis Lanier 氏

以下に、非常に典型的なフィードフォワード完全接続ニューラル ネットワーク図を示します。 実際には、この図ではプロセス全体が実際よりも少し複雑に見えます (少なくとも、慣れるまでは)。 フォワード パスを計算します。これは、最終的にネットワークが 推論、この用語もこの記事の後半で出てきます。 現時点では、マシンとその部品についてのみ説明し、各コンポーネントについて簡単に説明します。

ニューラル ネットワークはシーケンシャルで構成されます。 レイヤー、それぞれは、次のように接続されたいくつかの「ニューロン」(図では円で示されている)で構成されています。 重み (図では線で示されています)。 一般的に、レイヤーには 3 種類あります。 入力層、生の入力を受け取ります。 隠しレイヤー、前の層から数学的演算を計算します。 出力層、最終的な予測を提供します。 この場合、隠れ層は 1 つだけで、3 つあります。 隠しユニット. の 入力 特定の次元または長さのベクトル、配列、または数値のリストで構成されます。 この例では、2 次元の入力があるとします。 [1.0, -1.0]. ここで、 出力 ネットワークのは、スカラーまたは単一の数値 (リストではなく) で構成されます。 各隠れユニットは、次のセットに関連付けられています。 重み そして バイアス項、各ノードの横および下に表示されます。 計算するには 加重和 ユニットの出力では、各重みが対応する各入力と乗算され、その積が加算されます。 次に、単純にその積の合計にバイアス項を加算し、ニューロンの出力を生成します。 たとえば、次の入力を使用すると、 [1.0,-1.0]、最初の隠れユニットの出力は次のようになります。 1.0*0.3 + (-1.0) * 0.2 + 1.0 = 1.1. シンプルですよね?

図の次のステップは、 活性化関数これにより、各隠れ層の出力ベクトルを生成できるようになります。 私たちの場合、非常に人気があり、非常にシンプルなものを使用します。 整流リニアユニット または ReLUこれは入力数値を受け取り、(i) その数値が負の場合はゼロ、または (ii) 数値が正の場合は入力数値自体を出力します。 例えば、 ReLU(-0.1) = 0、 しかし ReLU(0.1) = 0.1。 入力の例に従うと、 伝播する 最初の隠れユニットを通じて、計算した 1.1 の出力がアクティベーション関数に渡され、次の結果が得られます。 ReLU(1.1)=1.1. この例の出力層は、隠れユニットとまったく同じように機能します。隠れユニットの出力をその重みに対して乗算し、次にそのバイアス項を追加します。 0.2. 最後の活性化関数、 ステップ関数、正の入力を 1 に、負の値を 0 に変換します。 ネットワーク内の各操作がどのように動作するかを知ることで、推論の完全な計算を次のように書き留めることができます。

フィードフォワード ニューラル ネットワークの計算はこれですべてです。 ご覧のとおり、 演算はほぼ完全に積と数値の和で構成されます. 私たちの活性化関数 ReLU(x) たとえば単に呼び出すだけで、非常に簡単に実装することもできます。 最大 (x, 0)、入力が 0 より大きい場合は常に x を返しますが、それ以外の場合は 0 を返します。 ご了承ください ステップ (x) も同様に計算できます。 より複雑なアクティベーション関数が多数存在します。 シグモイド関数 または 双曲線正接、さまざまな内部計算が含まれ、さまざまな目的により適しています。 すでにお気づきになり始めているもう 1 つのことは、私たちも 3 つの隠れユニットの計算とその ReLU アプリケーションを並行して実行できます。、出力ノードで重み付けされた合計を計算するまで、それらの値は同時に必要ないからです。

しかし、そこで立ち止まる必要はありません。 上では同じ計算が見られますが、今回は代わりに行列とベクトルの乗算演算で表されています。 この表現に到達するには、入力ベクトルに 1.0 (明るい色相) を追加して「拡張」します。 上に示したように、マトリックス内の重みとバイアス (明るい色相) を乗算すると、同じ隠れ単位が得られます。 出力。 次に、出力ベクトルに要素ごとに ReLU を適用し、ReLU 出力を「拡張」して、出力層の重みとバイアスを乗算します。 この表現では、隠れ層全体のパラメーター (重みとバイアス) を 1 つの変数の下にまとめることができるため、表記が大幅に簡素化されます。 しかし、私たちにとって最も重要なことは、次のことが明らかになるということです。 ネットワークの内部計算は基本的に行列とベクトルの乗算またはドット積です。 これらのベクトルと行列のサイズが入力の次元とネットワーク内のパラメーターの数に応じてどのようにスケールされるかを考えると、ほとんどのランタイムはこの種の計算に費やされることになります。 線形代数がいっぱい!

もちろん、私たちのおもちゃの例は次のとおりです。 とても 範囲が限られています。 実際には、最新の深層学習モデルには、数百とは言わないまでも数十の隠れ層と、数百万の関連パラメーターが含まれる場合があります。 2 次元ベクトル入力例の代わりに、数千のエントリを持つベクトルを取り込むことができます。 行列 (単一チャネル画像など) やテンソル (3 チャネル RGB など) などのさまざまな形状で 画像)。 また、元の入力に行を追加することで、行列表現が複数の入力ベクトルを一度に取り込むことを妨げるものはありません。 ニューラル ネットワークは、フィードフォワード ニューラル ネットワークとは異なる方法で「接続」したり、異なる活性化関数を実行したりすることもできます。 ネットワーク アーキテクチャと技術の広大な動物園がありますが、最終的には、 たいてい これは、おもちゃの例で見たのと同じ並列算術演算に分解されますが、より大規模なスケールになります。

テンソル上で動作する畳み込み層の視覚的な例。 (画像クレジット: データサイエンスに向けて)

たとえば、人気のある 畳み込みニューラル ネットワーク (CNN) おそらく読んだことがあるでしょうが、この模擬ネットワークのように「完全に接続」されていません。 その隠された「重み」またはパラメータ 畳み込み層 これは一種のフィルター、つまり上に示したように入力の小さなパッチに順次適用されるスライディング ウィンドウと考えることができます。この「畳み込み」は実際には単なるスライディング ドット積です。 この手順により、いわゆる 機能マップ。 プーリング層は、画像の小さなパッチの最大値または平均値を計算することにより、入力または畳み込み層の出力のサイズを削減します。 ネットワークの残りの部分は、通常、この例のような完全に接続された層と、ReLU のようなアクティベーション関数で構成されます。 これは、初期の畳み込み層の特徴マップが「検出」できる画像の特徴抽出によく使用されます。 線やエッジなどのパターン、および後のレイヤーでは、顔や複雑な要素などのより複雑な特徴を検出できます。 形。

言われていることはすべて、 厳密に推論に限定されるまたは、パラメーターが見つかった後にニューラル ネットワークを評価します。 トレーニング これははるかに複雑な手順です。 繰り返しますが、多くの説明を省略しました。 実際には、ネットワークの各コンポーネントは目的のために含まれています。 たとえば、線形代数を勉強したことがある方なら、 非線形活性化関数を使用すると、ネットワークは非常に限定された予測を備えた線形モデルに単純化されます。 容量。

Snapdragon 865 のアップグレードされた AI エンジン - 改善点の概要

ニューラル ネットワークのコンポーネントとその数学的演算を簡単に理解すると、ハードウェア アクセラレーションがなぜそれほど重要なのかを正確に理解できるようになります。 最後のセクションでは、ネットワークを高速化するには並列化が不可欠であることがわかります。 たとえば、各ニューロンに対応する複数の並列ドット積を計算できます。 活性化。 これらの各ドット積自体は、モバイル アプリケーションの場合は通常 8 ビット精度の数値に対する乗算と加算の演算で構成されており、できるだけ早く実行する必要があります。 AI エンジンは、開発者のパフォーマンスと電力効率の考慮事項に応じて、これらのタスクをオフロードするためのさまざまなコンポーネントを提供します。

今年の Snapdragon Summit のステージで示された、人気のある MNIST データセットの CNN の図。 ベクトル処理ユニットは、模擬例のように完全に接続された層に適しています。 一方、テンソルプロセッサは、複数のスライディングを処理する畳み込み層とプーリング層を処理します。 上の図のようにカーネルが並列に動作し、各畳み込み層が多くの個別の特徴を出力する可能性があります。 地図。

まず、GPU について見てみましょう。GPU は通常 3D ゲームの文脈で話されます。 ビデオ ゲームの消費者市場は何十年にもわたってグラフィックス処理ハードウェアの開発を刺激してきましたが、なぜ GPU がニューラル ネットワークにとってそれほど重要なのでしょうか? まず、ポリゴン頂点の 3D 座標の膨大なリストを一度に読み解いて、ゲーム内の世界の状態を追跡します。 GPU は、これらの 3D を変換 (またはマッピング) するために巨大な行列乗算演算も実行する必要があります。 座標を 2D 平面上の画面上の座標に変換し、ピクセルの色情報も処理します。 平行。 さらに、ゲーム内ジオメトリにオーバーレイされたテクスチャ ビットマップ用の大量のメモリ バッファを処理するための高いメモリ帯域幅を提供します。 並列化、メモリ帯域幅、およびその結果得られる線形代数機能における利点は、ニューラル ネットワークのパフォーマンス要件と一致します。

したがって、Adreno GPU ラインは Qualcomm AI Engine において大きな役割を果たしており、Qualcomm はステージ上で、Snapdragon 865 のこの更新されたコンポーネントにより、 2 倍の浮動小数点機能 そして TOPS数の2倍 前世代と比較して、グラフィックス レンダリングのパフォーマンス向上が 25% しかなかったことを考えると、これは驚くべきことです。 それでも、このリリースに関して、同社は次のことを誇っています。 算術論理演算装置 (ALU) の数が 50% 増加、ただし、いつものように、GPU周波数は明らかにしていません。 クアルコムも混合精度を上場 説明書これはまさにそのとおりです。単一の計算方法での演算ごとに数値精度が異なります。

Hexagon 698 DSP では、Snapdragon 865 によるパフォーマンスの大幅な向上が見られます。 今年、同社は DSP のベクトル拡張機能 (昨年の 855 ではパフォーマンスが 4 倍になった) やスカラー ユニットの改善については発表していません。 ただし、このブロックの Tensor Accelerator については、次のことが達成されたことに注目しています。 TOPの4倍 昨年 Hexagon 695 DSP で導入されたバージョンと比較して、 電力効率が 35% 向上. 画像オブジェクトの検出から自動音声認識に至るまで、現代の AI ユースケースにおける畳み込みニューラル ネットワーク アーキテクチャの普及を考慮すると、これは大きな問題です。 上で説明したように、これらのネットワークの畳み込み演算により、行列出力の 2D 配列が生成されます。 各フィルター。つまり、一緒に積み重ねた場合、畳み込み層の出力は 3D 配列または テンソル。

クアルコムも自社の「新しくてユニーク」を宣伝した ディープラーニングの帯域幅圧縮 明らかにできるテクニック データをロスレスで約 50% 圧縮する、その結果、データの半分が移動され、チップセットの他の部分の帯域幅が解放されます。 データのスループットを減らすことで電力も節約できるはずですが、数値は示されておらず、データの圧縮にも少量の電力コストがかかるはずです。

帯域幅に関しては、Snapdragon 865 は次のことをサポートしています。 LPDDR5メモリこれにより、リソースと入力データの転送速度が向上するため、AI のパフォーマンスにもメリットがあります。 ハードウェアを超えて、クアルコムの新しい AI モデル効率化ツールキット モデルの圧縮が容易になり、開発者はその結果として電力効率を節約できるようになります。 ニューラル ネットワークには多くの場合、多数の「冗長な」パラメータがあります。 たとえば、非表示レイヤーを必要以上に広くする可能性があります。 ステージ上で議論された AI ツールキットの機能の 1 つは次のとおりです。 モデル圧縮引用された方法のうち 2 つは空間特異値分解 (SVD) とベイジアン圧縮であり、どちらも 冗長なノードを取り除き、モデル構造を次のように調整することで、ニューラル ネットワークを効果的にプルーニングします。 必須。 ステージ上で紹介されたもう 1 つのモデル圧縮テクニックは量子化に関連しており、これには重みパラメータとアクティベーション ノードの計算の数値精度の変更が含まれます。

ニューラル ネットワークの重みの数値精度は、計算に使用される数値が 64、32、16 (半精度) または 8 ビット値として保存、転送、処理されるかどうかを指します。 より低い数値精度を使用すると (たとえば、INT8 と FP32)、全体的なメモリ使用量とデータ転送速度が低下し、より高い帯域幅とより高速な推論が可能になります。 今日の深層学習アプリケーションの多くは、推論用に 8 ビット精度のモデルに切り替えています。 驚くべきこと: 数値精度が高ければ、分類や回帰においてより「正確な」予測が可能になるのではないか タスク? 必ずしも; ニューラル ネットワークがノイズの多い入力やノイズに対処するようにトレーニングされるため、特に推論中に高い数値精度が無駄になる可能性があります。 いずれにせよ、トレーニング全体を通じて小さな外乱が発生し、特定の (FP) 値の下位ビット表現の誤差は均一に「ランダム」です。 十分。 ある意味、低精度の計算はネットワークによって別のノイズ源として扱われ、予測は引き続き使用できるようになります。 ヒューリスティックな説明はさておき、モデルを不適切に量子化すると精度にペナルティが発生する可能性があります。 いくつかの重要な考慮事項が考慮されていないため、多くの研究が行われています。 主題

Qualcomm AI Toolkit に戻る: それを通じて彼らは提供します データフリー量子化これにより、さまざまなタスクでオリジナルに近いモデルのパフォーマンスを達成しながら、データやパラメーターの微調整を行わずにモデルを量子化できます。 基本的に、重みパラメータを量子化に適応させ、低精度の重みに切り替えるときに発生するバイアス誤差を補正します。 量子化によってもたらされる利点を考慮すると、API 呼び出しで手順を自動化すると、モデルの作成とデプロイメントが簡素化されるとクアルコムは主張しています。 ワットあたりのパフォーマンスが 4 倍以上 量子化モデルを実行するとき。

しかし、繰り返しますが、これは驚くべきことではありません。モデルを量子化すると、帯域幅とストレージに多大なメリットがもたらされます。 モデルを INT8 に変換すると、帯域幅が 4 分の 1 に削減されるだけでなく、(ハードウェアによっては) 整数計算が高速化されるというメリットも得られます。 したがって、量子化と数値計算の両方に対するハードウェア アクセラレーションによるアプローチにより、パフォーマンスが大幅に向上することは明らかです。 彼のブログでたとえば、Google の Pete Warden は、Qualcomm チームと Tensorflow チームのコラボレーションにより、8 ビット モデルは最大で実行できると書いています。 7倍速いCPU よりも HVX DSP の方が優れています。 特にクアルコムが INT8 パフォーマンスに注力していることを考えると、使いやすい量子化の可能性を誇張することはできません。

Snapdragon 865 の ARM ベースの Kryo CPU は、依然として AI エンジンの重要なコンポーネントです。 上の段落で説明したハードウェア アクセラレーションが望ましいとはいえ、場合によっては これらのブロックを適切に利用しないアプリケーションを避けることができず、その結果 CPU が 後退する。 ARM はこれまで、行列ベースおよびベクトルベースの計算の高速化を目的とした特定の命令セットを導入していました。 ARMv7 プロセッサでは、DSP のような命令を可能にする SIMD アーキテクチャ拡張機能である ARM NEON が導入されました。 そして、ARMv8.4-A マイクロアーキテクチャでは、ドット積専用の命令が導入されました。

これらのパフォーマンス向上はすべて、前のセクションで説明したワークロードの多くに関連していますが、Snapdragon 865 のアップグレードは次のようなものであることにも留意する価値があります。 最新のものだけ クアルコムの AI 機能の向上。 2017 年に、Hexagon 685 DSP およびその他のチップセットのアップデートにより AI 機能が 3 倍になったことを文書化しました。 昨年、同社はテンソル アクセラレータを導入し、非線形関数 (前述の ReLU! など) のサポートをハードウェア レベルで統合しました。 また、ベクトル アクセラレータの数が 2 倍になり、スカラー処理ユニットのパフォーマンスが 20% 向上しました。 これらすべてを、ARM によるドット積演算の高速化や GPU の ALU の追加など、CPU 側の機能強化と組み合わせることで、最終的にクアルコムは完成します。 3倍になった 生の AI 機能も。

実用的なメリットとユースケースの拡大

これらすべてのアップグレードにより、Snapdragon 865 の AI 機能はわずか 2 年前と比較して 5 倍になりましたが、 おそらく最も重要なことは、この改善により、モバイルにとって重要な指標であるミリワットあたりのパフォーマンスも向上したことです。 デバイス。 Snapdragon Summit 2019 で、クアルコムは、自社の AI エンジンをさまざまな分類ネットワーク上の 2 つの競合他社と比較するいくつかのベンチマークを提供しました。 これらの数値は、Apple の A シリーズや Huawei の HiSilicon プロセッサとの比較を可能にする、クロスプラットフォームのベンチマーク アプリケーションである AIMark を使用して収集されたものと思われます。 クアルコムは、これらの結果は AI エンジン全体を利用していると主張しており、さらなる結果が得られるまで待つ必要がある 各コンポーネントの効果を適切に解きほぐし、これらのテストがどのように行われたかを判断するための徹底的なベンチマーク 実施した。 たとえば、B 社の結果は CPU フォールバックを示していますか? 私の知る限り、AIMark は現在、たとえば Mate 30 Pro ユニットで Kirin 990 の NPU を活用していません。 ただし、Snapdragon Neural Processing Engine はサポートしているため、Qualcomm AI Engine を活用できることは間違いありません。 内部テストであることを考えると、ベンチマークが競合他社に対して適切なライブラリまたは SDK を適切に利用しているかどうかは明確ではありません。

クアルコムは、Snapdragon 865 の AI 処理能力を、以前に発表またはリリースされたチップセットと効果的に比較しているとも言わなければなりません。 競合他社が次のサイクルで同様の影響を与えるパフォーマンスの向上をもたらす可能性が非常に高いです。 この場合、クアルコムが王座を維持できるのは、Snapdragon 865 デバイスが店頭に並んだ瞬間から約半年だけということになります。 そうは言っても、これらは依然として、Snapdragon 865 に期待できる種類の隆起を示しています。 クアルコムは、今後のリリースのパフォーマンスの改善やベンチマークの結果を伝える際に、一般に非常に正確に対応してきました。

これらのベンチマークで示されているネットワークはすべて、ImageNet などのデータベースから画像を分類し、それらを入力として受け取り、数百のカテゴリから 1 つを出力します。 繰り返しますが、それらは 2 番目のセクションで説明したのと同じ種類の操作に依存しますが、そのアーキテクチャは大幅に異なります。 これらの例よりも複雑であり、出版時点では最先端のソリューションとみなされています。 最良の場合でも、最も近い競合他社が提供する推論数は 1 秒あたりの半分未満です。

消費電力に関して、クアルコムは、特定の電力量で可能な AI 処理の量を示すために、ワットあたりの推論値を提供しました。 最良のケース (MobileNet SSD) では、Snapdragon AI エンジンは同じ電力バジェットで 2 倍の推論を提供できます。

モバイルデバイスにとって電力は特に重要です。 たとえば、ニューラル ネットワーク ベースの Snapchat フィルターについて考えてみましょう。 現実的には、コンピューター ビジョン パイプラインが顔情報を抽出し、マスクまたは入力を適用します。 流体を実現するには、変換を 1 秒あたり 30 回または 60 回の完了速度で実行するだけで済みます。 経験。 生の AI パフォーマンスを向上させると、より高解像度の入力を取得し、より見栄えの良いフィルターを出力できるようになりますが、 また、アップロードを高速化し、電力消費とサーマル スロットルを削減するには、単純に HD 解像度に落ち着くことが望ましいと言えます。 多くのアプリケーションでは、「高速」であることが必ずしも「優れている」とは限りませんが、電力効率の向上によるメリットが得られます。

Snapdragon Summit の 2 日目には、Snapchat のシニア エンジニアリング ディレクター、Yurii Monastyrshyn がステージに上がり、その方法を説明しました。 最新の深層学習ベースのフィルターは、Snapdragon 上の Hexagon 695 DSP を使用した Hexagon Direct NN によって大幅に高速化されています。 865.

その上に、 開発者がより簡単なニューラル ネットワーク実装にアクセスできるようになる さらに多くのアプリケーションが AI 技術を採用し始めており、スマートフォンは複数の処理を処理する必要があるため、同時実行のユースケースがさらに注目されることになるでしょう。 同時に並列 AI パイプラインを実行 (さまざまなソースからの入力信号を処理する単一のアプリケーション、または個別に実行される多数のアプリケーションのいずれか) デバイス上)。 コンピューティング DSP、GPU、CPU 全体でかなりの電力効率の向上が見られますが、Qualcomm Sensing Hub は、非常に低い電力消費でトリガー ワードをリッスンする常時オンのユースケースを処理します。 1mA未満の電流でオーディオ、ビデオ、センサーフィードを監視できるため、デバイスはよく知られたデジタルアシスタントのキーワードに加えて、特定の音の合図(赤ちゃんの泣き声など)を検出できるようになります。 その点、Snapdragon 865 では、キーワードだけでなく、それを話している人も検出して、許可されたユーザーを特定し、それに応じて行動することができます。

エッジデバイス上のさらなるAI

これらの改善は、最終的にユーザー エクスペリエンスに目に見えるメリットをもたらす可能性があります。 翻訳、オブジェクトの認識とラベル付け、使用状況の予測またはアイテムの推奨を含むサービス、 自然言語の理解や音声解析などでは、より高速に動作し、消費電力が少なくなるというメリットが得られます。 力。 コンピューティング予算が増えると、新しいユースケースやエクスペリエンスを作成したり、クラウドで行われていたプロセスをデバイスに移行したりすることもできます。 AI という用語は、これまで (OEM によってさえも) 疑わしい、欺瞞的な、さらには誤った方法で使用されてきましたが、 あなたが現在楽しんでいるサービスの多くは、最終的には何らかの形で機械学習アルゴリズムに依存しています。 別の。

しかし、クアルコム以外にも、他のチップセット メーカーもこの点で迅速に反復と改善を行っています。 たとえば、990 5G は 2+1 NPU コア設計を採用し、Kirin 980 の最大 2.5 倍、Apple A12 の最大 2 倍のパフォーマンスを実現しました。 このプロセッサが発表されたとき、1 秒あたり最大 2 倍のフレーム (推論) を提供できることが示されました。 INT8 MobileNet での Snapdragon 855 の結果は、Qualcomm が提供する結果と一致させるのが困難です。 一方、Apple A13 Bionic は、前モデルに比べて行列乗算が 6 倍高速になり、8 コアのニューラル エンジン設計が改良されたと伝えられています。 現在および将来の競合他社に対して商用デバイスで Snapdragon 865 を適切にテストできるようになるまで待つ必要がありますが、 3 社が AI の改善に大量のリソースを注ぎ込んでいることから、この分野での競争が決して静止することがないことは明らかです。 パフォーマンス。