Keras中的模型可视化

用t-SNE可视化特征,查看特征的可分性 用t-SNE可视化特征,查看特征的可分性欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导... 阅读详情

                                                                                        “微信公众号”

Keras提供了模型可视化的函数,但是要依赖一些工具包,安装起来稍微麻烦了一点,还可能有坑,本篇文章记录我在安装使用过程中的步骤。

环境:win10、Anconda3-5.1.0、Python3.6、Keras2.1.5

(1)安装附加依赖项

1. pydot

pip install pydot_ng

官方文档中说直接安装pydot,但是由于Keras中使用了pydot.find_graphviz()函数,而这个函数在1.2.*之后的版本中被剥离了,所以不能直接安装pydot,而是安装pydot_ng。

在Keras的 keras.utils.vis_utils 中,import pydot或者pydot_ng的源码如下:

2. graphviz

2.1 pip install graphviz

2.2 到https://graphviz.gitlab.io/_pages/Download/Download_windows.html 下载graphviz-2.38.msi文件,并安装。我的安装目录是“E:\graphviz\2.38”。

2.3 找到你安装pydot_ng的目录,E:\***\Anaconda3\envs\python36\Lib\site-packages\pydot_ng,在pydot_ng文件夹下存在__init__.py文件,修改__init__.py文件代码,使得pydot找到graphviz。

修改步骤如下:

i. 找到def find_graphviz(): 函数。

ii. 注释掉 #Method 1(Windows only) 下面的if中部分。

iii. #Method 3(Windows only) 添加 path=r"E:\graphviz\2.38\bin",该路径指向刚才下载的graphviz-2.38.msi的安装路径中的bin。

(2)可视化模型

from keras.utils.vis_utils import plot_model
from keras.models import Sequential
from keras.layers.core import Dense, Dropout, Activation
from keras.layers.embeddings import Embedding
from keras.layers.recurrent import LSTM

model = Sequential()
model.add(Embedding(input_dim=1024, output_dim=256, input_length=50))
model.add(LSTM(128))  # try using a GRU instead, for fun
model.add(Dropout(0.5))
model.add(Dense(1))
model.add(Activation('sigmoid'))

plot_model(model, to_file='model1.png', show_shapes=True)

参数show_shapes为false时是不带输出的形状。

在该文件的同目录下产生模型的可视化图像如下:

 

(3)可能出现的错误:

graphviz 要按上面的步骤进行安装,该修改源码地方要认真细致的修改。我在安装的时候就在graphviz这里花费了好多时间。

 

Reference:

(1)http://www.cnblogs.com/combfish/p/6559741.html

(2)https://blog.youkuaiyun.com/shashoudouhenleng/article/details/75174912

(3)https://blog.youkuaiyun.com/lk7688535/article/details/52882408

(4)https://blog.youkuaiyun.com/chenghtao/article/details/78356797

 

------------------2018年6月29号补充-----------------------------

另一种可视化模型的方法:

# coding:utf-8
from keras.layers.embeddings import Embedding
from keras.models import Sequential
from keras.layers.core import Flatten
from keras.layers.core import Dense
from keras.layers.recurrent import LSTM
from keras.utils.vis_utils import plot_model
from keras.preprocessing.text import one_hot
from keras.preprocessing.sequence import pad_sequences
import numpy as np

# define documents定义文档
docs = ["well done!","Good work","nice work","Excellent!","Weak",
        "Poor effort!","not good","poor work","Could have done better."]

# define class labels 定义分类标签
labels = [1,1,1,1,1,0,0,0,0,0]

# integer encode the documents
vocab_size = 50
encoded_docs = [one_hot(d,vocab_size) for d in docs]
# print(encoded_docs)

# pad documents to a max length of 4 words 将不足长度的用0填充长度为4
max_length =4
padded_docs = pad_sequences(encoded_docs,maxlen=max_length,padding="post")
# print(padded_docs)

