Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

深層学習のインポート、エクスポート、およびカスタマイズ

深層学習ネットワークのインポート、エクスポート、カスタマイズ、および層、学習ループ、損失関数のカスタマイズ

TensorFlow™ -Keras、Caffe、および ONNX™ (Open Neural Network Exchange) モデル形式からネットワークやネットワーク アーキテクチャをインポートします。学習済みの Deep Learning Toolbox™ ネットワークを ONNX モデル形式にエクスポートすることもできます。

問題に合わせて独自のカスタム深層学習層を定義できます。カスタム出力層を使用してカスタム損失関数を指定し、学習可能なパラメーターを含むカスタム層や含まないカスタム層を定義できます。たとえば、クラスの分布が不均衡な分類問題には、重み付き交差エントロピー損失を使用するカスタム重み付き分類層を使用できます。カスタム層を定義した後、その層の有効性、GPU 互換性、定義した勾配の出力の正しさをチェックできます。

タスクに必要な学習オプションが関数 trainingOptions に用意されていない場合、または必要な損失関数をカスタム出力層がサポートしていない場合、カスタム学習ループを定義できます。層グラフを使用して作成できないネットワークの場合、カスタム ネットワークを関数として定義できます。詳細については、カスタムの学習ループ、損失関数、およびネットワークの定義を参照してください。

関数

すべて展開する

importKerasNetwork事前学習済みの Keras ネットワークおよび重みのインポート
importKerasLayersImport layers from Keras network
importCaffeNetwork事前学習済み畳み込みニューラル ネットワーク モデルを Caffe からインポート
importCaffeLayersCaffe からの畳み込みニューラル ネットワーク層のインポート
importONNXNetworkImport pretrained ONNX network
importONNXLayersImport layers from ONNX network
exportONNXNetworkONNX モデル形式へのネットワークのエクスポート
findPlaceholderLayersFind placeholder layers in network architecture imported from Keras or ONNX
replaceLayerReplace layer in layer graph
assembleNetworkAssemble deep learning network from pretrained layers
PlaceholderLayerLayer replacing an unsupported Keras layer, ONNX layer, or unsupported functionality from functionToLayerGraph
checkLayerCheck validity of custom layer
setLearnRateFactor層の学習可能なパラメーターの学習率係数を設定します。
setL2Factor層の学習可能なパラメーターの L2 正則化係数の設定
getLearnRateFactor層の学習可能なパラメーターの学習率係数の取得
getL2Factor層の学習可能なパラメーターの L2 正則化係数の取得
dlnetworkDeep learning network for custom training loops
forwardCompute deep learning network output for training
predictCompute deep learning network output for inference
adamupdateUpdate parameters using adaptive moment estimation (Adam)
rmspropupdate Update parameters using root mean squared propagation (RMSProp)
sgdmupdate Update parameters using stochastic gradient descent with momentum (SGDM)
dlupdate Update parameters using custom function
dlarrayDeep learning array for custom training loops
dlgradientCompute gradients for custom training loops using automatic differentiation
dlfevalEvaluate deep learning model for custom training loops
dlmtimes(Not recommended) Batch matrix multiplication for deep learning
dimsDimension labels of dlarray
finddimFind dimensions with specified label
stripdimsRemove dlarray labels
extractdataExtract data from dlarray
functionToLayerGraphConvert deep learning model function to a layer graph
dlconvDeep learning convolution
dltranspconvDeep learning transposed convolution
lstmLong short-term memory
gruGated recurrent unit
fullyconnectSum all weighted input data and apply a bias
reluApply rectified linear unit activation
leakyreluApply leaky rectified linear unit activation
batchnormNormalize each channel of mini-batch
crosschannelnormCross channel square-normalize using local responses
avgpoolPool data to average values over spatial dimensions
maxpoolPool data to maximum value
maxunpoolUnpool the output of a maximum pooling operation
softmaxApply softmax activation to channel dimension
crossentropyCross-entropy loss for classification tasks
sigmoidApply sigmoid activation
mseHalf mean squared error

トピック

カスタム層

カスタム深層学習層の定義

カスタム深層学習層の定義方法を学習します。

カスタム層の有効性のチェック

カスタム深層学習層の有効性をチェックする方法を学びます。

学習可能なパラメーターを含むカスタム深層学習層の定義

この例では、PReLU 層を定義し、畳み込みニューラル ネットワークで使用する方法を説明します。

複数の入力があるカスタム深層学習層の定義

