sean.theinformed.org / training / weather / guide

Weather and ocean models

This study trains models that make geostationary weather-satellite imagery sharper, give it true color, and turn it into a radar-like picture of rain, on an HPC cluster (a supercomputer built from many identical computers called nodes). It has five efforts. This guide explains each from the ground up: what the model sees, how it is built and trained, and the measurement that will decide whether it worked.

1. The question and why it matters

One 2 km square as each band of a geostationary imager records it Infrared records one pixel for the square, blue and green record four, red records sixteen. The goal is blue and green at the red band's sixteen. Infrared 2 km, 1 pixel Blue, green 1 km, 4 pixels Red, 0.64 µm 0.5 km, 16 pixels Goal blue at 0.5 km Pixel sizes are at the point directly below the satellite; they grow toward the edge of the disk.
One 2 km square of ground as three bands of the same imager record it. Only the red band resolves the sixteen small squares; the study asks how much of that detail can be given to the other bands.

Geostationary weather satellites sit about 36,000 km above the equator and turn with the Earth, so each one watches the same disk of the planet and images it every ten minutes. This study uses three: GOES over the Americas, Himawari over Asia and the western Pacific, and Meteosat over Europe and Africa. Each imager records about sixteen bands, from visible light to thermal infrared. The bands are not equally sharp. The red band at 0.64 µm has pixels 0.5 km across directly below the satellite, the blue and green bands 1 km, and most infrared bands 2 km.

A forecaster looking at fog in a valley, smoke from a fire or the edge of a thunderstorm wants every band at the red band's detail. A true-color picture needs blue, green and red together, and it can be no sharper than its coarsest band. Large parts of the planet, the open ocean above all, have no weather radar at all, so the only picture of rain there comes from satellites. Each of the five efforts below takes one piece of this.

The five efforts, as of 3 October 2026
EffortQuestionWhere it stands
Guided sharpeningCan the 0.5 km red band supply the missing detail when a 1 km band is sharpened to 0.5 km?Six runs trained on the cluster and returned; the verdict against independent truth is not yet scored
Red band, four times sharperCan a larger network sharpen the red band itself by a factor of four, with no guide?Five runs on one node; results not in
True color, third versionCan a small network turn GOES bands into true color that matches the color of the measured light?Trained and scored: failed three of its checks; the standard color recipe stays
Satellite radar, worldwide pilotDoes a model that turns satellite imagery into radar reflectivity over the United States still work over Europe?Four runs prepared; the Europe test waits for 90 days of radar, about 17 December 2026
Sharpening benchmarkCan sharpening be judged against independent truth at every viewing angle, and the test released for anyone to use?First 20 tiles, then the rest of 900 scenes; no scene scored yet

The cluster matters because these runs are larger than one workstation should carry. Until October the models trained on a workstation with two RTX 4080 graphics cards of 16 GB each, which also serve the public weather site. A full radar training run took 56 hours there. The cluster's GPU nodes each hold four NVIDIA A100 graphics processors with 40 GB apiece, 128 CPU cores and 512 GB of memory, so four runs of that size train side by side on one node.

2. The basics, built up for this problem

A fine pattern and the same pattern averaged in 4 by 4 blocksFine fieldAveraged in 4 x 4 blocks
A synthetic scene, averaged into coarse pixels and then rebuilt. Without a guide the rebuild is smooth; with a sharper second image of the same scene the fine detail comes back, and the score in decibels rises.

What the model consumes and produces

Each band is a grid of numbers. For the visible bands each number is a reflectance, the fraction of sunlight the scene sends back toward the satellite; for the infrared bands it is a brightness temperature in kelvin. A model in this study reads a small square of that grid, called a patch, and writes another grid. The sharpening models read a 1 km patch (plus, when guided, the 0.5 km red patch of the same ground) and write the same band on a 0.5 km grid. The true-color model reads a handful of GOES values at one pixel and writes a red, green and blue color for it. The radar model reads a stack of satellite bands, lightning counts and weather-model fields over a region and writes a map of radar reflectivity in dBZ, the decibel scale weather radar uses for how strongly rain and hail send back its pulse.

What training means here

A neural network is a long chain of simple arithmetic steps with about a million adjustable numbers, called weights. Training shows it many examples where the right answer is known, measures how far its output is from that answer with a single number called the loss, and nudges every weight a small step in the direction that lowers the loss. One nudge from a batch of examples is a step; one pass through all the training examples is an epoch. After each epoch the model is scored on examples it never trains on, and the best-scoring copy of the weights, a checkpoint, is kept.

