leharris3 commited on
Commit
6b4e7d9
·
verified ·
1 Parent(s): d8fe4ee

Add model card

Browse files
Files changed (1) hide show
  1. README.md +77 -3
README.md CHANGED
@@ -1,3 +1,77 @@
1
- ---
2
- license: apache-2.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ library_name: pytorch
4
+ tags:
5
+ - precipitation-nowcasting
6
+ - weather-forecasting
7
+ - video-transformer
8
+ - space-time-attention
9
+ - satellite-imagery
10
+ pipeline_tag: image-classification
11
+ ---
12
+
13
+ # SaTformer: A Space-Time Transformer for Precipitation Nowcasting
14
+
15
+ **Authors:** Levi Harris, Tianlong Chen — *The University of North Carolina at Chapel Hill*
16
+
17
+ [![arXiv](https://img.shields.io/badge/arXiv-2511.11090-b31b1b.svg)](https://arxiv.org/abs/2511.11090)
18
+ [![NeurIPS](https://img.shields.io/badge/NeurIPS_2025-1st_Place_CUMSUM-4b44ce.svg)](https://neurips.cc/virtual/2025/loc/san-diego/135896)
19
+ [![GitHub](https://img.shields.io/badge/GitHub-satformer-181717.svg?logo=github)](https://github.com/leharris3/satformer)
20
+
21
+ SaTformer is a Vision Transformer adapted for spatio-temporal precipitation nowcasting from geostationary satellite (HRIT) imagery. It won **1st place** in the NeurIPS 2025 CUMSUM challenge.
22
+
23
+ ## Model Details
24
+
25
+ | Parameter | Value |
26
+ |---|---|
27
+ | Architecture | Vision Transformer (adapted from TimeSformer) |
28
+ | Attention | Joint space-time (ST²) |
29
+ | Embedding dim | 512 |
30
+ | Depth | 12 blocks |
31
+ | Heads | 8 (dim 64) |
32
+ | Input | 4 frames x 11 channels x 32x32 |
33
+ | Output | 64 precipitation bins (classification) |
34
+ | Patch size | 4x4 |
35
+
36
+ ## Usage
37
+
38
+ ```python
39
+ import torch
40
+ from huggingface_hub import hf_hub_download
41
+ from src.model.SaTformer.SaTformer import SaTformer
42
+
43
+ model = SaTformer(
44
+ dim=512,
45
+ num_frames=4,
46
+ num_classes=64,
47
+ image_size=32,
48
+ patch_size=4,
49
+ channels=11,
50
+ depth=12,
51
+ heads=8,
52
+ dim_head=64,
53
+ attn_dropout=0.1,
54
+ ff_dropout=0.1,
55
+ rotary_emb=False,
56
+ attn="ST^2"
57
+ )
58
+
59
+ weights = hf_hub_download(repo_id="leharris3/satformer", filename="sf-64-cls.pt")
60
+ model.load_state_dict(torch.load(weights, weights_only=True), strict=False)
61
+ model.eval()
62
+
63
+ with torch.no_grad():
64
+ x = torch.rand(1, 4, 11, 32, 32) # (batch, frames, channels, H, W)
65
+ logits = model(x) # -> [1, 64]
66
+ ```
67
+
68
+ ## Citation
69
+
70
+ ```bibtex
71
+ @article{harris2025satformer,
72
+ title={A Space-Time Transformer for Precipitation Forecasting},
73
+ author={Harris, Levi and Chen, Tianlong},
74
+ journal={arXiv preprint arXiv:2511.11090},
75
+ year={2025}
76
+ }
77
+ ```