この例では、カスタム重み付き加算層を定義し、畳み込みニューラル ネットワークで使用する方法を説明します。

カスタム分類出力層の定義

この例では、残差平方和 (SSE) 損失を含むカスタム分類出力層を定義し、畳み込みニューラル ネットワークで使用する方法を説明します。

カスタム重み付き分類層の定義

この例では、重み付き交差エントロピー損失を含むカスタム重み付き分類出力層を定義し作成する方法を説明します。

カスタム回帰出力層の定義

この例では、平均絶対誤差 (MAE) 損失を含むカスタム回帰出力層を定義し、畳み込みニューラル ネットワークで使用する方法を説明します。

カスタム層の逆方向関数の指定

この例では、PReLU 層を定義し、カスタム逆方向関数を指定する方法を示します。

カスタム出力層の逆方向損失関数の指定

この例では、重み付き分類層を定義し、カスタム逆方向損失関数を指定する方法を示します。

ネットワークの学習および組み立て

敵対的生成ネットワーク (GAN) の学習

この例では、敵対的生成ネットワーク (GAN) に学習させてイメージを生成する方法を説明します。

条件付き敵対的生成ネットワーク (CGAN) の学習

この例では、条件付き敵対的生成ネットワーク (CGAN) に学習させてイメージを生成する方法を説明します。

次元削減のためのシャム ネットワークの学習

この例では、次元削減を使用して手書きの数字を比較するシャム ネットワークの学習方法を説明します。

シャム ネットワークの学習とイメージの比較

この例では、シャム ネットワークに学習させて類似した手書き文字のイメージを特定する方法を説明します。

カスタムの学習ループ、損失関数、およびネットワークの定義

自動微分を使用して深層学習の学習ループ、損失関数、およびネットワークを定義する方法を学びます。

カスタム学習ループでの学習オプションの指定

カスタム学習ループで一般的な学習オプションを指定する方法を学びます。

カスタム学習ループを使用したネットワークの学習

この例では、カスタム学習率スケジュールで手書きの数字を分類するネットワークに学習させる方法を示します。

カスタム学習ループでのバッチ正規化統計量の更新

この例では、カスタム学習ループでネットワークの状態を更新する方法を示します。

dlnetwork オブジェクトを使用した予測の実行

この例では、データをミニバッチに分割することにより、dlnetwork オブジェクトを使用して予測を行う方法を示します。

モデル関数を使用したネットワークの学習

この例では、層グラフまたは dlnetwork ではなく関数を使用して深層学習ネットワークを作成し、学習させる方法を説明します。

モデル関数を使用したバッチ正規化統計量の更新

この例では、関数として定義されたネットワークにおいて、ネットワークの状態を更新する方法を示します。

モデル関数を使用した予測の実行

この例では、データをミニバッチに分割することにより、モデル関数を使用して予測を行う方法を示します。

層の重み初期化子の比較

この例では、異なる重み初期化子を使用して深層学習ネットワークに学習させる方法を示します。

カスタム重み初期化関数の指定

この例では、漏洩 ReLU 層が続く畳み込み層のカスタム He 重み初期化関数を作成する方法を示します。

事前学習済みの Keras 層からのネットワークの組み立て

この例では、事前学習済みの Keras ネットワークから層をインポートし、サポートされていない層をカスタム層に置き換え、予測の準備が整ったネットワークをこれらの層から組み立てる方法を説明します。

多入力および多出力ネットワーク

多入力および多出力ネットワーク

複数の入力または複数の出力がある深層学習ネットワークの定義と学習を行う方法を学びます。

複数の出力をもつネットワークの学習

この例では、手書きの数字のラベルと回転角度の両方を予測する、複数の出力をもつ深層学習ネットワークに学習させる方法を説明します。

予測用の多出力ネットワークの組み立て

予測用のモデル関数を使用する代わりに、関数 functionToLayerGraphassembleNetwork を使用して、予測の準備が整っている DAGNetwork の内部にネットワークを組み立てることができます。

自動微分

自動微分の背景

自動微分の機能を学びます。

Deep Learning Toolbox での自動微分の使用

深層学習での自動微分の使用方法を示します。

dlarray をサポートする関数の一覧

dlarray オブジェクトをサポートする関数の一覧を表示します。

Grad-CAM での深層学習による判定の理由の解明

この例では、勾配加重クラス活性化マッピング (Grad-CAM) 手法を使用して、深層学習ネットワークによってその分類の判定が行われた理由を理解する方法を説明します。

注目の例