在北京做某个项目的时候,客户要求能够对数据进行训练.预测,同时能导出模型,还有在页面上显示训练的进度.前面的几个要求都不难实现,但在页面上显示训练进度当时笔者并没有实现.   本文将会分享如何在Keras中将模型训练的过程实时可视化.   幸运的是,已经有人帮我们做好了这件事,这个项目名叫hualos,Github的访问网址为:https://github.com/fchollet/hualos, 作者为François Chollet和Eder Santana,前面的作者就是Keras的创…
本文将会介绍如何利用Keras来实现模型的保存.读取以及加载.   本文使用的模型为解决IRIS数据集的多分类问题而设计的深度神经网络(DNN)模型,模型的结构示意图如下: 具体的模型参数可以参考文章:Keras入门(一)搭建深度神经网络(DNN)解决多分类问题. 模型保存   Keras使用HDF5文件系统来保存模型.模型保存的方法很容易,只需要使用save()方法即可.   以Keras入门(一)搭建深度神经网络(DNN)解决多分类问题中的DNN模型为例,整个模型的变量为model,我们设置…
摘要: 本文是通过Keras实现深度学习入门项目——数字手写体识别,整个流程介绍比较详细,适合初学者上手实践. 对于图像分类任务而言,卷积神经网络(CNN)是目前最优的网络结构,没有之一.在面部识别.自动驾驶.物体检测等领域,CNN被广泛使用,并都取得了最优性能.对于绝大多数深度学习新手而言,数字手写体识别任务可能是第一个上手的项目,网络上也充斥着各种各样的成熟工具箱的相关代码,新手在利用相关工具箱跑一遍程序后就能立刻得到很好的结果,这时候获得的感受只有一个——深度学习真神奇,却没能真正了解整个…
项目简介   在之前的文章keras入门(三)搭建CNN模型破解网站验证码中,笔者介绍介绍了如何用Keras来搭建CNN模型来破解网站的验证码,其中验证码含有字母和数字.   让我们一起回顾一下那篇文章的处理思路: 利用OpenCV对图像进行单个字符的切割,大概400多张图片: 对切割好的单个字符进行人工手动标记: 搭建合适的CNN模型,对标记好的数据集进行训练: 对于新的验证码,先切割单个字符,再对单个字符进行预测,组成总的预测结果.   这一次,笔者将会换种思路,使用CNN模型来破解网站的验…
tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) tensorflow笔记:多层CNN代码分析 (三) tensorflow笔记:多层LSTM代码分析 (四) tensorflow笔记:常用函数说明 (五) tensorflow笔记:模型的保存与训练过程可视化 (六)tensorflow笔记:使用tf来实现word2vec 保存与读取模型 在使用tf来训练模型的时候,难免会出现中断的情况.这时候自然就希望能够将辛辛苦苦得到的中间参数保留下来,不然…
Autoencoder 自编码 压缩与解压 原来有时神经网络要接受大量的输入信息, 比如输入信息是高清图片时, 输入信息量可能达到上千万, 让神经网络直接从上千万个信息源中学习是一件很吃力的工作. 所以, 何不压缩一下, 提取出原图片中的最具代表性的信息, 缩减输入信息量, 再把缩减过后的信息放进神经网络学习. 这样学习起来就简单轻松了. 所以, 自编码就能在这时发挥作用. 通过将原数据白色的X 压缩, 解压 成黑色的X, 然后通过对比黑白 X ,求出预测误差, 进行反向传递, 逐步提升自编码的…
项目介绍   在文章CNN大战验证码中,我们利用TensorFlow搭建了简单的CNN模型来破解某个网站的验证码.验证码如下: 在本文中,我们将会用Keras来搭建一个稍微复杂的CNN模型来破解以上的验证码. 数据集   对于验证码图片的处理过程在本文中将不再具体叙述,有兴趣的读者可以参考文章CNN大战验证码.   在这个项目中,我们现在的样本一共是1668个样本,每个样本都是一个字符图片,字符图片的大小为16*20.样本的特征为字符图片的像素,0代表白色,1代表黑色,每个样本为320个特征,取…
Keras实践:模型可视化 安装Graphviz 官方网址为:http://www.graphviz.org/.我使用的是mac系统,所以我分享一下我使用时遇到的坑. Mac安装时在终端中执行: brew install graphviz 若卡在Updating Homebrew....,需要取消brew的自动更新: 安装PyDot 加载模型并生成结构图 from keras.models import load_model from keras.utils.vis_utils import p…
在使用tf来训练模型的时候,难免会出现中断的情况.这时候自然就希望能够将辛辛苦苦得到的中间参数保留下来,不然下次又要重新开始. 保存模型的方法: #之前是各种构建模型graph的操作(矩阵相乘,sigmoid操作等...) saver=tf.train.Saver()#生成saver with tf.Session() as sess: sess.run(tf.global_variables_initializer())#先对模型进行初始化 #然后将数据丢入模型进行训练blabla #训练完之…
Keras介绍   Keras是一个开源的高层神经网络API,由纯Python编写而成,其后端可以基于Tensorflow.Theano.MXNet以及CNTK.Keras 为支持快速实验而生,能够把你的idea迅速转换为结果.Keras适用的Python版本是:Python 2.7-3.6.   Keras,在希腊语中意为"角"(horn),于2015年3月份第一次发行,它可以在Windows, Linux, Mac等系统中运行.那么,既然有了TensorFlow(或Theano.M…