Can I change a custom resnet 18 architecture subtly and still use it in pre-trained mode?

or for example should I use this answer?

Can you at a high-level (not code-level) please provide some hint why this answer should work?

I am also loading a torch model like below:
checkpoint = torch.load(args.resume, encoding='latin1')