FNO / config /config.yaml
yushuang88's picture
Upload folder using huggingface_hub
07a5280 verified
Raw
History Blame Contribute Delete
3.21 kB
paper:
title: "Fourier Neural Operator for Parametric Partial Differential Equations"
arxiv: "2010.08895"
experiment: "FNO-2D Navier-Stokes, nu=1e-5, T=20"
viscosity: 1.0e-5
reference_relative_l2: 0.1556
reference_parameter_count: 414517
reference_epoch_seconds_v100: 127.80
data:
root: "/public/share/sugonhpcapp01/onestore/onedatasets/FNO_data"
file: "NavierStokes_V1e-5_N1200_T20.mat"
key: "u"
layout: "N,H,W,T"
dtype: "float32"
expected_shape: [1200, 64, 64, 20]
resolution: [64, 64]
ntrain: 1000
ntest: 200
train_start: 0
test_start: 1000
history: 10
horizon: 10
recording_interval: 1.0
future_times: [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
normalization: "none"
model:
name: "FNO2d"
input_channels: 10
output_channels: 1
use_grid: true
grid_channels: 2
grid_include_endpoint: false
width: 32
modes1: 12
modes2: 12
num_layers: 4
projection_width: 128
activation: "relu"
normalization: "batch_norm"
block_order: "relu(batch_norm(spectral_plus_pointwise))"
fft_norm: "backward"
spectral_init: "scaled_uniform_complex"
training:
epochs: 500
batch_size: 20
optimizer: "adam"
learning_rate: 0.001
weight_decay: 0.0
scheduler: "step_lr"
scheduler_step_size: 100
scheduler_gamma: 0.5
seed: 0
dtype: "float32"
amp: false
gradient_clipping: null
ema: false
distributed: "single"
num_workers: 0
pin_memory: true
deterministic: true
relative_l2_epsilon: 1.0e-12
train_rollout_steps: 10
evaluation_rollout_steps: 10
checkpoint_monitor: "train_full_relative_l2"
checkpoint_mode: "min"
evaluate_test_every_epoch: true
inference:
batch_size: 20
seed: 0
dtype: "float32"
rollout_steps: 10
paths:
checkpoint: "weight/best_model.pth"
results_dir: "results"
train_history: "results/train_history.json"
predictions: "results/predictions.npz"
metrics: "results/metrics.json"
per_sample_metrics: "results/per_sample_metrics.csv"
training_curves: "results/training_curves.png"
rollout_figure: "results/sample_000_rollout.png"
run_metadata: "results/run_metadata.json"
summary: "results/summary.md"
assumptions:
- "The paper does not specify a validation split; the best checkpoint is selected using train full-trajectory relative L2, never test error."
- "The paper does not specify batch size or seed; batch_size=20 and seed=0 are explicit engineering assumptions."
- "The paper does not define the exact relative-L2 reduction; ratios are computed per sample and then averaged with epsilon=1e-12."
- "The paper does not specify the projection hidden width; projection_width=128 is configurable."
- "Coordinate-grid input is configurable and enabled; the periodic grid excludes the duplicated endpoint."
- "The block ordering is ReLU(BatchNorm(spectral + pointwise)); the paper states ReLU and batch normalization but not their exact order."
- "Adam uses weight_decay=0.0 because the paper does not state an additional weight-decay regularizer."
conflicts:
- "The paper states d_v=32 but reports 414,517 parameters without enough connection details to reproduce both uniquely. Width 32 takes precedence and the actual parameter count must be reported."