Quantcast
Channel: コンバーティングニュース
Viewing all articles
Browse latest Browse all 7252

【AI】NEDOと沖電気工業、ディープラーニングモデルの新たな軽量化技術開発

$
0
0
 ディープラーニングは、画像や音声などの認識において優れた性能を有し、人工知能(AI)処理のアルゴリズムとしてクラウド上で多く活用されている。一方で、多層化により認識性能を向上させたディープラーニングモデル(以下、モデル)は、演算量・パラメーター※1が多く、大量の演算リソースや電力を必要とする。車載用途やスマートフォン、組み込みIoTデバイスなど多様なエッジデバイス※2が登場する中、限られた演算リソース上でも高性能なモデルを高速・省電力に実行するために、モデルの軽量化技術が求められている。軽量化技術としては、従来チャネル※3・プルーニング※4という手法が提案されていた(図1)。これは、モデルの畳み込み層※5から冗長なチャネルを削減し、チャネルに関連する演算・パラメーター・メモリーを削減する技術。しかし、従来手法は、削減率の設定を層毎に行う必要があり、手間がかかる上に全体として最適な削減にならないという課題があった。
SnapCrab NoName 2019 9 9 14 56 30 No 00
 こうした背景のもと、国立研究開発法人 新エネルギー・産業技術総合開発機構(NEDO)と沖電気工業(株)(OKI)は、NEDO事業※6において、モデルの精度を維持しつつ演算リソースを削減するモデル軽量化技術を開発することを目的としたAIエッジ技術の研究開発テーマを推進してきた。そして今般、OKI独自のチャネル・プルーニング技術であるPCAS(Pruning Channels with Attention Statics)(図2)を発展させ、新たなモデル軽量化技術を開発した。PCAS技術は、チャネルの重要度推定にアテンション※7・モジュールを導入することで、認識性能の維持効果を高めつつ、さらに層単位の削減率設定が不要となる技術。層間に挿入したアテンション・モジュールに後段の層への情報伝播を抑制する構造を持たせ、モデル全体の推論誤差を最小化する学習を経ることで、全体最適による重要度推定を可能にする。今回開発した軽量化技術は、近年のモデル構造の多様性を考慮した新しいアーキテクチャを備え、重要なチャネルを自動選択することで認識性能を維持しつつ、演算量を大幅に削減することに成功した(図3)。
 
SnapCrab NoName 2019 9 9 14 56 48 No 00

SnapCrab NoName 2019 9 9 15 1 53 No 00
 本技術開発により、エッジデバイスなど演算性能や電力消費に制限のある環境への高度なAIの搭載や、サーバー・クラウド環境における高度なAIの小規模・省電力運用などが期待できる。これによって、今後増加が見込まれるIoTアプリケーションへの応用が可能なAI技術の開発が加速され、多様で高度なデータ利活用社会の実現への貢献が見込まれる。
 なお、この成果は英国カーディフ大学で9月9日から開催されるコンピュータービジョンと機械学習に関する国際学会「BMVC(British Machine Vision Conference)2019」において、OKIが発表する。

今回の成果
 今回、NEDOとOKIが新たに開発した軽量化手法は、PCAS技術を発展させた近年の多様な分岐・合流経路を含むモデルに柔軟に対応できるアーキテクチャ。モデル内の分岐経路では、経路ごとに認識性能に寄与する重要なチャネルが異なるため、その差異を吸収する必要がある。そこで、分岐部においては、単一のチャネルに対して複数のアテンション・モジュールを導入することにより、複数経路のチャネルの重要度を全体最適で推定する。さらに、経路ごとに異なるチャネル構成の不一致を整合する仕組みと、学習過程の詳細な分析に基づく誤差伝播※8量の制御方法を開発し、多様なモデルに対して認識性能を最大限に引き出すことに成功した。
 この技術を用いると、演算量の削減により、高速かつ低消費電力でAI処理を実行することが可能となる。測定の結果、従来、ベンチマークとして一般的に用いられる高精度モデルへの適用においては、認識精度劣化を約1%に抑えながら、積和演算回数と処理時間をそれぞれ約80%削減した。

今後の予定
 NEDOとOKIは今後、今回開発した軽量化技術を低ビット演算環境にも対応し、さらなる高度化と高効率化に取り組むほか、大規模な認識モデルへの適用にも取り組み、高度なAIを軽量かつ省電力に実行できる技術の確立を目指す。
<注釈>
※1 パラメーター
 ディープラーニングモデルは、演算用の多数の固定的なパラメーターを持つ。代表的なパラメーターに重み係数がある。重み係数と入力データとの積和演算を行い、その結果を活性化関数で処理して出力することが、ニューラルネットワークの最も基本的な演算となる。
※2 エッジデバイス
 利用者に近いネットワークの末端に位置するコンピューティング機器。クラウドやサーバーなどと比較し、利用できる電力や発熱、演算能力などの制限が厳しい小型の機器。
※3 チャネル
 フィルターとの畳み込み演算の結果を保持するニューロンの集まり。
※4 プルーニング
 ニューラルネットワークのなかで冗長なニューロンを削減することで、それに関わる係数や演算を削減する技術。枝刈り技術とも呼ばれる。
※5 畳み込み層
 CNN(Convolutional Neural Network)とも呼ばれる畳み込み演算を有するニューラルネットワークの構成要素。1つの畳み込み層には複数のチャネルが含まれる。入力データ上に分布する空間的な特徴を保持した演算が可能。
※6 NEDO事業
 事業名:高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発/革新的AIエッジコンピューティング技術の開発/ソフトテンソルプロセッサによる超広範囲センシングAIエッジ技術の研究開発
 事業期間:2018年度~2020年度
※7 アテンション
 主に画像認識や自然言語認識などで、認識に重要な情報に着目するための手法として開発されてきたニューラルネットワーク技術。 
※8 誤差伝搬
 層から層へと誤差を伝播することを誤差伝播という。ニューラルネットワークの学習では、出力層における誤差を推論とは逆方向の入力層に向かって伝播し、誤差が小さくなる方向にパラメーターを調整する。

Viewing all articles
Browse latest Browse all 7252

Trending Articles