深度学习之tensorboard可视化工具

(1)什么是tensorboard

tensorboard是TensorFlow 的一个可视化工具包,提供机器学习实验所需的可视化和工具,该工具的功能如下:

  • 跟踪和可视化指标,例如损失和精度
  • 可视化模型图(操作和层)
  • 查看权重、偏差或其他张量随时间变化的直方图
  • 将嵌入投影到低维空间
  • 显示图像、文本和音频数据
  • 分析 TensorFlow 程序
  • 以及更多

(2)怎样使用tensorboard可视化记录的指标

初次接触深度的学习的娃,在复现模型的时候可能会碰到如下样式的文件夹以及如下样式文件

这就是深度学习模型在训练过程中记录下来的相关指标和数据,直接打来文件啥也看不明白,于是需要使用到tensorboard工具

直接在服务器终端输入tensorboard --logdir=创建的文件夹名字(比如我的就是tensorboard_dir)

运行后黄颜色的框框里会出现一个网址

点击进入上面的网址,就能看到生成的曲线图了

(3)怎样使用tensorboard保存生成的图片

先点到SCALARS,然后将左侧两个选项都勾选上

点击这个下载按钮

点击下载成SVC文件

 这里提供一个脚本将将svg转换成png图片

#! encoding:UTF-8
import cairosvg
import osdef exportsvg(fromDir, targetDir, exportType):print("开始执行转换命令...")num = 0for a, f, c in os.walk(fromDir):                                  # 使用walk遍历源目录for fileName in c:path = os.path.join(a, fileName)                          # 获得文件路径if os.path.isfile(path) and fileName[-3:] == "svg":       # 判断文件是否为svg类型num += 1fileHandle = open(path)svg = fileHandle.read()fileHandle.close()exportPath = os.path.join(targetDir, fileName[:-3] + exportType)  # 生成目标文件路径exportFileHandle = open(exportPath, 'w')if exportType == "png":try:cairosvg.svg2png(bytestring=svg, write_to=exportPath)  # 转换为png文件except:print("error in convert svg file : %s to png."%(path))elif exportType == "pdf":try:cairosvg.svg2pdf(bytestring=svg, write_to=exportPath)     # 转换为pdf文件except:print("error in convert svg file: %s to pdf."%(path))exportFileHandle.close()print("Success Export ", exportType, " -> ", exportPath)print("已导出 ", num, "个文件")                  # 统计转换文件数量
svgDir = r'test'                # svg文件夹路径
exportDir = r'test'            # 目的文件夹路径
exportFormat = 'png'                               # 转换类型
if not os.path.exists(exportDir):os.mkdir(exportDir)
exportsvg(svgDir, exportDir, exportFormat)          # 转换主函数

如果遇到这样的报错

OSError: no library called "cairo-2" was found

no library called "cairo" was found

no library called "libcairo-2" was found

解决方案如下:

(1)先点这个链接下载一个文件:https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases/download/2021-01-30/gtk2-runtime-2.24.33-2021-01-30-ts-win64.exe

(2)然后双击exe文件一路安装就行,或者自己选择一个路径安装(不要出现中文路径!!!!!),这和安装软件没有什么区别

(3)安装完事后在系统变量Path中会多一个下图所示的路径,如果没有,自己手动添加一下。

 (4)重启pycharm再运行代码就好了 

(4)tensorboard使用指南

tensorboard是有官方使用指南的

网址:开始使用 TensorBoard  |  TensorFlow

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/19450.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【动态规划】子序列系列

文章目录 动态规划(子序列系列)1. 最长递增子序列2. 摆动序列3. 最长递增子序列的个数4. 最长数对链5. 最长定差子序列6. 最长的斐波那契子序列的长度7. 最长等差数列8. 等差数列划分 || - 子序列 动态规划(子序列系列) 1. 最长递…

mac电脑访问windows共享文件夹连接不上(设置445端口)

前提:首先需要保证mac和windows都在同一局域网内,如果不在肯定是连不上的,就不用往下看了。 事情是这样的,公司入职发了mac电脑,但是我是window重度用户,在折腾mac的过程中,有许多文件需要从wi…

金融数学方法:蒙特卡洛模拟

1.方法介绍 蒙特卡洛模拟是一种基于概率和统计的数值计算方法,用于解决各种复杂问题。它以概率统计为基础,通过随机抽样和重复实验的方式进行模拟,从而得到问题的近似解。它的基本思想是通过大量的随机样本来近似计算问题的解&#xf…

搜索与图论(二)

最短路 单源最短路 所有边权都是正数 朴素Dijkstra算法 基本思路:从1号点到其他点的最短距离 步骤: 定义一个s集合包含当前已确定最短距离的点 1、初始化距离dis[1] 0,dis[其它] 正无穷 2、for i 0-n循环n次 2.1找到不在s中的距离最近的点 ->t 2.2把t加到s当中去…

【面试题】作用域面试题

作用域 全局作用域局部作用域(函数里)也称函数作用域块级作用域 {}包裹的 例如if for 括号()也算 变量 全局变量 谁都能用,在函数内也可以局部变量,只能在该函数内用,如果这个函数嵌套了子函…

