栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

TensorFlow工具快速入门教程8 TensorBoard简介

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

TensorFlow工具快速入门教程8 TensorBoard简介

什么是TensorBoard?

Tensorboard是可视化图形界面。并包含理解,调试和优化模型的其他工具。

图片.png

  • Scalars:在模型训练期间显示不同的有用信息

  • Graphs:显示模型

  • Histogram:使用直方图显示权重

  • Distribution:显示权重分布

  • Projector 显示主成分分析和T-SNE算法。该技术用于降维

如果查看图表,可以了解模型的工作原理。

  • 数据排队模型:将等于批量大小的数据量推送到模型,即每次迭代后的数据馈送数量

  • 将数据提供给Tensors

  • 训练模型

  • 显示训练期间的批次数。将模型保存在磁盘上。

图片.png

tensorboard背后的基本思想是神经网络为黑盒子,我们需要工具来检查这个盒子里面的东西。您可以将tensorboard想象成一个手电筒。

它有助于理解操作之间的依赖关系,如何计算权重,显示损失函数和许多其他有用信息。当您将所有这些信息组合在一起时,您就拥有了很好的工具来调试并改进模型。

图片.png

神经网络决定如何在模型预测结果之前连接不同的“神经元”和多少层。一旦定义了体系结构,您不仅需要训练模型,还需要使用度量来计算预测的准确性。该度量被称为损失函数。目标是最小化损失函数。换句话说,这意味着模型减少了错误。所有机器学习算法将重复多次计算,直到损失达到更平坦的线。要最大限度地减少此丢失功能,您需要定义学习率。这是您希望模型学习的速度。如果您将学习率设置得太高,则模型没有时间学习任何东西。左图是这种情况。线条正在上下移动,这意味着模型预测纯粹的猜测结果。右图显示损失在迭代中逐渐减少,直到曲线变平,这意味着模型找到了解决方案。

TensorBoard是一个很好的工具,可以显示这些指标并突出潜在的问题。神经网络在找到解决方案之前可能需要数小时到数周。

TensorBoard经常更新指标。在这种情况下,您无需等到最后才能看到模型是否正确训练。您可以打开TensorBoard检查训练的进展情况,并在必要时进行适当的更改。

TensorBoard快速入门

代码:

#!/usr/bin/env python3# -*- coding: utf-8 -*-# Author:    xurongzhong#126.com wechat:pythontesting qq:37391319# 技术支持 钉钉群:21745728(可以加钉钉pythontesting邀请加入) # qq群:144081101 591302926  567351477# CreateDate: 2018-11-21import numpy as npimport tensorflow as tf

X_train = (np.random.sample((10000,5)))
y_train =  (np.random.sample((10000,1)))
X_train.shape

feature_columns = [
    tf.feature_column.numeric_column('x', shape=X_train.shape[1:])]
DNN_reg = tf.estimator.DNNRegressor(feature_columns=feature_columns,# Indicate where to store the log file    
     model_dir='train/linreg',    
     hidden_units=[500, 300],    
     optimizer=tf.train.ProximalAdagradOptimizer(      
          learning_rate=0.1,      
          l1_regularization_strength=0.001    
      )
)# Train the estimatortrain_input = tf.estimator.inputs.numpy_input_fn(    
     x={"x": X_train},    
     y=y_train, shuffle=False,num_epochs=None)
DNN_reg.train(train_input,steps=3000)

执行 tensorboard --logdir=./train/linreg,就可以在网页打开tensorboard 。比如:http://172.20.16.98:6006。

图片.png



作者:python作业AI毕业设计
链接:https://www.jianshu.com/p/cf15625250ec


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/221953.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号