首页 > 技术知识 > 正文

【深度学习】Tonsorboard可视化模型训练过程和Colab使用

【深度学习】Tonsorboard可视化模型训练过程和Colab使用

文章目录 1 概述 2 手撸代码实现 3 Colab使用 3.1 详细步骤 3.2 Demo 4 总结 1 概述

在利用TensorFlow模型训练过程中,我们都知道使用tensorboard进行训练过程中的acc和loss可视化,便于我们观察训练过程中是否出现问题。但是训练的时候我常发现只能在一个loss曲线图中显示一个loss,本文将给出两种方法,如何显示多个模型的训练acc和loss,便于对比分析!!

Tensorboard 那么如何在一个tensorboard中显示多个模型的结果呢? 直奔主题!! 首先你的目录格式必须如下:

-logs –1 —events.out.tfevents.1 –2 —events.out.tfevents.2 –3 —events.out.tfevents.3 …….. ……..

接下来你要在命令行中cd到logs文件夹下,然后在执行tensorboard命令: 【深度学习】Tonsorboard可视化模型训练过程和Colab使用1 logs文件夹下存在7个子文件夹,每一个子文件夹下只保存一个tfevents文件!!!

【深度学习】Tonsorboard可视化模型训练过程和Colab使用2 【深度学习】Tonsorboard可视化模型训练过程和Colab使用3 左下角显示的就是logs下的各个文件夹名称,并自动分配不同颜色,可以单击选中或不选中其中任何几个让其显示或不显示,我简单演示了一下,取消1的效果。

2 手撸代码实现

tensorboard有一个很大的问题是,无法添加标注,这个图没法放在论文中, 首先我们要获取数据,数据来源于tensorboard中

【深度学习】Tonsorboard可视化模型训练过程和Colab使用4 要确保你想要下载的数据,你已经选中,否则是无法下载的!点击上图中的csv。

选中你想要保存的模型loss数据,然后点击CSV,则弹出保存对话框,你可以任意命名。依次全部下载,即可完成模型训练数据! 假设你保存的数据名称如下

–run_2-tag-loss.csv –run_3-tag-loss.csv –run_4-tag-loss.csv import pandas as pd import matplotlib.pyplot as plt from io import StringIO net2 = pd.read_csv(run_2-tag-loss.csv, usecols=[Step, Value]) plt.plot(net2.Step, net2.Value, lw=1.5, label=Net-2, color=pink) net3 = pd.read_csv(run_3-tag-loss.csv, usecols=[Step, Value]) plt.plot(net3 .Step, net3 .Value, lw=1.5, label=Net-3, color=green) net4 = pd.read_csv(run_4-tag-loss.csv, usecols=[Step, Value]) plt.plot(net4 .Step, net4 .Value, lw=1.5, label=Net-4, color=yellow) plt.legend(loc=0) plt.show() 3 Colab使用

【深度学习】Tonsorboard可视化模型训练过程和Colab使用5

3.1 详细步骤

1.将Colab与Good Drive关联起来

from google.colab import drive drive.mount(/content/drive)

2.定位到Drive的根目录,并查看根目录下的文件

import os os.chdir(“/content/drive/My Drive”) !ls

下载GitHub的代码到Drive 【深度学习】Tonsorboard可视化模型训练过程和Colab使用6

!git clone https://github.com/wadayama/TISTA.git !ls 4. 切换到刚才下载项目的文件夹下 cd TISTA/ 5.查看文件夹下所有文件 !ls

3.2 Demo

【深度学习】Tonsorboard可视化模型训练过程和Colab使用7

4 总结

注意: 1)Colab是带有GPU的linux虚拟机,执行linux命令时前面需要加“ !”,执行python代码时可以直接编写执行

2)每次重新登录需要挂载Google Drive,会在虚拟机里生成一个drive(即/content/drive/)文件夹,然后要执行命令将当前路径切换到/content/drive/My Drive/,才可以看到谷歌云盘上的文件。

3)Colab最多连续使用12小时,超过时间系统会强制掐断正在运行的程序并收回占用的虚拟机。并且经常使用GPU的colab用户之后分配到使用GPU的优先级会变低,所以不用的使用请将runtime type设置为None。 安装好所需要的库 用pip命令一个一个安装也行,不过大部分项目都有requirements.txt文件,你可以直接

! pip install -r requirements.txt

一次性安装好所有要求的库。 执行项目程序

! python train.py

训练网络

! python evaluate.py

评估表现

项目编写 colab不太适合大型程序的编写,毕竟都是notebook文件。但notebook的好处就是直观,方便我们观察输出与调试,如果要写项目的话,都写在一个文件中的简单项目还好说,但如果你想调用其他文件中的函数,要先把notebook文件(.ipynb)转为py文件再调用。

【深度学习】Tonsorboard可视化模型训练过程和Colab使用8

直接在文件中下载为py文件并传到你的谷歌云盘上就好了。

使用YOLOv4 下载权重

! cd darknet; make ! gdown https://drive.google.com/uc?id=1cewMfusmPjYWbrnuJRuKhPMwRe_b9PaT

权重下载地址在 GitHub里也有,需要注意的是将地址里的open改成uc(当然也可以直接复制代码块,但是建议自己看看GitHub里的东西) 在这下载文件还是很快的,一秒钟就可以下载完成(应该也会取决于网速),下载完成我们可以在文件夹目录看到这个文件(刷新一下) 使用yolov4辨识 进入data文件夹可以查看自带的示例图片(这一步也可以不需要)

from PIL import Image Image.open(darknet/data/person.jpg)

【深度学习】Tonsorboard可视化模型训练过程和Colab使用9

猜你喜欢