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中heapq模块的用法
Jun 28 Python
Numpy掩码式数组详解
Apr 17 Python
解决Python 爬虫URL中存在中文或特殊符号无法请求的问题
May 11 Python
python爬虫的数据库连接问题【推荐】
Jun 25 Python
对Pycharm创建py文件时自定义头部模板的方法详解
Feb 12 Python
Python中的字符串切片(截取字符串)的详解
May 15 Python
Python编程中类与类的关系详解
Aug 08 Python
python 实现在无序数组中找到中位数方法
Mar 03 Python
Python IDLE或shell中切换路径的操作
Mar 09 Python
浅谈Python 函数式编程
Jun 20 Python
Python自省及反射原理实例详解
Jul 06 Python
python操作微信自动发消息的实现(微信聊天机器人)
Jul 14 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中如何将数组变量写入文件
2013/06/06 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
2014/07/22 PHP
PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
2014/10/20 PHP
基础的WordPress插件制作教程
2015/11/24 PHP
php修改数组键名的方法示例
2017/04/15 PHP
ThinkPHP5 验证器的具体使用
2018/05/31 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
JS 遮照层实现代码
2010/03/31 Javascript
避免回车键导致的页面无意义刷新的解决方法
2011/04/12 Javascript
Javascript表格翻页效果实现思路及代码
2013/08/23 Javascript
浅析用prototype定义自己的方法
2013/11/14 Javascript
JS执行删除前的判断代码
2014/02/18 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
2017/11/09 jQuery
在vue中给列表中的奇数行添加class的实现方法
2018/09/05 Javascript
Vue Extends 扩展选项用法完整实例
2019/09/17 Javascript
小程序实现图片预览裁剪插件
2019/11/22 Javascript
vue学习笔记之给组件绑定原生事件操作示例
2020/02/27 Javascript
JavaScript前端实现压缩图片功能
2020/03/06 Javascript
Python运算符重载用法实例
2015/05/28 Python
DataFrame 将某列数据转为数组的方法
2018/04/13 Python
python通过实例讲解反射机制
2019/10/17 Python
使用Python求解带约束的最优化问题详解
2020/02/11 Python
Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现
2020/04/22 Python
Python非单向递归函数如何返回全部结果
2020/12/18 Python
英国家电购物网站:Sonic Direct
2019/03/26 全球购物
澳大利亚领先的内衣店:Bendon Lingerie澳大利亚
2020/05/15 全球购物
酒店办公室文员岗位职责
2013/12/18 职场文书
出国考察邀请函
2014/01/21 职场文书
决定成败的关键——创业计划书
2014/01/24 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
MySQL修炼之联结与集合浅析
2021/10/05 MySQL
css 边框添加四个角的实现代码
2021/10/16 HTML / CSS