主要内容

avgpool

将数据集中到空间维度上的平均值

描述

平均池化操作通过将输入划分为池化区域并计算每个区域的平均值来执行向下采样。

这个avgpool函数将平均池操作应用于dlarray数据使用dlarray对象允许您标记维度,从而更容易地处理高维数据。例如,可以使用。标记空间维度、时间维度、通道维度和批处理维度“S”,“T”,“C”“B”标签。对于未指定尺寸和其他尺寸,请使用“U”标签对于dlarray对象函数在特定维度上操作时,可以通过格式化dlarray对象,或使用数据格式选择。

笔记

应用平均池在分层图反对或阵列中,请使用以下图层之一:

实例

德利= avgpool (dlX,poolsize)将平均池操作应用于格式化的dlarray对象dlX.该函数通过将输入划分为定义的区域来对其进行采样poolsize并计算各区域数据的平均值。输出德利是一个格式化的dlarray使用相同的维度格式dlX

默认情况下,该函数最多可汇集三维dlX标签'S'(空间)。将已标记的尺寸集合在一起“不”(time),指定一个池区域“不”维度使用“PoolFormat”选择。

实例

德利= avgpool (dlX(“全球”)计算输入的空间维度的全局平均值dlX.这个语法等价于settingpoolsize在前面的语法中,将'S'尺寸dlX

德利= avgpool (___,“数据格式”,FMT)对未格式化的对象应用平均池操作dlarray对象dlX格式由指定FMT使用任何前面的语法。输出德利是一个非格式化dlarray对象的标注顺序与dlX例如“数据格式”、“SSCB”使用格式指定二维平均池的数据“SSCB”(spatial, spatial, channel, batch)。

实例

德利= avgpool (___,名称、值)使用一个或多个名称-值对参数指定选项。例如,“PoolFormat”、“T”指定一维池格式的池区域“不”(时间)。

例子

全部崩溃

创建一个格式化的dlarray对象包含一批128 28 × 28图像与3通道。指定的格式“SSCB”(spatial, spatial, channel, batch)。

miniBatchSize=128;输入大小=[28];numChannels=3;X=兰德(inputSize(1)、inputSize(2)、NumChannel、miniBatchSize);dlX=dlX阵列(X,“SSCB”);

查看输入数据的大小和格式。

尺寸(dlX)
ans=1×428 28 3 128
dim (dlX)
ans=‘SSCB’

应用2 × 2池化区域的2-D平均池化avgpool作用

poolSize=[2];dlY=avgpool(dlX,poolSize);

查看输出的大小和格式。

尺寸(dlY)
ans=1×427 27 3 128
昏暗(dlY)
ans=‘SSCB’

创建一个格式化的dlarray对象包含一批128 28 × 28图像与3通道。指定的格式“SSCB”(spatial, spatial, channel, batch)。

miniBatchSize=128;输入大小=[28];numChannels=3;X=兰德(inputSize(1)、inputSize(2)、NumChannel、miniBatchSize);dlX=dlX阵列(X,“SSCB”);

查看输入数据的大小和格式。

尺寸(dlX)
ans=1×428 28 3 128
dim (dlX)
ans=‘SSCB’

方法应用2-D全局平均池avgpool通过指定“全球”选择。

dlY=avgpool(dlX,“全球”);

查看输出的大小和格式。

尺寸(dlY)
ans=1×41 1 3 128
昏暗(dlY)
ans=‘SSCB’

创建一个格式化的dlarray对象,该对象包含128个长度为100、带有12个通道的序列。指定的格式“认知行为治疗”(通道、批次、时间)。

miniBatchSize = 128;sequenceLength = 100;numChannels = 12;X =兰德(numChannels miniBatchSize sequenceLength);dlX = dlarray (X,“认知行为治疗”);

查看输入数据的大小和格式。

尺寸(dlX)
ans=1×312 128 100
dim (dlX)
ans='CBT'

使用avgpool通过指定“PoolFormat”“大步走”选项。

池大小=2;dlY=avgpool(dlX,池大小,“PoolFormat”,“不”,“大步走”,2);

查看输出的大小和格式。

尺寸(dlY)
ans=1×312 128 50
昏暗(dlY)
ans='CBT'

输入参数

全部崩溃

输入数据,指定为格式化或未格式化dlarray对象。

如果dlX是一个非格式化dlarray,则必须使用“DataFormat”选择。

默认情况下,该函数最多可汇集三维dlX标签'S'(空间)。将已标记的尺寸集合在一起“不”(time),指定一个池区域“不”维度使用“PoolFormat”选择。

池区域的大小,指定为数值标量或数值向量。

要使用具有相同大小边的池区域进行池,请指定poolsize作为一个标量。在指定的所有维度上,池区域具有相同的大小“PoolFormat”

要使用具有不同大小边的池区域进行池,请指定poolsize作为向量,其中poolsize(我)是中相应维度的大小“PoolFormat”

名称值参数

指定可选的逗号分隔的字符对名称、值参数。的名字是参数名和价值为对应值。的名字必须出现在引号内。您可以按任意顺序指定多个名称和值对参数,如下所示:Name1, Value1,…,的家

例子:“迈步”,2将池区域的步长指定为2.

未格式化输入数据的维顺序,指定为字符向量或字符串标量FMT它为数据的每个维度提供了一个标签。

当您指定的格式dlarray对象中,每个字符为数据的每个维度提供一个标签,并且必须是以下内容之一:

  • “S”——空间

  • “C”——频道

  • “B”-批次(例如,样品和观察)

  • “T”-时间(例如,序列的时间步长)

  • “U”——未指明的

您可以指定多个标注的维度“S”“U”.你可以使用标签“C”,“B”“T”最多一次。

您必须指定数据格式当输入数据不是格式化的dlarray

数据类型:字符|字符串

池域的维度顺序,指定为逗号分隔对组成“PoolFormat”以及为池区域的每个维度提供标签的字符向量或字符串标量。

的默认值“PoolFormat”取决于任务:

任务 违约
一维池 'S'(空间)
二维池 “SS”(空间、空间)
三维池 “SSS”(空间、空间、空间)

格式必须为no'S'(空间)维度,或同样多'S'(空间)维度作为输入数据。

默认情况下,该函数最多可汇集三维dlX标签'S'(空间)。将已标记的尺寸集合在一起“不”(time),指定一个池区域“不”维度使用“PoolFormat”选择。

例子:“PoolFormat”、“T”

遍历输入数据的步长,指定为逗号分隔对,由“大步走”和数字标量或数字向量。如果您指定“大步走”作为标量,相同的值用于所有空间维度“大步走”作为与输入数据的空间维数相同大小的向量,向量值用于对应的空间维数。

的默认值“大步走”1..如果“大步走”小于poolsize在任何维度中,池区域都是重叠的。

这个的全局池不支持万博1manbetx“全球”选择。

例子:“迈步”,3

数据类型:|

应用于数据边缘的填充大小,指定为逗号分隔对,由“填充”以及下列其中一项:

  • “一样”-设置填充大小,以便当步幅为时输出大小与输入大小相同1.. 更一般地说,每个空间维度的输出大小是ceil(输入大小/步幅),在那里inputSize是输入沿空间维度的大小。

  • 数字标量-在所有空间维度的两端应用相同数量的填充。

  • 数字向量——沿着每个空间维度应用不同数量的填充。使用大小向量D,在那里D是输入数据的空间维数。这个向量的第Th元素指定沿空间维度。

  • 数字矩阵-对每个空间维度的开始和结束应用不同数量的填充。使用大小为2 × -的矩阵D,在那里D是输入数据的空间维度数。元素(1,d)指定应用于空间维度开始的填充的大小D.的元素(2 d)指定应用于空间维度末端的填充的大小D例如我n 2-D, the format is(前、左;下,右)

这个“填充”的全局池不支持万博1manbetx“全球”选择。

例子:“填充”,“相同”

数据类型:|

用于填充输入的值,指定为0“的意思是”

当你使用衬料选项添加填充到输入,应用的填充值可以是下列之一:

  • 0—输入在指定的位置用零填充衬料财产。填充区域包含在沿边缘的池化区域平均值的计算中。

  • “的意思是”属性指定位置的池区域的平均值填充输入衬料选择。在计算每个池化区域的平均值时,有效地将填充区域排除在外。

输出参数

全部崩溃

集合的数据,作为dlarray具有与相同的基础数据类型dlX

如果输入数据dlX是一个格式化的dlarray然后德利格式与dlX.如果输入数据没有格式化dlarray然后德利是一个非格式化dlarray使用与输入数据相同的维度顺序。

更多关于

全部崩溃

平均分担

这个avgpool函数将输入数据合并为平均值。有关更多信息,请参阅平均池层averagePooling2dLayer参考页面。

扩展功能

在R2019b中引入