コード生成でサポートされているネットワークとレイヤー
MATLAB® Coder™ では、dlnetwork (Deep Learning Toolbox) ネットワーク、系列ネットワーク、および有向非循環グラフ (DAG) ネットワークのコード生成がサポートされています。サポートされている深層学習ネットワーク、層、およびクラスを使用する任意の学習済みのニューラル ネットワークのコードを生成できます。
サポートされている事前学習済みネットワーク
これらの事前学習済みネットワークは Deep Learning Toolbox™ で利用でき、コード生成をサポートしています。imagePretrainedNetwork (Deep Learning Toolbox)関数を使用して、コード生成用に dlnetwork (Deep Learning Toolbox) オブジェクトとしてこれらの事前学習済みニューラル ネットワークを読み込むことができます。コード生成では、imagePretrainedNetwork 関数の名前と値の引数 Weights を "none" に設定することはサポートされていないことに注意してください。たとえば、次のコードを使用して、事前学習済みの GoogLeNet ニューラル ネットワークを読み込みます。
net = imagePretrainedNetwork("googlenet")ネットワークが特定の深層学習ライブラリのコード生成と互換性があるかどうかを analyzeNetworkForCodegen を使用して確認できます。以下に例を示します。
result = analyzeNetworkForCodegen(imagePretrainedNetwork("googlenet"),TargetLibrary='none')
imagePretrainedNetwork のモデル名引数 | 汎用 C/C++ | Intel® MKL-DNN および ARM® Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
|
メモ ARM Compute Library は | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
サポートされている層
表に指定されているターゲット深層学習ライブラリについて、次の層がコード生成でサポートされています。
メモ
次の表で、情報アイコン
は、ネットワーク、層、またはクラスのコード生成機能が制限されていることを示しています。エラーや予期しない動作が発生する可能性があります。詳細については、該当するネットワーク、層、またはクラスのページの「拡張機能」セクションを参照してください。
入力層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
畳み込み層と全結合層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| メモ グループの数がフィルター チャネルの数と等しい場合、チャネル方向の畳み込み用の汎用 C/C++ コードを生成できます。 | ![]() |
| ![]() | |
| ![]() |
シーケンス層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
活性化層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
preluLayer (Deep Learning Toolbox) | ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
正規化層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
ユーティリティ層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | |
| ![]() | |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() |
サイズ変更層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
プーリング層と逆プーリング層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
adaptiveAveragePooling2dLayer (Deep Learning Toolbox) | ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
|
メモ ARM Compute Library は |
結合層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
トランスフォーマー層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | |
| ![]() | |
| ![]() | |
| ![]() | |
| ![]() | |
| ![]() |
コンピューター ビジョンおよびイメージ処理層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
カスタム層
カスタム Keras 層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
カスタム ONNX 層
| 層 | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
サポートされているクラス
クラス | 汎用 C/C++ | Intel MKL-DNN および ARM Compute Library |
|---|---|---|
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() | ![]() |
| ![]() |
参考
imagePretrainedNetwork (Deep Learning Toolbox) | analyzeNetworkForCodegen
トピック
- 事前学習済みの深層ニューラル ネットワーク (Deep Learning Toolbox)
- 深層学習層の一覧 (Deep Learning Toolbox)
- 畳み込みニューラル ネットワークについて (Deep Learning Toolbox)
- MATLAB Coder を使用した深層学習コード生成のワークフロー

