tensorboard平滑loss曲线并用matlab绘图-20200927

tensorboard平滑曲线代码
“tensorboard提供了下载借口,可以下载没有经过平滑后的数据,但是之前说了,没有平滑的曲线非常的不好看,现在我们需要做的是将下载下来的原始数据在本地进行平滑“”。代码如下:

import pandas as pd
import numpy as np
import os
def smooth(csv_path,weight=0.85): #weight是平滑度,tensorboard 默认0.6
    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('test.csv')

matlab设置坐标轴

多方参考最终形成自己版本:

clear; close all; clc;
%importdata 函数允许加载各种数据的不同格式的文件
data=importdata('smooth_unet.csv'); %读取csv数据文件
plot(data.data(:,2), data.data(:,3)/max(data.data(:,3)),'color', [0.67 0 1], 'LineWidth',2)
set(gca,'xlim',[0,200000],'xtick',[0, 50000, 100000, 150000, 200000], 'xticklabel',{'0', '50k', '100k', '150k', '200k'});
set(gca,'ylim',[-0.1,0.9],'ytick',[-0.1,0.1, 0.3, 0.5,0.7,0.9], 'yticklabel',{'0', '0.2', '0.4', '0.6', '0.8','1.0'});
% R2014b之前版本设置坐标轴和显示
xlabel('Number of iterations', 'FontSize',13);  % 标签和字体大小
ylabel('Normalized loss','FontSize',13);
set(gcf,'color','white')  % 去掉周围灰边
set(gca,'FontSize',13);  % 坐标轴刻度的字体大小
print(gcf,'unet','-dtiff','-r300')  % 保存图片并设置分辨率
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值