{ "model_name": "RF-ClimParam", "model_type": "joint-multi-output-random-forest-regressor", "architectures": ["JointRandomForestRegressor"], "framework": "PyTorch", "domain": "earth-science", "task": "multi-resolution-subgrid-parameterization", "implementation": { "entry_point": "model/rf_climparam.py", "scope": "independent paper-method 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": { "family": "bootstrapped extra-random regression forest", "rf_tend_input": 145, "rf_tend_output": 144, "rf_diff_input": 62, "rf_diff_output": 17, "joint_multi_output_leaves": true, "scales": ["x4", "x8", "x16", "x32"] }, "paper_model": { "trees": 10, "min_samples_leaf": {"x4": 20, "x8": 20, "x16": 20, "x32": 7}, "training_samples": {"x4": 5000000, "x8": 5000000, "x16": 5000000, "x32": "not_reported"}, "max_depth": "not_reported", "max_features": "not_reported", "bootstrap": "not_reported", "split_criterion": "not_reported", "implementation": "scikit-learn-0.21.2-RandomForestRegressor" }, "data": { "protocol": "rf_climparam_v2", "format": "NPZ", "high_resolution": {"km": 12, "grid": [576, 1440], "vertical_levels": 48}, "coarse_grids": { "x4": {"km": 48, "grid": [144, 360]}, "x8": {"km": 96, "grid": [72, 180]}, "x16": {"km": 192, "grid": [36, 90]}, "x32": {"km": 384, "grid": [18, 45], "online_native_grid": [18, 48]} }, "domain_km": [6912, 17280], "snapshot_hours": 3, "default_timestep_seconds": 24, "coarsening": "N by N horizontal average", "synthetic_layout": "one complete C-order flattened structured snapshot per coarse scale", "default_training_sampling": "one longitude column per latitude" }, "paper": { "arxiv": "2001.03151", "doi": "10.1038/s41467-020-17142-3", "official_code_data_osf_doi": "10.17605/OSF.IO/36YPT" }, "configuration_sources": [ "conf/config.yaml", "model/rf_climparam.py", "scripts/fake_data.py", "scripts/train.py", "scripts/inference.py", "scripts/result.py" ] }