ParameterList#
- class torch.nn.modules.container.ParameterList(values=None)[source]#
将参数保存在一个列表中。
ParameterList的用法类似于普通的 Python 列表,但其中的Parameter(参数)张量会被正确注册,并能被所有Module方法识别。请注意,构造函数、列表元素赋值、
append()方法以及extend()方法会将任何Tensor转换为Parameter。- 参数:
parameters (iterable, optional) – 要添加到列表中的元素的可迭代对象。
示例
class MyModule(nn.Module): def __init__(self) -> None: super().__init__() self.params = nn.ParameterList( [nn.Parameter(torch.randn(10, 10)) for i in range(10)] ) def forward(self, x): # ParameterList can act as an iterable, or be indexed using ints for i, p in enumerate(self.params): x = self.params[i // 2].mm(x) + p.mm(x) return x