Sharpening has a catch: no satellite records blue at 0.5 km, so there is no right answer to train against at the scale the model will be used. The standard way around it is to make the right answer by moving down one level. The 1 km band is blurred and sampled to 2 km, the model learns to rebuild the 1 km band from that, and the trained model is then applied one level up, from 1 km to 0.5 km. The figure above does the same thing to a synthetic scene. How the 2 km copy is made matters a great deal, because the model learns to undo exactly that blur. The early models in this study used a plain average of 2 by 2 pixels; the current ones use each sensor's measured blur.

What the score means

The sharpening scores are peak signal-to-noise ratio, PSNR, in decibels: ten times the logarithm of the largest possible value squared over the mean squared error. Higher is better, and every 3 dB is roughly a halving of the squared error. A score is always given as a gain over bicubic interpolation, the standard smooth way to enlarge an image, on the same pixels. A model that gains nothing over bicubic has learned nothing useful.

What "generalize" means here

A model generalizes if it does as well on data it has never seen as on the data it trained on. For these models "never seen" is taken in three increasingly strict senses. The first is held-out days: whole days kept out of training, because neighboring images on the same day share the same clouds. The second is a held-out place: the radar model trained on the United States is tested on Europe, under a different satellite and a different radar network. The third is independent truth: the sharpening models are judged against a different satellite altogether, the European Sentinel-2, whose visible bands have 10 m pixels.

The third sense is where the earlier models failed. The first guided models, trained on 2 by 2 averages, scored +14.68 dB over bicubic on held-out GOES blue days, against +1.36 dB for the same network without the guide. Against Sentinel-2, on seven bands, the guided models beat their unguided twins by between −0.08 and +0.02 dB, with every interval spanning zero. The large gain was the model learning to undo the 2 by 2 average, which real sensors do not apply. The current runs train on each sensor's measured blur and are judged against Sentinel-2.

3. The data

Training data each effort sends to the cluster, in gigabytes Satellite radar Satellite radar, US corpus: 228.1 GB 228.1 Red band, four times Red band four times sharper: 41.2 GB 41.2 Guided, Himawari green Guided sharpening, Himawari: 16.1 GB 16.1 Guided, Meteosat Guided sharpening, Meteosat: 10.6 GB 10.6 True color True color: 6.3 GB 6.3 GB sent, as stored (half-precision patches do not compress)
The radar corpus is about three times the other four together. It is too large for a node's 49 GB local disk, so the four radar runs read it from the cluster's shared file system and keep it in the node's 512 GB of memory.

All the imagery is public and unclassified: NOAA's GOES data from its open-data program, Japan's Himawari data through the same program, EUMETSAT's Meteosat data, and Sentinel-2 from the European Copernicus program. The data that judges each model does not travel with its training data. The sharpening benchmark's Sentinel-2 truth and the true-color test days stay at home; the radar test continent is kept out of the training job altogether.

Guided sharpening

Two corpora. The Himawari corpus holds 561 training scans from Himawari-8 and -9, August 2015 to August 2026, with 24 validation scans on 8 held-out days; the band sharpened is the 0.51 µm green band and the guide is the 0.64 µm red band. The Meteosat corpus holds 295 training scans from the new Meteosat imager, October 2024 to September 2025, with 18 validation scans on 6 held-out days; the bands sharpened are 0.44 µm and 0.51 µm and the guide is the 0.64 µm red band at 0.5 km. Each scan is cut into patches stored at half precision. One epoch is about 1,158 steps on Himawari and 609 on Meteosat.

Red band, four times sharper

GOES red-band patches of 256 by 256 fine pixels, each paired with a 64 by 64 copy made by averaging 4 by 4 blocks: 373,277 training patches from two earlier corpora. A development set of 7,686 patches from eight days, none within a day of any training day, is used to choose checkpoints. Four further test days, and their neighbors, never leave home; they decide the final verdict.

True color

466 pairs of GOES scenes and NASA's true-color imagery of the same ground and time (from NASA's global imagery service, GIBS), on a grid of 0.02 degrees, about 2.2 km. The target color is not GIBS itself. GIBS puts three narrow reflectance bands straight into red, green and blue, which renders leaves a saturated olive. The target is the color a person would see from the full measured spectrum, fitted on spectra from NASA's PACE satellite. Four days hold the test pairs (43 of them) and four more are used to choose the checkpoint.

Satellite radar

