どのようにキーワードのCortex-Mプロセッサを特定するには、高い精度を達成するために

我々は、アダプタメモリとマイクロコントローラの計算の範囲を制限するように、ニューラルネットワークアーキテクチャを最適化することができ、および精度に影響を与えないと考察は、我々は、本明細書に深度分離のCortex-Mプロセッサに畳み込みニューラルネットワークを説明しますキーワード認識能力の実現について

音声ベースのユーザインタラクションを実現するためのキーワードスポッティング(KWS)が重要であり、優れたユーザーエクスペリエンスを確保するために、スマートデバイスと高精度のリアルタイム応答を必要としている。最近では、ニューラルネットワークアーキテクチャKWSがあるため、伝統的なで、人気のある選択肢となっています音声処理アルゴリズムは、より良好なニューラルネットワークの精度を比較しました。

キーワード識別ニューラルネットワークパイプライン

「常時オン」、KWSは、電力バジェットは非常に限られている。KWSアプリケーションは、専用の高性能DSPやCPU上で実行することができますが適用されますが、助けることができるアームのCortex-Mマイクロコントローラ上で実行するために、より適して維持するためコストを最小限に抑えるために、アームのCortex-Mマイクロコントローラは、多くの場合、物事は、他のタスクを処理するためにエッジ。

Cortex-Mシステムの1限られたメモリ空間の典型的なこの手段の使用可能なメモリの数百キロバイトまで提供しています。しかし、KWSののCortex-Mベースのニューラルネットワークに基づくマイクロコントローラ上で展開する、我々は次のような課題に直面しています。 、入力/出力、体重および活性化を含む全体のニューラルネットワークモデルは、メモリのこの小さな範囲内で動作しなければならない。2. KWSによる限られたコンピューティングリソースは、常にオンに維持するためにあらゆる神経を制限し、リアルタイム要件活性層及び非線形•ボリュームから層の完全なスタックに接続されたニューラルネットワーク(DNN)DNN標準フィードフォワードニューラルネットワークの深さ•:ネットワーク操作の総数は、次の理由は、典型的なニューラルネットワークアーキテクチャKWS推論に適用されています。 KWS DNNの主な欠陥の一つに基づいて製品ニューラルネットワーク(CNN)は、音声のローカルアソシエーション、時間領域相関、周波数相関モデルのため不可能である。CNN入力することができる時間ドメインと周波数ドメインの機能画像処理として、この相関関係を見つけるために2Dコンボリューション演算を実行します。•RNN(Circular Neural Network)RNNは、多くのシーケンスモデリングタスクで優れたパフォーマンスを示していますまた、関係の長さに依存してキャプチャする「ゲート」のメカニズムを使用することができ、入力信号間の時間的な関係を見つけることが特に音声認識、言語モデルと翻訳のエネルギー、。RNNができないだけ。•コンボリューションリカレントニューラルネットワーク( CRNN)ハイブリッド畳み込みニューラルネットワークCNNサイクルとRNNは、ローカル空間/時間的相関に見出すことができるである。CRNNは畳み込みモデルレイヤを開始、完全に接続された緻密層に続いて、信号を符号化、RNNを行った。•深さ分離可能な畳み込みニューラルネットワーク(DS-CNN)最近、分離可能な畳み込みニューラルネットワークの深さは、標準的な3D畳み込み演算に効果的な代替として推奨されており、コンピュータビジョンのためのコンパクトなネットワークアーキテクチャを使用されています。DS-CNN最初の使用独立した2次元フィルタ、図チャネル畳み込み演算における各機能の入力、及びその後は1D以降に分解され、標準的な2次元および3次元の畳み込みによって合成奥行き寸法を出力する(すなわち1x1-)ポイントワイズ畳み込みを使用します、さらにはマイクロコントローラに資源制約デバイスを実行するために、より深く、より広いアーキテクチャ可能となるようなパラメータの数を計算することは、低減される。のCortex-Mプロセッサに流出単語認識、メモリ使用量と実行時間は、この目的のためにニューラルネットワークの設計と最適化に2つの最も重要な要因である場合は、あなたが考慮すべきこれら2つの要因が、以下に示す三つのグループのニューラルネットワークを制限する小さなするためのものです、中規模および大規模のCortex-Mシステムに対応しています。

KWSカテゴリニューラルネットワークモデル(NN)カテゴリ、10秒推論あたり回8重量/活性化を仮定

メモリおよび計算マイクロコントローラの限界を超えないように、モデルを調整するために、検索パラメータ上で実行されなければならない。次の表は、ニューラルネットワークアーキテクチャを示し、対応するパラメータは、上最適化されなければなりません。

ニューラルネットワークの超パラメータ探索空間

まず、超パラメータの全数探索特徴抽出及びニューラルネットワークモデルを実行し、探索空間、両方の繰り返し実行を狭くする手動選択を行う。次の図は、最適なパフォーマンスモデルの各ニューラルネットワークアーキテクチャと対応するメモリのために利用可能な要約要件や業務。DS-CNNアーキテクチャは、最高の精度を提供するだけでなく、メモリおよびコンピューティングリソースもはるかに低いです。

最適ニューラルネットワークモデルにおける記憶と計算/推論の関係

8重量DNNモデルおよび8の活性化を含む(以下に示すように)ベースSTM32F746G-DISCO開発ボードに配備KWSのCortex-M7アプリケーションは、KWSは推論の動作中に、毎秒10回実行。推論当たり(マイクロコントローラの残りの部分は割り込み(WFI)モードを待機している可能にする、電力を節約するために約12ミリ秒を要する)メモリコピーなど、別MFCCはDNNを行い、特徴抽出。KWSアプリケーション全体は、約66キロバイトからなど、メモリの約70 KBのデータを使用しアクティベーションに約1KB、オーディオI / OおよびMFCC機能に約2KB。

Cortex-M7開発ボード上のKWS展開

メモリ及び計算要件は、ネットワーク・アーキテクチャを調整制限することながら、要約すると、アームのCortex-Mプロセッサは、キーワード認識アプリケーションにおいて高い精度を達成することができる。DS-CNNアーキテクチャは最高の精度を提供し、必要なメモリ及び計算資源でもありますはるかに低い。コード、モデル定義や事前研修モデルがgithub.com/ARM-softwareから入手することができます。私たちの新しい機械学習の開発者サイトは、ネットワークエッジマシンに対処するためにワンストップ・リソースライブラリ、詳細な製品情報やチュートリアルを提供しますこのブログに白い紙が直面する課題を学習のネットワークエッジ:マイクロコントローラ上のキーワードの認識 "。(こんにちはエッジ:マイクロコントローラのキーワードスポッティング)を、白い紙はもともとアームをダウンロードするにはコーネル大学図書館のウェブサイトに掲載されました。ホワイトペーパーのコピーは、以下のリンクをクリックしてください。https://community.arm.com/cfs-file/__key/telligent-evolution-components-attachments/01-2142-00-00-00-01-34-26/Arm_5F00_KeywordSpotting_5F00_Whitepaperを。 PDF

2016 GoodChinaBrand | ICP: 12011751 | China Exports