最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python神經(jīng)網(wǎng)絡(luò)Pytorch中Tensorboard函數(shù)使用

 更新時間:2022年05月07日 14:33:49   作者:Bubbliiiing  
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)Pytorch中Tensorboard常用函數(shù)的使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

所需庫的安裝

很多人問Pytorch要怎么可視化,于是決定搞一篇。

tensorboardX==2.0
tensorflow==1.13.2

由于tensorboard原本是在tensorflow里面用的,所以需要裝一個tensorflow。會自帶一個tensorboard。

也可以不裝tensorboardX,直接使用pytorch當(dāng)中的自帶的Tensorboard。導(dǎo)入方式如下:

from torch.utils.tensorboard import SummaryWriter

不過由于我使用pytorch當(dāng)中的自帶的Tensorboard的時候有一些bug。所以還是使用tensorboardX來寫這篇博客。

常用函數(shù)功能

1、SummaryWriter()

這個函數(shù)用于創(chuàng)建一個tensorboard文件,其中常用參數(shù)有:

log_dir:tensorboard文件的存放路徑flush_secs:表示寫入tensorboard文件的時間間隔

調(diào)用方式如下:

writer = SummaryWriter(log_dir='logs',flush_secs=60)

2、writer.add_graph()

這個函數(shù)用于在tensorboard中創(chuàng)建Graphs,Graphs中存放了網(wǎng)絡(luò)結(jié)構(gòu),其中常用參數(shù)有:

model:pytorch模型

input_to_model:pytorch模型的輸入

如下所示為graphs:

調(diào)用方式如下:

if Cuda:
    graph_inputs = torch.from_numpy(np.random.rand(1,3,input_shape[0],input_shape[1])).type(torch.FloatTensor).cuda()
else:
    graph_inputs = torch.from_numpy(np.random.rand(1,3,input_shape[0],input_shape[1])).type(torch.FloatTensor)
writer.add_graph(model, (graph_inputs,))

3、writer.add_scalar()

這個函數(shù)用于在tensorboard中加入loss,其中常用參數(shù)有:

  • tag:標(biāo)簽,如下圖所示的Train_loss
  • scalar_value:標(biāo)簽的值
  • global_step:標(biāo)簽的x軸坐標(biāo)

調(diào)用方式如下:

writer.add_scalar('Train_loss', loss, (epoch*epoch_size + iteration))

4、tensorboard --logdir=

在完成tensorboard文件的生成后,可在命令行調(diào)用該文件,tensorboard網(wǎng)址。具體代碼如下:

tensorboard --logdir=D:\Study\Collection\Tensorboard-pytorch\logs

示例代碼

import torch
from torch.autograd import Variable
import torch.nn.functional as functional
from tensorboardX import SummaryWriter
import matplotlib.pyplot as plt
import numpy as np
# x的shape為(100,1)
x = torch.from_numpy(np.linspace(-1,1,100).reshape([100,1])).type(torch.FloatTensor)
# y的shape為(100,1)
y = torch.sin(x) + 0.2*torch.rand(x.size())
class Net(torch.nn.Module):
    def __init__(self, n_feature, n_hidden, n_output):
        super(Net, self).__init__()
        # Applies a linear transformation to the incoming data: :math:y = xA^T + b
        # 全連接層,公式為y = xA^T + b
        self.hidden = torch.nn.Linear(n_feature, n_hidden)
        self.predict = torch.nn.Linear(n_hidden, n_output)
    def forward(self, x):
        # 隱含層的輸出
        hidden_layer = functional.relu(self.hidden(x))
        output_layer = self.predict(hidden_layer)
        return output_layer
# 類的建立
net = Net(n_feature=1, n_hidden=10, n_output=1)
writer = SummaryWriter('logs')
graph_inputs = torch.from_numpy(np.random.rand(2,1)).type(torch.FloatTensor)
writer.add_graph(net, (graph_inputs,))
# torch.optim是優(yōu)化器模塊
optimizer = torch.optim.Adam(net.parameters(), lr=1e-3)
# 均方差loss
loss_func = torch.nn.MSELoss() 
for t in range(1000):
    prediction = net(x)
    loss = loss_func(prediction, y)
    # 反向傳遞步驟
    # 1、初始化梯度
    optimizer.zero_grad()
    # 2、計算梯度
    loss.backward()
    # 3、進(jìn)行optimizer優(yōu)化
    optimizer.step()
    writer.add_scalar('loss',loss, t)
writer.close()

效果如下:

