torch.__future__¶
- torch.__future__.set_overwrite_module_params_on_conversion(value)[source][source]¶
设置是否在转换
nn.Module
时将新的 tensor 赋值给参数,而不是原地修改现有参数。启用后,以下方法将为模块分配新参数
module.{device}()
(例如nn.Module.cuda()
),用于在设备之间移动模块module.{dtype}()
(例如nn.Module.float()
),用于将模块转换为不同的数据类型nn.Module.to()
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()
。- 返回类型
- 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])
。启用后,以下方法将原地交换现有参数
module.{device}()
(例如nn.Module.cuda()
),用于在设备之间移动模块module.{dtype}()
(例如nn.Module.float()
),用于将模块转换为不同的数据类型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][source]¶
返回是否在使用
nn.Module
转换时使用swap_tensors()
而不是设置 .data 来原地修改现有参数。默认为False
。有关详细信息,请参阅
set_swap_module_params_on_conversion()
。- 返回类型