快捷方式

torch.__future__

torch.__future__.set_overwrite_module_params_on_conversion(value)[source][source]

设置是否在转换 nn.Module 时将新的 tensor 赋值给参数,而不是原地修改现有参数。

启用后,以下方法将为模块分配新参数

  1. module.{device}() (例如 nn.Module.cuda()),用于在设备之间移动模块

  2. module.{dtype}() (例如 nn.Module.float()),用于将模块转换为不同的数据类型

  3. nn.Module.to()

  4. nn.Module.to_empty()

参数

value (bool) – 是否赋值新 tensor。

torch.__future__.get_overwrite_module_params_on_conversion()[source][source]

返回是否在转换 torch.nn.Module 时将新的 tensor 赋值给参数,而不是原地修改现有参数。默认为 False

有关详细信息,请参阅 set_overwrite_module_params_on_conversion()

返回类型

bool

torch.__future__.set_swap_module_params_on_conversion(value)[source][source]

设置是否在使用 nn.Module 转换时使用 swap_tensors() 而不是设置 .data 来原地修改现有参数,以及在将 state dict 加载到 nn.Module 时使用 swap_tensors() 而不是 param.copy_(state_dict[key])

启用后,以下方法将原地交换现有参数

  1. module.{device}() (例如 nn.Module.cuda()),用于在设备之间移动模块

  2. module.{dtype}() (例如 nn.Module.float()),用于将模块转换为不同的数据类型

  3. nn.Module.to()

  4. nn.Module.to_empty()

  5. nn.Module.load_state_dict()

设置此项时,load_state_dict() 的语义如下

  1. 对于每个参数/缓冲区,其对应的 state_dict['key'] 通过 module_load() 进行转换(即 res = param.module_load(state_dict['key'])

  2. 如有必要,res 将被包装在 Parameter

  3. 模块中的参数/缓冲区将通过 swap_tensors()res 进行交换

参数

value (bool) – 是否使用 swap_tensors()

torch.__future__.get_swap_module_params_on_conversion()[source][source]

返回是否在使用 nn.Module 转换时使用 swap_tensors() 而不是设置 .data 来原地修改现有参数。默认为 False

有关详细信息,请参阅 set_swap_module_params_on_conversion()

返回类型

bool

文档

查阅 PyTorch 全面的开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获取问题解答

查看资源