欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pytorch下tensorboard的使用程序示例

 更新時(shí)間:2021年10月22日 09:32:36   作者:wf6892  
我們都知道tensorflow框架可以使用tensorboard這一高級(jí)的可視化的工具,這篇文章主要介紹了pytorch下tensorboard的使用,需要的朋友可以參考下

我們都知道tensorflow框架可以使用tensorboard這一高級(jí)的可視化的工具,為了使用tensorboard這一套完美的可視化工具,未免可以將其應(yīng)用到Pytorch中,用于Pytorch的可視化。這里特別感謝Github上的解決方案: https://github.com/lanpa/tensorboardX。

一、tensorboard程序?qū)嵗?/h2>

1.代碼

from torch.utils.tensorboard import SummaryWriter  # 用于將數(shù)據(jù)寫(xiě)入tensorboard
import csv  # 用于從本地csv中讀取數(shù)據(jù)
 
'''從csv讀取數(shù)據(jù),用于后續(xù)顯示在tensorboard中'''
 
fileAddr = 'models/211016_101208/reward.csv'  # 待讀取的文件地址
file = open(fileAddr, 'r')                    # 打開(kāi)文件
data = csv.reader(file)                       # 從文件中讀取數(shù)據(jù),但此時(shí)data是{reader}格式
next(data)                                    # 忽略數(shù)據(jù)的第一行,這是csv的表頭。
 
'''csv數(shù)據(jù)讀取完畢'''
 
'''將data數(shù)據(jù)寫(xiě)入tensorboard'''
 
tensorboard_logs_addr = "logs_tensorboard/211021"  # 設(shè)定tensorboard文件存放的地址
writer = SummaryWriter(tensorboard_logs_addr)      
for index, data1 in enumerate(data):               # 開(kāi)始寫(xiě)入文件。
    # 一個(gè)圖中寫(xiě)入多組數(shù)據(jù),共用y軸
    writer.add_scalars('adv_data/Rewards Per Episodes',
                                               {'agent0':float(data1[0]),
                                                'agent1':float(data1[1]),
                                                'agent2':float(data1[2]),}, index)
    # 一個(gè)圖中寫(xiě)入一組數(shù)據(jù)
    writer.add_scalar('adv_data/step number per episode', int(data1[4]), index)
    
    # 一個(gè)圖中寫(xiě)入一組數(shù)據(jù)
    writer.add_scalar('gda_data/Rewards per episode', float(data1[3]), index)
    writer.add_scalar('gda_data/step number per episode', int(data1[4]), index)
writer.close()  # 完成后關(guān)閉

運(yùn)行以上代碼,便會(huì)在文件夾logs_tensorboard/211021中生成tensorboard數(shù)據(jù)。

2.在命令提示符中操作

# 打開(kāi)命令提示符后默認(rèn)在c盤(pán),固先轉(zhuǎn)換到d盤(pán)

C:\Users\wf>d:

# 進(jìn)入程序所在文件夾

D:\>cd D:\04MADDPG\40_MADDPG_torch-master -UAV_FixedSpeed

# 打開(kāi)tensorboard的代碼

D:\04MADDPG\40_MADDPG_torch-master -UAV_FixedSpeed>tensorboard --logdir=logs_tensorboard/211021

說(shuō)明:

tensorboard --logdir=logs_tensorboard/211021

tensorboard --logdir= 是不可更改的;

logs_tensorboard/211021 是tensorboard文件存放的地址;logs_tensorboard文件夾的上一層就是程序所在文件夾;

3.在瀏覽器中打開(kāi)網(wǎng)址

http://localhost:6006/

4.效果

二、writer.add_scalar()與writer.add_scalars()參數(shù)說(shuō)明

writer.add_scalar() 一副圖中只有一組數(shù)據(jù)

writer.add_scalars() 一副圖中有多組數(shù)據(jù),但共用x軸

1.概述

將數(shù)據(jù)寫(xiě)入tensorboard只有以下代碼:

from torch.utils.tensorboard import SummaryWriter
 
writer = SummaryWriter("tensorboard文件存放地址")
 
# 將數(shù)據(jù)寫(xiě)入tensorboard文件,規(guī)定寫(xiě)入的形式
writer.add_scalar() 或 writer.add_scalars() 
 
writer.close()

2.參數(shù)說(shuō)明

writer.add_scalar('TAG', Y-DATA, X-DATA)
 
writer.add_scalars('TAG', {'Line1':Line1-Y-DATA,
                           'Line2':Line2-Y-DATA,
                           'Line3':Line3-Y-DATA,
                            ... ...            ,}, X-DATA)

其中:

  • 運(yùn)行一次writer.add_scalar()writer.add_scalar()生成一張圖像;
  • 如果后面運(yùn)行的writer.add_scalar()的標(biāo)簽和前面的相同,會(huì)覆蓋掉舊的圖像;

參數(shù)說(shuō)明:

TAG 是當(dāng)前繪制圖像的分類標(biāo)簽,可以設(shè)置2級(jí)標(biāo)簽;如A1/B1,A1/C1,A2/B2;

當(dāng)兩張圖像的第一級(jí)標(biāo)簽相同時(shí),兩張圖象會(huì)放在一行;

當(dāng)兩張圖像的第一級(jí)標(biāo)簽不同時(shí),兩張圖象會(huì)放在不同的組,即兩張圖像上下放;

Y-DATA 是圖像中Y軸的數(shù)據(jù)

Line1-Y-DATA 是圖像中Line1的Y軸數(shù)據(jù)

Line2-Y-DATA 是圖像中Line2的Y軸數(shù)據(jù)

Line3-Y-DATA 是圖像中Line3的Y軸數(shù)據(jù)

X-DATA 是圖像中X軸的數(shù)據(jù)

Line1Line2、Line3是同一張圖像中,幾個(gè)曲線的名稱,他們共用X軸

3.writer.add_scalar()效果

4.writer.add_scalars()效果

到此這篇關(guān)于pytorch下tensorboard的使用的文章就介紹到這了,更多相關(guān)pytorch tensorboard使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論