unitGenerator
描述
创建一个单元发生器的网络,净
= unitGenerator (inputSizeSource
)净
输入的大小inputSizeSource
。关于网络体系结构的更多信息,请参阅单位发电机网络。网络有两个输入和四个输出:
两个网络的输入图像的源和目标域。默认情况下,目标图像大小与源图像大小相同。你可以改变通道的数量在目标图像通过指定的
NumTargetInputChannels
“名称-值参数。两个网络的输出self-reconstructed输出,换句话说,source-to-source和target-to-target翻译图像。其他两个网络输出源到目标和target-to-source翻译图片。
这个函数需要深度学习工具箱™。
修改方面的单元发生器使用名称-值的网络参数。净
= unitGenerator (inputSizeSource
,名称,值
)
例子
创建单元发生器
指定网络输入大小的RGB图像大小128 - 128。
inputSize = (128 128 3);
创建一个单元发生器产生的RGB图像输入的大小。
净= unitGenerator (inputSize)
净= dlnetwork属性:层:x1 nnet.cnn.layer.Layer[9]连接:[8 x2表]可学的:[168 x3表]状态:[0 x3表]InputNames: {“inputSource”“inputTarget”} OutputNames: {decoderSourceBlock /着干活的‘decoderSourceBlock / out2 decoderTargetBlock /着干活的‘decoderTargetBlock / out2’}初始化:1观点总结总结。
显示网络。
analyzeNetwork(净)
创建单元发生器和五个残块
指定网络输入大小的RGB图像大小128 - 128。
inputSize = (128 128 3);
创建一个单元发生器与五残块,三是编码器和解码器模块之间共享。
网= unitGenerator (inputSize,“NumResidualBlocks”5,…“NumSharedBlocks”3)
净= dlnetwork属性:层:x1 nnet.cnn.layer.Layer[9]连接:[8 x2表]可学的:[152 x3表]状态:[0 x3表]InputNames: {“inputSource”“inputTarget”} OutputNames: {decoderSourceBlock /着干活的‘decoderSourceBlock / out2 decoderTargetBlock /着干活的‘decoderTargetBlock / out2’}初始化:1观点总结总结。
显示网络。
analyzeNetwork(净)
输入参数
inputSizeSource
- - - - - -输入源图像的大小
正整数的转换向量
输入源图像的大小,指定为正整数的转换向量。inputSizeSource
的形式(HWC),H的高度,W是宽度,C通道的数量。每个维度的长度必须整除2 ^NumDownsamplingBlocks
。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“NumDownsamplingBlocks”, 3
创建一个网络与3将采样块
NumDownsamplingBlocks
- - - - - -将采样块数量
2
(默认)|正整数
将采样数块源编码器和目标编码器子网,指定为一个正整数。总的来说,编码器模块downsamples源和目标输入2倍^NumDownsamplingBlocks
。源解码器和目标解码器子网具有相同数量的upsampling块。
NumResidualBlocks
- - - - - -数量的剩余块
5
(默认)|正整数
的残块编码器模块,指定为一个正整数。解码器模块有相同数量的残块。
NumSharedBlocks
- - - - - -共享剩余块的数量
2
(默认)|正整数
共享的残块编码器子网,指定为一个正整数。共享解码器子网有相同数量的残块。网络应包含至少一个共享的残块。
NumTargetChannels
- - - - - -目标图像的通道数量
正整数
在目标图像数量的渠道,指定为一个正整数。默认情况下,“NumTargetChannels
通道的数量是一样的源图像,inputSizeSource
。
NumFiltersInFirstBlock
- - - - - -卷积过滤器的第一层
64年
(默认)|积极的偶数
指定数量的卷积过滤器在第一层,甚至是一个积极的整数。
FilterSizeInFirstAndLastBlocks
- - - - - -在第一个和最后一个卷积滤波器尺寸层
7
(默认)|积极的奇数|积极的奇数2-element向量
过滤器尺寸的第一个和最后一个卷积层网络,指定为一个积极的奇数的正奇数或者2-element向量的形式高度宽度]。当你指定过滤器的大小作为一个标量,过滤器有同样的高度和宽度。
FilterSizeInIntermediateBlocks
- - - - - -卷积滤波器尺寸在中间层次
3
(默认)|积极的奇数2-element向量|积极的奇数
过滤器尺寸在中间卷积层,指定为一个积极的奇数的正奇数或者2-element向量的形式高度宽度]。中间卷积层卷积层包括第一个和最后一个卷积层。当你指定过滤器的大小作为一个标量,过滤器有相同的高度和宽度。
ConvolutionPaddingValue
- - - - - -风格的填充
“symmetric-exclude-edge”
(默认)|“symmetric-include-edge”
|“复制”
|数字标量
风格的网络中使用的填充,指定为一个值。
PaddingValue |
描述 | 例子 |
---|---|---|
数字标量 | 垫与指定的数值 |
|
“symmetric-include-edge” |
垫使用镜像的输入值,包括边缘值 |
|
“symmetric-exclude-edge” |
垫使用镜像的输入值,排除边缘值 |
|
“复制” |
垫使用重复的边界元素的输入 |
|
UpsampleMethod
- - - - - -方法用于upsample激活
“transposedConv”
(默认)|“bilinearResize”
|“pixelShuffle”
方法用于upsample激活,指定这些值之一:
“transposedConv”
——使用一个transposedConv2dLayer
(深度学习工具箱)的步伐(2 - 2)。“bilinearResize”
——使用一个convolution2dLayer
(深度学习工具箱)的步伐[1]了resize2dLayer
的规模(2 - 2)。“pixelShuffle”
——使用一个convolution2dLayer
(深度学习工具箱)的步伐[1]了depthToSpace2dLayer
的块大小(2 - 2)。
数据类型:字符
|字符串
ConvolutionWeightsInitializer
- - - - - -重初始化用于卷积层
“他”
(默认)|“glorot”
|“narrow-normal”
|函数
重初始化用于卷积层,指定为“glorot”
,“他”
,“narrow-normal”
,或一个函数处理。有关更多信息,请参见指定自定义权重的初始化函数(深度学习工具箱)。
ActivationLayer
- - - - - -激活函数
“relu”
(默认)|“leakyRelu”
|“elu”
|层对象
激活函数使用网络中除了第一个和最后卷积层后,指定为其中一个值。的unitGenerator
函数自动添加一个漏水的ReLU层卷积在第一层。和可用的层列表的更多信息,见激活层(深度学习工具箱)。
“relu”
——使用一个reluLayer
(深度学习工具箱)“leakyRelu”
——使用一个leakyReluLayer
(深度学习工具箱)比例因子为0.2“elu”
——使用一个eluLayer
(深度学习工具箱)一层对象
SourceFinalActivationLayer
- - - - - -最后卷积后激活函数源解码器
”“双曲正切
(默认)|“乙状结肠”
|“softmax”
|“没有”
|层对象
激活函数在源解码器最后卷积层后,指定为其中一个值。和可用的层列表的更多信息,见输出层(深度学习工具箱)。
”“双曲正切
——使用一个tanhLayer
(深度学习工具箱)“乙状结肠”
——使用一个sigmoidLayer
(深度学习工具箱)“softmax”
——使用一个softmaxLayer
(深度学习工具箱)“没有”
——不使用最后一个激活层一层对象
TargetFinalActivationLayer
- - - - - -激活函数卷积后最终目标解码器
”“双曲正切
(默认)|“乙状结肠”
|“softmax”
|“没有”
|层对象
激活函数的最后卷积层目标解码器后,指定为其中一个值。和可用的层列表的更多信息,见输出层(深度学习工具箱)。
”“双曲正切
——使用一个tanhLayer
(深度学习工具箱)“乙状结肠”
——使用一个sigmoidLayer
(深度学习工具箱)“softmax”
——使用一个softmaxLayer
(深度学习工具箱)“没有”
——不使用最后一个激活层一层对象
更多关于
单位发电机网络
单位发电机网络包括三个子网在随后一个编码器模块由三个子网解码器模块。默认网络刘提出的架构,Breuel, Kautz[1]。
编码器模块downsamples输入2倍^NumDownsamplingBlocks
。编码器模块包括三个子网。
源编码器子网,叫做‘encoderSourceBlock’,有一个初始层接收数据块在源域,X年代。然后子网已
NumDownsamplingBlocks
将采样块downsample数据和NumResidualBlocks
- - - - - -NumSharedBlocks
残块。目标编码器子网,叫做‘encoderTargetBlock’,有一个初始层接收数据块在目标域,X年代。然后子网已
NumDownsamplingBlocks
将采样块downsample数据,NumResidualBlocks
- - - - - -NumSharedBlocks
残块。源编码器和目标编码器的输出相结合的
concatenationLayer
(深度学习工具箱)共享剩余编码器子网,称为“encoderSharedBlock”,并接受连接数据
NumSharedBlocks
残块。
解码器模块包括三个子网,执行的NumDownsamplingBlocks
upsampling操作数据。
共享剩余解码器子网,称为“decoderSharedBlock”,从编码器,并接受数据
NumSharedBlocks
残块。源解码器子网,叫做‘decoderSourceBlock’,
NumResidualBlocks
- - - - - -NumSharedBlocks
残块,NumDownsamplingBlocks
将采样块downsample数据,最后一块层返回的输出。这个子网返回两个输出源域:XTS和X党卫军。输出XTS翻译是一个图像从目标域源域。输出X党卫军是一个self-reconstructed图像从源域到源域。目标解码器子网,叫做‘decoderTargetBlock’,
NumResidualBlocks
- - - - - -NumSharedBlocks
残块,NumDownsamplingBlocks
将采样块downsample数据,最后一块层返回的输出。这个子网返回两个输出在目标域:X圣和XTT。输出XTS翻译是一个图像从源域到目标域。输出XTT是一个self-reconstructed图像从目标域到目标域。
表描述了子网层组成的街区。
块类型 | 层 | 默认的图块 |
---|---|---|
最初的块 |
|
|
将采样块 |
|
|
剩余块 |
|
|
Upsampling块 |
|
|
最后一块 |
|
|
提示
您可以创建的鉴别器网络单元通过使用
patchGANDiscriminator
函数。培养单位GAN网络使用自定义训练循环。
执行域转换的源图像目标图像,反之亦然,使用
unitPredict
函数。对于共享的潜在功能编码,参数的
NumSharedBlocks
”和“NumResidualBlocks
“必须大于0。
引用
[1]Liu Ming-Yu,托马斯Breuel, Jan Kautz。“无监督Image-to-Image翻译网络。”神经信息处理系统的进步30(2017年捏)。长滩,CA: 2017。https://arxiv.org/abs/1703.00848。
版本历史
介绍了R2021a
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。