File size: 1,564 Bytes
9d376ee
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# Spatial - Sat2Map Model

Satellite-to-map prediction model trained on OlmoEarth data using the PlanB/nanochat framework.

## WandB Run

[Training Run](https://wandb.ai/viharikvs-urbankisaan/nanochat-sat2map/runs/z9aeknl6?nw=nwuserviharikvs)

## Training Progress

| Step | Val Loss |
|------|----------|
| 1000 | 0.3207 |
| 1500 | 0.4950 |
| 2000 | 1.0681 |

## 8-GPU Evaluation Results (DDP Aggregated)

Evaluation using all 8 GPUs with `--eval-batches 200` and `--batch-size 2` (400 examples per split), aggregating totals across ranks.

### Step 1000 (Recommended)

| Metric | Value |
|--------|-------|
| Val Loss | 0.3668 |
| Val Accuracy | 0.8813 |
| WorldCover Accuracy | 0.8892 |
| CDL Accuracy | 0.8483 |

### Step 1500

| Metric | Value |
|--------|-------|
| Val Loss | 0.5635 |
| Val Accuracy | 0.8680 |
| WorldCover Accuracy | 0.8755 |
| CDL Accuracy | 0.8364 |

**Conclusion:** Use step 1000 checkpoint (better val loss + accuracy). Step 1500 is fitting train harder but generalizing worse.

## Repository Contents

- `sat2map_checkpoints/d20_sat2map/` - Model checkpoints (steps 500, 1000, 1500, 2000)
- `sat2map_dataset/sat2map_g16_t12_target64_k1024/` - Training and test dataset

## Usage

```python
from huggingface_hub import hf_hub_download

# Download best checkpoint (step 1000)
model_path = hf_hub_download(
    repo_id="Viharikvs/spatial",
    filename="sat2map_checkpoints/d20_sat2map/model_001000.pt"
)
meta_path = hf_hub_download(
    repo_id="Viharikvs/spatial",
    filename="sat2map_checkpoints/d20_sat2map/meta_001000.json"
)
```