在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中yield生成器的用法
Aug 05 Python
解决Python requests 报错方法集锦
Mar 19 Python
Python装饰器模式定义与用法分析
Aug 06 Python
python实现单链表中删除倒数第K个节点的方法
Sep 28 Python
Python3 SSH远程连接服务器的方法示例
Dec 29 Python
python对绑定事件的鼠标、按键的判断实例
Jul 17 Python
基于spring boot 日志(logback)报错的解决方式
Feb 20 Python
基于Python的OCR实现示例
Apr 03 Python
Python如何实现感知器的逻辑电路
Dec 25 Python
pytorch中的model=model.to(device)使用说明
May 24 Python
新手必备Python开发环境搭建教程
May 28 Python
Python代码实现双链表
May 25 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
我的论坛源代码(二)
2006/10/09 PHP
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
php无限遍历目录示例
2014/02/21 PHP
推荐一本PHP程序猿都应该拜读的书
2014/12/31 PHP
IIS 7.5 asp Session超时时间设置方法
2017/04/17 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
2018/10/18 PHP
有趣的javascript数组定义方法
2010/09/10 Javascript
js取float型小数点后两位数的方法
2014/01/18 Javascript
Javascript实现单张图片浏览
2014/12/18 Javascript
JavaScript判断undefined类型的正确方法
2015/06/30 Javascript
javascript 判断页面访问方式电脑或者移动端
2016/09/19 Javascript
利用jQuery实现一个简单的表格上下翻页效果
2017/03/14 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
详解基于mpvue的小程序markdown适配解决方案
2018/05/08 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
js判断浏览器的环境(pc端,移动端,还是微信浏览器)
2020/12/24 Javascript
taro 实现购物车逻辑的实例代码
2020/06/05 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
JS继承实现方法及优缺点详解
2020/09/02 Javascript
vue+echarts+datav大屏数据展示及实现中国地图省市县下钻功能
2020/11/16 Javascript
Python实现文件按照日期命名的方法
2015/07/09 Python
分享Python文本生成二维码实例
2016/01/06 Python
python 获取url中的参数列表实例
2018/12/18 Python
python os模块简单应用示例
2019/05/23 Python
Python Django 简单分页的实现代码解析
2019/08/21 Python
Python之关于类变量的两种赋值区别详解
2020/03/12 Python
Python工程师必考的6个经典面试题
2020/06/28 Python
医学生求职自荐信
2013/10/25 职场文书
2014年派出所工作总结
2014/11/21 职场文书
先进单位事迹材料
2014/12/25 职场文书
求职信内容一般写什么?
2015/03/20 职场文书
2016年优秀共青团员事迹材料
2016/02/25 职场文书
奖学金申请书(范文)
2019/08/14 职场文书