keras 获取某层的输入/输出 tensor 尺寸操作


Posted in Python onJune 10, 2020

获取单输入尺寸,该层只被使用了一次。

import keras
from keras.layers import Input, LSTM, Dense, Conv2D
from keras.models import Model
a = Input(shape=(32, 32, 3))
b = Input(shape=(64, 64, 3))
 
conv = Conv2D(16, (3, 3), padding='same')
conved_a = conv(a)
 
# 到目前为止只有一个输入,以下可行:
assert conv.input_shape == (None, 32, 32, 3)

如果该层被使用了两次

import keras
from keras.layers import Input, LSTM, Dense, Conv2D
from keras.models import Model
a = Input(shape=(32, 32, 3))
b = Input(shape=(64, 64, 3))
 
conv = Conv2D(16, (3, 3), padding='same')
conved_a = conv(a)
 
# 到目前为止只有一个输入,以下可行:
assert conv.input_shape == (None, 32, 32, 3)
 
conved_b = conv(b)
# 现在 `.input_shape` 属性不可行,但是这样可以:
assert conv.get_input_shape_at(0) == (None, 32, 32, 3)
assert conv.get_input_shape_at(1) == (None, 64, 64, 3)

如果是输出,只需要改成output就好:

import keras
from keras.layers import Input, LSTM, Dense, Conv2D
from keras.models import Model
a = Input(shape=(32, 32, 3))
b = Input(shape=(64, 64, 3))
 
conv = Conv2D(16, (3, 3), padding='same')
conved_a = conv(a)
 
# 到目前为止只有一个输入,以下可行:
assert conv.input_shape == (None, 32, 32, 3)
 
conved_b = conv(b)
# 就改了output,当然尺寸我也改了
assert conv.get_output_shape_at(0) == (None, 32, 32, 16)
assert conv.get_output_shape_at(1) == (None, 64, 64, 16)

补充知识:keras中获取shape的正确方法

在keras的网络中,如果用layer_name.shape的方式获取shape信息将会返还tensorflow.python.framework.tensor_shape.TensorShape其中包含的是tensorflow.python.framework.tensor_shape.Dimension

正确的方式是使用

import keras.backend as K
K.int_shape(laye_name)

以上这篇keras 获取某层的输入/输出 tensor 尺寸操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之不要红头文件(1)
Sep 28 Python
利用Python的Twisted框架实现webshell密码扫描器的教程
Apr 16 Python
python模拟enum枚举类型的方法小结
Apr 30 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
Pandas之groupby( )用法笔记小结
Jul 23 Python
django foreignkey(外键)的实现
Jul 29 Python
Django实现跨域的2种方法
Jul 31 Python
python3的UnicodeDecodeError解决方法
Dec 20 Python
Pandas实现DataFrame按行求百分数(比例数)
Dec 27 Python
pytorch实现onehot编码转为普通label标签
Jan 02 Python
Python 如何实现访问者模式
Jul 28 Python
Python实战之实现简易的学生选课系统
May 25 Python
Python 字典中的所有方法及用法
Jun 10 #Python
在keras 中获取张量 tensor 的维度大小实例
Jun 10 #Python
Keras—embedding嵌入层的用法详解
Jun 10 #Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
Jun 10 #Python
Python3.9 beta2版本发布了,看看这7个新的PEP都是什么
Jun 10 #Python
JAVA及PYTHON质数计算代码对比解析
Jun 10 #Python
keras 使用Lambda 快速新建层 添加多个参数操作
Jun 10 #Python
You might like
详解PHP显示MySQL数据的三种方法
2008/06/05 PHP
php在文件指定行中写入代码的方法
2012/05/23 PHP
php生成PDF格式文件并且加密
2015/06/22 PHP
php获取英文姓名首字母的方法
2015/07/13 PHP
Yii2中关联查询简单用法示例
2016/08/10 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
php格式文件打开的四种方法
2018/02/24 PHP
input标签内容改变的触发事件介绍
2014/06/18 Javascript
超级简单的jquery操作表格方法
2014/12/15 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
jQuery实现在最后一个元素之前插入新元素的方法
2015/07/18 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
ES6解构赋值的功能与用途实例分析
2017/10/31 Javascript
基于react后端渲染模板引擎noox发布使用
2018/01/11 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
node.js遍历目录的方法示例
2018/08/01 Javascript
微信小程序实现登录注册tab切换效果
2020/12/29 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
[01:09]2014DOTA2国际邀请赛 TI4西雅图DOTA2 中国美女coser加油助威
2014/07/20 DOTA
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
python对于requests的封装方法详解
2019/01/03 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
详解CSS3中字体平滑处理和抗锯齿渲染
2017/03/29 HTML / CSS
美国知名日用品连锁超市:Dollar General(多来店)
2017/01/14 全球购物
大码女装:Ulla Popken
2019/08/06 全球购物
SIMON MILLER官网:洛杉矶的生活方式品牌
2020/10/19 全球购物
数据库方面面试题
2012/04/22 面试题
人力资源管理毕业生自荐信
2013/11/21 职场文书
25岁生日感言
2014/01/13 职场文书
会计专业职业规划:规划自我赢取未来
2014/02/12 职场文书
三分钟演讲稿事例
2014/03/03 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
职位证明模板
2015/06/23 职场文书
php 原生分页
2021/04/01 PHP