zoukankan      html  css  js  c++  java
  • keras与tensorboard结合使用

    使用tensorboard将keras的训练过程显示出来(动态的、直观的)是一个绝好的主意,特别是在有架设好的VPS的基础上,这篇文章就是一起来实现这个过程。

    一、主要原理

    keras的在训练(fit)的过程中,显式地生成log日志;使用tf的tensorboard来解析这个log日志,并且通过网站的形式显示出来。

    fit的时候加上callbacks=[TensorBoard(log_dir='./tmp/log')] 将运行的结果保存在'./tmp/log'下。
    执行tensorboard 命令的时候指明: --logdir=./temp/log 

    二、实现步骤

    我们需要选择一段运行绝对正确,而且需要一定时间的算法:使用keras自己提供的“cifar10_cnn.py”运行一个比较多的

    epoch是很行的选择。它使用的是

    # Fit the model on the batches generated by datagen.flow().
    model.fit_generator(datagen.flow(x_train, y_train,
    batch_size=batch_size),
    epochs=epochs,
    validation_data=(x_test, y_test),
    workers=4)

    我不知道是否有效,将其修改为:

    model.fit_generator(datagen.flow(x_train, y_train,
    batch_size=batch_size),
    epochs=epochs,
    validation_data=(x_test, y_test),
    workers=4,
    callbacks=[TensorBoard(log_dir='./tmp/log')])

    并且运行


    很遗憾,在1024mb的vps上面,cifar_10跑不起来,最后还是选择跑mnist

    开启tensorboard

    需要注意的是,这里所有的操作都是在
    ~/keras/examples 目录下进行的,有绝对地址的说法

    三、观察结果
    本例中出现了2个项目,其他的都被隐藏起来了
    用这种方法来看曲线是很直观的

    也可以看出函数模型


    后面就是tensorboard的应用问题,但是它和keras的结合,使用本文中相关知识就可以解决了,感谢阅读,希望有所帮助。

     




  • 相关阅读:
    SimpleITK学习(二)图像读取
    SimpleITK学习(一)基本概念
    pydicom读取dicom文件报错
    【Python】模拟登录上海西南某高校校园网 (jaccount)
    Leetcode 5
    【C++】枚举类型及其用法
    Leetcode 617 合并二叉树
    【端口转发】如何在外面访问家里的内网计算机?
    Python字典列表字段重组形成新的字典
    Android使用JDBC连接数据库
  • 原文地址:https://www.cnblogs.com/jsxyhelu/p/9047847.html
Copyright © 2011-2022 走看看