torch.__future__¶
- torch.__future__.set_overwrite_module_params_on_conversion(value)[source][source]¶
设置在转换时是否将新张量分配给参数,而不是就地更改现有参数
nn.Module。当启用时,以下方法将为模块分配新参数:
module.{device}()(例如nn.Module.cuda())用于在设备之间移动模块module.{dtype}()(例如nn.Module.float())用于将模块转换为不同的数据类型nn.Module.to()nn.Module.to_empty()
- 参数:
value(布尔值)- 是否分配新张量。
- torch.__future__.get_overwrite_module_params_on_conversion()[source][source]¶
返回在转换时是否将新张量分配给参数而不是就地更改现有参数。默认为
False。更多信息请参阅
set_overwrite_module_params_on_conversion()。- 返回类型:
- torch.__future__.set_swap_module_params_on_conversion(value)[source][source]¶
设置是否使用
swap_tensors()代替设置.data来就地更改nn.Module的现有参数,以及代替param.copy_(state_dict[key])在将状态字典加载到nn.Module时。注意
此函数优先于
get_overwrite_module_params_on_conversion()。启用后,以下方法将就地交换现有参数:
module.{device}()(例如nn.Module.cuda())用于在设备之间移动模块。将模块转换为不同数据类型的标记(例如
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()。