Pytorch之contiguous的用法

2022-10-04 15:12:23 字數 759 閱讀 8831

contiguous

tensor變數呼叫contiguous()函式會使tensor變數在記憶體中的儲存變得連續。

contiguous():view只能用在contiguo的variable上。如果在view之前用了transpose, permute等,需要用contiguous()來返回乙個contiguous copy。

一種可能的解釋是:

有些tensor並不是占用一整塊記憶體,而是由不同的資料塊組成,而tensor的v程式設計客棧iew()操作依賴於記憶體是整塊的,這時只需要執行contiguous()這個函式,把tensor變成在記憶體中連續分布的形式。

is_contiguous

判斷是否contiguous用torch.tensor.is_contiguous()函式。

import to程式設計客棧rch

x = torch.ones(10, 10)

程式設計客棧x.is_contiguous() # true

x.transpose(0, 1).is_contiguous() # false

x.transpose(0, 1).contiguous().is_contiguous() # true

在pytorch的最新版本0.4版本中,增加了torch.reshape(), 這與 numwww.cppcns.compy.reshape 的功能類似。它大致相當於 tensor.contiguous().view()

本文標題: pytorch之contiguous的用法

本文位址:

Pytorch之線性回歸

import torch from torch import nn import numpy as np import torch.utils.data as data from torch.nn import init 使得模型的可復現性 torch.manual seed 1 設定預設的資料格式...

pytorch優化之量化

思考 pytorch的eager模式,是怎樣支援開發模式支援序列執行斷點除錯,生產模式支援生成可併發執行 的,可以拉原始碼除錯分析。這裡會涉及到圖程式設計模式 編譯原理,執行優化等技術。什麼是量化?量化是指用於執行計算並以低於浮點精度的位寬儲存張量的技術。量化模型對張量使用整數而不是浮點值執行部分或...

pytorch 之 imagefloder的用法

問題的關鍵在於如何確定和類別的對應關係 from torchvision.datasets import imagefolder dataset imagefolder f my code data 0db train 讀入資料 print dataset.imgs 2 此時,dataset.img...