当前位置: 首页 > news >正文

TensorFlow2 Python深度学习 - 使用TensorBoard可视化数据

锋哥原创的TensorFlow2 Python深度学习视频教程:

https://www.bilibili.com/video/BV1X5xVz6E4w/

课程介绍

本课程主要讲解基于TensorFlow2的Python深度学习知识,包括深度学习概述,TensorFlow2框架入门知识,以及卷积神经网络(CNN),循环神经网络(RNN),生成对抗网络(GAN),模型保存与加载等。

TensorFlow2 Python深度学习 - 使用TensorBoard可视化数据

TensorBoard是TensorFlow的可视化工具包,可以帮助开发者理解、调试和优化机器学习模型。下面详细介绍TensorBoard的使用方法,包含完整示例。

官方网站:

https://www.tensorflow.org/tensorboard?hl=zh-cn

1. TensorBoard核心功能

  • 标量可视化 - 损失函数、准确率等指标

  • 图表可视化 - 模型计算图

  • 直方图 - 权重和偏置的分布

  • 投影器 - 高维数据降维可视化

  • 图像可视化 - 输入图像和生成图像

  • 文本可视化 - 文本数据

  • 超参数调优 - 超参数对模型性能的影响

2.示例

我们把前面一个分类问题示例拿过来,把训练历史数据可视化下。

TensorBoard使用也比较简单,先定义日志目录,再定义一个回调方法,model.fit()方法里,参数callbacks指定回调即可。

import datetime
​
import tensorflow as tf
from keras import Input, layers
from sklearn.datasets import load_iris
​
# 1,加载鸢尾花数据集
iris = load_iris()
X = iris.data  # 特征 花萼长度、花萼宽度、花瓣长度、花瓣宽度
y = iris.target  # 标签 0-Setosa, 1-Versicolour, 2-Virginica
​
# 2,构建分类模型
model = tf.keras.Sequential([Input(shape=(X.shape[1],)),layers.Dense(16, activation='relu'),  # 隐藏层layers.Dense(3, activation='softmax')  # 输出层 3个神经元,对应3个类别
])
​
# 创建TensorBoard回调
log_dir = "logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S")
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir)
​
# 3,编译模型
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',  # 多分类交叉熵损失函数metrics=['accuracy']  # 评估指标:准确率)
​
# 4,训练模型
history = model.fit(X, y, epochs=200, batch_size=32, verbose=1, callbacks=[tensorboard_callback])
print(f"最终损失: {history.history['loss'][-1]:.4f}, 最终准确率: {history.history['accuracy'][-1]:.4f}")

运行完后,会生成日志文件。

打开终端,输入命令:

tensorboard --logdir=logs/fit

启动tensorboard

浏览器输入:

http://localhost:6006/

我们可以看到时间序列,标量等信息可视化图。方便我们观察和优化模型。

3.主要面板说明

  1. Scalars(标量面板)

  • 显示训练和验证的损失、准确率等指标

  • 可以比较不同运行的指标

  • 支持平滑曲线显示

  1. Graphs(计算图面板)

  • 显示模型的计算图

  • 查看操作之间的依赖关系

  • 分析模型结构

  1. Distributions(分布面板)

  • 显示权重和偏置的分布变化

  • 监控梯度消失或爆炸问题

  1. Histograms(直方图面板)

  • 显示权重和偏置的直方图

  • 跟踪参数分布随时间的变化

  1. Projector(投影器面板)

  • 高维数据的降维可视化

  • 支持PCA、t-SNE等方法

http://www.dtcms.com/a/477527.html

相关文章:

  • wordpress忘记了密码忘记网站优化文章
  • 怎么看网站用哪个系统做的泰安集团网站建设方案
  • 在 openEuler 上为 LLVM/ASan 增强 wchar_t 字符串函数支持的开源贡献实践
  • git的命令
  • php mysql 网站源码北京网络营销培训
  • 科普:在分布式系统日志分析中的概念:`span`、`child_spans` 和 `trace`
  • 视频融合平台EasyCVR在智慧水利中的实战应用:构建全域感知与智能预警平台
  • 基于区块链的分布式密钥管理系统:构建去中心化、高可信的密码基础设施
  • 【Linux】进程控制(三) 自定义 Shell 命令行解释器的实现与进程协作实践
  • (论文速读)TRIP: 基于图像噪声先验的时间残差学习图像到视频生成模型详解
  • 查询建筑企业网站qq云 wordpress
  • MoonBit Pearls Vol.11:正则表达式引擎的两种实现方法:导数与 Thompson 虚拟机
  • 激光测距用高精度时间测量(TDC)电路——MS1205N
  • C语言⽂件操作讲解(总)
  • 计算时间复杂度
  • 【ComfyUI】视频替换背景
  • 天形、地气、人神:一种基于阴阳三元论的统一智能理论框架研究
  • 南通市经济开发区建设局网站网站建设企业网银e路通
  • Spring Boot 集成 WebSocket 的实战案例
  • 1-Ubuntu上创建脚本一键更换软件源
  • 【第2篇】nl2sql2025开发环境配置
  • 用 PyTorch 实现 MNIST 手写数字分类与训练损失曲线绘制
  • 获取 OpenAI API Key 全攻略:从入门配置Key到 GPT-5 Pro 集成与安全实战
  • 使用 Actix Web 构建 Web 应用
  • Rust开发环境搭建
  • MFC中一个类的成员变量值自动被篡改:多重继承带来的问题
  • 潘家园网站建设wordpress 虚拟主
  • 【第五章:计算机视觉-计算机视觉在工业制造领域中的应用】1.工业缺陷分割-(1)工业品缺陷风格基础知识:割任务定义、数据集介绍
  • Redis除了做缓存还能用来干什么
  • 【Frida Android】基础篇4:Java层Hook基础——调用静态方法