# define the model 定义模型
model = Sequential()
model.add(Embedding(vocab_size,8,input_length=max_length))
model.add(Flatten())
model.add(Dense(1,activation="sigmoid"))
# compile the model 编译
model.compile(optimizer="adam",loss="binary_crossentropy",metrics=["acc"])
# summarize the model 打印模型信息
print(model.summary())

通过print(model.summary())函数打印模型信息,如下图所示:

 

Reference:

(1)https://juejin.im/entry/5acc23f26fb9a028d1416bb3

keras的模型可视化 keras提供了模型可视化的函数,但是要依赖一些工具,我们在win7系统安好Anaconda2和keras后,还要进行如下操作:1、安装graphviz模块1.1 命令行输入 pip install graphviz1.2 安装graphviz软件。官网地址为http://www.graphviz.org/官网中有解压版和安装版,推荐解压版,因为我使用解压版成功了,安装版好像出了点问题- -1.3 阅读详情

相关推荐

基于keras的图像分类CNN模型的搭建以及可视化(附详细代码)

基于keras的图像分类CNN模型的搭建以及可视化 本文借助keras实现了热图像的分类模型的搭建,以及可视化的工作。本文主要由以下内容组成。 Keras模型介绍 CNN模型搭建 模型可视化 Keras模型介绍 1. 简介 Keras 是 Google 的一位工程师François Chollet 开发的一个框架,能够有效地利用TensorFlow进行开发。keras之所...

fmbao的博客 1万+

基于keras的神经网络特征图可视化

通过model.summary可以获得各个层的名字,通过名字进行索引。可以将每一层的特征图进行输出在此由衷感谢,特此记录,有啥不懂的欢迎讨论(4条消息) keras如何可视化 模型预测时的 中间 特征图,网络模型如何可视化中间层特征图以及如何打印网络结构_EvaJason的博客-优快云博客...

abinghui123的博客 1013

keras模型可视化

keras模型可视化功能: graphviz模块与pydot模块的安装:直接在Anaconda里面搜graphviz和pydot,然后下载即可。 如下图: 代码示例: from keras.utils import plot_model from keras.models import Sequential from keras.layers.core import Dense, Dr...

weixin_43338538的博客 419

对使用keras代码的模型中间层可视化

keras或者tf.keras在部署神经网络结构时十分方便。但是很多时候也需要多余训练的中间过程可视化。 模型保存 对于keras可使用save()方法保存模型的参数。 model.save('model_32.h5') 这里 model 是网络需要训练的模型。keras使用HDF5文件系统来保存模型。可使用可视化工具HDFViewer来查看里面的层和数据。 在里面不仅包含需要训练的权重,也包含...

yimodanfeng的博客 1377

使用keras框架编写的深度模型 输出及每一层的特征可视化

使用训练好的模型进行预测的时候,为分析效果,通常需要对特征提取过程中的特征映射做可视化操作 本文以keras为例,对特征可视化操作进行详解。 一、首先,对模型的最后输出层进行特征可视化 from keras import models #使用matlpotlib模块进行绘图的操作 import matplotlib.pylot as plt #images是一个batch的输入图像,b...

qq_35153620的博客 6208

tsne-visualization:使用Tensorflow和Keras中的预训练网络对大型数据集图像进行TSNE可视化

可视化 使用Tensorflow和Keras中的预训练网络对大型数据集图像进行TSNE可视化 依存关系 麻木 张量流 凯拉斯 keras_vggface scikit学习 matplotlib glob2 皮尔 用法: 执行python tsne-visualization.py --help进行使用

keras 模型可视化

模型可视化 keras.utils.vis_utils模块提供了一些绘制 Keras 模型的实用功能(使用graphviz)。 以下实例,将绘制一张模型图,并保存为文件: from keras.utils import plot_model plot_model(model, to_file='model.png') plot_model有 4 个可选参数: show_shap...

dujuancao11的博客 998

Python-PythonTensorflowKeras实现参数tSNE算法

Python / Tensorflow / Keras实现参数tSNE算法

