Tropical Cyclone EVOlution Model: Difference between revisions
Heisenberg (talk | contribs) No edit summary |
Heisenberg (talk | contribs) No edit summary |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
'''TC Evolution''' is an experimental tropical cyclone current-intensity estimation model developed in 2025 and currently described as '''Beta 1.6'''. It is designed to estimate a storm's present maximum sustained wind (V<sub>max</sub>) from a short sequence of storm-centred environmental and satellite inputs rather than produce a long-range forecast. | |||
The system combines gridded environmental data, storm-centred infrared and water-vapour satellite imagery, sea-surface temperature, land masking, and recent storm-history scalars into a single neural architecture. In its Beta 1.6 form, TC Evolution uses a multimodal sequence model with separate encoders for full-storm satellite structure, zoomed inner-core satellite structure, and environmental fields, followed by a temporal [[Transformer (deep learning architecture)|Transformer]] encoder. | |||
== History == | == History == | ||
TC Evolution began as a '''2025 prototype''' focused on tropical cyclone current-intensity analysis from storm-centred gridded data. The earliest versions were built to answer a practical question: whether a neural model could infer present intensity from recent storm evolution, rather than rely on a single image or on long-range forecast logic. | |||
TC Evolution began | |||
The project later evolved into a two-stage training workflow: | |||
The | |||
=== Stage A === | |||
The first major training stage used a satellite-only pretraining approach based on long-term storm-centred IR and WV imagery from '''1998 to 2024'''. This stage was intended to teach the model broad tropical-cyclone structural recognition before environmental data were added. | |||
=== Stage B === | |||
The second major stage fine-tuned the model on a multimodal dataset spanning '''2015 to 2024'''. This stage added environmental wind and height fields, sea-surface temperature, land masking, and scalar storm-history features. The resulting architecture became the basis of the operational Beta line. | |||
=== Beta 1.6 === | === Beta 1.6 === | ||
'''Beta 1.6''' refers to the | '''Beta 1.6''' refers to the operational inference implementation using the Stage B multimodal architecture. In this version, the model is driven by: | ||
* | * storm-centred GFS environmental fields, | ||
* | * storm-centred GOES infrared and water-vapour imagery, | ||
* OISST sea-surface temperature, | |||
* land masking, | |||
* OISST sea-surface temperature | * and ATCF storm-history data for recent motion and prior intensity. | ||
* and | |||
== | == Operation == | ||
TC Evolution | TC Evolution is designed for '''current intensity analysis'''. It does not operate as a traditional long-range forecasting model. Instead, it takes a short sequence of recent storm-centred frames, processes their structure and environment, and predicts the storm's present intensity. | ||
In operational use, the system: | |||
* reads storm history from ATCF best-track or operational b-deck style data, | |||
* gathers recent environmental fields from GFS, | |||
* gathers recent satellite imagery from GOES, | |||
* gathers sea-surface temperature data, | |||
* builds storm-centred grids for several recent synoptic times, | |||
* normalises the data using checkpoint statistics, | |||
* and estimates the current V<sub>max</sub> in knots. | |||
=== | == Principles == | ||
TC Evolution was built around several design principles. | |||
=== Evolution over snapshot analysis === | |||
The model is intended to represent the idea that tropical cyclone intensity is not purely a visual snapshot problem. Instead, intensity depends on how the storm has been evolving over recent hours. For that reason, the model uses: | |||
* previous intensity, | |||
* recent intensity tendency, | |||
* storm motion, | |||
* and a sequence of recent frames rather than a single time step. | |||
=== | === Inner-core structure matters === | ||
The | The system uses both a full storm-centred satellite crop and a zoomed inner-core crop. This was intended to let the model separate broad-scale storm organisation from features such as eye definition, eyewall structure, and core symmetry. | ||
=== Environment matters === | |||
The model does not treat the cyclone as an isolated image. Environmental wind fields, low- and upper-level flow, shear-related diagnostics, SST, and land interaction are included because storm intensity is strongly linked to environmental context. | |||
=== | === Operational practicality === | ||
The inference system was designed around data sources that can be retrieved operationally, especially for storms not yet present in finalized archival best-track files. | |||
== | == Architecture == | ||
The | The Beta 1.6 implementation uses a neural network named '''TropicalCurrentIntensityNet'''. | ||
=== Input format === | |||
=== Input | The model ingests a storm-centred sequence with shape: | ||
The model ingests a | |||
<pre> | <pre> | ||
| Line 92: | Line 65: | ||
</pre> | </pre> | ||
In Beta 1.6, the input uses: | |||
* '''16 channels''' | |||
* '''41 × 41''' spatial grids | |||
* a short sequence of recent 6-hourly frames | |||
=== Channel structure === | |||
The 16 channels are arranged as follows: | |||
{| class="wikitable" | {| class="wikitable" | ||
! Channel group !! Channels !! Description | ! Channel group !! Channels !! Description | ||
| Line 100: | Line 78: | ||
| Environmental fields || 10 || u10, v10, u850, v850, u200, v200, gh850, rh850, shear200_850, shear850_sfc | | Environmental fields || 10 || u10, v10, u850, v850, u200, v200, gh850, rh850, shear200_850, shear850_sfc | ||
|- | |- | ||
| Satellite full field || 2 || infrared (IR), water | | Satellite full field || 2 || infrared (IR), water vapour (WV) | ||
|- | |- | ||
| Satellite zoom field || 2 || zoomed infrared | | Satellite zoom field || 2 || zoomed infrared, zoomed water vapour | ||
|- | |- | ||
| Surface context || 2 || sea-surface temperature (SST), land mask | | Surface context || 2 || sea-surface temperature (SST), land mask | ||
|} | |} | ||
=== Scalar | === Scalar features === | ||
In addition to the gridded input, TC Evolution uses a separate scalar feature vector. In Beta 1.6, this includes: | |||
* latitude, | * latitude, | ||
* longitude encoded as sine | * longitude encoded as sine and cosine, | ||
* month encoded as sine | * month encoded as sine and cosine, | ||
* basin one-hot encoding, | * basin one-hot encoding, | ||
* zonal and meridional motion | * zonal and meridional storm motion, | ||
* V<sub>max</sub> at | * V<sub>max</sub> at t−6 h, | ||
* V<sub>max</sub> at | * V<sub>max</sub> at t−12 h, | ||
* 6-hour intensity | * 6-hour intensity change, | ||
* | * and availability flags for recent intensities. | ||
=== | === Branch encoders === | ||
The model | The model uses three separate 2D residual backbones: | ||
==== | ==== Full satellite encoder ==== | ||
The '''full_sat_enc''' branch processes the two-channel full storm satellite input. | |||
==== Zoom satellite encoder ==== | |||
The '''zoom_sat_enc''' branch processes the two-channel inner-core zoom satellite input. | |||
==== Environmental | ==== Environmental encoder ==== | ||
The '''env_enc''' branch processes the remaining twelve channels: | |||
* | * ten environmental fields, | ||
* SST, | * SST, | ||
* land mask. | * and land mask. | ||
Each branch is built from: | |||
* convolution layers, | |||
* | * [[Group normalization|GroupNorm]], | ||
* | * GELU activation, | ||
* and | * residual 2D blocks, | ||
* progressive downsampling, | |||
* and adaptive average pooling. | |||
are concatenated and projected into a shared hidden representation. | === Temporal encoder === | ||
For each time step, the outputs of the three branches are concatenated and projected into a shared hidden representation. These per-frame embeddings are then fed into a temporal Transformer encoder with: | |||
* a learned class token, | * a learned class token, | ||
* learned temporal positional embeddings, | * learned temporal positional embeddings, | ||
* hidden dimension 384, | * hidden dimension 384, | ||
* 8 attention heads, | * 8 attention heads, | ||
* 4 Transformer layers. | * and 4 Transformer layers. | ||
The | The temporal encoder is intended to summarize short-term storm evolution rather than a single static frame. | ||
=== Scalar fusion and output === | |||
The scalar feature vector is processed by a small scalar network and fused with the Transformer summary. The fused representation is then used to produce the final intensity estimate. | |||
The Beta 1.6 operational implementation predicts intensity through a delta formulation: | |||
The Beta 1.6 operational | |||
<math>\hat{V}_{t} = V_{t-6} + \Delta V</math> | <math>\hat{V}_{t} = V_{t-6} + \Delta V</math> | ||
This means the model predicts the present intensity as the previous 6-hour intensity plus a learned adjustment. | |||
== Data == | == Data == | ||
=== Stage A | === Stage A training data === | ||
The satellite-only pretraining stage used storm-centred data from '''1998–2024''', consisting of: | |||
* | * infrared imagery, | ||
* | * water-vapour imagery, | ||
* | * zoomed infrared imagery, | ||
* | * and zoomed water-vapour imagery. | ||
This stage was intended to provide long-horizon structural pretraining for tropical cyclone appearance. | |||
=== Stage B | === Stage B training data === | ||
The multimodal fine-tuning | The multimodal fine-tuning stage used storm-centred data from '''2015–2024'''. These data included: | ||
* | * GFS-derived environmental fields, | ||
* | * satellite IR and WV imagery, | ||
* | * zoomed satellite imagery, | ||
* land | * SST, | ||
* land mask, | |||
* and best-track intensity labels. | * and best-track intensity labels. | ||
=== Label source === | === Label source === | ||
Training labels | Training targets were based on synoptic tropical cyclone intensity labels. For operational 2025-style testing and inference, ATCF best-track or b-deck style records were used when final archival products were not the intended operational source. | ||
=== Spatial setup === | === Spatial setup === | ||
The | The storm-centred grid configuration used in Beta 1.6 is: | ||
= | {| class="wikitable" | ||
! Parameter !! Value | |||
|- | |||
| Output resolution || 0.25° | |||
|- | |||
| Outer box size || 10.0° | |||
|- | |||
| Inner zoom size || 4.0° | |||
|- | |||
| Final grid size || 41 × 41 | |||
|} | |||
== Training | == Training == | ||
=== Stage A === | === Stage A results === | ||
The satellite-only stage was treated mainly as a representation-learning stage rather than the final operational model. Development logs reported the following Stage A test metrics: | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 216: | Line 192: | ||
|} | |} | ||
=== Stage B results === | |||
The multimodal fine-tuning stage improved performance and became the basis of the operational model. Development logs reported the following final Stage B test metrics: | |||
=== Stage B === | |||
Development logs | |||
{| class="wikitable" | {| class="wikitable" | ||
| Line 246: | Line 213: | ||
|} | |} | ||
These results | These results were interpreted as an improvement over the satellite-only stage, especially in the stronger-storm regime. | ||
== Informal 2025 spot | == Performance == | ||
=== Informal 2025 operational spot checks === | |||
During 2025-style operational testing, several storm cases were manually compared against best-track values and the [[Advanced Dvorak technique|Advanced Dvorak Technique]] (ADT). | |||
{| class="wikitable" | {| class="wikitable" | ||
! Storm ID !! | ! Storm ID !! Time (UTC) !! Best-track V<sub>max</sub> !! TC Evolution !! Absolute error | ||
|- | |- | ||
| AL132025 || 2025-10-28 12:00 || 155 kt || 151.5 kt || 3.5 kt | | AL132025 || 2025-10-28 12:00 || 155 kt || 151.5 kt || 3.5 kt | ||
| Line 275: | Line 229: | ||
|} | |} | ||
In this small informal sample: | |||
* | * the model performed very well on one extreme-intensity case, | ||
* | * underestimated one major hurricane case, | ||
* and performed very well on one weak-storm case. | |||
=== | === ADT comparison === | ||
The same spot-check sample was also compared against ADT values provided during testing. In that limited comparison: | |||
* TC Evolution outperformed ADT on one extreme-intensity case, | * TC Evolution outperformed ADT on one extreme-intensity case, | ||
* ADT outperformed TC Evolution on one mid-major hurricane case, | * ADT outperformed TC Evolution on one mid-major hurricane case, | ||
* both | * and both were effectively correct on one weak-storm case. | ||
This was | This comparison was informal and not presented as a formal full-season skill study. | ||
== Operational implementation == | |||
The Beta 1.6 inference code includes: | |||
* safe PyTorch checkpoint loading, | |||
* ATCF storm-history retrieval, | |||
* GFS file selection and download, | |||
* GOES file selection and processing, | |||
* OISST retrieval and interpolation, | |||
* storm-centred frame construction, | |||
* and final model inference from a saved multimodal checkpoint. | |||
The operational implementation normalises gridded and scalar features using statistics stored in the model checkpoint. | |||
== Strengths == | == Strengths == | ||
Observed and intended strengths of | Observed and intended strengths of TC Evolution include: | ||
* | * explicit modelling of storm evolution rather than single-frame regression, | ||
* | * separate treatment of full-storm and inner-core satellite structure, | ||
* | * integration of environmental context, | ||
* | * direct use of previous intensity history, | ||
* and demonstrated ability to represent very intense hurricanes in at least some operational spot checks. | |||
== | == Limitations == | ||
Known limitations of Beta 1.6 include: | |||
* | * case-dependent errors in some major-hurricane situations, | ||
* operational | * limited formal operational verification relative to established methods, | ||
* | * dependence on upstream file availability and storm-centred data extraction quality, | ||
* | * potential data-distribution differences between training imagery and operational imagery, | ||
* the model | * and the fact that the system remains a beta research model rather than an official operational standard. | ||
== Naming == | |||
The name '''TC Evolution''' reflects the central idea of the model: tropical cyclone intensity is treated as an evolving state shaped by recent storm history, internal structure, and environmental conditions. | |||
== Intended use == | == Intended use == | ||
TC Evolution is intended for: | TC Evolution is intended for: | ||
* experimental tropical cyclone intensity analysis | * experimental tropical cyclone current-intensity analysis, | ||
* case-study review, | * case-study review, | ||
* | * research prototyping, | ||
* and internal benchmarking against satellite-based techniques. | |||
* and | |||
It is not intended to replace official agency products without broader validation and full operational testing. | |||
Latest revision as of 11:58, 15 March 2026
TC Evolution is an experimental tropical cyclone current-intensity estimation model developed in 2025 and currently described as Beta 1.6. It is designed to estimate a storm's present maximum sustained wind (Vmax) from a short sequence of storm-centred environmental and satellite inputs rather than produce a long-range forecast.
The system combines gridded environmental data, storm-centred infrared and water-vapour satellite imagery, sea-surface temperature, land masking, and recent storm-history scalars into a single neural architecture. In its Beta 1.6 form, TC Evolution uses a multimodal sequence model with separate encoders for full-storm satellite structure, zoomed inner-core satellite structure, and environmental fields, followed by a temporal Transformer encoder.
History
[edit | edit source]TC Evolution began as a 2025 prototype focused on tropical cyclone current-intensity analysis from storm-centred gridded data. The earliest versions were built to answer a practical question: whether a neural model could infer present intensity from recent storm evolution, rather than rely on a single image or on long-range forecast logic.
The project later evolved into a two-stage training workflow:
Stage A
[edit | edit source]The first major training stage used a satellite-only pretraining approach based on long-term storm-centred IR and WV imagery from 1998 to 2024. This stage was intended to teach the model broad tropical-cyclone structural recognition before environmental data were added.
Stage B
[edit | edit source]The second major stage fine-tuned the model on a multimodal dataset spanning 2015 to 2024. This stage added environmental wind and height fields, sea-surface temperature, land masking, and scalar storm-history features. The resulting architecture became the basis of the operational Beta line.
Beta 1.6
[edit | edit source]Beta 1.6 refers to the operational inference implementation using the Stage B multimodal architecture. In this version, the model is driven by:
- storm-centred GFS environmental fields,
- storm-centred GOES infrared and water-vapour imagery,
- OISST sea-surface temperature,
- land masking,
- and ATCF storm-history data for recent motion and prior intensity.
Operation
[edit | edit source]TC Evolution is designed for current intensity analysis. It does not operate as a traditional long-range forecasting model. Instead, it takes a short sequence of recent storm-centred frames, processes their structure and environment, and predicts the storm's present intensity.
In operational use, the system:
- reads storm history from ATCF best-track or operational b-deck style data,
- gathers recent environmental fields from GFS,
- gathers recent satellite imagery from GOES,
- gathers sea-surface temperature data,
- builds storm-centred grids for several recent synoptic times,
- normalises the data using checkpoint statistics,
- and estimates the current Vmax in knots.
Principles
[edit | edit source]TC Evolution was built around several design principles.
Evolution over snapshot analysis
[edit | edit source]The model is intended to represent the idea that tropical cyclone intensity is not purely a visual snapshot problem. Instead, intensity depends on how the storm has been evolving over recent hours. For that reason, the model uses:
- previous intensity,
- recent intensity tendency,
- storm motion,
- and a sequence of recent frames rather than a single time step.
Inner-core structure matters
[edit | edit source]The system uses both a full storm-centred satellite crop and a zoomed inner-core crop. This was intended to let the model separate broad-scale storm organisation from features such as eye definition, eyewall structure, and core symmetry.
Environment matters
[edit | edit source]The model does not treat the cyclone as an isolated image. Environmental wind fields, low- and upper-level flow, shear-related diagnostics, SST, and land interaction are included because storm intensity is strongly linked to environmental context.
Operational practicality
[edit | edit source]The inference system was designed around data sources that can be retrieved operationally, especially for storms not yet present in finalized archival best-track files.
Architecture
[edit | edit source]The Beta 1.6 implementation uses a neural network named TropicalCurrentIntensityNet.
Input format
[edit | edit source]The model ingests a storm-centred sequence with shape:
[channels, time, height, width]
In Beta 1.6, the input uses:
- 16 channels
- 41 × 41 spatial grids
- a short sequence of recent 6-hourly frames
Channel structure
[edit | edit source]The 16 channels are arranged as follows:
| Channel group | Channels | Description |
|---|---|---|
| Environmental fields | 10 | u10, v10, u850, v850, u200, v200, gh850, rh850, shear200_850, shear850_sfc |
| Satellite full field | 2 | infrared (IR), water vapour (WV) |
| Satellite zoom field | 2 | zoomed infrared, zoomed water vapour |
| Surface context | 2 | sea-surface temperature (SST), land mask |
Scalar features
[edit | edit source]In addition to the gridded input, TC Evolution uses a separate scalar feature vector. In Beta 1.6, this includes:
- latitude,
- longitude encoded as sine and cosine,
- month encoded as sine and cosine,
- basin one-hot encoding,
- zonal and meridional storm motion,
- Vmax at t−6 h,
- Vmax at t−12 h,
- 6-hour intensity change,
- and availability flags for recent intensities.
Branch encoders
[edit | edit source]The model uses three separate 2D residual backbones:
Full satellite encoder
[edit | edit source]The full_sat_enc branch processes the two-channel full storm satellite input.
Zoom satellite encoder
[edit | edit source]The zoom_sat_enc branch processes the two-channel inner-core zoom satellite input.
Environmental encoder
[edit | edit source]The env_enc branch processes the remaining twelve channels:
- ten environmental fields,
- SST,
- and land mask.
Each branch is built from:
- convolution layers,
- GroupNorm,
- GELU activation,
- residual 2D blocks,
- progressive downsampling,
- and adaptive average pooling.
Temporal encoder
[edit | edit source]For each time step, the outputs of the three branches are concatenated and projected into a shared hidden representation. These per-frame embeddings are then fed into a temporal Transformer encoder with:
- a learned class token,
- learned temporal positional embeddings,
- hidden dimension 384,
- 8 attention heads,
- and 4 Transformer layers.
The temporal encoder is intended to summarize short-term storm evolution rather than a single static frame.
Scalar fusion and output
[edit | edit source]The scalar feature vector is processed by a small scalar network and fused with the Transformer summary. The fused representation is then used to produce the final intensity estimate.
The Beta 1.6 operational implementation predicts intensity through a delta formulation:
<math>\hat{V}_{t} = V_{t-6} + \Delta V</math>
This means the model predicts the present intensity as the previous 6-hour intensity plus a learned adjustment.
Data
[edit | edit source]Stage A training data
[edit | edit source]The satellite-only pretraining stage used storm-centred data from 1998–2024, consisting of:
- infrared imagery,
- water-vapour imagery,
- zoomed infrared imagery,
- and zoomed water-vapour imagery.
This stage was intended to provide long-horizon structural pretraining for tropical cyclone appearance.
Stage B training data
[edit | edit source]The multimodal fine-tuning stage used storm-centred data from 2015–2024. These data included:
- GFS-derived environmental fields,
- satellite IR and WV imagery,
- zoomed satellite imagery,
- SST,
- land mask,
- and best-track intensity labels.
Label source
[edit | edit source]Training targets were based on synoptic tropical cyclone intensity labels. For operational 2025-style testing and inference, ATCF best-track or b-deck style records were used when final archival products were not the intended operational source.
Spatial setup
[edit | edit source]The storm-centred grid configuration used in Beta 1.6 is:
| Parameter | Value |
|---|---|
| Output resolution | 0.25° |
| Outer box size | 10.0° |
| Inner zoom size | 4.0° |
| Final grid size | 41 × 41 |
Training
[edit | edit source]Stage A results
[edit | edit source]The satellite-only stage was treated mainly as a representation-learning stage rather than the final operational model. Development logs reported the following Stage A test metrics:
| Metric | Value |
|---|---|
| Score | 8.620 |
| RMSE | 5.73 kt |
| RMSE 96+ | 9.91 kt |
| RMSE 137+ | 13.91 kt |
Stage B results
[edit | edit source]The multimodal fine-tuning stage improved performance and became the basis of the operational model. Development logs reported the following final Stage B test metrics:
| Metric | Value |
|---|---|
| Score | 7.413 |
| RMSE | 5.47 kt |
| RMSE 96+ | 7.24 kt |
| RMSE 137+ | 12.54 kt |
| RMSE 96–112 | 6.86 kt |
| RMSE 113–136 | 7.39 kt |
| RMSE 137+ bin | 12.54 kt |
These results were interpreted as an improvement over the satellite-only stage, especially in the stronger-storm regime.
Performance
[edit | edit source]Informal 2025 operational spot checks
[edit | edit source]During 2025-style operational testing, several storm cases were manually compared against best-track values and the Advanced Dvorak Technique (ADT).
| Storm ID | Time (UTC) | Best-track Vmax | TC Evolution | Absolute error |
|---|---|---|---|---|
| AL132025 | 2025-10-28 12:00 | 155 kt | 151.5 kt | 3.5 kt |
| AL082025 | 2025-09-27 00:00 | 120 kt | 100.0 kt | 20.0 kt |
| AL022025 | 2025-06-29 18:00 | 40 kt | 37.1 kt | 2.9 kt |
In this small informal sample:
- the model performed very well on one extreme-intensity case,
- underestimated one major hurricane case,
- and performed very well on one weak-storm case.
ADT comparison
[edit | edit source]The same spot-check sample was also compared against ADT values provided during testing. In that limited comparison:
- TC Evolution outperformed ADT on one extreme-intensity case,
- ADT outperformed TC Evolution on one mid-major hurricane case,
- and both were effectively correct on one weak-storm case.
This comparison was informal and not presented as a formal full-season skill study.
Operational implementation
[edit | edit source]The Beta 1.6 inference code includes:
- safe PyTorch checkpoint loading,
- ATCF storm-history retrieval,
- GFS file selection and download,
- GOES file selection and processing,
- OISST retrieval and interpolation,
- storm-centred frame construction,
- and final model inference from a saved multimodal checkpoint.
The operational implementation normalises gridded and scalar features using statistics stored in the model checkpoint.
Strengths
[edit | edit source]Observed and intended strengths of TC Evolution include:
- explicit modelling of storm evolution rather than single-frame regression,
- separate treatment of full-storm and inner-core satellite structure,
- integration of environmental context,
- direct use of previous intensity history,
- and demonstrated ability to represent very intense hurricanes in at least some operational spot checks.
Limitations
[edit | edit source]Known limitations of Beta 1.6 include:
- case-dependent errors in some major-hurricane situations,
- limited formal operational verification relative to established methods,
- dependence on upstream file availability and storm-centred data extraction quality,
- potential data-distribution differences between training imagery and operational imagery,
- and the fact that the system remains a beta research model rather than an official operational standard.
Naming
[edit | edit source]The name TC Evolution reflects the central idea of the model: tropical cyclone intensity is treated as an evolving state shaped by recent storm history, internal structure, and environmental conditions.
Intended use
[edit | edit source]TC Evolution is intended for:
- experimental tropical cyclone current-intensity analysis,
- case-study review,
- research prototyping,
- and internal benchmarking against satellite-based techniques.
It is not intended to replace official agency products without broader validation and full operational testing.