Main Content

coder.getDeepLearningLayers

特定の深層学習ライブラリのコード生成でサポートされる層のリストを取得する

coder.getDeepLearningLayers は推奨されません。代わりに analyzeNetworkForCodegen を使用してください。詳細については、互換性についての考慮事項を参照してください。

説明

coder.getDeepLearningLayers は、どのサードパーティ ライブラリも使用しない、コード生成でサポートされる層を返します。

coder.getDeepLearningLayers(TargetLibrary = libraryname) は、特定の深層学習ライブラリのコード生成でサポートされる層を返します。

メモ

coder.getDeepLearningLayers を使用するには、libraryname に対応するサポート パッケージをインストールしなければなりません。

  • 'none''arm-compute''cmsis-nn'、および 'mkldnn' の場合、MATLAB® Coder™ Interface for Deep Learning をインストールします。

  • 'cudnn''tensorrt'、または 'arm-compute-mali' の場合、GPU Coder™ Interface for Deep Learning をインストールします。

メモ

関連するサポート パッケージがインストールされていない場合、関数 coder.getDeepLearningLayers では特定のカスタム層がリストされません。たとえば、Deep Learning Toolbox™ Converter for TensorFlow™ Models サポート パッケージがインストールされていない場合、keras 層はリストされません。

すべて折りたたむ

深層ニューラル ネットワークの Intel® Math Kernel Library for Deep Neural Network のコード生成でサポートされる層のリストを取得します。

coder.getDeepLearningLayers(TargetLibrary = 'mkldnn')
ans =

  59×1 cell array

    {'AdditionLayer'                               }
    {'AnchorBoxLayer'                              }
    {'AveragePooling2DLayer'                       }
    {'BatchNormalizationLayer'                     }
    {'BiLSTMLayer'                                 }
    {'ClassificationOutputLayer'                   }
    {'ClippedReLULayer'                            }
    {'ConcatenationLayer'                          }
    {'Convolution2DLayer'                          }
    {'Crop2DLayer'                                 }
    {'CrossChannelNormalizationLayer'              }
    {'DepthConcatenationLayer'                     }
    {'DepthToSpace2DLayer'                         }
    {'DicePixelClassificationLayer'                }
    {'DropoutLayer'                                }
    {'ELULayer'                                    }
    {'FeatureInputLayer'                           }
    {'FlattenLayer'                                }
    {'FocalLossLayer'                              }
    {'FullyConnectedLayer'                         }
    {'GRULayer'                                    }
    {'GlobalAveragePooling2DLayer'                 }
    {'GlobalMaxPooling2DLayer'                     }
    {'GroupedConvolution2DLayer'                   }
    {'ImageInputLayer'                             }
    {'LSTMLayer'                                   }
    {'LeakyReLULayer'                              }
    {'MaxPooling2DLayer'                           }
    {'MaxUnpooling2DLayer'                         }
    {'MultiplicationLayer'                         }
    {'PixelClassificationLayer'                    }
    {'RCNNBoxRegressionLayer'                      }
    {'RPNClassificationLayer'                      }
    {'ReLULayer'                                   }
    {'RegressionOutputLayer'                       }
    {'Resize2DLayer'                               }
    {'SSDMergeLayer'                               }
    {'SequenceFoldingLayer'                        }
    {'SequenceInputLayer'                          }
    {'SequenceUnfoldingLayer'                      }
    {'SigmoidLayer'                                }
    {'SoftmaxLayer'                                }
    {'SpaceToDepthLayer'                           }
    {'TanhLayer'                                   }
    {'TransposedConvolution2DLayer'                }
    {'WordEmbeddingLayer'                          }
    {'YOLOv2OutputLayer'                           }
    {'YOLOv2ReorgLayer'                            }
    {'YOLOv2TransformLayer'                        }
    {'nnet.keras.layer.FlattenCStyleLayer'         }
    {'nnet.keras.layer.GlobalAveragePooling2dLayer'}
    {'nnet.keras.layer.SigmoidLayer'               }
    {'nnet.keras.layer.TanhLayer'                  }
    {'nnet.keras.layer.ZeroPadding2dLayer'         }
    {'nnet.onnx.layer.ElementwiseAffineLayer'      }
    {'nnet.onnx.layer.FlattenLayer'                }
    {'nnet.onnx.layer.IdentityLayer'               }
    {'ScalingLayer'                                }
    {'SoftplusLayer'                               }

入力引数

すべて折りたたむ

深層学習ライブラリの名前。次の表のいずれかの値として指定します。

説明
'arm-compute'

ARM® CPU プロセッサをターゲットにする場合の ARM Compute Library。

MATLAB Coder Interface for Deep Learning が必要です。

'arm-compute-mali'

ARM GPU プロセッサをターゲットにする場合の ARM Compute Library。

GPU Coder 製品と GPU Coder Interface for Deep Learning が必要です。

'cmsis-nn'

Common Microcontroller Software Interface Standard - Neural Network (CMSIS-NN) ライブラリ。

MATLAB Coder Interface for Deep Learning が必要です。

'cudnn'

NVIDIA® CUDA® Deep Neural Network library (cuDNN)。

GPU Coder 製品と GPU Coder Interface for Deep Learning が必要です。

'mkldnn'

Intel Math Kernel Library for Deep Neural Networks。

MATLAB Coder Interface for Deep Learning が必要です。

'none'

coder.getDeepLearningLayers(TargetLibrary = 'none') は、どのサードパーティ ライブラリも使用しない、コード生成でサポートされる層を返します。これは、入力引数なしで coder.getDeepLearningLayers を呼び出すことに相当します。

MATLAB Coder Interface for Deep Learning が必要です。

'tensorrt'

高性能な深層学習推論オプティマイザーおよびランタイム ライブラリである NVIDIA TensorRT™。

GPU Coder 製品と GPU Coder Interface for Deep Learning が必要です。

バージョン履歴

R2018b で導入

すべて折りたたむ

R2022b: coder.getDeepLearningLayers は非推奨

coder.getDeepLearningLayers は推奨されません。代わりに analyzeNetworkForCodegen を使用してください。

R2022b 以降では、深層学習ネットワークのコード生成互換性チェックに関数 analyzeNetworkForCodegen を使用します。