File size: 2,346 Bytes
b20c769
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
{
  "training": {
    "patch_sizes": [
      1,
      2,
      3,
      4,
      5,
      6,
      7,
      8
    ],
    "max_lr": 0.003,
    "num_epochs": 500,
    "batch_size": 128,
    "effective_batch_size": 512,
    "warmup_epochs": 30,
    "final_lr": 1e-06,
    "weight_decay": 0.01,
    "grad_clip": true,
    "betas": [
      0.9,
      0.999
    ],
    "ema": [
      0.996,
      1.0
    ],
    "shape_time_combinations": [
      {
        "size": 4,
        "timesteps": 12
      },
      {
        "size": 5,
        "timesteps": 6
      },
      {
        "size": 6,
        "timesteps": 4
      },
      {
        "size": 7,
        "timesteps": 3
      },
      {
        "size": 9,
        "timesteps": 3
      },
      {
        "size": 12,
        "timesteps": 3
      }
    ],
    "masking_probabilities": [
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0,
      1.0
    ],
    "augmentation": {
      "flip+rotate": true
    },
    "encode_ratio": 0.1,
    "decode_ratio": 0.5,
    "max_unmasking_channels": 17,
    "loss_type": "patch_disc",
    "tau": 0.1,
    "pred2unit": false,
    "loss_mask_other_samples": true,
    "normalization": "std",
    "eval_eurosat_every_n_epochs": 10,
    "random_masking": "half",
    "unmasking_channels_combo": "all",
    "double_loss": true,
    "double_predictors": true,
    "target_exit_after": 0,
    "token_exit_cfg": {
      "S1": 12,
      "S2_RGB": 12,
      "S2_Red_Edge": 12,
      "S2_NIR_10m": 12,
      "S2_NIR_20m": 12,
      "S2_SWIR": 12,
      "NDVI": 6,
      "ERA5": 6,
      "TC": 6,
      "VIIRS": 12,
      "SRTM": 6,
      "DW": 0,
      "WC": 0,
      "LS": 0,
      "location": 12,
      "DW_static": 0,
      "WC_static": 0
    },
    "target_masking": "all"
  },
  "model": {
    "encoder": {
      "embedding_size": 192,
      "depth": 12,
      "num_heads": 3,
      "mlp_ratio": 4,
      "max_sequence_length": 24,
      "freeze_projections": false,
      "drop_path": 0.1,
      "max_patch_size": 8
    },
    "decoder": {
      "depth": 4,
      "num_heads": 3,
      "mlp_ratio": 4,
      "max_sequence_length": 24,
      "learnable_channel_embeddings": true,
      "max_patch_size": 8,
      "embedding_size": 192
    }
  }
}