基于keras输出中间层结果的2种实现方式


Posted in Python onJanuary 24, 2020

1、使用函数模型API,新建一个model,将输入和输出定义为原来的model的输入和想要的那一层的输出,然后重新进行predict.

#coding=utf-8
import seaborn as sbn
import pylab as plt
import theano
from keras.models import Sequential
from keras.layers import Dense,Activation
 
 
from keras.models import Model
 
model = Sequential()
model.add(Dense(32, activation='relu', input_dim=100))
model.add(Dense(16, activation='relu',name="Dense_1"))
model.add(Dense(1, activation='sigmoid',name="Dense_2"))
model.compile(optimizer='rmsprop',
    loss='binary_crossentropy',
    metrics=['accuracy'])
 
# Generate dummy data
import numpy as np
#假设训练和测试使用同一组数据
data = np.random.random((1000, 100))
labels = np.random.randint(2, size=(1000, 1))
 
# Train the model, iterating on the data in batches of 32 samples
model.fit(data, labels, epochs=10, batch_size=32)
#已有的model在load权重过后
#取某一层的输出为输出新建为model,采用函数模型
dense1_layer_model = Model(inputs=model.input,
          outputs=model.get_layer('Dense_1').output)
#以这个model的预测值作为输出
dense1_output = dense1_layer_model.predict(data)
 
print dense1_output.shape
print dense1_output[0]

2、因为我的后端是使用的theano,所以还可以考虑使用theano的函数:

#这是一个theano的函数
dense1 = theano.function([model.layers[0].input],model.layers[1].output,allow_input_downcast=True)
dense1_output = dense1(data) #visualize these images's FC-layer feature
print dense1_output[0]

效果应该是一样的。

以上这篇基于keras输出中间层结果的2种实现方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
对比Python中__getattr__和 __getattribute__获取属性的用法
Jun 21 Python
Python抓取手机号归属地信息示例代码
Nov 28 Python
Python实现视频下载功能
Mar 14 Python
Python实现迭代时使用索引的方法示例
Jun 05 Python
解决Mac安装scrapy失败的问题
Jun 13 Python
python实现Dijkstra静态寻路算法
Jan 17 Python
python 定时任务去检测服务器端口是否通的实例
Jan 26 Python
pytorch自定义初始化权重的方法
Aug 17 Python
关于Python核心框架tornado的异步协程的2种方法详解
Aug 28 Python
wxPython色环电阻计算器
Nov 18 Python
tensorflow2.0教程之Keras快速入门
Feb 20 Python
python数字类型和占位符详情
Mar 13 Python
tensorflow 保存模型和取出中间权重例子
Jan 24 #Python
tensorflow 模型权重导出实例
Jan 24 #Python
在Tensorflow中查看权重的实现
Jan 24 #Python
tensorflow求导和梯度计算实例
Jan 23 #Python
Tensorflow的梯度异步更新示例
Jan 23 #Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 #Python
Tensorflow实现部分参数梯度更新操作
Jan 23 #Python
You might like
PHP 字符串 小常识
2009/06/05 PHP
php随机输出名人名言的代码
2012/10/07 PHP
memcache命令启动参数中文解释
2014/01/13 PHP
php准确计算复活节日期的方法
2015/04/18 PHP
PHP环境搭建(php+Apache+mysql)
2016/11/14 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
图片自动更新(说明)
2006/10/02 Javascript
javaScript 关闭浏览器 (不弹出提示框)
2010/01/31 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
浅谈javascript获取元素transform参数
2015/07/24 Javascript
BootStrap智能表单demo示例详解
2016/06/13 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
2016/12/16 Javascript
JavaScript实现256色转灰度图
2017/02/22 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
2018/09/29 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
vue transition 在子组件中失效的解决
2019/11/12 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
列举Python中吸引人的一些特性
2015/04/09 Python
Python3 伪装浏览器的方法示例
2017/11/23 Python
pytorch多GPU并行运算的实现
2019/09/27 Python
JupyterNotebook设置Python环境的方法步骤
2019/12/03 Python
python如何实现单链表的反转
2020/02/10 Python
python使用gdal对shp读取,新建和更新的实例
2020/03/10 Python
如何利用Python动态模拟太阳系运转
2020/09/04 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
利用css3实现的简单的鼠标悬停按钮
2014/11/04 HTML / CSS
css3实现背景动态渐变效果
2019/12/10 HTML / CSS
采用专利算法搜索最廉价的机票:CheapAir
2016/09/10 全球购物
在线购买廉价折扣书籍和小说:BookOutlet.com
2018/02/19 全球购物
代理班主任的自我评价
2014/02/04 职场文书
2014年法制宣传日活动方案
2014/11/02 职场文书
认真学习保证书
2015/02/26 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
nginx对http请求处理的各个阶段详析
2021/03/31 Servers
Windows Server 2012 修改远程默认端口3389的方法
2022/04/28 Servers