TensorFlow中关于pad函数的详细理解
来源:互联网 发布:淘宝可以上闲鱼吗 编辑:程序博客网 时间:2024/05/29 16:22
今天用到pad函数,看文档看了老半天,后面终于弄懂了。
以下是本人的理解总结
文档的内容:
# 't' is [[1, 2, 3], [4, 5, 6]].
# 'paddings' is [[1, 1,], [2, 2]].
# 'constant_values' is 0.
# rank of 't' is 2.
pad(t, paddings, "CONSTANT") ==> [[0, 0, 0, 0, 0, 0, 0],
[0, 0, 1, 2, 3, 0, 0],
[0, 0, 4, 5, 6, 0, 0],
[0, 0, 0, 0, 0, 0, 0]]
pad(t, paddings, "REFLECT") ==> [[6, 5, 4, 5, 6, 5, 4],
[3, 2, 1, 2, 3, 2, 1],
[6, 5, 4, 5, 6, 5, 4],
[3, 2, 1, 2, 3, 2, 1]]
pad(t, paddings, "SYMMETRIC") ==> [[2, 1, 1, 2, 3, 3, 2],
[2, 1, 1, 2, 3, 3, 2],
[5, 4, 4, 5, 6, 6, 5],
[5, 4, 4, 5, 6, 6, 5]]
思路理解:
tf.pad的使用,第一个是填充0,后面两个是复制前几行或者列
[1,1],[2,2]
[1,1]指的是向上扩充一行,向下扩充一行
[2,2]指的是向左扩充2列,向右扩充2列
1.CONSTANT模式,按上下左右填充几行或者几列的0
paddings=[[1,1],[2,2]]的意思是向上填充一行0,向下填充一行0,向左填充二行0,向右填充两行0
向上填充一行0,变成
0,0,0
1,2,3
4,5,6
向下填充一行0
0,0,0
1,2,3
4,5,6
0,0,0
向左填充二行0
0,0,0,0,0
0,0,1,2,3
0,0,4,5,6
0,0,0,0,0
向右填充两行0
0,0,0,0,0,0,0
0,0,1,2,3,0,0
0,0,4,5,6,0,0
0,0,0,0,0,0,0
2.REFLECT模式,首先要定好边缘(可理解为对称轴),按边缘翻(边缘不复制)
比如刚开始
1, 2, 3
4, 5, 6
向上翻一行,以123为对称轴
4,5,6
1,2,3
4,5,6
向下翻一行,以4,5,6为对称轴
4,5,6
1,2,3
4,5,6
1,2,3
以列4,1,4,1为对称轴,向左翻二行
6,5,4,5,6
3,2,1,2,3
6,5,4,5,6
3,2,1,2,3
以列6,3,6,3为对称轴,向右翻2行
6,5,4,5,6,5,4
3,2,1,2,3,2,1
6,5,4,5,6,5,4
3,2,1,2,3,2,1
3.SYMMETRIC类似的,唯一的区别是把边缘(也就是对称轴)也复制了,从对称轴开始复制
比如刚开始
1, 2, 3
4, 5, 6
向上翻一行,以123为对称轴,从对称轴开始复制
1,2,3
1,2,3
4,5,6
向下翻一行,以4,5,6为对称轴
1,2,3
1,2,3
4,5,6
4,5,6
以列1,1,4,4为对称轴,向左翻二行
2,1,1,2,3
2,1,1,2,3
5,4,4,5,6
5,4,4,5,6
以列3,3,6,6为对称轴,向右翻2行
2,1,1,2,3,3,2
2,1,1,2,3,3,2
5,4,4,5,6,6,5
5,4,4,5,6,6,5
阅读全文
0 0
- TensorFlow中关于pad函数的详细理解
- Tensorflow中pad函数解析
- Tensorflow的pad
- tensorflow中的pad函数解释
- TensorFlow中.eval()函数理解
- CTS测试中手机或是pad的详细配置环境
- Tensorflow中关于Tensor和Variable的理解
- tensorflow 函数接口的理解
- tensorflow中张量的理解
- tensorflow中tensor的理解
- [TensorFlow 学习笔记-08]tf.pad函数源码解析
- tensorflow tf.pad解析
- tensorflow学习(2):tensorflow中基本概念的理解
- 关于pad、智能手机功能增进的设想
- 关于手机和各种pad的定位
- 关于KMP算法中next函数的详细解析
- 对Tensorflow中tensor的理解
- 关于Linux的进程通信中信号的函数理解
- 滑动菜单DrawerLayout详解(实时更新,未完待续...)
- linux下java开发环境大全
- Dijkstr单元最短路径
- 无法打开**,因为此版本的应用程序不支持其项目类型(.vcproj)
- RunLoop使用
- TensorFlow中关于pad函数的详细理解
- C++定义理解
- linux+vsCode+makefile -- 调试C
- Android上JAVA Socket通信解析(一)初识socket通信
- 不要小看Word中的这4个小技巧,全会的是大神!
- windows git 提示 warning: LF will be replaced by CRLF 的解决方法
- 如何负责一个项目的质量保证工作?
- Java多线程编程核心技术学习(二)
- CodeForces