torch.__future__#
创建日期:2024 年 2 月 5 日 | 最后更新:2025 年 6 月 12 日
- torch.__future__.set_overwrite_module_params_on_conversion(value)[source]#
设置在转换
nn.Module时,是分配新张量给参数,还是就地(in-place)修改现有参数。启用此功能后,以下方法将为模块分配新参数:
module.{device}()(例如nn.Module.cuda()),用于在设备间移动模块module.{dtype}()(例如nn.Module.float()),用于将模块转换为不同的数据类型(dtype)nn.Module.to()nn.Module.to_empty()
- 参数:
value (bool) – 是否分配新张量。
- torch.__future__.get_overwrite_module_params_on_conversion()[source]#
返回在转换
torch.nn.Module时,是分配新张量给参数,还是就地修改现有参数。默认为False。更多信息请参阅
set_overwrite_module_params_on_conversion()。- 返回类型:
- torch.__future__.set_swap_module_params_on_conversion(value)[source]#
设置在转换
nn.Module时,是否使用swap_tensors()而不是设置.data来就地修改现有参数;以及在向nn.Module加载 state dict 时,是否替代param.copy_(state_dict[key])。注意
启用此功能后,以下方法将就地交换现有参数:
module.{device}()(例如nn.Module.cuda()),用于在设备间移动模块module.{dtype}()(例如nn.Module.float()),用于将模块转换为不同的数据类型(dtype)nn.Module.to()nn.Module.to_empty()nn.Module.load_state_dict()
设置此项后,
load_state_dict()的语义如下:对于每个参数/缓冲区,其对应的
state_dict['key']通过module_load()进行转换(即res = param.module_load(state_dict['key']))必要时,
res将被包装在Parameter中模块中的参数/缓冲区将通过
swap_tensors()与res进行交换
- 参数:
value (bool) – 是否使用
swap_tensors()。
- torch.__future__.get_swap_module_params_on_conversion()[source]#
返回在转换
nn.Module时,是否使用swap_tensors()而不是设置 .data 来就地修改现有参数。默认为False。更多信息请参阅
set_swap_module_params_on_conversion()。- 返回类型: