ModuleDict
-
class torch.nn.modules.container.ModuleDict(modules=None)[исходный код] -
Содержит вложенные модули в словаре.
ModuleDictможно индексировать как обычный словарь Python, но содержащиеся в нём модули регистрируются должным образом и доступны всем методамModule.ModuleDict— это упорядоченный словарь, который сохраняет- порядок добавления элементов и
- при вызове
update()— порядок объединённогоOrderedDict,dictили другогоModuleDict(аргумента дляupdate()).
Обратите внимание, что вызов
update()с другими неупорядоченными типами отображений не сохраняет порядок объединённого отображения.- Параметры:
-
modules (итерируемый объект, необязательно) – отображение (словарь) вида (строка: модуль) или итерируемый объект с парами ключ-значение типа (строка, модуль)
Пример:
class MyModule(nn.Module): def __init__(self) -> None: super().__init__() self.choices = nn.ModuleDict( {"conv": nn.Conv2d(10, 10, 3), "pool": nn.MaxPool2d(3)} ) self.activations = nn.ModuleDict( [["lrelu", nn.LeakyReLU()], ["prelu", nn.PReLU()]] ) def forward(self, x, choice, act): x = self.choices[choice](x) x = self.activations[act](x) return x-
clear()[исходный код] -
Удаляет все элементы из ModuleDict.
-
items()[исходный код] -
Возвращает итерируемый объект с парами ключ-значение из ModuleDict.
-
keys()[исходный код] -
Возвращает итерируемый объект с ключами ModuleDict.
-
pop(key)[исходный код] -
Удаляет ключ из ModuleDict и возвращает соответствующий модуль.
-
update(modules)[исходный код] -
Обновляет
ModuleDictпарами ключ-значение из отображения, перезаписывая существующие ключи.Примечание
Если
modulesявляетсяOrderedDict, объектомModuleDictили итерируемым объектом с парами ключ-значение, порядок новых элементов в нём сохраняется.
-
values()[исходный код] -
Возвращает итерируемый объект со значениями ModuleDict.
- Тип возвращаемого значения:
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nn.modules.container.ModuleDict.html