AtmosphericDA-DModel / conf /config.yaml
zhangrenchao's picture
Upload folder using huggingface_hub
9613b5e verified
Raw
History Blame Contribute Delete
3.02 kB
project:
name: AtmosphericDA-DModel
format_version: "2.0"
seed: 7
independent_code_license: Apache-2.0
paper_specification:
title: Using machine learning to correct model error in data assimilation and forecast applications
authors: [Alban Farchi, Patrick Laloyaux, Massimo Bonavita, Marc Bocquet]
arxiv: "2010.12605"
doi: 10.1002/qj.4116
journal: Quarterly Journal of the Royal Meteorological Society
publication_year: 2021
verified_facts:
state: two-layer streamfunction psi
grid: {nx: 40, ny: 20, state_size: 1600}
boundary: x periodic and y fixed
time_steps_minutes: {reference: 10, perturbed_model: 20}
observations: {interval_hours: 2, random_locations: 50, batches_per_window: 12, window_start_utc: "01:00", covariance: "0.1 I"}
trajectories: {cycles: 1032, discarded_cycles: 8, usable_samples: 1024}
splits: {training_samples: 1024, validation_samples: 1024, test_sets: 16, samples_per_test_set: 1024}
supervised_input: x_a_k
supervised_target: "x_a_{k+1} - M_o(x_a_k)"
final_correction_model: "D model, one hidden Dense layer with 8 linear nodes"
optimizer: TensorFlow Adam with MSE
schedule: [{epochs: 1000, learning_rate: 0.001}, {epochs: 1000, learning_rate: 0.0001}]
engineering_implementation:
dynamics: stable finite-difference two-layer channel surrogate with perturbed advection, coupling, and damping
analysis: sequential bilinear innovation spreading, an executable simplification of variational analysis
framework_note: PyTorch implements the same Adam/MSE objective and D-model topology for local DDP support
paths:
data: data/qg_analysis_windows.npz
checkpoint: result/checkpoints/d_model.pt
training_metrics: result/training/metrics.json
predictions: result/output/predictions.npz
evaluation_metrics: result/evaluation/metrics.json
comparison_figure: result/evaluation/comparison.png
qg:
nx: 40
ny: 20
reference_dt_minutes: 10
model_dt_minutes: 20
observation_interval_minutes: 120
window_batches: 12
diffusion: 0.002
truth_advection: 0.18
model_advection: 0.15
truth_coupling: 0.025
model_coupling: 0.018
truth_damping: 0.006
model_damping: 0.009
data:
dataset: structured synthetic two-layer streamfunction analysis windows
protocol: hybrid_qg_analysis_increment_npz_v2
format: NPZ
format_version: "2.0"
state_layout: NCYX
state_shape: [2, 20, 40]
samples: 4
observation_batches: 12
observations_per_batch: 50
observation_variance: 0.1
analysis_gain: 0.35
seed: 7
model:
architecture: DModel
hidden_size: 8
activation: linear
training:
stage_epochs: [2, 2]
stage_learning_rates: [0.001, 0.0001]
batch_size: 2
seed: 19
paper_model:
hidden_size: 8
activation: linear
loss: MSE
optimizer: Adam
stage_epochs: [1000, 1000]
stage_learning_rates: [0.001, 0.0001]
training_samples: 1024
validation_samples: 1024
test_sets: 16
samples_per_test_set: 1024
state_shape: [2, 20, 40]
observation_shape_per_window: [12, 50]