The US corpus pairs GOES-East imagery taken every five minutes with the US radar mosaic (NOAA's MRMS, a merged picture from the national radar network), plus lightning counts from the satellite's lightning mapper and 15 fields from the GFS global weather model. It has 19,936 training examples and 2,001 on 18 days set aside for choosing the checkpoint. Eighteen held-out days and one held-out region are inside the same files, and the trainer never opens them. The Europe test set is radar from OPERA, the network of European weather services, being collected forward since 19 September 2026, with Meteosat imagery for the same times; it needs 90 days and stays off the cluster until the single scoring.

Sharpening benchmark

Sentinel-2 tiles (110 km square, about 0.35 GB each) paired with the matching GOES-East pixels, which are read out of the full-disk files by byte range, about 120 KB instead of 457 MB a band. A scene qualifies only if the tile is at most 5% cloud, the two satellites looked within 60 seconds of each other, the sun is at least 20 degrees up, and the GOES band and red each agree with Sentinel-2 at a correlation of 0.95 or more at 1 km. At most four tiles a day are taken, at least 300 km apart. The pilot offers 300 scenes in each of three viewing-angle bands, 900 in all; raw tiles are deleted once built.

4. The models: architecture and sizes

Data flow through the guided sharpening network The coarse band and the red guide enter; the guide is averaged to the coarse grid and stacked with the band; sixteen residual blocks compute features; pixel shuffle moves them to the fine grid; the full-resolution guide is joined; two convolutions make a correction that is added to the bicubic enlargement of the band. Coarse band patch 1 km grid (2 km in training) Red guide patch 0.5 km grid (1 km in training) Average to coarse grid Stack: band and guide, 2 channels Band alone, 1 channel Head convolution, then 16 residual blocks 64 feature maps throughout, coarse grid Pixel shuffle: features moved to the fine grid Join full-res guide; 2 convolutions: correction 2 convolutions: correction Bicubic enlargement + Sharpened band, 0.5 km grid

Guided: 1,405,633 weights. Control: 1,367,553.

  1. The inputs: a patch of the band to be sharpened and the red patch of the same ground at twice the resolution. In training both are one level coarser, made with each sensor's measured blur.
  2. The red patch is averaged onto the coarse grid and stacked with the band as a second channel, so the network can learn where the two bands agree and where they differ.
  3. A first convolution turns the stack into 64 feature maps. Sixteen residual blocks follow; each adds a learned change to its input rather than replacing it, which keeps a deep network stable to train.
  4. A pixel shuffle rearranges groups of feature channels into a grid twice as fine, so the features now sit on the 0.5 km grid.
  5. The full-resolution red patch is joined here, because the fine detail it carries exists only on the fine grid. Two convolutions turn the result into a correction image.
  6. The correction is added to the bicubic enlargement of the band. The last convolution starts at zero, so an untrained network outputs bicubic exactly and learns only what to add.
The guided sharpening network. The control is the same network with the two guide paths removed; switching between them shows the two guide paths, which add 2.8% to the weights.

The networks are small because every model trained on the cluster has to run fast on one 16 GB graphics card at home, where the weather site serves it, so each plan states the model's serving size and speed before it trains. The table gives the sizes.

Model sizes
EffortNetworkWeights
Guided sharpeningResidual network, 64 features, 16 blocks, 2x; guided / control1,405,633 / 1,367,553
Red band, four timesEDSR, 64 features, 16 blocks (the site's current design)1.5 million
RCAN-lite, 6 groups of 8 blocks4.1 million
SwinIR-lite, 96 wide, 6 by 6 layers, window 83.7 million
True colorPer-pixel network, 16 inputs, three hidden layers of 649,923
Satellite radarU-Net, four scales at width 6412,959,591
Sharpening benchmarkNo trained model: bicubic, ratio sharpening and the ceiling as referencesnone

Red band, four times sharper

Three families of network are compared on identical data. EDSR is a plain stack of residual blocks, the design the site already uses, and serves as the control. RCAN adds channel attention: each block learns a weight for each of its feature maps from the whole patch, so it can turn up the maps that matter for the scene in front of it. SwinIR replaces convolutions with attention inside 8 by 8 pixel windows that shift between layers, letting each pixel draw on any other pixel in its window. A forward pass on a 48-pixel patch costs 9.05 billion operations for EDSR, 20.9 for RCAN-lite and 20.6 for SwinIR-lite. Each of RCAN-lite and SwinIR-lite is trained twice, once with L1 loss (the mean absolute error) and once with L2 loss (the mean squared error); L2 pushes harder on large errors and is what PSNR measures, while L1 tends to leave edges sharper.

True color

The true-color model is a multilayer perceptron, a few layers of weighted sums applied to one pixel at a time. Its 16 inputs are the seven per-pixel GOES features of the first version, the 11.2 µm infrared brightness temperature, and the mean and spread of four bands over the surrounding 5 by 5 pixels, about 11 km. Inside the model a fixed table removes Rayleigh scattering, the blue haze of the air itself, before the three hidden layers of 64. The output passes through a sigmoid so each color lies between 0 and 1. At 9,923 weights it is about 0.6 MB with the scattering table.

Satellite radar

The radar model is a U-Net: an encoder that halves the grid three times while widening the features, then a decoder that doubles it back, with each level of the encoder passed directly to the matching level of the decoder so fine detail survives. It has GroupNorm and residual blocks, with no recurrence and no attention. It does not output a number of dBZ directly. It outputs a probability for each of 13 classes (no echo, eleven 5 dB bins from 5 to 60 dBZ, and above 60), and the map shows the expected value. Three heads share one trunk and predict the radar picture now, in 30 minutes and in 60 minutes. The weather-model fields enter through their own first layer and are switched off at random for a quarter of the training examples, so the model cannot lean on them entirely.

For the worldwide pilot the inputs are cut to what both satellites carry. Meteosat's imager has no counterpart of one GOES water-vapor band, so the main model uses seven bands with a Meteosat twin plus lightning. A fourth run uses all eight original bands and no lightning, for a later test under Himawari, which has no lightning mapper.

5. The training schema

The six guided sharpening runs packed onto one node's four graphics processors 0 1 h 2 h hours, from epoch times measured on an RTX 4080 A100 1 Himawari green, guided: epochs 2 to 18 at reduced scale Himawari green, guided: epochs 19 to 36 at full resolution. 2.29 h in all on an RTX 4080 Himawari green, guided A100 2 Himawari green, control: epochs 1 to 18 Himawari green, control: epochs 19 to 36. 1.68 h in all Himawari green, control A100 3 Meteosat 0.44 µm, guided: epochs 1 to 18 Meteosat 0.44 µm, guided: epochs 19 to 36. 1.23 h in all Meteosat 0.44 µm, control: epochs 1 to 18 Meteosat 0.44 µm, control: epochs 19 to 36. 0.93 h in all Meteosat 0.44 µm, guided then control A100 4 Meteosat 0.51 µm, guided: epochs 1 to 18 Meteosat 0.51 µm, guided: epochs 19 to 36. 1.23 h in all Meteosat 0.51 µm, control: epochs 1 to 18 Meteosat 0.51 µm, control: epochs 19 to 36. 0.93 h in all Meteosat 0.51 µm, guided then control guided control lighter: epochs 1 to 18, reduced scale
The six runs share one node's four graphics processors. Each Meteosat pair takes one processor, guided first and control after, so the longest row sets the node's wall time. On the A100 a full-resolution epoch took 168 s against 291 s on the RTX 4080, so the real bars are about 1.7 times shorter.

A job on this cluster takes a whole node, and the node is charged for its wall time whatever runs on it: one node-hour costs 128 processor-hours. A run that needs one graphics processor therefore shares its node with three others or wastes three quarters of the charge. Every effort below is packed that way, and costs are given in node-hours.

From 3 October red 4x runs also train on a second kind of node, with four NVIDIA H100 graphics processors of 80 GB each, 256 CPU cores and 600 GB of memory. The recipe and the batch per step are the same as on the A100 nodes, so a run's curves mean the same on either; only the throughput differs. The status page labels each run with its node type, and costs stay in node-hours, given per node type, since an hour of each is a different amount of computing.

Guided sharpening

Schedule36 epochs. Epochs 1 to 18 at reduced scale, 19 to 36 at full resolution. Constant learning rate.
Batch62 patches a step; full-resolution epochs use a 64 by 64 crop of each patch
OptimizerAdam, learning rate 0.0002
Objective, epochs 1 to 18Mean absolute error against the true band, one level down
Objective, epochs 19 to 361.0 x that error + 1.0 x consistency + 0.02 x detail (control: no detail term)
ControlSame patches, same schedule, same seed, no guide
Seed42
Checkpoint keptAmong epochs 19 to 36, the highest sum of the reduced-scale gain and the full-resolution consistency gain over bicubic
CostAbout 2.4 node-hours expected, 5.2 at the limit

The full-resolution epochs train the model at the scale it is used at, where there is no truth. The consistency term takes the model's 0.5 km output, blurs it with the sensor's measured blur, samples it to 1 km, and compares that with the 1 km image the satellite recorded. A sharpened image that does not average back to the measurement has invented or lost brightness. The detail term asks that the fine detail of the output relate to the fine detail of the red band, in 17 by 17 pixel windows, the way the 1 km band relates to the red band averaged to 1 km. That correlation is allowed to be negative, so a place where the two bands vary in opposite directions keeps that relation.

The blur itself comes from measurement. For GOES it is NOAA's on-orbit measurement of the imager's response, made by scanning the edge of the Moon. Himawari's imager is a near copy of the GOES design and measured the same against Sentinel-2 in the blue and green bands. Meteosat's new imager measured about 0.2 km blurrier than GOES in every band: a Gaussian of 0.554 km at 0.44 µm and 0.560 km at 0.51 µm.

The Himawari green guided run began on the workstation, finished one epoch there, and resumed on the cluster from that checkpoint at epoch 2. Its control and all four Meteosat runs started from scratch. Two things changed with the hardware. The A100 ran a full-resolution epoch in 168 s against 291 s on the RTX 4080. The number of processes reading patches went from 2 to 4, which changes speed only, because the order of samples is drawn in the main process from the seed. The code went to the cluster inside a container image built from the exact version named in each run's plan, so the arithmetic is the same on both machines.

Red band, four times sharper

Schedule375,000 steps, cosine decay from 0.0002 after 500 warm-up steps
Batch32 patches, so 12 million samples per run, against 2.7 million for the site's current model
AugmentationRandom flips and quarter turns of every patch
ObjectiveL1 or L2, as in the run's name
ControlEDSR, the current site design, trained the same way
Checkpoint keptScored on the whole development set every 10,000 steps; the best kept
PackingFive runs on four processors: each SwinIR-lite run alone, each RCAN-lite run alone, EDSR after the first RCAN-lite
CostOne node for up to 24 hours, about 24 node-hours

The probes that sized these runs were made on the RTX 4080, where EDSR trained at 700 samples a second while other jobs shared the card. Sharing a card crashed two runs on 29 September, so the full runs never share a processor. A run that reaches its time limit saves and stops, and the same command resumes it from the latest checkpoint; at most 10,000 steps are repeated. The run can also be chained through a free low-priority queue in four-hour pieces, which costs nothing but waits longer. Two more runs follow once the best of the five is known: the winner trained on a seeded half of the scans, and the winner trained on coarse inputs made with the measured GOES blur.

True color

Schedule60 epochs of 2,000,000 pixels drawn afresh each epoch
Batch8,192 pixels
OptimizerAdam, learning rate 0.001
ObjectiveMean color difference to the target, plus 0.5 x the color difference of each surface class's average (vegetated land, bare land, ocean, cloud, low-sun ocean)
Seed42; one run
HardwareOne CPU node, four threads; no graphics processor
Cost41 minutes of training, under one node-hour

The color difference is ΔE76, the straight-line distance between two colors in the CIELAB color space, where a difference of about 2.3 is the smallest a person notices. The class term exists because the earlier versions were off in whole surfaces at once: vegetation and ocean too bright, cloud too dark. A shift of that kind is visible across a whole map even when the average error per pixel is small. The run was planned for a laptop CPU and ran on a CPU node with the same four threads and the same software versions; it was then scored once on a workstation CPU.

Satellite radar

Schedule40 epochs, cosine decay; about 199,360 steps expected
Batch4 crops of 256 by 256 pixels, the crop window redrawn every epoch
OptimizerAdamW, learning rate 0.0003, weight decay 0.0001
ObjectiveCross-entropy over the 13 classes, weighted against common classes, plus a smooth version of the critical success index at 20 and 35 dBZ
Seeds42, 43 and 44 of the main model, so the spread between seeds can be read beside the result; the verdict is read on seed 42
PackingFour runs, one per A100, on one node
CostAbout 40 node-hours expected, 72 at the limit; 88.5 node-hours for the whole pilot, 133 with a 50% margin

The same recipe passed its checks over the United States on 29 September after 56 hours on one RTX 4080. The cluster estimate divides that by the 1.7 times the A100 measured on the guided runs, then rounds up because four runs read one corpus at once. The node's 512 GB of memory holds the 228 GB corpus after the first pass, so the four runs share one copy. A run that stops resumes from its last finished epoch; the trainer refuses a checkpoint from a different recipe, and after 12 failed attempts there is no verdict.

Sharpening benchmark

No training. Each scene is built on CPU nodes: Sentinel-2 is projected onto the terrain into the GOES view, so each fine pixel lands where the satellite actually saw it, and the bicubic, ratio sharpening and ceiling references are scored. A tile took about 11 CPU-minutes at home. The first 20 tiles measure the cluster's own time per tile before the rest are built. The pilot is allowed 16.5 node-hours with margin; the build itself is expected to need 3 to 5.

6. Evaluation

The ceiling: what a perfect sharpening would gain over bicubic against Sentinel-2, by viewing angle flat-Earth placement terrain placement −1 0 +1 +2 +3 +4 dB Under 25° Under 25 degrees, flat-Earth placement: +1.30 dB +1.30 Under 25 degrees, terrain placement: +3.49 dB, 5 scenes +3.49 25° to 45° 25 to 45 degrees, flat-Earth placement: −0.66 dB −0.66 25 to 45 degrees, terrain placement: +2.75 dB, 4 scenes +2.75 45° and over 45 degrees and over, flat-Earth placement: −0.51 dB −0.51 45 degrees and over, terrain placement: +2.43 dB, 10 scenes +2.43 GOES viewing angle from straight down; terrain bars on clear, agreeing scenes only
With Sentinel-2 placed on a flat Earth, even a perfect sharpening scored below bicubic off nadir, so no model could pass there. Placed on the terrain, the possible gain is positive at every viewing angle. The terrain bars rest on 5, 4 and 10 scenes.

The ceiling is the score of a perfect answer that exists: the GOES red band at its native 0.5 km, degraded by its own measured blur to 1 km and then judged against Sentinel-2. A sharpening model can at best recover what that degradation removed. Off nadir, a flat-Earth placement puts Sentinel-2 pixels on slopes and high ground away from where GOES saw them, enough to make the real image score worse than a smooth one. Every sharpening verdict in this study is now read against terrain-placed truth, by viewing angle, with the ceiling beside it.

Each effort's pass line was written into a plan before its run trained: the hypothesis, the data held out, the measurement and the threshold. Changing any of them after training began would make a new plan with a new date. Uncertainty is given as a day-block interval: the test days are resampled with replacement 4,000 times and the score recomputed each time, so that two images from the same day are never treated as independent evidence. A gain "above zero" means the whole 95% interval is above zero.

Guided sharpening

The pass line, for each band and viewing-angle band, against Sentinel-2 on new scenes placed on the terrain: the guided model beats bicubic and beats its own control, both with intervals above zero; its fine-detail correlation with the truth is no lower than the control's; it beats ratio sharpening (the standard non-learned method that scales the red band's detail by the ratio of the two bands); the ceiling is measurable; and the lower end of the interval on the share of the ceiling it recovers is at least 0.5. Each stratum aims at 60 screened days. The six runs have returned; the verdict is not scored yet.

A null result, guided no better than its control against real truth, would mean the red band's detail cannot be carried across to these bands at the real scale by this method, however well it does on degraded copies. Our ranked guess before the score: the two Meteosat bands pass, because their earlier versions already beat bicubic against Sentinel-2 (+0.159 and +0.153 dB with intervals above zero); Himawari green is marginal, because its earlier version read +0.082 dB with an interval from −0.126 to +0.316. The observation that would settle it is the Himawari green interval on the new scenes.

Red band, four times sharper

The pass line is about +0.99 dB over bicubic on the four test days, which is +0.30 dB over the site's current model; on the development set that corresponds to about +0.94 dB. The current model reads +0.634 dB there. Results are not in. A null result, no network reaching +0.94, would point to the information in the coarse image as the limit. There is room in principle: 17.5% of bicubic's error lies at scales the coarse grid can represent, the current model removes 37% of that part and 9% of the rest, and replacing that part with the truth would gain +1.24 dB. Our guess, labeled as one: all five fall short, the best near +0.70 to +0.75 dB, because a short EDSR run with L2 loss already reached +0.664 and the two inference tricks tested on it added at most 0.05 dB.

The three true-color checks that failed: pass line, second version and third version second version third version pass line 8 12 16 20 24 color difference, ΔE76 (lower is better) Vegetated land Second version: 15.31 Third version: 10.89, pass line 10 10.89 Low sun, all Second version: 12.78 Third version: 12.90, pass line 12 12.90 Low-sun ocean Second version: 24.46 Third version: 20.11, pass line the standard recipe's 16.87 20.11
True color: the third version moved toward every line and crossed none of these three. Vegetated land came closest, 0.89 above its line; low-sun ocean is still worse than the standard recipe.

True color

This verdict is in. The model passed most of its checks with room: pooled color difference 11.05 against a line of 12 and the standard recipe's 20.93, every test day under 12, and land, ocean and cloud each better than the recipe. It failed three. Vegetated land, judged against the reference colors of the Windy weather site, read 10.89 against a line of 10 (NASA's own imagery reads 13.19 by the same measure). The low-sun mean read 12.90 against 12, and low-sun ocean 20.11 against the recipe's 16.87 on the same 11,967 pixels. The plan had expected the low-sun ocean failure; the other two were expected near the line.

