Partially overwrite parameters when using load_from_checkpoint
🚀 Feature
I noticed that PL now support arbitary nested dictionary as hparams, I'm really happy with that. But now I found a small problem when using load_from_checkpoint. This function accepts kwargs to override hparams from checkpoint, although it uses dict.update, original update function from python cannot handle nested update well. I use addict.Dict to passes parameters around and what I want to achieve is exactly what it does: https://github.com/mewwts/addict#update
Which means if the configs in checkpoint are like {a: {b: 3, c: 4}, and I overwrite the parameters by load_from_checkpoint(..., kwargs={a: {c: 5}}), the hparams will be {a: {b:3, c:5}} instead of {a: {c: 5}}.
I do initialization in __init__ of my module, so it's a bit tricky to change parameters after the module is initialized. Is there another way to change the hparams from checkpoint before initialize the module? Right now I have to directly tweak the checkpoint config...