Posts Issued on February 16, 2019

FPGAで機械学習

posted by sakurai on February 16, 2019 #87

機械学習

そもそもFPGAボードを購入したのは機械学習(以降ML)をさせたかったのですが、その前に設計フローの勉強としてインベーダーゲームを作成しました。作成途中では拡張ボードが必要になり、急遽Pt板設計CADを勉強したりPt板を発注したりという作業が発生しましたが、今回からMLの話題に移ります。

エッジAI

AIもMLも同様な意味で使われていますが、本命はエッジAIです。現状は良いモデルの探求や膨大な学習の必要性から、クラウド側でGPUが多用されています。ただ、一旦学習が完了すればそれを多数の端末にデプロイします。せいぜい数十個のGPUがセンター側で必要なのに対し、車載ADAS/ADでは数百万台出荷されるため、半導体ビジネスからみると圧倒的にエッジAIのほうが魅力的です。

エッジAIの部品

エッジAIにおいては何より低電力、低コストが求められるので、一台10万円もするようなGPUは、コスト、電力、発熱共に使用できません。従来はFPGAも高価でしたが、近年のXilinx Zynq UltraScale+等のようなチップであれば価格はGPUの1/100のオーダーです。ということでFPGAでMLすることを考えます。

エッジAIのフレームワークDNNDK

フレームワークとはAIの業界ではTensorFlowやChainerを意味することが多いのですが、ここではエッジAIのソフトウェア基盤の意味で用いています。具体的にはDeePHiの作成した以下に示すDNNDKフレームワークを使用します。DeePHiはXilinxによって昨年買収されました。

図87.1
図87.1 DNNDKスタック

左矢前のブログ 次のブログ右矢