2D池化IPoolingLayer
2D池化IPoolingLayer
IPooling层在通道内实现池化。支持的池类型为最大, 平均 和 最大平均混合。
层描述:二维池化
使用张量上的2D滤波器计算池化a tensor A, of dimensions a, to produce a tensor B, of dimensions b。b的尺寸取决于乙 尺寸, 视窗大小 R,对称填充 p ,stride大小 s 这样:
- b = [a0a1...an-3bn-2bn-1]
- bn-2 = (an-2+2p0-r0)/s0+1
- bn-1 = (an-1+2p1-r1)/s1+1
张量 C 是A with dimensions[a0a1...an-2+2p0an-1+2p1]零填充copy。Bj......kl= func(Cj…. k:kk l:ll) wherekk = k+r0-1,andll = l+r1-1。 Func是一种池化类型。
PoolingType::kMAX
窗口中元素的最大值。
Maximum over elements in window.
PoolingType::kAVERAGE
窗口中元素的平均值。
Average over elements in the window.
PoolingType::kMAX_AVERAGE_BLEND
最大池和平均池的混合。最大合并和平均合并的结果与混合因子组合为
(1-blendFactor)*maximumPoolingResult + blendFactor*averagePoolingResult to yield the result. The blendFactor can be set to a value between 0 and 1.
blendFactor可以被设置为0和1之间的值。
默认情况下,对池化窗口和填充的输入之间的重叠执行平均池化。如果互斥参数设置为true,则对池化窗口和未填充输入之间的重叠区域执行平均池化。
层描述:3D池化
使用张量上的3D滤镜计算池化 a tensor A, of dimensions a, to produce a tensor B, of dimensions b。b的尺寸乙 取决于a尺寸,视窗大小 R,对称填充 p ,步长 s 这样:
- b = [a0a1...an-4bn-3bn-2bn-1]
- bn-3 = (an-3+2p0-r0)/s0+1
- bn-2 = (an-2+2p1-r1)/s1+1
- bn-1 = (an-1+2p2-r2)/s2+1
设张量 C 是A with dimensions [a0a1... an-3+2p0an-2+2p1an-1+2p2]的零填充copy。 一其中,Bj......klm= func(Cj…. k:kk l:ll m:mm) wherekk = k+r0-1,ll = l+r1-1, andmm = m+r2-1。
func 由池化类型之一t定义 :
oolingType::kMAX
窗口中元素的最大值。
Maximum over elements in window.
PoolingType::kAVERAGE
窗口中元素的平均值。
Average over elements in the window.
PoolingType::kMAX_AVERAGE_BLEND
最大池和平均池的混合。最大合并和平均合并的结果与混合因子组合为
(1-blendFactor)*maximumPoolingResult + blendFactor*averagePoolingResult to yield the result. The blendFactor can be set to a value between 0 and 1.
blendFactor可以被设置为0和1之间的值
默认情况下,对池化窗口和填充的输入之间的重叠执行平均池化。如果互斥参数设置为true,则对池化窗口和未填充输入之间的重叠区域执行平均池化。
条件与限制
2D或3D由输入内核尺寸的数量确定。对于2D合并,输入和输出张量应具有3个或更大的尺寸。对于3D池,输入和输出张量应具有4个或更大的尺寸。
参阅C ++类 IPooling层或Python类 IPooling层 有关更多详细信息。
2D池化IPoolingLayer的更多相关文章
- Deep Learning 学习随记(七)Convolution and Pooling --卷积和池化
图像大小与参数个数: 前面几章都是针对小图像块处理的,这一章则是针对大图像进行处理的.两者在这的区别还是很明显的,小图像(如8*8,MINIST的28*28)可以采用全连接的方式(即输入层和隐含层直接 ...
- tensorflow 卷积/反卷积-池化/反池化操作详解
Plese see this answer for a detailed example of how tf.nn.conv2d_backprop_input and tf.nn.conv2d_bac ...
- UFLDL教程笔记及练习答案五(自编码线性解码器与处理大型图像**卷积与池化)
自己主动编码线性解码器 自己主动编码线性解码器主要是考虑到稀疏自己主动编码器最后一层输出假设用sigmoid函数.因为稀疏自己主动编码器学习是的输出等于输入.simoid函数的值域在[0,1]之间,这 ...
- Keras深度神经网络算法模型构建【输入层、卷积层、池化层】
一.输入层 1.用途 构建深度神经网络输入层,确定输入数据的类型和样式. 2.应用代码 input_data = Input(name='the_input', shape=(1600, 200, 1 ...
- 【小白学PyTorch】21 Keras的API详解(下)池化、Normalization层
文章来自微信公众号:[机器学习炼丹术].作者WX:cyx645016617. 参考目录: 目录 1 池化层 1.1 最大池化层 1.2 平均池化层 1.3 全局最大池化层 1.4 全局平均池化层 2 ...
- MinkowskiPooling池化(下)
MinkowskiPooling池化(下) MinkowskiPoolingTranspose class MinkowskiEngine.MinkowskiPoolingTranspose(kern ...
- MinkowskiPooling池化(上)
MinkowskiPooling池化(上) 如果内核大小等于跨步大小(例如kernel_size = [2,1],跨步= [2,1]),则引擎将更快地生成与池化函数相对应的输入输出映射. 如果使用U网 ...
- SoftPool:基于Softmax加权的池化操作 | 2021新文
SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作.从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品 来源:晓飞的算法工程笔记 公众号 论 ...
- 测试EntityFramework,Z.EntityFramework.Extensions,原生语句在不同的查询中的表现。原来池化与非池化设定是有巨大的影响的。
Insert测试,只测试1000条的情况,多了在实际的项目中应该就要另行处理了. using System; using System.Collections.Generic; using Syste ...
随机推荐
- 【CompletableFuture】CompletableFuture中join()和get()方法的区别
一.相同点: join()和get()方法都是用来获取CompletableFuture异步之后的返回值 二.区别: 1.join()方法抛出的是uncheck异常(即未经检查的异常),不会强制开发者 ...
- ZOJ 3781 最短路(想法好题目)
题意: 给你一个n*m的矩阵,上面只有两种字符,X或者O,每次可以同时改变相同颜色的一个连通块,上下左右连通才算连通,用最小的步数把这个图弄成全是X或者全是O,题意要是没看懂看下面的样例. ...
- hdu4561 连续最大积
题意: 连续最大积 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...
- 洛谷P1089 津津的储蓄计划
题目描述 津津的零花钱一直都是自己管理.每个月的月初妈妈给津津300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同. 为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那里 ...
- hdu3987 最小割边数
题意: 是让你求最小割之后问最小割的最少边数是多少,因为最小割不是唯一的,所以存在最小边数的问法.思路: 两个方法,一个是先一遍最大流,然后把割边全都改成流量1,其他的全都改成流量 ...
- POJ2060最小路径覆盖
题意: 有n个任务,如果时间来得及干完某些任务后还可以接着干别的任务,给一个任务清单,问最少派出去多少人能完成所有任务. 思路: 比较简单的追小路径覆盖问题了,在DAG中找到 ...
- Windows核心编程 第27章 硬件输入模型和局部输入状态
第27章 硬件输入模型和局部输入状态 这章说的是按键和鼠标事件是如何进入系统并发送给适当的窗口过程的.微软设计输入模型的一个主要目标就是为了保证一个线程的动作不要对其他线程的动作产生不好的影响. 27 ...
- C#-CMD
private static string InvokeCmd(string cmdArgs) { string Tstr = ""; Process p = new Proces ...
- Day009 冒泡排序
冒泡排序 冒泡排序无疑是最为出名的排序算法之一,总共有八大排序! 冒泡排序的代码还是相当简单的,两层循环,外层冒泡轮数,里层依次比较,江湖中人人尽皆知. 我们看到嵌套循环,应该立马就可以得出这个算法的 ...
- Java 进行时间处理
Java 进行时间处理 一.Calendar (1).Calender介绍 Calendar的中文翻译是日历,实际上,在历史上有着许多种计时的方法.所以为了计时的统一,必需指定一个日历的选择.那现在最 ...