-
2018-10-23 14:25:26更多相关内容
-
Pytorch使用Tensorboard记录loss曲线 (Tensorboard学习二)
2022-01-07 11:46:47关于Tensorboard的基本使用方法可以参考:Pytorch 配置 Tensorboard 可视化学习(一) 对于一个基本模型: import torch import torch.nn as nn class LinearRegressionModel(nn.Module): def __init__(self, input...关于Tensorboard的基本使用方法可以参考:Pytorch 配置 Tensorboard 可视化学习(一)
对于一个基本模型:
import torch import torch.nn as nn class LinearRegressionModel(nn.Module): def __init__(self, input_shape, output_shape): super(LinearRegressionModel, self).__init__() self.linear = nn.Linear(input_shape, output_shape) def forward(self, x): out = self.linear(x) return out def train_model(): x_train = torch.randn(100, 4) # 生成100个4维的随机数,作为训练集的 X y_train = torch.randn(100, 1) # 作为训练集的label model = LinearRegressionModel(x_train.shape[1], 1) epochs = 100 # 迭代1000次 learning_rate = 0.01 # 学习率 optimizer = torch.optim.SGD(model.parameters(), lr=learning_rate) # 优化函数 criterion = nn.MSELoss() # Loss使用MSE值,目标是使MSE最小 for epoch in range(epochs): epoch += 1 optimizer.zero_grad() outputs = model(x_train) loss = criterion(outputs, y_train) loss.backward() optimizer.step() # 预测 model.eval() predicted = model(torch.randn(100, 4)).data.numpy() print(predicted) if __name__ == '__main__': train_model()
改写代码,添加绘图代码,包括三步:
- 导包:
from torch.utils.tensorboard import SummaryWriter
- 定义writer:
writer = SummaryWriter()
- 写入数据:
writer.add_scalar("图像名称",y值, x值)
- 关闭并写入:
writer.close()
import torch import torch.nn as nn class LinearRegressionModel(nn.Module): def __init__(self, input_shape, output_shape): super(LinearRegressionModel, self).__init__() self.linear = nn.Linear(input_shape, output_shape) def forward(self, x): out = self.linear(x) return out def train_model(): x_train = torch.randn(100, 4) # 生成100个4维的随机数,作为训练集的 X y_train = torch.randn(100, 1) # 作为训练集的label model = LinearRegressionModel(x_train.shape[1], 1) epochs = 100 # 迭代1000次 learning_rate = 0.01 # 学习率 optimizer = torch.optim.SGD(model.parameters(), lr=learning_rate) # 优化函数 criterion = nn.MSELoss() # Loss使用MSE值,目标是使MSE最小 for epoch in range(epochs): epoch += 1 optimizer.zero_grad() outputs = model(x_train) loss = criterion(outputs, y_train) loss.backward() optimizer.step() writer.add_scalar("loss", loss.detach(), epoch) # 第三步,绘图 # 预测 model.eval() predicted = model(torch.randn(100, 4)).data.numpy() print(predicted) writer.close() # 第4步,写入关闭 if __name__ == '__main__': from torch.utils.tensorboard import SummaryWriter # 第1步 writer = SummaryWriter(log_dir="summary_pic") # 第二步,确定保存的路径,会保存一个文件夹,而非文件 # tensorboard --logdir=summary_pic train_model()
使用:
tensorboard --logdir=summary_pic
在本地的
http://localhost:6006/
打开可以得到相关图像:
- 导包:
-
使用TensorBoard绘制loss曲线图
2019-12-24 16:45:31使用TensorBoard绘制loss曲线图详细过程 前言:首先确保机子上安装了TensorBoard包(命令行模式下可使用pip list查看) 1、然后在cmd窗口中或者Anaconda Prompt窗口中使用cd 进入TensorBoard包所在的文件夹下。 ---...使用TensorBoard绘制loss曲线图详细过程
前言:首先确保机子上安装了TensorBoard包(命令行模式下可使用pip list查看)
1、然后在cmd窗口中或者Anaconda Prompt窗口中使用cd 进入TensorBoard包所在的文件夹下。
-------cd C:\ProgramData\Anaconda3\Scripts。
2、按照1中的方法进入TensorBoard包所在文件夹下后,使用如下命令
tensorboard --logdir=文件夹路径(注意:文件路径下最好不要有中文,文件只需要训练好的events.out.tfevents.xxxxx文件即可)
如下图所示,中会出现一个地址,win请使用localhost:6006进入;
localhost:6006页面如下图所示
这里有关于TensorBoard界面的详细介绍 -
提取Tensorboard的loss曲线平滑重画
2020-12-15 17:36:31tensorboard中的loss曲线在网页中可以通过设置平滑参数,画出比较漂亮的曲线,但是平滑后的曲线是没办法直接提取出来的 这里我们直接从tensorboard的页面中点击Show data download links,然后把曲线的csv文件下载...tensorboard中的loss曲线在网页中可以通过设置平滑参数,画出比较漂亮的曲线,但是平滑后的曲线是没办法直接提取出来的
这里我们直接从tensorboard的页面中点击Show data download links,然后把曲线的csv文件下载下来,通过下面的代码平滑处理:
定义smooth函数,输入tensorboard下载的csv,然后保存平滑之后的csv文件
import pandas as pd import numpy as np import os def smooth(csv_path,weight=0.85): data = pd.read_csv(filepath_or_buffer=csv_path,header=0,names=['Step','Value'],dtype={'Step':np.int,'Value':np.float}) scalar = data['Value'].values last = scalar[0] smoothed = [] for point in scalar: smoothed_val = last * weight + (1 - weight) * point smoothed.append(smoothed_val) last = smoothed_val save = pd.DataFrame({'Step':data['Step'].values,'Value':smoothed}) save.to_csv('smooth_'+csv_path) if __name__=='__main__': smooth('loss.csv')
平滑之后的csv通过下面的代码绘制出曲线图:
import matplotlib.pyplot as plt import matplotlib as mpl import numpy as np from matplotlib.font_manager import FontProperties import csv def readcsv(files): csvfile = open(files, 'r') plots = csv.reader(csvfile, delimiter=',') x = [] y = [] for row in plots: y.append((row[2])) x.append((row[1])) return x ,y mpl.rcParams['font.family'] = 'sans-serif' mpl.rcParams['font.sans-serif'] = 'NSimSun,Times New Roman' plt.figure() x,y=readcsv("smooth_loss.csv") plt.plot(x, y, 'r',label='G ') plt.xticks(fontsize=16) plt.yticks(fontsize=16) plt.ylim(0, 16) # y轴的最大值 plt.xlim(0, 104800) # x轴最大值 plt.title('loss', fontsize=16) plt.xlabel('Steps',fontsize=20) plt.ylabel('Score',fontsize=20) plt.legend(fontsize=16) plt.show()
-
Tensorboard查看loss曲线
2020-05-20 11:43:58tensorboard --logdir=D:/python/SSDmobilenet3/mydata --host=127.0.0.1 -
tensorboardx可视画输出loss曲线用来分析过拟合,代码
2021-03-01 14:50:25安装tensorboardx 安装步骤:pip install tensorboardX loss输出代码: 下面的参考:连接 #step1:倒入SummaryWriter from tensorboardX import SummaryWriter import numpy as np #step:2初始化一个实例writer ... -
tensorboard画loss,accuary图
2020-08-26 20:56:10tf.summary.scalar(‘loss’, cost) 用来显示标量信息一般在画loss,accuary时会用到这个函数。 tf.summary.scalar(‘acc’, accuracy) merge = tf.summary.merge_all() 合并所有的summary writer = tf.summary.... -
PyTorch实现MNIST手写数字识别/LeNet/tensorboard绘制loss曲线
2021-02-08 00:24:394.2 使用torch.nn搭建LeNet 5 初始化网络参数并选择优化器 6 开始训练并保存模型 7 开始测试并加载权重预测 8 使用Tensorboard绘制loss曲线 完整代码见下方链接 0 MNIST是什么? MNIST数据集(Mixed National ... -
pytorch TensorboardX 画Loss曲线 和 attention图
2020-12-20 00:24:23def test_2():writer1 = SummaryWriter('./runs/data_loss')writer2 = SummaryWriter('./runs/png')attns_en = []step = 199for i in range(3):attns_en.append(torch.randn([512,100,100]))print(len(attns_en))pri... -
tensorboard平滑loss曲线并用matlab绘图-20200927
2020-09-27 14:54:10tensorboard平滑曲线代码 “tensorboard提供了下载借口,可以下载没有经过平滑后的数据,但是之前说了,没有平滑的曲线非常的不好看,现在我们需要做的是将下载下来的原始数据在本地进行平滑“”。代码如下: import... -
Pytorch练习–绘制Loss曲线
2020-12-21 14:09:36绘制Loss曲线 b站课程链接:https://www.bilibili.com/video/BV1Y7411d7Ys?p=2 import绘制曲线的库和numpy库 import numpy as np import matplotlib.pyplot as plt # 画图库 设置数据 x_data = [1.0, 2.0, 3.0] y_... -
利用Tensorboard查看loss图
2019-04-16 11:40:55第一步:进入自己的运行环境 C:\Users\ma>activate new ...tensorboard --logdir=E:\majunfeng\LeNet\log\events.out.tfevents.1555237054.DESKTOP-69GM4AS tensorboard --logdir=自己的日志地址 ... -
使用Tensorboard绘制网络识别准确率和loss曲线
2018-04-17 22:16:27打开谷歌浏览器或者火狐,输入网址即可查看搭建的网络结构以及识别准确率和损失函数的曲线图。 注意:如果对网络进行更改之后,在运行之前应该先删除log下的文件,在Jupyter中应该选择Kernel----->Restar & Run All,... -
如何使用tensorboard监控loss的变化?
2022-05-23 20:49:37如何使用tensorboard监控loss的变化? 1.安装tensorboard并执行下面语句 from torch.utils.tensorboard import SummaryWriter summaryWriter = SummaryWriter("logs/log1") # 将生成的loss... # A “loss”为曲线名 -
利用Tensorboard绘制网络识别准确率和loss曲线实例
2021-02-07 01:44:20epoch) acc = sess.run(accuracy,feed_dict={x:mnist.test.images,y:mnist.test.labels}) print("epoch " + str(epoch)+ " acc " +str(acc)) 运行程序,打开命令行界面,切换到 log 所在目录,输入 tensorboard --... -
使用tensorboard显示训练loss曲线和acc曲线图
2020-04-21 17:57:12二、输入tensorboard --logdir=D:\Graduation_Design\baseline\tensorboard\tensorboard-example,下划线部分是来自上图文件夹的根目录,按回车键,会出现tensorboard的版本和一个网址,总体显示效果如下图: ... -
【Tensorboard使用】动态显示loss曲线
2019-03-14 22:06:23write = tf.summary.FileWriter('E://TensorBoard//test',sess.graph) for epoch in range(500): for batch in range(n_batch): batch_xs,batch_ys = mnist.train.next_batch(batch_size) _,summery,loss_val=... -
TensorFlow绘制loss/accuracy曲线的实例
2020-09-18 01:33:22今天小编就为大家分享一篇TensorFlow绘制loss/accuracy曲线的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 -
利用xshell连接服务器并用pytorch中的tensorboard显示loss曲线和acc曲线
2020-12-08 11:29:10参考:...1 Xshell通道设置 文件-新建-连接-SSH-隧道,端口都设成6006 2 进入环境安装tensorboradX pip install tensorboardX 修改训练代码 需要添加的代码: ...from tensorboardX import Su -
基于TensorBoard的Pytorch训练可视化 (Loss曲线和weights分布)
2021-02-04 18:41:33Pytorch训练可视化(TensorboardX)PyTorch 番外篇:Pytorch 中的 TensorBoard(TensorBoard in PyTorch)TensorBoard 相关资料TensorBoard 是 Tensorflow 官方推出的可视化工具。官方介绍TensorBoard: Visualizing ... -
pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
2020-12-23 11:02:032.输入pip install tensorboardX,安装完成后,输入python,用from tensorboardX import SummaryWriter检验是否安装成功。如下图所示: 3.安装完成之后,先给大家看一下我的文件夹,如下图: 假设用LeNet5框架识别... -
Pytorch使用tensorboardX可视化。超详细!!!
2020-12-20 00:23:381 引言我们都知道tensorflow框架可以使用tensorboard这一高级的可视化的工具,为了使用tensorboard这一套完美的可视化工具,未免可以将其应用到Pytorch中,用于Pytorch的可视化。本文主要是针对该解决方案提供一些... -
解决Tensorboard(localhost或者127.0.0.1)查看loss曲线问题
2020-04-29 11:04:12解决Tensorboard(localhost或者127.0.0.1)查看loss曲线问题 TensorBoard是TensorFlow下的一个可视化的工具,展示训练过程中绘制的图像、网络结构等。 第一步:定位到你训练后log文件保存的位置; 第二步:该目录... -
pytorch 利用tensorboard显示loss,acc曲线等
2019-11-13 16:22:00版本信息: python 3.6 pytorch 0.4.1 ...tensorboard 1.6.0 [tensorflow 与 tensorboard版本匹配] from tensorboard_logger import Logger logger = Logger(logdir="./tensorboard_logs", flush_secs=10) ...
收藏数
2,349
精华内容
939