ParameterDict
- 类torch.nn.ParameterDict(parameters=None)[源代码]
-
将参数存入字典。
ParameterDict 可以像常规的 Python 字典一样进行索引,但其中包含的 Parameters 会被正确注册,并且对所有 Module 方法可见。其他对象则会像在常规 Python 字典中那样被处理。
ParameterDict
是一个有序字典。使用其他无序映射类型(例如 Python 的普通dict
)进行update()
操作不会保留合并后映射的顺序。另一方面,OrderedDict
或另一个ParameterDict
则会保留它们原有的顺序。请注意,构造函数、字典元素的赋值以及
update()
方法会将任何Tensor
转换为Parameter
。- 参数
-
values (iterable, 可选) – 一个映射(字典),包含键值对(字符串 : 任意类型)或者是一个类型为 (字符串, 任意类型) 的键值对的迭代器。
示例:
class MyModule(nn.Module): def __init__(self) -> None: super().__init__() self.params = nn.ParameterDict({ 'left': nn.Parameter(torch.randn(5, 10)), 'right': nn.Parameter(torch.randn(5, 10)) }) def forward(self, x, choice): x = self.params[choice].mm(x) return x
- clear()[源代码]
-
将ParameterDict中的所有项移除。
- copy()[源代码]
-
返回该
ParameterDict
实例的副本。- 返回类型
- fromkeys(keys, default=None)[源代码]
-
返回一个包含所提供键的新 ParameterDict。
- 参数
-
-
keys (iterable, string) – 创建新 ParameterDict 所需的键
-
默认值 (Parameter, 可选) – 所有键的初始值
-
- 返回类型
- get(key, default=None)[源代码]
-
如果存在,则返回与键关联的参数;否则,如果有默认值就返回默认值,如果没有则返回 None。
- setdefault(key, default=None)[源代码]
-
设置参数字典中键的默认值。
如果键在 ParameterDict 中,则返回其值。如果没有该键,则插入 key 并使用参数 default,然后返回 default。如果不指定,默认的 default 为 None。
- update(parameters)[源代码]
-
使用来自
parameters
的键值对来更新ParameterDict
,并覆盖现有的键。注意
如果
parameters
是一个OrderedDict
、一个ParameterDict
或者是一个键值对的可迭代对象,新元素的顺序会被保留。- 参数
-
parameters (iterable) – 一个字符串到
Parameter
的映射(字典),或者类型为 (string,Parameter
) 的键值对的可迭代对象。