torch.optim.Optimizer.register_load_state_dict_pre_hook#
- Optimizer.register_load_state_dict_pre_hook(hook, prepend=False)[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和state_dict调用,在调用load_state_dict到self上之前。注册的钩子可用于在调用load_state_dict之前执行预处理。- 参数
hook (Callable) – 用户定义的待注册钩子。
prepend (bool) – 如果为 True,则提供的预置
hook将在load_state_dict上所有已注册的预置钩子之前执行。否则,提供的hook将在所有已注册的预置钩子之后执行。(默认: False)
- 返回
一个句柄,可用于通过调用
handle.remove()来移除添加的钩子- 返回类型
torch.utils.hooks.RemoveableHandle