torch.optim.Optimizer.register_load_state_dict_pre_hook¶
- Optimizer.register_load_state_dict_pre_hook(hook, prepend=False)[源代码]¶
注册一个 `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。如果返回了 state_dict,它将被用于加载到优化器中。
钩子将在调用 `self` 上的 `load_state_dict` 之前,使用参数 `self` 和 `state_dict` 被调用。注册的钩子可用于在进行 `load_state_dict` 调用之前执行预处理。
- 参数
hook (可调用对象) – 要注册的用户定义钩子。
prepend (布尔值) – 如果为 `True`,则提供的预 `hook` 将在 `load_state_dict` 上所有已注册的预钩子之前被触发。否则,提供的 `hook` 将在所有已注册的预钩子之后被触发。(默认值:`False`)
- 返回
一个句柄,可用于通过调用 `handle.remove()` 来删除添加的钩子
- 返回类型
torch.utils.hooks.RemoveableHandle