[Keras] 模型可视化 plot_model

Keras中提供了一个神经网络可视化的函数plot_model,并可以将可视化结果保存在本地: from keras.utils.vis_utils import plot_model model = unet() plot_model(model, to_file='model-unet.png') 我这里可视化了一个U-net模型 ...

thunder_k的博客 1万+

基于模型驱动的嵌入式应用软件可视化开发

基于模型驱动的嵌入式应用软件可视化开发。。。。。。。。。。。。。。。。。。。。

keras 特征图可视化实例(中间层)

今天小编就为大家分享一篇keras 特征图可视化实例(中间层),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

keras模型可视化环境配置

首先是要安装依赖项 pip install pydot_ng pip install graphviz 然后是安装graphviz 到graphviz网站下载graphviz-2.38.msi文件,并安装。将安装路径C:...\graphviz\bin加到环境变量里。(这里一定要加,不然会报错GraphViz's executables not found : Anaconda-3) ...

ZMT1849101245的专栏 415

从Delphi 7到Delphi 10.4.1的代码迁移:关键挑战与实用解决方案

本文详细探讨了从Delphi 7升级到Delphi 10.4.1进行代码迁移的关键挑战与实用解决方案。核心内容包括应对Unicode字符串处理、64位数据类型变化、VCL/FMX界面框架选择、第三方组件迁移以及数据库层现代化改造(如从BDE迁移至FireDAC)。文章为开发者提供了系统的迁移前准备、核心问题攻克策略及测试落地指南,旨在帮助团队高效、平稳地完成系统现代化升级。

weixin_29250403的博客 534

Keras网络模型可视化方法

Keras网络模型可视化 讲述了Keras模型可视化安装包步骤过程以及展示了Keras模型可视化代码实例。

张某文_Lambda的博客 1171

零样本缺陷检测新体验:用AnomalyGPT大模型快速搭建智能质检系统(附Win10适配指南)

本文详细介绍了如何利用AnomalyGPT大模型在Windows 10系统上快速搭建零样本工业缺陷检测系统。通过实战指南,涵盖从环境部署、模型准备到工程化落地的全过程,包括将模型封装为API服务、接入工业相机以及开发可视化监控看板,为制造业智能质检提供了一套高效、低门槛的本地部署解决方案。

weixin_29094775的博客 310

MATLAB2022b安装

图文并茂,手把手教会你怎么安装MATLAB2022b

1万+

keras可视化模型

时间:20190612 生成模型 from keras.models import Model from keras.layers import Input, Dense from keras.datasets import mnist from keras.utils import np_utils (x_train, y_train), (x_test, y_test) = mnist....

Bing's Blog 1661

腾讯云TDSQL MySQL版 - 开发指南兼容性

语言结构 分布式实例支持所有 MySQL 使用的文字格式,包括: String Literals Numeric Literals Date and Time Literals Hexadecimal Literals Bit-Value Literals Boolean Literals NULL Values String Literals String Literals 是一个 bytes 或者 characters 的序列,两端被单引号'或者双引号"包围,TDSQL MySQL版

weixin_43872058的博客 911

Keras中模型架构可视化

Keras中模型架构可视化 文章目录Keras中模型架构可视化1. 安装相关Python package2. 安装graphviz3. 设置graphviz环境变量4. 参考样例 1. 安装相关Python package pip install graphviz pip install pydot pip install pydot-ng 2. 安装graphviz  ...

zhf026的博客 395

关于RTP时间戳以及播放器对时间戳的处理

首先,了解时间戳几个基本概念: 时间戳单位:时间戳计算的单位不是秒之类的单位,而是由采样频率所代替的单位,这样做的目的就是为了是时间戳单位更为精准。比如说一个音频的采样频率为8000Hz,那么我们可以把时间戳单位设为1 / 8000。 时间戳增量:相邻两帧之间的时间差(以时间戳单位为基准)。 采样频率: 有些地方也叫时钟频率,即 每秒钟抽取样本的次数,例如音频的采...

toshiba689的专栏 3052

不止是回退SDK:深入解读UE5.2编译时那个烦人的C4756警告与INFINITY宏的变迁

本文深入解析了UE5.2源码编译时出现的C4756警告及其背后的技术原因,探讨了Windows SDK中INFINITY宏的变迁对Unreal Engine的影响。文章详细介绍了微软修改INFINITY定义的技术考量,并提供了UE5.2应对此类问题的灵活解决方案,包括通过BuildConfiguration.xml文件精确控制工具链版本,确保构建系统的可重复性和可配置性。

weixin_27180827的博客 313

keras 模型可视化以及常见错误

keras 可以通过如下方式可视化当前模型: from keras.utils import plot_model plot_model(model, to_file='model_plot.png', show_shapes=True) 在一些环境上运行上述命令,可能会出现以下错误: 没有pydot 包等提示,使用pip install pydot 命令安装pydot 使用pip i...

Donald Su 506

BUCK-BOOST升降压电路Multisim电路仿真分析

本文分析了三极管型BUCK-BOOST升降压开关电源的工作原理。该电路结合了BUCK降压和BOOST升压拓扑,通过控制三极管Q1的高频通断,使电感L1周期性储能和释能,实现输出电压可高于或低于输入电压且极性相反。详细阐述了Q1导通和关断阶段的工作过程,推导了输出电压与占空比的关系式Vo=-D/(1-D)*Vi,并分析了不同占空比下的工作模式(降压、升压)。通过Multisim仿真验证了理论分析,当D=25%时输出降压至1.6V,D=60%时输出升压至7.5V。电路具有升降压灵活、极性反转、效率高等特点,适用

XU157303764的博客 1437

tf-keras-vis:深度学习模型的可视化工具

tf-keras-vis:深度学习模型的可视化工具 项目介绍 tf-keras-vis 是一个针对 TensorFlow 2.0+ 中 keras.Model 的可视化工具包。它旨在帮助开发者更好地理解和调试深度学习模型。通过提供多种可视化方法,tf-keras-vis 使得开发者可以直观地观察模型内部的响应情况、特征图、类激活映射(CAMs)和显著性图等。 项目技术分析 tf-keras-vis...

gitblog_00680的博客 783

2026年紫光同创数字IC笔试试卷带答案

FPGA基础知识与设计要点摘要 本文围绕FPGA与数字IC设计核心概念,通过单选题、波形分析题、多选题和简答题形式,系统梳理了以下关键知识点: FPGA基础架构 查找表(LUT)是实现组合逻辑的基本单元(题1) CLB包含LUT、触发器和进位链,后者加速算术运算(题6,10) 布局布线优化是减少关键路径延迟的核心方法(题7) 时序分析要点 建立时间(时钟沿前数据需稳定)与保持时间(时钟沿后需保持)的定义(题2,简答1) 亚稳态成因及两级同步器处理跨时钟域信号的方法(多选题1,波形题5) 特殊设计技术 异步复

Open 117

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

keras模型信息的保存与可视化

关于keras与tensorflow还有theano之间的关系,可以戳这里 关于keras模型的创建与信息查看,可以戳这里 此篇文章做两件事情,一件事情是将第二篇博客里的网络模型信息保存到一个文件里,另一件事情是将该模型可视化。 1. 拷贝运行博客中提供的代码 至此,程序正常运行并且给出了模型的相关信息,但是这个信息是打印在命令窗口中的,在运行一些工程型的代码时候,为了监控训练测试模式的过程,也会想命令窗口中打印一些实时的监控信息,这些信息会冲走上面这个网络信息,为了随时能够查看这个信息,最好是

李江龙的博客 1523

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: TensorFlow中Saver保存读取
下一篇: 深度学习中embedding层的理解
Microstrong0305
Microstrong0305 领域专家: 算法与数据结构技术领域 领域专家: 算法与数据结构技术领域
博客等级 码龄12年 6405粉丝 312原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值