精华内容
下载资源
问答
  • 更多相关内容
  • 关于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()
    

    改写代码,添加绘图代码,包括三步:

    1. 导包:from torch.utils.tensorboard import SummaryWriter
    2. 定义writer:writer = SummaryWriter()
    3. 写入数据:writer.add_scalar("图像名称",y值, x值)
    4. 关闭并写入: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进入;
    图2
    localhost:6006页面如下图所示
    调节左侧Smoothing参数来改变曲线的平滑度
    这里有关于TensorBoard界面的详细介绍

    展开全文
  • 提取Tensorboardloss曲线平滑重

    千次阅读 2020-12-15 17:36:31
    tensorboard中的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:58
    tensorboard --logdir=D:/python/SSDmobilenet3/mydata --host=127.0.0.1
  • 安装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:10
    tf.summary.scalar(‘loss’, cost) 用来显示标量信息一般在画loss,accuary时会用到这个函数。 tf.summary.scalar(‘acc’, accuracy) merge = tf.summary.merge_all() 合并所有的summary writer = tf.summary....
  • 4.2 使用torch.nn搭建LeNet 5 初始化网络参数并选择优化器 6 开始训练并保存模型 7 开始测试并加载权重预测 8 使用Tensorboard绘制loss曲线 完整代码见下方链接 0 MNIST是什么? MNIST数据集(Mixed National ...
  • def 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平滑曲线代码 “tensorboard提供了下载借口,可以下载没有经过平滑后的数据,但是之前说了,没有平滑的曲线非常的不好看,现在我们需要做的是将下载下来的原始数据在本地进行平滑“”。代码如下: import...
  • 绘制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=自己的日志地址 ...
  • 打开谷歌浏览器或者火狐,输入网址即可查看搭建的网络结构以及识别准确率和损失函数的曲线图。 注意:如果对网络进行更改之后,在运行之前应该先删除log下的文件,在Jupyter中应该选择Kernel----->Restar & Run All,...
  • 如何使用tensorboard监控loss的变化? 1.安装tensorboard并执行下面语句 from torch.utils.tensorboard import SummaryWriter summaryWriter = SummaryWriter("logs/log1") # 将生成的loss... # A “loss”为曲线
  • epoch) acc = sess.run(accuracy,feed_dict={x:mnist.test.images,y:mnist.test.labels}) print("epoch " + str(epoch)+ " acc " +str(acc)) 运行程序,打开命令行界面,切换到 log 所在目录,输入 tensorboard --...
  • 二、输入tensorboard --logdir=D:\Graduation_Design\baseline\tensorboard\tensorboard-example,下划线部分是来自上图文件夹的根目录,按回车键,会出现tensorboard的版本和一个网址,总体显示效果如下图: ...
  • Tensorboard使用】动态显示loss曲线

    千次阅读 2019-03-14 22:06:23
    write = 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曲线的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 参考:...1 Xshell通道设置 文件-新建-连接-SSH-隧道,端口都设成6006 2 进入环境安装tensorboradX pip install tensorboardX 修改训练代码 需要添加的代码: ...from tensorboardX import Su
  • Pytorch训练可视化(TensorboardX)PyTorch 番外篇:Pytorch 中的 TensorBoard(TensorBoard in PyTorch)TensorBoard 相关资料TensorBoard 是 Tensorflow 官方推出的可视化工具。官方介绍TensorBoard: Visualizing ...
  • 2.输入pip install tensorboardX,安装完成后,输入python,用from tensorboardX import SummaryWriter检验是否安装成功。如下图所示: 3.安装完成之后,先给大家看一下我的文件夹,如下图: 假设用LeNet5框架识别...
  • 1 引言我们都知道tensorflow框架可以使用tensorboard这一高级的可视化的工具,为了使用tensorboard这一套完美的可视化工具,未免可以将其应用到Pytorch中,用于Pytorch的可视化。本文主要是针对该解决方案提供一些...
  • 解决Tensorboard(localhost或者127.0.0.1)查看loss曲线问题 TensorBoard是TensorFlow下的一个可视化的工具,展示训练过程中绘制的图像、网络结构等。 第一步:定位到你训练后log文件保存的位置; 第二步:该目录...
  • 版本信息: 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) ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,349
精华内容 939
关键字:

tensorboard画loss曲线