{ "model_name": "PPNN", "model_type": "ppnn", "architectures": [ "PPNN" ], "framework": "PyTorch", "domain": "weather forecasting", "task": "probabilistic ensemble forecast postprocessing", "implementation": { "entry_point": "model/ppnn.py", "scope": "Core-method and full-data-dimension reduced-scale end-to-end engineering reproduction", "train_script": "scripts/train.py", "inference_script": "scripts/inference.py", "evaluation_script": "scripts/result.py", "synthetic_data_script": "scripts/fake_data.py" }, "architecture": { "variant": "NN-aux-emb", "continuous_features": 40, "station_embedding_dim": 2, "network_input_features": 42, "engineering_hidden_size": 32, "paper_long_training_hidden_size": 512, "activation": "ReLU", "outputs": [ "mu", "raw_sigma" ], "scale_transform": "abs(raw_sigma) + epsilon" }, "data": { "datasets": [ "ECMWF TIGGE ensemble forecasts", "DWD station observations" ], "protocol": "Daily 00 UTC initialization at a fixed 48-hour lead; one sample is a valid date-station pair", "format_version": "ppnn_nn_aux_emb_v1", "raw_ensemble_shape": [ "N", 50, 18 ], "continuous_input_shape": [ "N", 40 ], "output_shape": [ "N", 2 ], "ensemble_members": 50, "forecast_variables": 18, "station_count": 537, "lead_time_hours": 48, "target": "2 m temperature", "target_unit": "degree Celsius", "ensemble_statistics": [ "mean", "sample standard deviation (ddof=1)" ] }, "configuration_sources": [ "conf/config.yaml", "model/ppnn.py", "scripts/fake_data.py", "scripts/train.py", "scripts/inference.py", "scripts/result.py" ] }