The standard recipe stays the site's default, and the plan allows no second run on these test days. Our best guess at the low-sun ocean failure: near cloud edges at a low sun the GOES values of ocean pixels are shared with cloud and land, and three quarters of the hard pixels sit at cloud edges, so a per-pixel model with an 11 km neighborhood cannot tell them apart. A wider view of the scene would test that guess.

Satellite radar

Skill is the critical success index, CSI: hits divided by hits plus misses plus false alarms, for pixels above 20 dBZ, light to moderate rain. A CSI of 1 is perfect and 0 is no skill. Over the United States the recipe scored 0.54 on held-out days, 0.57 by day and 0.44 by night. The pass line over Europe: CSI at 20 dBZ of at least 0.45 by day and 0.40 by night, within 0.08 of the same model's US held-out score, and better than a climatology fitted on Europe's own days, in every cell with at least 1,700 observed rain events. It is scored once, on seed 42, when Europe holds 90 days, expected 17 December 2026.

A null result would mean the US recipe is tied to its satellite, its radar network or its weather, and the next step is a new plan that trains on more than one continent. Our guess before any number: day passes and night is marginal. Europe's autumn and winter rain is shallower and has warmer cloud tops than the US convective season the corpus is weighted to, and the earlier US model scored a CSI of 0.0000 on 9,748 winter daytime events with warm cloud tops. The observation that would show it is the Europe night score split by cloud-top temperature.

