Request for IPWG-Net PyTorch architecture and inference code
Hi,
I'm a master's student at the University of Campinas (UNICAMP), Brazil, working on the evaluation of machine learning models for extreme precipitation detection using the SatRain benchmark.
I'm interested in using your pretrained IPWG-Net GMI model as a reference baseline in my research.
I've downloaded ipwg_net_gmi.pt and successfully inspected its state_dict, satrain_config, and model_config. However, I couldn't find the corresponding PyTorch model class or inference implementation in the public SatRain repositories or in this Hugging Face repository.
Would it be possible to share or point me to:
- The original PyTorch model architecture, including the
forward()method. - The inference procedure, particularly the output transformation and any required postprocessing.
- If available, a minimal example showing how to load the checkpoint and generate precipitation estimates.
- If possible, one reference input/output pair (e.g., a single validation scene with the model’s output), so I can verify numerical equivalence of my inference.
Also, could you clarify what 'hidden_layer': [8, 2] in satrain_config refers to? I also noticed that the CNN in the SatRain documentation notebook uses different layer names (stem/encoder/heads), so I assume it is a different network.
The checkpoint metadata already provides useful information about the input normalization, so the main missing piece is the exact model implementation.
Having access to the original implementation would help ensure that the baseline is evaluated faithfully and reproducibly, without introducing assumptions through architecture reconstruction.
Thank you for making the pretrained model publicly available and for your work on SatRain!
Best regards,
Gustavo Barbosa Cassimiro
Master's student - University of Campinas (UNICAMP), Brazil
Dear Simon,
Thank you very much for pointing me to the notebook. This is exactly what I was missing. With load_model() I can use the original architecture and preprocessing instead of trying to rebuild them from the state dict.
For context: in my master’s project at INPE/UNICAMP I’m looking at how the definition of an extreme event (percentile-based thresholds on MRMS, up to the 99th percentile) changes the conclusions we draw when evaluating detection models on SatRain GMI data. I’d like to use IPWG-Net as the reference retrieval: apply our thresholds to its precipitation estimates and compare it with detectors trained directly for each threshold.
I’ll start by running the GMI checkpoint on the validation split. If you happen to have a reference input/output pair for that checkpoint, it would help me confirm that my setup reproduces your results.
Thanks again for taking the time to help.
Best regards,
Gustavo Cassimiro