mlx.nn.Module.unfreeze

mlx.nn.Module.unfreeze#

Module.unfreeze(*, recurse: bool = True, keys: str | List[str] | None = None, strict: bool = False) Module#

解除冻结模块的参数或其中一部分。

此函数是幂等的,即解除冻结一个未冻结的模型是一个空操作。

示例

例如,要仅训练 Transformer 的偏置(bias),可以这样做

model = nn.Transformer()
model.freeze()
model.unfreeze(keys="bias")
参数:
  • recurse (bool, *可选*) – 如果为 True,则也解除冻结子模块的参数。默认值:True

  • keys (str*list*[*str**], *可选*) – 如果提供,则仅解除冻结这些参数,否则解除冻结模块的所有参数。例如,通过调用 module.unfreeze(keys="bias") 解除冻结所有偏置(bias)。

  • strict (bool, *可选*) – 如果设置为 True,则验证传递的键是否存在。默认值:False

返回:

解除冻结参数后的模块实例。