Sharpening benchmark

For each band and viewing-angle band the release requires at least 60 screened scenes on 60 distinct days, with every season holding at least 10 days where the geometry allows; a ceiling whose 95% interval lies above zero; a synthetic check in which a perfect model scores within 0.05 of the full ceiling and a blurred model fails; 20 scenes rebuilt from raw files on a second node giving the same truth to 0.001 dB; and licenses that allow each released file. At 60 days a guided-minus-bicubic interval is about ±0.29 dB wide. A stratum that fails is published as not measurable, with its counts, and is not filled by loosening the screen.

A null result here, a ceiling interval that does not lie above zero, would mean the method cannot judge sharpening at that viewing angle. Our guess: all three GOES strata fill, and 25° to 45° is the slowest, because only 11% of the scenes offered there passed the screen in the earlier collection.

7. Reading the status page and the replay

The parts of the study's status page 1 2 3 4 5
The status page from top to bottom: (1) the verdict line, (2) a run card's progress bar, (3) its loss and score charts with the full-resolution switch marked, (4) the jobs on the supercomputer, (5) the replay with its scrubber.

The study's status page is built from the cluster's own records and refreshed every few minutes while one of us is logged in. When nobody is, it keeps its last figures and says how old they are. Nothing on it is typed by hand.

The verdict line (1)

