捷徑

Generator

class torch.Generator(device='cpu')

建立並傳回一個產生器物件,該物件管理產生偽隨機數的演算法的狀態。 在許多 In-place 隨機抽樣 函數中用作關鍵字參數。

參數

device (torch.device, optional) – 產生器所需的裝置。

回傳

一個 torch.Generator 物件。

回傳型別

Generator

範例

>>> g_cpu = torch.Generator()
>>> g_cuda = torch.Generator(device='cuda')
clone_state() torch.Generator

複製產生器的目前狀態,並傳回一個指向此複製狀態的新產生器。 此方法有助於保留產生器的特定狀態,以便稍後還原。

回傳

一個指向新複製狀態的產生器。

回傳型別

torch.Generator

範例

>>> g_cuda = torch.Generator(device='cuda')
>>> cloned_state = g_cuda.clone_state()
device

Generator.device -> device

取得產生器的目前裝置。

範例

>>> g_cpu = torch.Generator()
>>> g_cpu.device
device(type='cpu')
get_state() Tensor

將產生器狀態以 torch.ByteTensor 的形式傳回。

回傳

一個 torch.ByteTensor,其中包含將產生器還原到特定時間點所需的所有位元。

回傳型別

Tensor

範例

>>> g_cpu = torch.Generator()
>>> g_cpu.get_state()
graphsafe_get_state() torch.Generator

以對圖形捕獲安全的方式檢索產生器的目前狀態。 此方法對於確保產生器的狀態可以捕獲在 CUDA 圖形中至關重要。

回傳

一個指向產生器目前狀態的產生器

回傳型別

torch.Generator

範例

>>> g_cuda = torch.Generator(device='cuda')
>>> current_state = g_cuda.graphsafe_get_state()
graphsafe_set_state(state) None

以安全地用於圖形捕獲的方式,將產生器的狀態設定為指定的狀態。 此方法對於確保產生器的狀態可以捕獲在 CUDA 圖形中至關重要。

參數

state (torch.Generator) – 一個指向產生器新狀態的產生器,通常從 graphsafe_get_state 取得。

範例

>>> g_cuda = torch.Generator(device='cuda')
>>> g_cuda_other = torch.Generator(device='cuda')
>>> current_state = g_cuda_other.graphsafe_get_state()
>>> g_cuda.graphsafe_set_state(current_state)
initial_seed() int

傳回產生隨機數的初始種子。

範例

>>> g_cpu = torch.Generator()
>>> g_cpu.initial_seed()
2147483647
manual_seed(seed) Generator

設定產生隨機數的種子。 傳回一個 torch.Generator 物件。 任何 32 位元的整數都是有效的種子。

參數

seed (int) – 所需的種子。值必須在包含範圍 [-0x8000_0000_0000_0000, 0xffff_ffff_ffff_ffff] 內。 否則,會引發 RuntimeError。 負數輸入使用公式 0xffff_ffff_ffff_ffff + seed 重新對應到正數值。

回傳

一個 torch.Generator 物件。

回傳型別

Generator

範例

>>> g_cpu = torch.Generator()
>>> g_cpu.manual_seed(2147483647)
seed() int

從 std::random_device 或目前時間取得一個非決定性的隨機數,並使用它來作為產生器的種子。

範例

>>> g_cpu = torch.Generator()
>>> g_cpu.seed()
1516516984916
set_state(new_state) void

設定產生器狀態。

參數

new_state (torch.ByteTensor) – 所需的狀態。

範例

>>> g_cpu = torch.Generator()
>>> g_cpu_other = torch.Generator()
>>> g_cpu.set_state(g_cpu_other.get_state())

文件

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources