主要内容

importTensorFlowNetwork

事前学習済みのTensorFlowネットワクのンポト

    説明

    = importTensorFlowNetwork (modelFolderは,SavedModel形式(これはTensorFlow™2とのみ互換性があります)でモデルが格納されているフォルダーmodelFolderから事前学習済みのTensorFlowネットワクをンポトします。この関数は,TensorFlow-Kerasの顺序APIまたは功能APIを使用して作成されたTensorFlowネットワークをインポートできます。importTensorFlowNetworkは,saved_model.pbファesc escルで定義された層,および变量サブフォルダに格納された学習済みの重みをンポトし,ネットワクDAGNetworkオブジェクトまたはdlnetworkオブジェクトとして返します。

    importTensorFlowNetworkを使用するには,深度学习工具箱™TensorFlow模型转换器サポ,トパッケ,ジが必要です。このサポトパッケジがンストルされていない場合,importTensorFlowNetworkによってダウンロ,ド用リンクが表示されます。

    メモ

    カスタムのTensorFlow層をインポートしたとき,またはソフトウェアがTensorFlow層をそれと等価な組み込みのMATLAB®層に変換できないとき,importTensorFlowNetworkはカスタム層の生成を試みます。ソフトウェアによる変換がサポトされている層の一覧にいては,組み込みのMATLAB層への変換がサポ,トされているTensorFlow-Keras層を参照してください。

    importTensorFlowNetworkは,生成されたカスタム層および関連するTensorFlow演算子をパッケ,ジ+modelFolderに保存します。

    importTensorFlowNetworkは,組み込みのMATLAB層への変換がサポートされていない各TensorFlow層のカスタム層を自動生成しません。サポトされていない層の処理方法の詳細にいては,ヒントを参照してください。

    = importTensorFlowNetwork (modelFolder名称,值は1つ以上の名前と値の引数で指定された追加オプションを使用して,事前学習済みのTensorFlowネットワークをインポートします。たとえば,“OutputLayerType”、“分类”はネットワ,クをDAGNetworkとしてインポートしますが,その際,インポートされたネットワークアーキテクチャの末尾に分類出力層が追加されます。

    すべて折りたたむ

    SavedModel形式で保存された事前学習済みのTensorFlowネットワ,クをDAGNetworkジを分類します。

    モデルフォルダ,を指定します。

    如果~ (“digitsDAGnet”“dir”)解压缩(“digitsDAGnet.zip”结束modelFolder =”。/ digitsDAGnet ';

    クラス名を指定します。

    classNames = {' 0 '' 1 '' 2 '“3”“4”“5”“6”“7”“8”“9”};

    SavedModel形式で保存されたTensorFlowネットワクをンポトします。既定では,importTensorFlowNetworkはネットワ,クをDAGNetworkオブジェクトとして▪▪ンポ▪▪トします。@ @ @ @ @ @ @ @ @ @ @ @ @ @。

    net = importTensorFlowNetwork(modelFolder,“OutputLayerType”“分类”“类”类名)
    导入已保存的模型…翻译模型,这可能需要几分钟……完成翻译。装配网络……导入完成。
    net = DAGNetwork with properties: Layers: [13×1 nnet.cnn.layer.Layer] Connections: [13×2 table] InputNames: {'input_1'} OutputNames: {'ClassificationLayer_activation_1'}

    ネットワ,クア,キテクチャをプロットします。

    情节(净)标题(“DAG网络架构”

    分類するメジを読み取り,そのメジのサズを表示します。このイメージは,サイズが28×28ピクセルであるグレースケール(1チャネル)のイメージです。

    digitDatasetPath = fullfile(toolboxdir(“nnet”),“nndemos”“nndatasets”“DigitDataset”);I = imread(fullfile(digitDatasetPath),“5”“image4009.png”));大小(我)
    ans =1×228日28日

    ネットワクの入力サズを表示します。。それらが一致していない場合は,imresize(我netInputSize (1:2))を使用して▪▪メ▪▪ジのサ▪▪ズを変更しなければなりません。

    net.Layers (1) .InputSize
    ans =1×328 28 1

    事前学習済みのネットワクを使用してメジを分類します。

    标签=分类(net,I);

    メ,ジと分類結果を表示します。

    imshow (I)标题([“分类结果”char(标签)))

    SavedModel形式で保存された事前学習済みのTensorFlowネットワ,クをdlnetworkオブジェクトとしてンポトし,ンポトしたネットワクを使用してクラスラベルを予測します。

    モデルフォルダ,を指定します。

    如果~ (“digitsDAGnet”“dir”)解压缩(“digitsDAGnet.zip”结束modelFolder =”。/ digitsDAGnet ';

    クラス名を指定します。

    classNames = {' 0 '' 1 '' 2 '“3”“4”“5”“6”“7”“8”“9”};

    SavedModel形式で保存されたTensorFlowネットワ,クをdlnetworkオブジェクトとして▪▪ンポ▪▪トします。

    net = importTensorFlowNetwork(modelFolder,“TargetNetwork”“dlnetwork”
    导入已保存的模型…翻译模型,这可能需要几分钟……完成翻译。装配网络……导入完成。
    net = dlnetwork with properties: Layers: [12×1 nnet.cnn.layer.Layer] Connections: [12×2 table] Learnables: [6×3 table] State: [0×3 table] InputNames: {'input_1'} OutputNames: {'activation_1'} Initialized: 1 .初始化

    分類するメジを読み取り,そのメジのサズを表示します。このイメージは,サイズが28×28ピクセルであるグレースケール(1チャネル)のイメージです。

    digitDatasetPath = fullfile(toolboxdir(“nnet”),“nndemos”“nndatasets”“DigitDataset”);I = imread(fullfile(digitDatasetPath),“5”“image4009.png”));大小(我)
    ans =1×228日28日

    ネットワクの入力サズを表示します。。それらが一致していない場合は,imresize(我netInputSize (1:2))を使用して▪▪メ▪▪ジのサ▪▪ズを変更しなければなりません。

    netInputSize = net.Layers(1).InputSize
    netInputSize =1×328 28 1

    メ,ジをdlarrayに変換します。メ,ジを次元“SSCB”(空间,空间,通道,批次)で書式設定。この場合,バッチサ▪▪ズは1であるため,バッチサ▪▪ズを省略できます(SSC的)。

    I_dlarray = dlarray(single(I)),“SSCB”);

    サンプル▪▪メ▪ジを分類し,予測されたラベルを見▪▪けます。

    prob = predict(net,I_dlarray);[~,label] = max(prob);

    メ,ジと分類結果を表示します。

    imshow (I)标题([“分类结果”一会{标签}])

    SavedModel形式で保存された事前学習済みのTensorFlowネットワ,クをDAGNetworkジを分類します。インポートしたネットワークには,組み込みのMATLAB層への変換がサポートされていない層が含まれています。これらの層を。

    この例では,補助関数findCustomLayersを使用します。この関数のコ,ドを見るには,補助関数を参照してください。

    モデルフォルダ,を指定します。

    如果~ (“digitsDAGnetwithnoise”“dir”)解压缩(“digitsDAGnetwithnoise.zip”结束modelFolder =”。/ digitsDAGnetwithnoise ';

    クラス名を指定します。

    classNames = {' 0 '' 1 '' 2 '“3”“4”“5”“6”“7”“8”“9”};

    SavedModel形式で保存されたTensorFlowネットワクをンポトします。既定では,importTensorFlowNetworkはネットワ,クをDAGNetworkオブジェクトとして▪▪ンポ▪▪トします。@ @ @ @ @ @ @ @ @ @ @ @ @ @。

    net = importTensorFlowNetwork(modelFolder,“OutputLayerType”“分类”“类”类名);
    导入已保存的模型…翻译模型,这可能需要几分钟……完成翻译。装配网络……导入完成。

    インポートしたネットワークに,組み込みのMATLAB層への変換がサポートされていない層が含まれている場合,importTensorFlowNetworkは,これらの層の代わりにカスタム層を自動生成できます。importTensorFlowNetworkは,生成した各カスタム層を,現在のフォルダ,内のパッケ,ジ+ digitsDAGnetwithnoiseに個別の00ファ@ @ルとして保存します。

    補助関数findCustomLayersを使用して,自動生成されたカスタム層の▪▪ンデックスを見▪▪け,このカスタム層を表示します。

    ind = findCustomLayers(net。层,' + digitsDAGnetwithnoise ');net.Layers(印第安纳州)
    ans = 2×1带有层的层数组:1' gaussian_noise_1' GaussianNoise digitsDAGnetwithnoise。kGaussianNoise1Layer3766 2' gaussian_noise_2' GaussianNoise digitsDAGnetwithnoise.kGaussianNoise2Layer3791

    ネットワ,クア,キテクチャをプロットします。

    情节(净)标题(“DAG网络架构”

    分類する▪▪メ▪▪ジを読み取ります。

    digitDatasetPath = fullfile(toolboxdir(“nnet”),“nndemos”“nndatasets”“DigitDataset”);I = imread(fullfile(digitDatasetPath),“5”“image4009.png”));

    事前学習済みのネットワクを使用してメジを分類します。

    标签=分类(net,I);

    メ,ジと分類結果を表示します。

    imshow (I)标题([“分类结果”char(标签)))

    補助関数

    この節では,この例で使用されている補助関数findCustomLayersのコ,ドを示します。findCustomLayersは,importTensorFlowNetworkによって自動生成されたカスタム層の指数を返します。

    函数index = findCustomLayers(layers,PackageName) s = what([‘。’PackageName]);索引= 0(1,长度(s.m));I = 1:长度(层数)J = 1:长度(s.m)如果strcmpi(类(层(i)), [PackageName(2:结束)“。”S.m {j}(1:end-2)]) index (j) = i;结束结束结束结束

    入力引数

    すべて折りたたむ

    TensorFlowモデルが含まれるフォルダ,の名前。文字ベクトルまたは字符串スカラとして指定します。modelFolderは現在のフォルダ,内になければなりません。そうでない場合は,フォルダ,への絶対パスまたは相対パスを指定しなければなりません。modelFolderには,ファsaved_model.pbおよびサブフォルダ变量が含まれていなければなりません。このフォルダ,には,サブフォルダ,资产およびassets.extraも含めることができます。

    • ファereplicationルsaved_model.pbには,層グラフのアーキテクチャと学習オプション(オプティマイザー,損失,メトリクスなど)が格納されます。

    • サブフォルダ变量には,事前学習済みのTensorFlowネットワ,クによって学習された重みが格納されます。既定では,importTensorFlowNetworkは重みを▪▪ンポ▪▪トします。

    • サブフォルダ资产には,層グラフが使用できる補足ファaaplル(語彙など)が格納されます。importTensorFlowNetworkは,このファ资产に▪▪ンポ▪▪トしません。

    • サブフォルダassets.extraには,層グラフと共存する補足ファル(ユザのための情報など)が格納されます。

    例:“MobileNet”

    例:”。/ MobileNet '

    名前と値の引数

    オプションの引数のペアをName1 = Value1,…,以=家として指定します。ここで,的名字は引数名で,价值は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

    R2021aより前では,コンマを使用して名前と値の各ペアを区切り,的名字を引用符で囲みます。

    例:importTensorFlowNetwork (modelFolder‘TargetNetwork’,‘dagnetwork’,‘OutputLayerType’,“分类”)は,ネットワ,クをDAGNetworkオブジェクトとしてmodelFolderからンポトし,自動生成したカスタム層を現在のフォルダ内のパッケジ+ modelFolderに保存して,ンポトしたネットワクアキテクチャの末尾に分類出力層を追加します。

    importTensorFlowNetworkがカスタム層を保存するパッケ,ジの名前。文字ベクトルまたは字符串スカラとして指定します。importTensorFlowNetworkは,カスタム層のパッケ,ジ+PackageNameを現在のフォルダ,に保存します。“PackageName”を指定しない場合,importTensorFlowNetworkは,カスタム層を現在のフォルダ,内の+modelFolderという名前のパッケ,ジに保存します。パッケジの詳細にいては,パッケ,ジによる名前空間の作成を参照してください。

    カスタムのTensorFlow層をインポートしたとき,またはソフトウェアがTensorFlow層をそれと等価な組み込みのMATLAB層に変換できないとき,importTensorFlowNetworkはカスタム層の生成を試みます。importTensorFlowNetworkは,生成した各カスタム層を,+PackageNameで個別の00ファ@ @ルとして保存します。カスタム層を表示または編集するには,関連する00ファ@ @ルを開きます。カスタム層の詳細にいては,深層学習のカスタム層を参照してください。

    パッケ,ジ+PackageNameには,サブパッケ,ジ+行动を含めることもできます。このサブパッケ,ジには,自動生成されたカスタム層で使用されるTensorFlow演算子(サポ,トされているTensorFlow演算子を参照)に対応するmatlab関数が格納されます。importTensorFlowNetworkは,各演算子に関連するmatlab関数をサブパッケ,ジ+行动内の個別の00ファ@ @ルに保存します。dlnetworkのオブジェクト関数(関数预测など)は,カスタム層とやり取りするときにこれらの演算子を使用します。

    例:“PackageName”、“MobileNet”

    例:“PackageName”、“CustomLayers”

    深度学习工具箱ネットワクのタゲットタプ。“dagnetwork”または“dlnetwork”として指定します。

    • ネットワ,クをDAGNetworkオブジェクトとしてンポトするには,“TargetNetwork“dagnetwork”として指定します。この場合,には,TensorFlowのSavedModel損失関数または名前と値の引数“OutputLayerType”によって指定された出力層が含まれていなければなりません。

    • ネットワ,クをdlnetworkオブジェクトとしてンポトするには,“TargetNetwork“dlnetwork”として指定します。この場合,には出力層が含まれません。

    例:“TargetNetwork”、“dlnetwork”

    インポートされたネットワークアーキテクチャの最後にimportTensorFlowNetworkによって追加される出力層のタ@ @プ。“分类”“回归”,または“pixelclassification”として指定します。pixelClassificationLayer(计算机视觉工具箱)オブジェクトを追加するには,计算机视觉工具箱™が必要です。

    • “TargetNetwork”“dagnetwork”として指定し,modelFolder内のSavedModelによって損失関数が指定されていない場合,名前と値の引数“OutputLayerType”に値を割り当てなければなりません。DAGNetworkオブジェクトは出力層をもたなければなりません。

    • “TargetNetwork”“dlnetwork”として指定した場合,importTensorFlowNetworkは名前と値の引数“OutputLayerType”を無視します。dlnetworkオブジェクトは出力層をもません。

    例:“OutputLayerType”、“分类”

    ネットワクの入力メジのサズ。グレスケルメジの(高度、宽度)またはカラ(高度、宽度、渠道)2個または3個の数値のベクトルとして指定します。modelFolder内のsaved_model.pbファルで入力サズが指定されていない場合,ネットワクはこの情報を使用します。

    例:“ImageInputSize”,[28 28]

    出力層のクラス。分类ベクトル,字符串配列,文字ベクトルの单元格配列,または“汽车”として指定します。字符串配列または文字ベクトルの cell 配列strを指定した場合,importTensorFlowNetworkによって出力層のクラスが分类(str, str)に設定されます。“汽车”の場合,importTensorFlowNetworkによってクラスが分类(1:N)に設定されます。ここで,Nはクラスの数です。

    • “TargetNetwork”“dagnetwork”として指定した場合,importTensorFlowNetworkは,クラスに関する情報をDAGNetworkオブジェクトの出力層に保存します。

    • “TargetNetwork”“dlnetwork”として指定した場合,importTensorFlowNetworkは名前と値の引数“类”を無視します。dlnetworkオブジェクトは,クラスに関する情報を保存する出力層をもません。

    例:“类”,{' 0 ',' 1 ',' 3 '}

    例:“类”,直言({‘狗’,‘猫’})

    デ,タ型:字符|分类|字符串|细胞

    コマンドウィンドウに。数値または逻辑の1真正的)か0)として指定します。

    例:“详细”,“真正的”

    出力引数

    すべて折りたたむ

    事前学習済みのTensorFlowネットワ,ク。DAGNetworkオブジェクトまたはdlnetworkオブジェクトとして返されます。

    • ネットワ,クをDAGNetworkオブジェクトとしてンポトするには,“TargetNetwork“dagnetwork”として指定します。その後,DAGNetworkオブジェクト上で,関数分类を使用してクラスラベルを予測します。

    • ネットワ,クをdlnetworkオブジェクトとしてンポトするには,“TargetNetwork“dlnetwork”として指定します。その後,dlnetworkオブジェクト上で,関数预测を使用してクラスラベルを予測します。正しいデ,タ形式を使用して,入力デ,タをdlarrayとして指定します(詳細にいては,dlarrayの引数fmtを参照してください)。

    制限

    • importTensorFlowNetworkは,TensorFlowバジョンv2.0 ~ 2.6をサポトします。

    詳細

    すべて折りたたむ

    組み込みのMATLAB層への変換がサポ,トされているTensorFlow-Keras層

    importTensorFlowNetworkは,組み込みMATLAB層に変換可能な次のタイプのTensorFlow-Keras層をサポートします(いくつかの制限があります)。

    TensorFlow-Keras層 対応する深度学习工具箱の層
    添加 additionLayer

    激活(活性化の名前を指定):

    • elu

    • gelu

    • 线性整流函数(Rectified Linear Unit)

    • 线性

    • softmax

    • 乙状结肠

    • 搞同性恋的

    • 双曲正切

    層:

    高度な活性化:

    • ELU

    • Softmax

    • 线性整流函数(Rectified Linear Unit)

    • LeakyReLU

    • PReLu

    層:

    AveragePooling1D “的意思是”として指定されたPaddingValueをもaveragePooling1dLayer
    AveragePooling2D “的意思是”として指定されたPaddingValueをもaveragePooling2dLayer
    BatchNormalization batchNormalizationLayer
    双向(LSTM (__)) bilstmLayer
    连接 depthConcatenationLayer
    Conv1D convolution1dLayer
    Conv2D convolution2dLayer
    Conv2DTranspose transposedConv2dLayer
    CuDNNGRU gruLayer
    CuDNNLSTM lstmLayer
    密集的 fullyConnectedLayer
    DepthwiseConv2D groupedConvolution2dLayer
    辍学 dropoutLayer
    嵌入 wordEmbeddingLayer(文本分析工具箱)
    nnet.keras.layer.FlattenCStyleLayer
    GlobalAveragePooling1D globalAveragePooling1dLayer
    GlobalAveragePooling2D globalAveragePooling2dLayer
    GlobalMaxPool1D globalMaxPooling1dLayer
    GlobalMaxPool2D globalMaxPooling2dLayer
    格勒乌 gruLayer
    输入 imageInputLayersequenceInputLayerまたはfeatureInputLayer
    LSTM lstmLayer
    MaxPool1D maxPooling1dLayer
    MaxPool2D maxPooling2dLayer
    multiplicationLayer
    SeparableConv2D groupedConvolution2dLayerまたはconvolution2dLayer
    TimeDistributed sequenceFoldingLayer(ラップされた層の前)およびsequenceUnfoldingLayer(ラップされた層の後)
    UpSampling2D resize2dLayer(图像处理工具箱)
    UpSampling3D resize3dLayer(图像处理工具箱)
    ZeroPadding1D nnet.keras.layer.ZeroPadding1DLayer
    ZeroPadding2D nnet.keras.layer.ZeroPadding2DLayer

    * PReLU層の場合,importTensorFlowNetworkによって,ベクトル値のスケ,リングパラメ,タ,がベクトル要素の平均値に置き換えられます。。例にいては,Keras PReLU層のンポトを参照してください。

    サポ,トされているTensorFlow-Keras損失関数

    importTensorFlowNetworkは,次のKeras損失関数をサポ,トします。

    • mean_squared_error

    • categorical_crossentropy

    • sparse_categorical_crossentropy

    • binary_crossentropy

    サポ,トされているTensorFlow演算子

    importTensorFlowNetworkは,dlarrayがサポートされたMATLAB関数への変換を行う次のTensorFlow演算子をサポートします。

    TensorFlow演算子 対応するmatlab関数
    添加 tfAdd
    AddN tfAddN
    AddV2 tfAdd
    断言 断言
    AvgPool tfAvgPool
    BatchMatMulV2 tfBatchMatMulV2
    BiasAdd tfBiasAdd
    BroadcastTo tfBroadcastTo
    tfCast
    ConcatV2 tfCat
    常量 なし(カスタム層内の重みに変換される)
    Conv2D tfConv2D
    DepthToSpace depthToSpace(图像处理工具箱)
    DepthwiseConv2dNative tfDepthwiseConv2D
    经验值 经验值
    ExpandDims tfExpandDims
    FusedBatchNormV3 tfBatchnorm
    GatherV2 tfGather
    GreaterEqual 通用电气>=
    身份 なし(カスタム層内の値の割り当てに変換される)
    IdentityN tfIdentityN
    L2Loss tfL2Loss
    LeakyRelu leakyrelu
    lt<
    日志 日志
    MatMul tfMatMul
    MaxPool tfMaxPool
    最大 tfMaximum
    的意思是 tfMean
    最低 tfMinimum
    MirrorPad tfMirrorPad
    Mul tfMul
    负的 --
    tfStack
    tfPad
    PadV2 tfPad
    PartitionedCall なし(カスタム層のメソッド内の関数に変換される)
    战俘 权力^。
    刺激 tfProd
    RandomStandardNormal tfRandomStandardNormal
    范围 tfRange
    ReadVariableOp なし(カスタム層内の値の割り当てに変換される)
    RealDiv tfDiv
    线性整流函数(Rectified Linear Unit) 线性整流函数(Rectified Linear Unit)
    Relu6 线性整流函数(Rectified Linear Unit)および最小值
    重塑 tfReshape
    ResizeNearestNeighbor dlresize(图像处理工具箱)
    Rsqrt √6
    形状 tfShape
    乙状结肠 乙状结肠
    大小 tfSize
    Softmax softmax
    SpaceToDepth spaceToDepth(图像处理工具箱)
    广场 . ^ 2
    √6 √6
    SquaredDifference tfMulまたはtfSub
    挤压 tfSqueeze
    StatefulPartitionedCall なし(カスタム層のメソッド内の関数に変換される)
    StopGradient tfStopGradient
    StridedSlice tfStridedSliceまたはtfSqueeze
    tfSub
    双曲正切 双曲正切
    瓷砖 tfTile
    转置 tfTranspose

    dlarrayオブジェクトを操作する関数の詳細にいては,Dlarrayをサポ,トする関数の一覧を参照してください。

    インポートされたネットワーク用のコードの生成

    MATLAB编码器™またはGPU编码器™を深度学习工具箱と共に使用して,インポートされたネットワーク用の墨西哥人コード,スタンドアロンCPUコード,CUDA®Mexコ,ド,またはスタンドアロンcudaコ,ドを生成できます。詳細にいては,深層学習のコ,ド生成を参照してください。

    • MATLAB编码器を深度学习工具箱と共に使用して,デスクトップまたは組み込みターゲットで実行される墨西哥人コードまたはスタンドアロンCPUコードを生成します。英特尔®mml - dnnラaapl . armブラリまたは®计算ラ推导推导ラ推导推导推导公式ブラリを使用する生成済みのスタンドアロンコ推导推导推导公式ドを展開できます。あるいは,サードパーティライブラリの関数を呼び出さない汎用のC / c++コードを生成することもできます。詳細にいては,MATLAB编码器を使用した深層学習(MATLAB编码器)を参照してください。

    • GPU编码器を深度学习工具箱と共に使用して,デスクトップまたは組み込みターゲットで実行されるCUDA墨西哥人コードまたはスタンドアロンCUDAコードを生成します。CUDA深層ニューラルネットワークライブラリ(cuDNN) TensorRT™高性能推論ライブラリ,または马里GPU向け臂计算ライブラリを使用する生成済みのスタンドアロンCUDAコードを展開できます。詳細にいては,GPU编码器を使用した深層学習(GPU编码器)を参照してください。

    importTensorFlowNetworkは,ネットワ,クDAGNetworkオブジェクトまたはdlnetworkオブジェクトとして返します。これらのオブジェクトは両方ともコ,ド生成をサポ,トします。MATLAB编码器オブジェクトおよび深度学习工具箱オブジェクト用のGPU编码器サポートの詳細については,サポ,トされているクラス(MATLAB编码器)およびサポ,トされているクラス(GPU编码器)をそれぞれ参照してください。

    コド生成をサポトする層をもあらゆるンポト済みネットワク用にコドを生成できます。MATLAB编码器およびGPU编码器を使用したコ,ド生成をサポ,トする層のリストにサポ,トされている層(MATLAB编码器)およびサポ,トされている層(GPU编码器)をそれぞれ参照してください。各組み込みMATLAB層のコード生成機能と制限の詳細については,各層の拡張機能の節を参照してください。例にいては,imageInputLayerコ,ド生成Gpuコ,ド生成を参照してください。

    图形处理器におけるaapl / aapl / aapl / aapl / aapl / aapl

    Gpu上ではimportTensorFlowNetworkは実行されません。ただし,importTensorFlowNetworkは,深層学習用の事前学習済みニュ,ラルネットワ,クを,gpuで使用可能なDAGNetworkオブジェクトまたはdlnetworkオブジェクトとして▪▪ンポ▪▪トします。

    • ネットワ,クをDAGNetworkオブジェクトとしてンポトした場合,分类を使用して,CPUまたはgpuで実行できます。名前と値の引数ExecutionEnvironmentを使用して,ハ,ドウェア要件を指定します。複数の出力があるネットワ,クの場合,DAGNetworkオブジェクト用の関数预测を使用します。

    • ネットワ,クをDAGNetworkオブジェクトとしてンポトした場合,预测を使用して,CPUまたはgpuで実行できます。名前と値の引数ExecutionEnvironmentを使用して,ハ,ドウェア要件を指定します。ネットワ,クに複数の出力がある場合は,名前と値の引数ReturnCategorical真正的として指定します。

    • ネットワ,クをdlnetworkオブジェクトとしてンポトした場合,预测を使用して,CPUまたはgpuで実行できます。入力デ,タとネットワ,クパラメ,タ,のいずれかがgpuに保存されている場合,関数预测をgpuで実行できます。

      • minibatchqueueを使用して入力デ,タのミニバッチの処理と管理を行う場合,gpuが使用可能であれば,出力はminibatchqueueオブジェクトによってgpu配列に変換されます。

      • dlupdateを使用して,dlnetworkオブジェクトの学習可能パラメタをgpu配列に変換します。

        net = dlupdate(@gpuArray,net)

    • trainNetworkを使用することにより,インポートしたネットワークに1つのCPUまたは1つのGPUで学習させることができます。実行環境のオプションを含む学習オプションを指定するには,関数trainingOptionsを使用します。名前と値の引数ExecutionEnvironmentを使用して,ハ,ドウェア要件を指定します。学習を高速化する方法の詳細にいては,并行、gpu和云中扩展深度学习を参照してください。

    GPUを使用するには并行计算工具箱™とサポートされているGPUデバイスが必要です。サポトされているデバスにいては,Gpu計算の要件(并行计算工具箱)を参照してください。

    ヒント

    • インポートしたネットワークに,組み込みのMATLAB層への変換がサポートされていない層が含まれており(組み込みのMATLAB層への変換がサポ,トされているTensorFlow-Keras層を参照),importTensorFlowNetworkがカスタム層を生成しない場合,importTensorFlowNetworkはエラ,を返します。この場合でも,importTensorFlowLayersを使用してネットワクアキテクチャをンポトできます。

    • 事前学習済みのネットワークを新しいイメージの予測または転移学習に使用するには,インポートしたモデルの学習に使用したイメージに行った前処理と同じようにイメージを前処理しなければなりません。最も一般的な前処理ステップは,イメージのサイズ変更,イメージの平均値の減算,イメージのBGR形式からRGB形式への変換です。

      • imresizeを使用します。たとえば,[3] 227227年imresize(图片)のようにします。

      • RGB形式からBGR形式にメジを変換するには,翻转を使用します。たとえば,翻转(图片3)のようにします。

      学習および予測用のメジの前処理の詳細は,メ,ジの深層学習向け前処理を参照してください。

    • パッケ,ジ+PackageNameの親フォルダーがMATLABパス上にない場合,このパッケージのメンバー(カスタム層およびTensorFlow演算子)にアクセスすることはできません。詳細にいては,パッケジとmatlabパスを参照してください。

    • MATLABは1ベスのンデックスを使用しますが,Python®は0ベスのンデックスを使用します。つまり,配列の最初の要素のインデックスは,MATLABとPythonでそれぞれ1と0になります。Matlab计算器ンデックスの詳細に计算器いては,配列@ @ンデックス付けを参照してください。MATLABで、Python で作成されたインデックス (印第安纳州)の配列を使用するには,配列を印第安纳州+ 1に変換します。

    • その他のヒントにいては,从TensorFlow, PyTorch和ONNX导入模型的技巧を参照してください。

    代替機能

    TensorFlowネットワクをSavedModel形式でンポトするには,importTensorFlowNetworkまたはimportTensorFlowLayersを使用します[2]。または,ネットワ,クがhdf5形式かjson形式の場合は,importKerasNetworkimportKerasLayersを使用してネットワクをンポトします。

    参照

    [1]TensorFlowhttps://www.tensorflow.org/

    [2]使用SavedModel格式https://www.tensorflow.org/guide/saved_model

    バ,ジョン履歴

    R2021aで導入