Keras输出每一层网络大小
示例代码:
model = Model(inputs=self.inpt, outputs=self.net)
model.compile(loss='categorical_crossentropy', optimizer='adadelta', metrics=['accuracy'])
print("[INFO] Method 1...")
model.summary()
print("[INFO] Method 2...")
for i in range(len(model.layers)):
print(model.get_layer(index=i).output)
print("[INFO] Method 3...")
for layer in model.layers:
print(layer.output_shape)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2019/5/20
# @Author : Chen
from keras.models import Model
from keras.layers import Dense, Flatten, Input
from keras.layers import Conv2D
class Example:
def __init__(self):
self.inpt = Input(shape=(224, 224, 3))
self.net = self.build_network()
def build_network(self):
inpt = self.inpt
x = Conv2D(64, kernel_size=(3, 3), padding='same', activation='relu')(inpt)
...
x = Flatten()(x)
x = Dense(1000)(x)
return x
def get_layer(self):
model = Model(inputs=self.inpt, outputs=self.net)
model.compile(loss='categorical_crossentropy', optimizer='adadelta', metrics=['accuracy'])
print("[INFO] Method 1...")
model.summary()
print("[INFO] Method 2...")
for i in range(len(model.layers)):
print(model.get_layer(index=i).output)
print("[INFO] Method 3...")
for layer in model.layers:
print(layer.output_shape)
if __name__ == '__main__':
ex = Example()
ex.get_layer()
输出结果:
[INFO] Method 1...
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) (None, 224, 224, 3) 0
_________________________________________________________________
conv2d_1 (Conv2D) (None, 224, 224, 64) 1792
_________________________________________________________________
flatten_1 (Flatten) (None, 3211264) 0
_________________________________________________________________
dense_1 (Dense) (None, 1000) -108370229
=================================================================
Total params: -1,083,700,504
Trainable params: -1,083,700,504
Non-trainable params: 0
_________________________________________________________________
[INFO] Method 2...
Tensor("input_1:0", shape=(?, 224, 224, 3), dtype=float32)
Tensor("conv2d_1/Relu:0", shape=(?, 224, 224, 64), dtype=float32)
Tensor("flatten_1/Reshape:0", shape=(?, ?), dtype=float32)
Tensor("dense_1/BiasAdd:0", shape=(?, 1000), dtype=float32)
[INFO] Method 3...
(None, 224, 224, 3)
(None, 224, 224, 64)
(None, 3211264)
(None, 1000)
Keras输出每一层网络大小的更多相关文章
- keras输出中间层结果,某一层的权重、偏置
转载:https://blog.csdn.net/hahajinbu/article/details/77982721 from keras.models import Sequential,Mode ...
- keras搭建密集连接网络/卷积网络/循环网络
输入模式与网络架构间的对应关系: 向量数据:密集连接网络(Dense层) 图像数据:二维卷积神经网络 声音数据(比如波形):一维卷积神经网络(首选)或循环神经网络 文本数据:一维卷积神经网络(首选)或 ...
- 不到 200 行代码,教你如何用 Keras 搭建生成对抗网络(GAN)【转】
本文转载自:https://www.leiphone.com/news/201703/Y5vnDSV9uIJIQzQm.html 生成对抗网络(Generative Adversarial Netwo ...
- 用keras作CNN卷积网络书本分类(书本、非书本)
本文介绍如何使用keras作图片分类(2分类与多分类,其实就一个参数的区别...呵呵) 先来看看解决的问题:从一堆图片中分出是不是书本,也就是最终给图片标签上:“书本“.“非书本”,简单吧. 先来看看 ...
- keras的网络结构与网络配置
摘自: https://www.cnblogs.com/Anita9002/p/8136357.html Keras的网络配置
- Qt编写调试日志输出类带网络转发(开源)
用qt开发商业程序已经九年了,陆陆续续开发过至少几十个程序,除了一些算不算项目的小工具外,大部分的程序都需要有个日志的输出功能,希望可以将程序的运行状态存储到文本文件或者数据库或者做其他处理等,qt对 ...
- 解决Latex输出PDF纸张自适应大小及中文无法显示问题
遗留的问题 之前我们进行了基于texlive定制chemfig化学式转换Python服务镜像,虽然完成pdf的输出服务改造,但是输出效果并不是太好,如下图: 这个图有两个比较严重问题 不支持中文 空白 ...
- js Date()获取时间,格式化输出,时间比较大小
1.获取时间并且格式化输出 new Date().toLocaleString('cn',{hour12:false}) //2018/12/6 17:57:15 new Date().toLocal ...
- Tomcat输出catalina.out的大小控制
资源URL:http://download.csdn.net/detail/attagain/7771065 Tomcat默认生成的日志文件catalina.out,随着时间的推移,逐渐增大,可能达到 ...
随机推荐
- 【C语言天天练(十)】结构体
引言:数据常常以成组的形式存在.在C中,使用结构能够把不同类型的值存放在一起. 结构的声明有两种 1.struct SIMPLE{ int a; char b; float c; };然后用标签SIM ...
- 【转载】基于注解的SpringMVC简单介绍
SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请 ...
- CDH版本Hbase二级索引方案Solr key value index
概述 在Hbase中,表的RowKey 按照字典排序, Region按照RowKey设置split point进行shard,通过这种方式实现的全局.分布式索引. 成为了其成功的最大的砝码. 然而单一 ...
- 编辑框的WM_MOUSELEAVE和WM_MOUSEHOVER使用
// 参考资料 // http://www.cnblogs.com/weiqubo/archive/2011/04/14/2016323.html 最近工作需要,需要自定义编辑框,改写编辑框CEdit ...
- 算法(Algorithms)第4版 练习 1.3.18
1.3.18 Deletes from the list the node immediately following x.
- PYTHON 爬虫笔记十一:Scrapy框架的基本使用
Scrapy框架详解及其基本使用 scrapy框架原理 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了 ...
- Storm worker 并行度等理解
Storm 调优是非常重要的, 仅次于写出正确的代码, 好在Storm官网上有关于worker executors tasks的介绍, http://storm.incubator.apache.or ...
- python把源代码打包成.exe文件
1.在windows命令行把当前文件夹用cd命令切换到源代码所在文件夹. 2.输入命令:pyinstaller -w -F main.py
- 详解linux上定时函数 setitimer
setitimer()为Linux的API,并非C语言的Standard Library,setitimer()有两个功能, 一是指定一段时间后,才执行某个function,二是每间格一段时间就执行某 ...
- BZOJ_2259_ [Oibh]新型计算机 _最短路
Description Tim正在摆弄着他设计的“计算机”,他认为这台计算机原理很独特,因此利用它可以解决许多难题. 但是,有一个难题他却解决不了,是这台计算机的输入问题.新型计算机的输入也很独特,假 ...