快捷方式

Generator

class torch.Generator(device='cpu')

建立並返回一個生成器物件,該物件管理產生偽隨機數的演算法的狀態。在許多原地隨機取樣函式中用作關鍵字引數。

引數

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

返回值

一個 torch.Generator 物件。

返回型別

Generator

示例

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

克隆生成器的當前狀態,並返回一個指向此克隆狀態的新生成器。此方法對於儲存生成器的特定狀態以便稍後恢復非常有用。

返回值

一個指向新克隆狀態的 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

將 Generator 狀態返回為 torch.ByteTensor

返回值

一個 torch.ByteTensor,其中包含將 Generator 恢復到特定時間點所需的所有必要位。

返回型別

Tensor

示例

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

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

返回值

一個指向生成器當前狀態的 Generator

返回型別

torch.Generator

示例

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

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

引數

state (torch.Generator) – 指向生成器新狀態的 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 或當前時間獲取一個非確定性隨機數,並用它來為 Generator 設定種子。

示例

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

設定 Generator 狀態。

引數

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

示例

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

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取針對初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得解答

檢視資源