ワークフロー
一般的な畳み込みニューラル ネットワーク (CNN) ワークフローでは、まず、Deep Learning Toolbox™ を使用して CNN アーキテクチャを構築し、Parallel Computing Toolbox™ を併用してネットワークに学習させます。または、大規模なデータセットについて既に学習済みの ConvNet
をインポートし、学習済みの特徴を転移できます。転移学習は、1 セットの分類問題について学習済みの CNN を利用し、別のクラスのセットを分類するように再学習させることを意味します。ここでは、CNN の最後の数層を再学習させます。再度、学習フェーズで Parallel Computing Toolbox を使用します。学習済みの CNN ネットワークを Caffe や MatConvNet のような他のフレームワークから SeriesNetwork
オブジェクトにインポートすることもできます。
学習済みネットワークを取得したら、GPU Coder™ で C++ または CUDA® のコードを生成して、NVIDIA® または ARM® の GPU プロセッサを使用する複数の組み込みプラットフォーム上の CNN に展開できます。生成コードでは、アーキテクチャを使用した CNN、層、および入力オブジェクト (SeriesNetwork
(Deep Learning Toolbox) または DAGNetwork
(Deep Learning Toolbox)) で指定したパラメーターが実装されます。
コード ジェネレーターは、NVIDIA CUDA 深層ニューラル ネットワーク ライブラリ (cuDNN)、NVIDIA GPU 向けの NVIDIA TensorRT™ の高性能な推論ライブラリ、および ARM Mali GPU 向けのコンピューター ビジョンおよび機械学習用 ARM Compute Library を利用します。
生成されたコードは、ソース コード、スタティック ライブラリまたはダイナミック ライブラリ、あるいは NVIDIA や ARM Mali GPU などのさまざまなプラットフォームに展開できる実行可能ファイルとしてプロジェクトに統合できます。ARM Mali GPU ターゲットで深層学習を実行するために、ホスト開発コンピューターでコードを生成します。次に、実行可能プログラムをビルドして実行するために、生成されたコードを ARM ターゲット プラットフォームに移動します。
参考
関数
オブジェクト
coder.gpuConfig
|coder.CodeConfig
|coder.EmbeddedCodeConfig
|coder.gpuEnvConfig
|coder.CuDNNConfig
|coder.TensorRTConfig
関連するトピック
- 事前学習済みの深層ニューラル ネットワーク (Deep Learning Toolbox)
- 転移学習入門 (Deep Learning Toolbox)
- 分類用のシンプルな深層学習ニューラル ネットワークの作成 (Deep Learning Toolbox)
- サポートされるネットワーク、層、クラス
- コード生成用の事前学習済みのネットワークの読み込み
- cuDNN を使用した深層学習ネットワークのコード生成
- TensorRT を使用した深層学習ネットワークのコード生成
- ARM Mali GPU をターゲットとする深層学習ネットワークのコード生成