• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2019 Fiscal Year Research-status Report

メモリサイズ削減を目指した融合型ニューラルネットワークアクセラレータの開発

Research Project

Project/Area Number 19K11885
Research InstitutionTokyo City University

Principal Investigator

瀬戸 謙修  東京都市大学, 工学部, 講師 (10420241)

Project Period (FY) 2019-04-01 – 2022-03-31
Keywordsニューラルネットワーク / アクセラレータ / オンチップメモリ削減 / 高位合成
Outline of Annual Research Achievements

今年度は、レイヤのテンプレートCコードを作成した。具体的には、畳み込みレイヤ、プーリングレイヤなど、ニューラルネットワークを構成するレイヤのリファレンスコードを作成し、ループ最適化(ループ融合、ループ交換)、メモリアクセス最適化(スカラリプレイス)などの高位合成向けソースコード最適化を拡張しつつ適用するとともに、ストリームインターフェースを活用するコードを作成した。これらのコードに基づき、性能を悪化させることなく、オンチップメモリを削減したレイヤのテンプレートCコード作成方法を検討した。比較のため、従来技術を使用した場合のテンプレートも作成した。また、作成したテンプレートCコードに基づいて、各レイヤを、データフロー型のパイプラインアーキテクチャにより並列実行させるコードを作成し、メモリサイズ削減と高性能化の両立を検討した。ニューラルネットワーク記述から、Cコード生成に必要なレイヤ情報を自動抽出するツールを拡張して、効率よくコード生成する方法を検討した。まず4レイヤからなる、入力サイズを縮小したニューラルネットワークの例題を作成して、研究を進めた。パイプライン動作するニューラルネットワークアクセラレータのサイクル数を簡易的に見積ったり、高速にシミュレーションする方法を検討するとともに、RTLシミュレーションによって、生成したパイプラインアーキテクチャを性能評価する環境を整えた。ニューラルネットワークアクセラレータの高速化、省面積化のためには、精度への影響が小さい重みを削除する方法が重要である。フィルタカーネルレベルで重みをプルーニング(削除)する方法を検討するとともに、レイヤごとにプルーニングする割合を適切に調整して、プルーニングの効果をさらに高める方法を考案した。

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

レイヤのテンプレートCコード、および、各レイヤを接続して、データフロー型のパイプラインとして並列実行させるCコードは、Xilinx社の高位合成ツールであるVivadoHLS向けのCコードだけでなく、他のHLSツール用にSystemCコードを作成した。また、VivadoHLSと他のHLSツールでは、高位合成の最適化オプションが異なる部分があるため、性能を出せるようテンプレートのチューニングを行った。SystemCではハードウェア構造を記述する機能を持つため、ハードウェア構造の制御が行いやすい利点がある。そのため、SystemCを用いることで、レイヤー接続について、細かな調整が可能である。これにより、認識精度を高めるために複雑な構造をもつニューラルネットワークに対応するための準備ができた。また、エッジ向けの省面積、低電力なニューラルネットワークアクセラレータでは、認識精度を維持したまま、ニューラルネットワークの重みを削減するプルーニング技術が重要であるため、カーネルレベルやチャンネルレベルでプルーニングを行う方法を検討した。ニューラルネットワークの層全体に対して一律な割合で重みを削減するのではなく、層ごとに異なる割合で重みを削減することで、同等の精度のもとで、削減率を高める技術を開発した。さらに、ニューラルネットワークアクセラレータの性能向上のために重要なCコード最適化技術として、多面体モデルによるスケジュール変換に基づいたメモリアクセス最適化技術を考案した。以上の理由により、研究はおおむね順調に進展している。

Strategy for Future Research Activity

大規模なニューラルネットアクセラレータのサイクル数評価をRTLシミュレーションによって行うには膨大な時間がかかるため、引き続き、パイプラインアーキテクチャを踏まえた上で、サイクル数を簡易的に見積もる解析方法を検討し、設計空間探索の研究を進める。また、精度が高く、かつ、コンパクトなニューラルネットワークの構造は、従来の古典的なニューラルネットワークと異なる種類のレイヤー処理や、レイヤー間の接続を持つため、そのような場合に対しても、レイヤーCテンプレートを新規に開発するとともに、データフロー型のパイプラインアーキテクチャで実装するための手法を検討する。VGGなどの古典的なニューラルネットワークについては、国際会議や、論文誌に投稿して発表を進める。

Causes of Carryover

学会発表の費用を必要としていたが、翌年度に発表することになったため。

  • Research Products

    (2 results)

All 2020

All Presentation (2 results)

  • [Presentation] 畳み込みニューラルネットワークにおける重みカーネルの分布に基づいた層ごとの最適なプルーニング2020

    • Author(s)
      五十嵐 碧, 瀬戸 謙修
    • Organizer
      電気学会全国大会
  • [Presentation] 依存グラフのスケジュール変換による畳み込み処理向けメモリアクセス最適化2020

    • Author(s)
      外處 尭之, 瀬戸 謙修
    • Organizer
      システムとLSIの設計技術研究会 (IPSJ-SLDM)

URL: 

Published: 2021-01-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi