評價此頁

torch.arange#

torch.arange(start=0, end, step=1, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) Tensor#

返回一個 1-D 張量,其大小為 endstartstep\left\lceil \frac{\text{end} - \text{start}}{\text{step}} \right\rceil 範圍內的值,其中 start 為起始值,公差為 step

注意:在使用浮點數 dtypes(尤其是像 bfloat16 這樣的低精度型別)時,結果可能會受到浮點數舍入行為的影響。序列中的某些值可能無法在某些浮點數格式中精確表示,這可能導致值重複或意外舍入。為了獲得精確的序列,建議使用整數 dtypes 而非浮點數 dtypes。

注意,當與 end 比較時,非整數 step 會受到浮點數舍入誤差的影響;為避免不一致,我們建議在這種情況下從 end 中減去一個小的 epsilon。

outi+1=outi+step\text{out}_{{i+1}} = \text{out}_{i} + \text{step}
引數
  • start (Number, optional) –集合點的起始值。預設為 0

  • end (Number) – 集合點的結束值

  • step (Number, optional) – 相鄰點之間的間隔。預設為 1

關鍵字引數
  • out (Tensor, optional) – 輸出張量。

  • dtype (torch.dtype, optional) – 返回張量的期望資料型別。預設情況下,如果 None,則使用全域性預設值(請參閱 torch.set_default_dtype())。如果未給出 dtype,則從其他輸入引數推斷資料型別。如果 startendstop 中的任何一個是浮點數,則 dtype 被推斷為預設 dtype,請參閱 get_default_dtype()。否則,dtype 被推斷為 torch.int64

  • layout (torch.layout, 可選) – 返回張量的所需佈局。預設:torch.strided

  • device (torch.device, 可選) – 返回張量的所需裝置。預設:如果為 None,則使用當前裝置作為預設張量型別(參見 torch.set_default_device())。對於 CPU 張量型別,device 將是 CPU;對於 CUDA 張量型別,device 將是當前的 CUDA 裝置。

  • requires_grad (bool, optional) – 如果 autograd 應記錄在返回的張量上的操作。預設值:False

示例

>>> torch.arange(5)
tensor([ 0,  1,  2,  3,  4])
>>> torch.arange(1, 4)
tensor([ 1,  2,  3])
>>> torch.arange(1, 2.5, 0.5)
tensor([ 1.0000,  1.5000,  2.0000])