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基类函数的重载与调用实例分析
Jan 12 Python
Python实现将xml导入至excel
Nov 20 Python
Python标准库之itertools库的使用方法
Sep 07 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
python通过ffmgep从视频中抽帧的方法
Dec 05 Python
Python多进程写入同一文件的方法
Jan 14 Python
Python 批量刷博客园访问量脚本过程解析
Aug 30 Python
以SQLite和PySqlite为例来学习Python DB API
Feb 05 Python
如何基于Python实现数字类型转换
Feb 07 Python
浅析python标准库中的glob
Mar 13 Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 Python
Python 实现国产SM3加密算法的示例代码
Sep 21 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 替换模板变量实现步骤
2009/08/24 PHP
php中的登陆login实例代码
2016/06/20 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
javascript encodeURI和encodeURIComponent的比较
2010/04/03 Javascript
jQuery 学习第六课 实现一个Ajax的TreeView
2010/05/17 Javascript
jQuery Pagination Ajax分页插件(分页切换时无刷新与延迟)中文翻译版
2013/01/11 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
JS 在指定数组中随机取出N个不重复的数据
2014/06/10 Javascript
Bootstrap实现默认导航栏效果
2020/09/21 Javascript
Javascript单例模式的介绍和实例
2016/10/08 Javascript
Vue数据驱动模拟实现1
2017/01/11 Javascript
Bootstrap.css与layDate日期选择样式起冲突的解决办法
2017/04/07 Javascript
Vue axios 中提交表单数据(含上传文件)
2017/07/06 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
Vue 简单实现前端权限控制的示例
2020/12/25 Vue.js
Python基础语法(Python基础知识点)
2016/02/28 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
对python3 一组数值的归一化处理方法详解
2018/07/11 Python
实例分析python3实现并发访问水平切分表
2018/09/29 Python
对pandas的行列名更改与数据选择详解
2018/11/12 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
python标记语句块使用方法总结
2019/08/05 Python
详解Python并发编程之创建多线程的几种方法
2019/08/23 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
2019/08/23 Python
如何打包Python Web项目实现免安装一键启动的方法
2020/05/21 Python
html5实现滑块功能之type="range"属性
2020/02/18 HTML / CSS
Nanushka官网:匈牙利服装品牌
2019/08/14 全球购物
财务会计毕业生自荐信
2013/11/02 职场文书
理财计划书
2014/08/14 职场文书
婚礼证婚人演讲稿
2014/09/13 职场文书
学习党的群众路线教育实践活动心得体会范文
2014/11/03 职场文书
2016年中学清明节活动总结
2016/04/01 职场文书
女性励志书籍推荐
2019/08/19 职场文书
Python一行代码实现自动发邮件功能
2021/05/30 Python
React如何创建组件
2021/06/27 Javascript
Java后端 Dubbo retries 超时重试机制的解决方案
2022/04/14 Java/Android