One line at the top says what the study is doing now: how many runs are running, waiting or finished, and how long ago the newest training record was written. When something needs attention, a run whose loss is not a number, a run that has gone silent, or one that will not finish inside its job, the line says so first.

Run cards (2, 3)

Each run has a card. The progress bar counts epochs (guided sharpening, out of 36) or steps (red band, out of 375,000). Under it are the latest loss, the latest score in dB over bicubic on the run's own held-out days, the time per epoch, the estimated time to finish against the time left in the job, and how long ago the run last wrote. The two charts show loss by epoch and score by epoch. The run itself is drawn solid and its pair (the control of a guided run, or the guided twin of a control) dashed. A dotted vertical line marks epoch 19, where full-resolution training begins; the loss steps up there because new terms join it, and that step is expected.

These on-card scores are health checks, scored on the corpus's own held-out days. The earlier box-trained Meteosat pairs show the scale: about +13.8 and +14.6 dB for the guided runs against about +2.0 dB for their controls. The verdict in section 6 comes from Sentinel-2, not from these charts. A line under each card gives the graphics processor's use, memory, temperature and power, sampled once a minute.

Jobs on the supercomputer (4)

Three tables in plain words: Running, Waiting, and Finished in the last seven days. Each row names the work, says what it is doing, when it started or finished and how long it ran, the machine it holds ("1 node, 128 processor cores, 4 graphics processors", or a data-transfer node), and the hours charged. A waiting job says why in words and gives the scheduler's estimated start when there is one. If the queue cannot be read, the section says so and the rest of the page stands.

