model: processor_layers: 16 hidden_dim: 512 mesh_level: 6 multimesh: true num_channels_climate: 227 use_cos_zenith: true use_time_of_year_index: true num_history: 0 num_channels_static: 5 num_steps: 1 checkpoint_encoder: true checkpoint_decoder: false full_bf16: true processor_type: MessagePassing khop_neighbors: 32 num_attention_heads: 4 norm_type: LayerNorm segments: 1 force_single_checkpoint: false checkpoint_processor: false force_single_checkpoint_finetune: false checkpoint_encoder_finetune: true checkpoint_processor_finetune: true checkpoint_decoder_finetune: true concat_trick: true cugraphops_encoder: false cugraphops_processor: false cugraphops_decoder: false recompute_activation: false use_apex: true patience: 50 start_epoch: 0 max_epoch: 9999 num_val_steps: 8 dt: 6.0 grad_clip_norm: 32.0 lr: 1e-3 lr_step3: 3e-7 num_iters_step1: 1000 num_iters_step2: 299000 num_iters_step3: 11000 step_change_freq: 1000 val_freq: 5 checkpoint_dir : "./data/checkpoints" # 整个数据读取流程 datapipe: name: "ERA5" task: "weather_forecasting" # dataset设定 dataset: type: "hdf5" data_dir: './data/' # "$ONESCIENCE_DATASETS_DIR/ERA5/newh5/" dataset_metadata_path: './data.json' # Path to the dataset metadata, containing channel names. time_diff_std_path: './time_diff_std.npy' # Path to the .npy file with standard deviation of normalized per-variable per-pressure level time differences. train_time: [1951, 1952] val_time: [1953] test_time: [1954] img_size: [721, 1440] verbose: true cache: false # vars channels: ['10m_u_component_of_wind', '10m_v_component_of_wind', '2m_temperature', 'mean_sea_level_pressure', 'total_precipitation', 'geopotential_1', 'geopotential_2', 'geopotential_3', 'geopotential_5', 'geopotential_7', 'geopotential_10', 'geopotential_20', 'geopotential_30', 'geopotential_50', 'geopotential_70', 'geopotential_100', 'geopotential_125', 'geopotential_150', 'geopotential_175', 'geopotential_200', 'geopotential_225', 'geopotential_250', 'geopotential_300', 'geopotential_350', 'geopotential_400', 'geopotential_450', 'geopotential_500', 'geopotential_550', 'geopotential_600', 'geopotential_650', 'geopotential_700', 'geopotential_750', 'geopotential_775', 'geopotential_800', 'geopotential_825', 'geopotential_850', 'geopotential_875', 'geopotential_900', 'geopotential_925', 'geopotential_950', 'geopotential_975', 'geopotential_1000', 'relative_humidity_1', 'relative_humidity_2', 'relative_humidity_3', 'relative_humidity_5', 'relative_humidity_7', 'relative_humidity_10', 'relative_humidity_20', 'relative_humidity_30', 'relative_humidity_50', 'relative_humidity_70', 'relative_humidity_100', 'relative_humidity_125', 'relative_humidity_150', 'relative_humidity_175', 'relative_humidity_200', 'relative_humidity_225', 'relative_humidity_250', 'relative_humidity_300', 'relative_humidity_350', 'relative_humidity_400', 'relative_humidity_450', 'relative_humidity_500', 'relative_humidity_550', 'relative_humidity_600', 'relative_humidity_650', 'relative_humidity_700', 'relative_humidity_750', 'relative_humidity_775', 'relative_humidity_800', 'relative_humidity_825', 'relative_humidity_850', 'relative_humidity_875', 'relative_humidity_900', 'relative_humidity_925', 'relative_humidity_950', 'relative_humidity_975', 'relative_humidity_1000', 'u_component_of_wind_1', 'u_component_of_wind_2', 'u_component_of_wind_3', 'u_component_of_wind_5', 'u_component_of_wind_7', 'u_component_of_wind_10', 'u_component_of_wind_20', 'u_component_of_wind_30', 'u_component_of_wind_50', 'u_component_of_wind_70', 'u_component_of_wind_100', 'u_component_of_wind_125', 'u_component_of_wind_150', 'u_component_of_wind_175', 'u_component_of_wind_200', 'u_component_of_wind_225', 'u_component_of_wind_250', 'u_component_of_wind_300', 'u_component_of_wind_350', 'u_component_of_wind_400', 'u_component_of_wind_450', 'u_component_of_wind_500', 'u_component_of_wind_550', 'u_component_of_wind_600', 'u_component_of_wind_650', 'u_component_of_wind_700', 'u_component_of_wind_750', 'u_component_of_wind_775', 'u_component_of_wind_800', 'u_component_of_wind_825', 'u_component_of_wind_850', 'u_component_of_wind_875', 'u_component_of_wind_900', 'u_component_of_wind_925', 'u_component_of_wind_950', 'u_component_of_wind_975', 'u_component_of_wind_1000', 'v_component_of_wind_1', 'v_component_of_wind_2', 'v_component_of_wind_3', 'v_component_of_wind_5', 'v_component_of_wind_7', 'v_component_of_wind_10', 'v_component_of_wind_20', 'v_component_of_wind_30', 'v_component_of_wind_50', 'v_component_of_wind_70', 'v_component_of_wind_100', 'v_component_of_wind_125', 'v_component_of_wind_150', 'v_component_of_wind_175', 'v_component_of_wind_200', 'v_component_of_wind_225', 'v_component_of_wind_250', 'v_component_of_wind_300', 'v_component_of_wind_350', 'v_component_of_wind_400', 'v_component_of_wind_450', 'v_component_of_wind_500', 'v_component_of_wind_550', 'v_component_of_wind_600', 'v_component_of_wind_650', 'v_component_of_wind_700', 'v_component_of_wind_750', 'v_component_of_wind_775', 'v_component_of_wind_800', 'v_component_of_wind_825', 'v_component_of_wind_850', 'v_component_of_wind_875', 'v_component_of_wind_900', 'v_component_of_wind_925', 'v_component_of_wind_950', 'v_component_of_wind_975', 'v_component_of_wind_1000', 'temperature_1', 'temperature_2', 'temperature_3', 'temperature_5', 'temperature_7', 'temperature_10', 'temperature_20', 'temperature_30', 'temperature_50', 'temperature_70', 'temperature_100', 'temperature_125', 'temperature_150', 'temperature_175', 'temperature_200', 'temperature_225', 'temperature_250', 'temperature_300', 'temperature_350', 'temperature_400', 'temperature_450', 'temperature_500', 'temperature_550', 'temperature_600', 'temperature_650', 'temperature_700', 'temperature_750', 'temperature_775', 'temperature_800', 'temperature_825', 'temperature_850', 'temperature_875', 'temperature_900', 'temperature_925', 'temperature_950', 'temperature_975', 'temperature_1000', 'vertical_wind_speed_1', 'vertical_wind_speed_2', 'vertical_wind_speed_3', 'vertical_wind_speed_5', 'vertical_wind_speed_7', 'vertical_wind_speed_10', 'vertical_wind_speed_20', 'vertical_wind_speed_30', 'vertical_wind_speed_50', 'vertical_wind_speed_70', 'vertical_wind_speed_100', 'vertical_wind_speed_125', 'vertical_wind_speed_150', 'vertical_wind_speed_175', 'vertical_wind_speed_200', 'vertical_wind_speed_225', 'vertical_wind_speed_250', 'vertical_wind_speed_300', 'vertical_wind_speed_350', 'vertical_wind_speed_400', 'vertical_wind_speed_450', 'vertical_wind_speed_500', 'vertical_wind_speed_550', 'vertical_wind_speed_600', 'vertical_wind_speed_650', 'vertical_wind_speed_700', 'vertical_wind_speed_750', 'vertical_wind_speed_775', 'vertical_wind_speed_800', 'vertical_wind_speed_825', 'vertical_wind_speed_850', 'vertical_wind_speed_875', 'vertical_wind_speed_900', 'vertical_wind_speed_925', 'vertical_wind_speed_950', 'vertical_wind_speed_975', 'vertical_wind_speed_1000', ] variables: - "u10" # 10m U wind component - "v10" # 10m V wind component - "t2m" # 2m temperature - "msl" # Mean sea level pressure - "z500" # Geopotential at 500 hPa - "t850" # Temperature at 850 hPa # 时间配置 time_range: ["2000-01-01", "2020-12-31"] time_steps: 1 time_res: 6 # 空间配置 spatial_resolution: [0.25, 0.25] # 采样配置 num_samples: -1 # -1 表示使用全部数据 shuffle: true random_seed: 42 # 领域特定配置 extra: levels: [500, 850, 1000] lat_range: [-90, 90] lon_range: [0, 360] # 数据转换配置 transforms: - type: "Normalize" params: mean: [0.0, 0.0, 288.0, 101325.0, 50000.0, 270.0] std: [5.0, 5.0, 15.0, 1000.0, 5000.0, 10.0] keys: ["input", "target"] - type: "ToTensor" params: keys: null # null表示转换所有numpy数组 # 其他配置 # DataLoader配置 dataloader: mask_dtype: "float32" batch_size: 1 num_workers: 1 pin_memory: true drop_last: true shuffle: false # 使用sampler时设为false prefetch_factor: 2 persistent_workers: true # 分布式配置 distributed: enabled: true sampler: "DistributedSampler" rank: 0 world_size: 4 shuffle: true seed: 42 drop_last: true