在keras中获取某一层上的feature map实例


Posted in Python onJanuary 24, 2020

在深度学习中,如果我们想获得某一个层上的feature map,就像下面的图这样,怎么做呢?

我们的代码是使用keras写的VGG16网络,网络结构如图:

在keras中获取某一层上的feature map实例

那么我们随便抽取一层的数据吧,就拿第四层的pooling以后的结果作为输出吧,参考上面的网络结构,得到的结果维度应该是[1,56,56,128]的尺度。

怎么做呢?

首先通过keras构建模型:

model = VGG16(include_top=True, weights='imagenet')

然后设置输入和输出为:原始的输入和该层对应的输出,然后使用predict函数得到对应的结果

dense_result = Model(inputs=model.input,outputs=model.get_layer("block2_pool").output) 
dense_res = dense_result.predict(x)#使用predict得到该层结果

设置随机数(或者固定的数字)来获取某一层的结果

rand_layer = random.randint(10,128)
x_output = dense_res[0,:,:,rand_layer] #获取某一层的数据:因为原始数据维度是[1,x,x,depths]的,我们仅仅提取某一个depth对应的[x,x]维度的信息
# 获取最大值,然后对该层数据进行归一化之后投影到0-255之间
max = np.max(x_output)
print(max,"max value is :")
# 然后进行归一化操作
x_output =x_output.astype("float32") / max * 255
print(x_output.shape)

最后对该层的feature进行显示,我们使用Pillow库

# 把图像转换成image可以表示的方式进行显示
from PIL import Image as PILImage
x_output =PILImage.fromarray(np.asarray(x_output)) 
x_output1 = x_output.resize((400,400)) 
x_output1.show() 
print(np.asarray(x_output1))

结果如上图所示啦~

以上这篇在keras中获取某一层上的feature map实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中的面向对象编程详解(下)
Apr 13 Python
python3连接MySQL数据库实例详解
May 24 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
Sep 04 Python
对Python使用mfcc的两种方式详解
Jan 09 Python
python 多线程串行和并行的实例
Feb 22 Python
Python中按值来获取指定的键
Mar 04 Python
关于Python-faker的函数效果一览
Nov 28 Python
pytorch 求网络模型参数实例
Dec 30 Python
Pytorch to(device)用法
Jan 08 Python
Python获取二维数组的行列数的2种方法
Feb 11 Python
python中可以声明变量类型吗
Jun 18 Python
Python 读取位于包中的数据文件
Aug 07 Python
keras获得model中某一层的某一个Tensor的输出维度教程
Jan 24 #Python
使用Tensorflow实现可视化中间层和卷积层
Jan 24 #Python
tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式
Jan 24 #Python
keras获得某一层或者某层权重的输出实例
Jan 24 #Python
浅谈keras的深度模型训练过程及结果记录方式
Jan 24 #Python
关于Keras模型可视化教程及关键问题的解决
Jan 24 #Python
基于keras 模型、结构、权重保存的实现
Jan 24 #Python
You might like
关于php curl获取301或302转向的网址问题的解决方法
2011/06/02 PHP
用PHP+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
功能强大的PHP发邮件类
2016/08/29 PHP
php实现的pdo公共类定义与用法示例
2017/07/19 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
2019/04/17 PHP
div拖拽插件——JQ.MoveBox.js(自制JQ插件)
2013/05/17 Javascript
jQuery之ajax删除详解
2014/02/27 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
浅谈JavaScript字符串与数组
2015/06/03 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
jquery实现文本框textarea自适应高度
2016/03/09 Javascript
JavaScript常用字符串与数组扩展函数小结
2016/04/24 Javascript
jquery实现ajax提交表单信息的简单方法(推荐)
2016/08/24 Javascript
javascript this详细介绍
2016/09/19 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
2017/03/27 Javascript
简单实现js拖拽效果
2017/07/25 Javascript
微信小程序获取当前位置和城市名
2019/11/13 Javascript
浅谈vuex为什么不建议在action中修改state
2020/02/02 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
2020/11/05 Javascript
Python手机号码归属地查询代码
2016/05/04 Python
Python2和Python3.6环境解决共存问题
2018/11/09 Python
使用keras实现densenet和Xception的模型融合
2020/05/23 Python
Pycharm的Available Packages为空的解决方法
2020/09/18 Python
草莓网官网:StrawberryNET
2019/08/21 全球购物
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
会计电算化应届生求职信
2013/11/03 职场文书
校园歌手大赛策划书
2014/01/17 职场文书
项目合作意向书范本
2014/04/01 职场文书
幼儿教师演讲稿
2014/05/06 职场文书
本科毕业生求职信
2014/06/15 职场文书
法人单位适用的授权委托书
2014/09/19 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
2015年建筑工程工作总结
2015/05/13 职场文书
优秀学生主要事迹怎么写
2015/11/04 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS
JS前端使用canvas实现物体的点选示例
2022/08/05 Javascript