When runs train on both kinds of node, the verdict line counts both and each card names its node type. The replay's legend groups the runs under "On the A100 nodes" and "On the H100 nodes", the cost boxes give node-hours per node type, and the job tables gain a Where column. If one kind of node has not reported for half an hour, a note at the top says so and its runs show their last known state.

The replay (5)

The replay plays the study back from its recorded history. A scrubber runs along the bottom; play, pause and single-step buttons move it one recorded step at a time. As it moves, the charts redraw each run's loss and held-out score up to that moment, guided and control side by side, and beside them the clock (the date and time of that record) and the cost so far in node-hours. Scrubbing across the guided runs shows the reduced-scale epochs flatten, the step at epoch 19, and the Meteosat controls starting only when their guided twins finish on the same processor.

8. Glossary

One GPU node of the cluster One GPU node A10040 GB A10040 GB A10040 GB A10040 GB 128 CPU cores 512 GB memory 1 node-hour = 128 processor-hours, charged whether one A100 or four are busy
A job takes a whole node. CPU nodes have the same 128 cores with 256 GB of memory and no graphics processors.
A100
An NVIDIA graphics processor built for training neural networks; here with 40 GB of its own memory.
Adam, AdamW
The usual optimizer: it adapts each weight's step size to the recent history of that weight's gradient. AdamW adds weight decay, a steady pull of every weight toward zero.
Batch
The examples used together for one training step.
Bicubic interpolation
The standard smooth way to enlarge an image, fitting cubic curves through neighboring pixels. Every sharpening score is a gain over it.
Ceiling
The score of a known perfect sharpening (the native red band) judged against the same truth: the most any model could gain on that scene.
Checkpoint
A saved copy of a model's weights. The latest one lets a stopped run resume; the best one is what is judged.
Cluster
A supercomputer made of many identical nodes joined by a fast network, with a scheduler that queues jobs.
Control
A run identical to another except for the one ingredient under test, here the guide. The ingredient's effect is the difference between the two.
Critical success index (CSI)
Hits divided by hits plus misses plus false alarms, for pixels above a reflectivity threshold. 1 is perfect.
dBZ
Radar reflectivity on a decibel scale. Around 20 dBZ is light to moderate rain; 35 dBZ is heavy rain.
Day-block interval
An uncertainty range made by resampling whole test days, 4,000 times, so that images from one day count once.
ΔE76
The distance between two colors in CIELAB color space; about 2.3 is the smallest difference a person notices.
Epoch
One pass through all the training examples.
Generalize
To score as well on data never seen in training as on the training data: here held-out days, a held-out continent, or independent truth from another satellite.
Geostationary
An orbit 36,000 km above the equator in which a satellite turns with the Earth and watches one disk of it.
Guide
The sharper red band of the same imager, given to the network as a second input.
HPC
High-performance computing: a cluster used for work too large for one machine.
Held-out data
Data kept out of training and used only to measure the model.
L1, L2 loss
The mean absolute error and the mean squared error.
Learning rate
The size of each step the optimizer takes; a cosine schedule lowers it smoothly to near zero by the end of training.
Loss
The single number training lowers, measuring how far the output is from the answer.
Measured blur (MTF)
How much a sensor softens fine detail, measured in orbit; written here as the width of a Gaussian in km.
Node
One computer of the cluster. GPU nodes: 128 CPU cores, four A100s, 512 GB of memory. CPU nodes: 128 cores and 256 GB.
Node-hour
One node for one hour, charged as 128 processor-hours.
Patch
A small square cut from a satellite image, the unit a sharpening model reads.
Pixel shuffle
A rearrangement that turns several coarse feature channels into one channel on a finer grid.
Pre-registered plan
The hypothesis, held-out data, measurement and pass line written down and dated before the run trains.
PSNR
Peak signal-to-noise ratio in dB, a log measure of mean squared error. Higher is better; 3 dB is about half the squared error.
Ratio sharpening
The standard non-learned method: multiply the enlarged band by the ratio of the fine red band to its own enlarged coarse version.
Reflectance
The fraction of incoming sunlight a scene sends back toward the satellite.
Residual block
A few layers whose output is added to their input, so each block learns a correction.
Seed
The number that fixes every random choice in a run. Repeating a run at other seeds shows how much of a result is chance.
Sentinel-2
A pair of European land-imaging satellites with 10 m visible pixels, used here as independent truth.
Step
One update of the weights from one batch.
Stratum
A slice of the test scenes, here by viewing angle, scored separately.
U-Net
A network that shrinks the grid to see context and grows it back, passing detail across at each scale.
Viewing angle (view zenith)
The angle between straight up from the ground and the line to the satellite. Off nadir, pixels grow and high ground appears displaced away from the point below the satellite.
Weights
The adjustable numbers inside a network that training sets.