主要内容

pretrainedEncoderNetwork

从预训练的网络创建编码器网络

描述

例子

= pretrainedEncoderNetwork (networkName深度创建编码器网络,,来自预先训练的网络,networkName.编码器网络执行深度将采样操作。

此功能需要深度学习工具箱™。

例子

outputNames= pretrainedEncoderNetwork(networkName深度也返回名称,outputNames,即直接发生在下采样操作之前的激活层。这些激活对应于特定空间分辨率或尺度下感兴趣的特征。金宝搏官方网站

例子

全部折叠

基于预训练的SqueezeNet网络,创建一个具有三个下采样操作的编码器。

encoderNet = pretrainedEncoderNetwork(“squeezenet”3)
encoderNet = dlnetwork with properties: Layers: [33x1 nnet.cnn.layer.Layer] Connections: [36x2 table] Learnables: [26x3 table] State: [0x3 table] InputNames: {'data'} OutputNames: {'fire5-concat'} Initialized: 1查看summary with summary。

显示编码器网络。

analyzeNetwork (encoderNet)

从预先训练好的GoogLeNet网络中创建四个下采样操作的GAN编码器网络。

深度= 4;[encoder,outputNames] = pretrainedEncoderNetwork(“googlenet”、深度);

确定编码器网络的输入大小。

inputSize =编码器。layers (1).InputSize;

通过创建一个样例数据输入,然后调用,确定编码器网络中激活层的输出大小向前,它返回激活。

exampleInput = dlarray(0 (inputSize),SSC的);exampleOutput = cell(1,length(outputNames));[exampleOutput{:}] = forward(encoder,exampleInput,“输出”, outputNames);

将解码器块中的通道数量确定为每次激活的第三个通道的长度。

numChannels = cellfun(@(x) size(extractdata(x),3),exampleOutput);numChannels = fliplr(numChannels(1:end-1));

定义一个函数,为一个解码器块创建一个层数组。

decoderBlock = @(block) [transposedConv2dLayer(2,numChannels(block),]“步”2) convolution2dLayer (numChannels(块),“填充”“相同”reluLayer卷积2dlayer (3,numChannels(block)“填充”“相同”) reluLayer);

创建解码器模块,其上采样块的数量与编码器模块中下采样块的数量相同。

decoder = blockedNetwork(decoderBlock,depth);

通过连接编码器模块和解码器模块,并添加跳过连接,创建U-Net网络。

net = encoderDecoderNetwork([224 224 3],编码器,解码器,...“OutputChannels”3,“SkipConnections”“连接”
net = dlnetwork with properties: Layers: [139x1 nnet.cnn.layer.Layer] Connections: [167x2 table] Learnables: [116x3 table] State: [0x3 table] InputNames: {'data'} OutputNames: {'encoderDecoderFinalConvLayer'} Initialized: 1查看summary with summary。

显示网络。

analyzeNetwork(净)

输入参数

全部折叠

预先训练的网络名称,指定为这些字符串值之一。必须为选定的预训练网络安装相关的附加组件。

  • “alexnet”——看alexnet(深度学习工具箱)获取更多信息。

  • “googlenet”——看googlenet(深度学习工具箱)获取更多信息。

  • “inceptionresnetv2”——看inceptionresnetv2(深度学习工具箱)获取更多信息。

  • “inceptionv3”——看inceptionv3(深度学习工具箱)获取更多信息。

  • “mobilenetv2”——看mobilenetv2(深度学习工具箱)获取更多信息。

  • “resnet18”——看resnet18(深度学习工具箱)获取更多信息。

  • “resnet50”——看resnet50(深度学习工具箱)获取更多信息。

  • “resnet101”——看resnet101(深度学习工具箱)获取更多信息。

  • “squeezenet”——看squeezenet(深度学习工具箱)获取更多信息。

  • “vgg16”——看vgg16(深度学习工具箱)获取更多信息。

  • “vgg19”——看vgg19(深度学习工具箱)获取更多信息。

数据类型:字符|字符串

编码器中下行采样操作的个数,指定为正整数。编码器以2^的因数对输入进行采样深度.不能指定大于预训练网络深度的深度。

输出参数

全部折叠

编码器网络,返回为dlnetwork(深度学习工具箱)对象。网络有深度独特的空间分辨率。金宝搏官方网站编码器网络的最后一层是直接在预训练网络的下一个下采样操作之前的层。

网络中的层名它直接出现在downsampling操作之前,作为字符串向量返回。

版本历史

R2021a中引入