Arcgis 分区统计majority参数统计问题

利用Arcgis 进行分区统计时,需要统计不同矢量区域中栅格数据的众数(majority),出现无法统计majority参数问题解决 解决:利用copy raster工具,将原始栅格数据 64bit转为16bit

kotlin 编写一个简单的天气预报app(三)broadcast换成eventbus

使用eventbus替换broadcast 将从Broadcast切换到EventBus有以下几个好处: 解耦性:通过使用EventBus,您可以实现组件之间的解耦。传统的Broadcast机制需要发送方和接收方明确知道对方的存在,并且需要在代码中设置Intent过滤器和广…

Vue中的插值表达式

Vue中的插值表达式(Interpolation)用于将数据动态绑定到HTML模板中。它的主要作用是在模板中直接显示变量的值,并实现数据的双向绑定。以下是插值表达式的一些作用: 1.变量展示:插值表达式允许将Vue实例中的数据直接显…

springboot项目如何自动重启(使用Devtools检测修改并自动重启springboot)

1. 问题: 我们在项目开发阶段,可能经常会修改代码,修改完后就要重启Spring Boot。经常手动停止再启动,比较麻烦。 所以我们引入一个Spring Boot提供的开发工具; 只要源码或配置文件发生修改,Spring Boot应用…

4年测试工程师,常用功能测试点总结,“我“不再走弯路...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 输入框测试 1、字…

如何把几个视频合并在一起?视频合并方法分享

当我们需要制作一个比较长的视频时,将多个视频进行合并可以使得整个过程更加高效。此外,合并视频还可以避免出现“剪辑断层”的情况,使得视频内容更加连贯,更加容易被观众理解和接受。再有,合并视频还可以减少视频文件…

【软件测试】说说你对TDD测试驱动开发的理解?

很多公司在面测试中高级岗时,都会不同程度地问到“有没有了解过TDD”“你认为TDD可以解决什么问题”或者“说说测试驱动开发的流程”等等,即使公司并不会用到此开发流程,面试官也会通过你对这个相对还比较“陌生”的概念的讲述来了解你对一些…

原型链污染,nodejs逃逸例子

文章目录 原型链污染原型链污染原理原型链污染小例子 原型链污染题目解析第一题第二题 Nodejs沙箱逃逸方法一方法二 原型链污染 原型链污染原理 原型链 function test(){this.a test; } b new test;可以看到b在实例化为test对象以后,就可以输出test类中的属性a…

“数智新应用”不再是口号,看汽车、医药、制造企业如何突出重围?

近日,以“释放数智生产力”为主题的 Kyligence 用户大会在上海前滩香格里拉大酒店成功举行。大会包含上午的主论坛和下午的 4 场平行论坛,并举办了闭门会议、Open Day 等活动。来自金融、零售、制造、医药等行业的客户及合作伙伴带来了超过 23 场主题演讲…

记录--一个好用的轮子 turn.js 实现仿真翻书的效果

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 国际惯例,官网链接 官网传送门 Github地址 github上有几个demos例子,介绍了基础用法。 我参考官网的例子,写了一个demo示例 安装 turn.js 依赖 jquery 库&#xff0…

web APIs-练习三

全选反选案例&#xff1a; <!DOCTYPE html><html><head lang"en"><meta charset"UTF-8"><title></title><style>* {margin: 0;padding: 0;}table {border-collapse: collapse;border-spacing: 0;border: 1px s…

Redis Cluster 在Spring中遇到的问题

Redis集群配置可能会在运行时更改。可以添加新节点&#xff0c;可以更改特定插槽的主节点。还有可能因为master宕机或网络抖动等原因&#xff0c;引起了主从切换。 无法感知集群槽位变化 SpringBoot2.x 开始默认使用的 Redis 客户端由 Jedis 变成了 Lettuce&#xff0c;但是当…

2023.7月最新ORACLE考试通过|微思-ORACLE官方授权中心

微思-ORACLE官方授权培训中心 2022 ORACLE OCP考试战报https://blog.csdn.net/XMWS_IT/article/details/125866726?ops_request_misc%257B%2522request%255Fid%2522%253A%2522169089281916800182194373%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&r…

vue3学习-组件基础、深入组件

组件 基本概述 单独的 .vue文件 单文件组件&#xff08;SFC&#xff09;&#xff08;single file component&#xff09; 使用子组件 导入&#xff0c;无需注册&#xff0c;直接使用编译时&#xff0c;区分大小写可使用 />关闭标签 传递 props 需要再组件上声明注册 def…

深度学习:BatchNorm、LayerNorm、InstanceNorm、GroupNorm和SwitchableNorm的理解

深度学习&#xff1a;BatchNorm、LayerNorm、InstanceNorm、GroupNorm和SwitchableNorm的理解 深度学习中的NormBatchNormLayerNormInstanceNormGroupNormSwitchableNorm 附录 深度学习中的Norm 在深度学习中会经常遇到BatchNorm、LayerNorm、InstanceNorm和GroupNorm&#xf…