Вызов nn.Module.__init__ инициализирует внутренние контейнеры параметров, буферов и submodules; без него регистрация слоёв ломается.
Разбор
- Иначе
parameters() может быть пустым.
to(device)/state_dict опираются на эту регистрацию.
- В Python 3 пишут
super().__init__().
- Типичный junior-баг — забыть super и удивляться, что оптимизатор не видит веса.
Итог
super().init обязателен для корректной регистрации Module.