主要内容

。

importKerasNetwork

事前学习済みののkerasネットワークおよび重みのインポート

説明

= importKerasNetwork (modelfileは,事前学習済みのTensorFlow™-Kerasネットワークとその重みをmodelfileからインポートします。

この关节,深学习工具箱™进口商对于张量流-Keras模型サポートパッケージが必要です。このサポートパッケージがインストールされていない場合,関数によってダウンロード用リンクが表示されます。

= importKerasNetwork (modelfile名称,值は,1つ以上の名前と値のペアの引数で指定された追加オプションを使用して,事前学习済みのTensorFlow -Kerasネットワークとその重みをインポートします。

たとえば,importKerasnetwork(模块,'weyfile',重量)は,モデルファイルmodelfileからネットワークを,重みファイル权重から重みをインポートしますこのこの合,modelfileはHDF5またはjson形式にできます。重み重みファイルhdf5形式ででなけれなりません。

すべて折りたたむ

深度学习工具箱进口国TensorFlow-Keras模型サポートパッケージをダウンロードしてインストールします。

コマンドラインでimportKerasNetworkと入力します。

importKerasNetwork

深度学习工具箱进口国TensorFlow-Keras模型サポートパッケージがインストールされていない場合,関数によってアドオンエクスプローラーに必要なサポートパッケージへのリンクが表示されます。サポートパッケージをインストールするには,リンクをクリックして,[インストール]をクリックします。コマンドラインでモデル ファイル“digitsDAGnet.h5”必要が正常终了しいるサポートを确认しますことサポートがインストールますさいるパッケージインストールさているいるいるいるいる结合,关键词Dagnetwork.オブジェクトが返されます。

modelfile =.“digitsDAGnet.h5”;净= importKerasNetwork (modelfile)
警告:已保存的Keras网络不包含类。类将设置为分类(1:n),其中n是网络分类输出层中的类数。要指定类,请使用“类”参数。
net =具有属性的Dagnetwork:图层:[13x1 nnet.cnn.layer.layer]连接:[13x2表] InputNames:{'input_1'} OutputNames:{'classificationLayer_activation_1'}

インポートするファイルを指定します。ファイルdigitsDAGnet.h5には,数码のイメージをする向非非循环グラフ畳み込みニューラルネットワーク含まれていい

modelfile =.“digitsDAGnet.h5”

ネットワークをインポートします。

净= importKerasNetwork (modelfile)
警告:已保存的Keras网络不包含类。类将设置为分类(1:n),其中n是网络分类输出层中的类数。要指定类,请使用“类”参数。
net =具有属性的Dagnetwork:图层:[13x1 nnet.cnn.layer.layer]连接:[13x2表] InputNames:{'input_1'} OutputNames:{'classificationLayer_activation_1'}

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

情节(网)标题('DAG网络架构'

インポートするネットワークファイルと重みファイルを指定します。

modelfile =.“digitsDAGnet.json”;重量=“digitsDAGnet.weights.h5”

これは,数码データで学习。

。

网= importKerasNetwork (modelfile,'摇摇欲坠',重量,......'outputlayertype''分类'
警告:已保存的Keras网络不包含类。类将设置为分类(1:n),其中n是网络分类输出层中的类数。要指定类,请使用“类”参数。
net =具有属性的Dagnetwork:图层:[13x1 nnet.cnn.layer.layer]连接:[13x2表] InputNames:{'input_1'} OutputNames:{'classificationLayer_activation_1'}

モデルファイルを指定します。

modelfile =.“digitsDAGnet.h5”

クラス名を指定します。

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

クラス名を使使使ててネットワークネットワークインポートします。

网= importKerasNetwork (modelfile,“类”,ClassNames);

分享到イメージ読み取り読み取り。

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

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

标签=分类(网络,i);

イメージと分享结果を表示します。

imshow(i)标题(['分类结果:'char(标签)))

入力数

すべて折りたたむ

ネットワークアーキテクチャと重み(場合による)が含まれるモデルファイルの名前。文字ベクトルまたは字符串スカラーとして指定します。ファイルは,MATLAB®パス上のフォルダー内の现フォルダーフォルダーなければならずなければならずなければならず相対または相対パスをなけれなけれませませ

modelfileにに含まれてているものががののの合

  • ネットワークアーキテクチャと重みのの合,HDF5(.h5)形式でなければなりません。

  • ネットワークアーキテクチャのみの場合,HDF5またはJSON (. json)形式形式できます。

modelfileにネットワークアーキテクチャのみが含まれる場合,名前と値のペアの引数'摇摇欲坠'を使用して,重みをHDF5ファイルで指定しなければなりません。

例:“digitsnet.h5”

データ型:char|细绳

名称と値のペアペアの数

オプションの数名称,值のコンマ区切りペアを指定します。姓名は数名で,价值は対応する値です。姓名はは用符符で囲まなけれなけれなりませませませなりませませname1,value1,...,namen,valuenのように,複数の名前と値のペアの引数を,任意の順番で指定できます。

例:importKerasNetwork (modelfile“OutputLayerType”、“分类”、“类”,类)は,モデルファイルmodelfileからネットワークをインポートし,Keras層の最後に分類問題用の出力層を追加して,班级を出力層のクラスに指定します。

重みが含まれるファイルの名前。文字ベクトルまたは字符串スカラーとして指定します。举重は,MATLABパス上のフォルダー内の現在のフォルダーに含まれていなければならず,そうでなければこのファイルの絶対パスまたは相対パスを含めなければなりません。

例:“WeightFile”、“weights.h5”

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

modelfile内のネットワークに複数の出力がある場合,この引数を使用して出力層のタイプを指定することはできません。代わりにimportKerasLayersを使用してください。importKerasLayersは,出力のプレースホルダー層を挿入します。インポートした後に,findPlaceholderLayersreplaceLayerを使用して,プレースホルダー層の検索と置換をそれぞれ行えます。

例:'outputlayertype','回归'

ネットワークのの力量イメージサイズ。グレースケールグレースケールの[高度宽度]またはカラーイメージの(高度、宽度、渠道)にそれぞれ対応する,2個または3個の数値のベクトルとして指定します。modelfileでで力量サイズ指定指定さていないない合金,ネットワークはこの情场を使しし。

modelfile内のネットワークにににの力がある场合,このこの数を使をし入サイズを指定ははできませませませ指定はできませませませするはできませませませははできませませませはできできませませませませははできませませませできはできできませませませはimportKerasLayersを使用してください。importKerasLayersによって,入力のプレースホルダー層が挿入されます。インポートした後に,findPlaceholderLayersreplaceLayerを使用して,プレースホルダー層の検索と置換をそれぞれ行えます。

例:'imageInputsize',[28]

出力層のクラス。直言ベクトル,弦配列,文字ベクトルの细胞配列,または“汽车”として指定します。细绳配列または文字ベクトルの cell 配列str.を指定すると,出力層のクラスが分类(str,str)に設定されます。班级“汽车”の場合,クラスは分类(1:N)にに设定されここここ,Nははの数。

データ型:char|分类|细绳|细胞

出力数

すべて折りたたむ

事前学习済みのの。次のいずれかとして返されます。

  • kerasネットワークのタイプが顺序のの合,SeriesNetworkオブジェクトです。

  • kerasネットワークのタイプが模型のの合,Dagnetwork.オブジェクトです。

ヒント

  • importKerasNetworkはkerasの层のがののとおりネットワークをできますが,いくつかののの层ます含まれる场れる场场场も返さます。importKerasLayersをを用してネットワークアーキテクチャ重み重みをインポートできます。

    サポートされているKerasの層 対応する深度学习工具箱の層
    添加 additionLayer

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

    • 'elu'

    • “relu”

    • '线性'

    • 'softmax'

    • “乙状结肠”

    • 的双曲正切

    層:

    高层な活性化:

    • ELU

    • Softmax

    • LeakyReLU

    • prelu.

    層:

    AveragePooling2D 普通Pooling2dlayer.
    Batchnormalization BatchnormalizationLayer.
    双向(LSTM(__)) bilstmLayer
    衔接 depthConcatenationLayer
    Conv2D convolution2dLayer
    conv2dtranspose. transposedConv2dLayer
    Cudnnlstm. lstmlayer.
    密集的 fullyConnectedLayer
    DepthwiseConv2D groupedConvolution2dLayer
    退出 dropoutLayer
    嵌入 WordembeddingLayer.(文本分析工具箱)
    nnet.keras.layer.flattencstylayer.
    GlobalAveragePooling2D GlobalaveragePooling2dlayer.
    GlobalMaxPooling2D globalMaxPooling2dLayer
    格勒乌 gruLayer
    输入 imageInputlayer.
    LSTM. lstmlayer.
    MaxPooling2D maxpooling2dlayer.
    多功能层
    SeparableConv2D groupedConvolution2dLayerまたはconvolution2dLayer
    UpSampling2D resize2dlayer.(图像处理工具箱)
    UpSampling3D resize3dlayer.(图像处理工具箱)
    ZeroPadding2D nnet.keras.layer.zeropadding2dlayer.

    * prelu层の场合,importKerasNetworkによってによってした后ににますた后ににことができベクトルた后にがベクトルた后ににベクトルベクトルた后均がベクトルたられにがベクトルベクトルられににがベクトルた后にがベクトルたられられにベクトルベクトルられられられられベクトルベクトルられられ均均がベクトルられ均られパラメーターベクトルベクトル要素均均パラメーターがベクトル要素られ均ががベクトルベクトル要素均将进口keras prelu层を参照してください。

  • importKerasNetworkは,次のkeras损失关键词サポートします。

    • mean_squared_error.

    • categorical_crossentropy

    • sparse_categorical_crossentropy.

    • binary_crossentropy.

  • 多重力多重(MIMO)のkerasネットワークをインポートできます。ネットワークに,入力の入力量サイズおよびおよび力の损失情情含まimportKerasNetworkを使用します。それ以外の場合はimportKerasLayersを使用します。関数importKerasLayersは,入力と出力のプレースホルダー層を挿入します。インポートした後に,findPlaceholderLayersreplaceLayerをを使し,プレースプレースホルダー层の検索と置换をええええmそれぞれフローをインポートワークフロー,mimo onnx™ネットワークをインポートするワークフロー同じですインポート。具有多个输出的导入和组装ONNX网络を参照してください。多入力多出力の深層学習ネットワークの詳細については,多重力量多重力ネットワークを参照してください。

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

    • イメージのサイズを変更するにには,imresize.を使用します。たとえば,Imresize(IM,[227 227])のようにします。

    • RGB形式形式BGR形式にイメージを変换変换するは翻转を使用します。たとえば,翻转(IM,3)のようにします。

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

互換性の考慮事項

すべて展开する

R2018b以降は非推奨

参照

[1] Keras:Python Deep学习库。https://keras.io

R2017bで導入