torch.optim.Optimizer.register_load_state_dict_pre_hook¶
- Optimizer.register_load_state_dict_pre_hook(hook, prepend=False)[source][source]¶
注册一个在调用
load_state_dict()之前将被调用的 load_state_dict 预钩子。它应该具有以下签名:hook(optimizer, state_dict) -> state_dict or None
optimizer参数是正在使用的优化器实例,state_dict参数是用户传递给load_state_dict的state_dict的浅拷贝。钩子可以就地修改 state_dict,或者可选地返回一个新的。如果返回了 state_dict,它将被用于加载到优化器中。在调用
self上的load_state_dict之前,将使用参数self和state_dict调用钩子。已注册的钩子可用于在执行load_state_dict调用之前执行预处理。- 参数:
hook(可调用对象)- 用户定义的将被注册的钩子。
prepend (bool) – 如果为 True,提供的预
hook将在所有已注册的预钩子load_state_dict之前触发。否则,提供的hook将在所有已注册的预钩子之后触发。(默认:False)
- 返回值:
一个可以用来通过调用
handle.remove()移除已添加钩子的句柄。- 返回类型:
torch.utils.hooks.RemoveableHandle