以上就是python神經(jīng)網(wǎng)絡(luò)Pytorch中Tensorboard函數(shù)使用的詳細(xì)內(nèi)容,更多關(guān)于Pytorch Tensorboard函數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python opencv人臉識別考勤系統(tǒng)的完整源碼

    python opencv人臉識別考勤系統(tǒng)的完整源碼

    這篇文章主要介紹了python opencv人臉識別考勤系統(tǒng)的完整源碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • OpenCV-Python實現(xiàn)圖像平滑處理操作

    OpenCV-Python實現(xiàn)圖像平滑處理操作

    圖像平滑處理的噪聲取值主要有6種方法,本文主要介紹了這6種方法的具體使用并配置實例方法,具有一定的參考價值,感興趣的可以了解一下
    2021-06-06
  • Python基于HOG+SVM/RF/DT等模型實現(xiàn)目標(biāo)人行檢測功能

    Python基于HOG+SVM/RF/DT等模型實現(xiàn)目標(biāo)人行檢測功能

    這篇文章主要介紹了Python基于HOG+SVM/RF/DT等模型實現(xiàn)目標(biāo)檢測[行人檢測],今天這里并不是說要做出怎樣的效果,而是基于HOG+SVM來實踐機器學(xué)習(xí)檢測的流程,需要的朋友可以參考下
    2022-06-06
  • Python使用itchat模塊實現(xiàn)簡單的微信控制電腦功能示例

    Python使用itchat模塊實現(xiàn)簡單的微信控制電腦功能示例

    這篇文章主要介紹了Python使用itchat模塊實現(xiàn)簡單的微信控制電腦功能,結(jié)合實例形式分析了Python基于itchat模塊控制電腦實現(xiàn)運行程序、截圖等相關(guān)操作技巧,需要的朋友可以參考下
    2019-08-08
  • Python實現(xiàn)SVM支持向量機的示例代碼

    Python實現(xiàn)SVM支持向量機的示例代碼

    SVM 的目的是在數(shù)據(jù)集中找到一條最佳分隔超平面,使得在這個超平面兩側(cè)的數(shù)據(jù)分別屬于不同的類別,且該超平面與最近的數(shù)據(jù)點之間的距離最大。本文將通過Python實現(xiàn)SVM支持向量機,感興趣的可以了解一下
    2023-02-02
  • Python實現(xiàn)農(nóng)歷轉(zhuǎn)換教程詳解

    Python實現(xiàn)農(nóng)歷轉(zhuǎn)換教程詳解

    農(nóng)歷,是我國現(xiàn)行的傳統(tǒng)歷法。它是根據(jù)月相的變化周期,每一次月相朔望變化為一個月,參考太陽回歸年為一年的長度,并加入二十四節(jié)氣與設(shè)置閏月以使平均歷年與回歸年相適應(yīng)。本文將用Python實現(xiàn)農(nóng)歷轉(zhuǎn)換,需要的可以參考一下
    2022-03-03
  • 深入理解?Python?中的?pip?虛擬環(huán)境(最佳實踐)

    深入理解?Python?中的?pip?虛擬環(huán)境(最佳實踐)

    本文深入講解了Python中pip虛擬環(huán)境的概念及其重要性,并詳細(xì)介紹了如何創(chuàng)建、激活和管理虛擬環(huán)境,以及如何使用requirements.txt文件記錄和管理項目依賴,文章指出,使用虛擬環(huán)境可以有效避免依賴沖突,為每個項目提供一個干凈的開發(fā)環(huán)境,使得項目更易于維護(hù)和部署
    2024-10-10
  • Python中堆、棧、隊列之間的區(qū)別小結(jié)

    Python中堆、棧、隊列之間的區(qū)別小結(jié)

    本文主要介紹了Python中堆、棧、隊列之間的區(qū)別小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • python解析命令行參數(shù)的三種方法詳解

    python解析命令行參數(shù)的三種方法詳解

    這篇文章主要介紹了python解析命令行參數(shù)的三種方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Python數(shù)組定義方法

    Python數(shù)組定義方法

    這篇文章主要介紹了Python數(shù)組定義方法,結(jié)合實例形式分析了Python一維數(shù)組與二維數(shù)組的定義方法與相關(guān)注意事項,需要的朋友可以參考下
    2016-04-04

最新評論

庐江县| 北川| 贡山| 巴南区| 弋阳县| 连城县| 禄劝| 青浦区| 曲阳县| 海晏县| 晋城| 安国市| 庆云县| 平乐县| 二连浩特市| 略阳县| 阳泉市| 新沂市| 吴江市| 花垣县| 宜章县| 乐业县| 福鼎市| 穆棱市| 霍城县| 佛冈县| 惠来县| 柳州市| 平罗县| 黔西| 滨州市| 十堰市| 房产| 垦利县| 南京市| 岐山县| 达孜县| 孟津县| 顺义区| 重庆市| 建阳市|