Could you post the model definition with the submodules, which weren’t registered?
You should register tensors as buffers or nn.Parameters directly:
class MyModel(nn.Module):
    def __init__(self):
        super(MyModel, self).__init__()
        self.a = nn.Parameter(torch.randn(1))
        self.b = torch.randn(1)
        self.register_buffer('c', torch.randn(1))
        
    def forward(self, x):
        x = x + 1
        return x

model = MyModel()
model.state_dict()
> OrderedDict([('a', tensor([-0.0560])), ('c', tensor([-1.2713]))])