Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions configs/data/heat_krakow.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
_target_: src.data.base_datamodule.BaseDataModule

dataset:
_target_: src.data.heat_krakow_dataset.HeatKrakowDataset
data_dir: ${paths.data_dir}
modalities:
coords: {}
use_target_data: true
use_features: true
use_aux_data: none
seed: ${seed}
cache_dir: ${paths.cache_dir}

batch_size: 64
num_workers: 8
pin_memory: true

split_mode: "from_file"
save_split: false
saved_split_file_name: "heat_krakow_split_20260522_1120.pth"

train_val_test_split: [0.7, 0.15, 0.15]
seed: ${seed}
35 changes: 35 additions & 0 deletions configs/experiment/heat_krakow_full_fusion_avg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# @package _global_
# Guatemala performance: R2=0.672, RMSE=1.104, MAE=0.896
# Kraków performance: R2=0.935, RMSE=0.523, MAE = 0.397
defaults:
- override /model: heat_krakow_full_fusion_avg
- override /data: heat_krakow
- override /metrics: krakow_regression
tags: ["heat_island", "krakow", "full_fusion_avg", "best", "regression"]
seed: 12345
trainer:
min_epochs: 1
max_epochs: 100
data:
batch_size: 64
dataset:
modalities:
coords: {}
tessera:
year: 2024
size: 10 #9 resulted in slightly worse performance
format: npy
callbacks:
model_checkpoint:
monitor: val_r2
mode: max
early_stopping:
monitor: val_r2
mode: max
patience: 20
logger:
wandb:
tags: ${tags}
group: "heat_island"
aim:
experiment: "heat_island"
25 changes: 25 additions & 0 deletions configs/experiment/heat_krakow_fusion.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# @package _global_
# Variant C: GeoClip + tabular fusion
# Guatemala performance: R2=0.555, RMSE=1.285, MAE=1.039
# Kraków performance: R2=0.804, RMSE=0.902, MAE=0.688
defaults:
- override /model: heat_fusion_reg
- override /data: heat_krakow
- override /metrics: krakow_regression

tags: ["heat_island", "krakow", "fusion", "regression"]
seed: 12345

trainer:
min_epochs: 1
max_epochs: 50

data:
batch_size: 64

logger:
wandb:
tags: ${tags}
group: "heat_island"
aim:
experiment: "heat_island"
28 changes: 28 additions & 0 deletions configs/experiment/heat_krakow_geoclip.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# @package _global_
# Guatemala performance: R2=0.323, RMSE=1.607, MAE=1.344
# Kraków performance: R2=0.450, RMSE=1.519, MAE=1.183
defaults:
- override /model: heat_geoclip_reg
- override /data: heat_krakow
- override /metrics: krakow_regression
tags: ["heat_island", "krakow", "coords", "regression"]
seed: 12345
trainer:
min_epochs: 1
max_epochs: 100
data:
batch_size: 64
callbacks:
model_checkpoint:
monitor: val_r2
mode: max
early_stopping:
monitor: val_r2
mode: max
patience: 20
logger:
wandb:
tags: ${tags}
group: "heat_island"
aim:
experiment: "heat_island"
28 changes: 28 additions & 0 deletions configs/experiment/heat_krakow_tabular.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# @package _global_
# Guatemala performance: R2=0.562, RMSE=1.282, MAE=1.040
Comment thread
vdplasthijs marked this conversation as resolved.
# Kraków performance: R2=0.621, RMSE=1.257, MAE=0.949
defaults:
- override /model: heat_tabular_reg
- override /data: heat_krakow
- override /metrics: krakow_regression
tags: ["heat_island", "krakow", "tabular", "regression"]
seed: 12345
trainer:
min_epochs: 1
max_epochs: 100
data:
batch_size: 64
callbacks:
model_checkpoint:
monitor: val_r2
mode: max
early_stopping:
monitor: val_r2
mode: max
patience: 20
logger:
wandb:
tags: ${tags}
group: "heat_island"
aim:
experiment: "heat_island"
35 changes: 35 additions & 0 deletions configs/experiment/heat_krakow_tessera_avg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# @package _global_
# Guatemala performance: R2=0.733, RMSE=1.011, MAE=0.814
# Kraków performance: R2=0.924, RMSE=0.568, MAE=0.441
defaults:
- override /model: heat_krakow_tessera_avg
- override /data: heat_krakow
- override /metrics: krakow_regression
tags: ["heat_island", "krakow", "tessera_avg", "best", "regression"]
seed: 12345
trainer:
min_epochs: 1
max_epochs: 100
data:
batch_size: 64
dataset:
modalities:
coords: {}
tessera:
year: 2024
size: 10
format: npy
callbacks:
model_checkpoint:
monitor: val_r2
mode: max
early_stopping:
monitor: val_r2
mode: max
patience: 20
logger:
wandb:
tags: ${tags}
group: "heat_island"
aim:
experiment: "heat_island"
7 changes: 7 additions & 0 deletions configs/metrics/krakow_regression.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
_target_: src.models.components.metrics.metrics_wrapper.MetricsWrapper

metrics:
- _target_: src.models.components.loss_fns.mse_loss.MSELoss
- _target_: src.models.components.loss_fns.rmse_loss.RMSELoss
- _target_: src.models.components.loss_fns.mae_loss.MAELoss
- _target_: src.models.components.metrics.r2.RSquared
34 changes: 34 additions & 0 deletions configs/model/heat_krakow_full_fusion_avg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
_target_: src.models.predictive_model.PredictiveModel
geo_encoder:
_target_: src.models.components.geo_encoders.encoder_wrapper.EncoderWrapper
encoder_branches:
- encoder:
_target_: src.models.components.geo_encoders.geoclip.GeoClipCoordinateEncoder
- encoder:
_target_: src.models.components.geo_encoders.tabular_encoder.TabularEncoder
output_dim: 64
geo_data_name: tabular
- encoder:
_target_: src.models.components.geo_encoders.average_encoder.AverageEncoder
geo_data_name: tessera
fusion_strategy: concat
prediction_head:
_target_: src.models.components.pred_heads.mlp_regression_head.MLPRegressionPredictionHead
nn_layers: 3
hidden_dim: 512
trainable_modules: [geo_encoder.encoder_branches.1, prediction_head]
normalize_features: false
metrics: ${metrics}
optimizer:
_target_: torch.optim.Adam
_partial_: true
lr: 0.0001
weight_decay: 0.0
scheduler:
_target_: torch.optim.lr_scheduler.ReduceLROnPlateau
_partial_: true
mode: min
factor: 0.1
patience: 10
loss_fn:
_target_: torch.nn.MSELoss
24 changes: 24 additions & 0 deletions configs/model/heat_krakow_tessera_avg.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
_target_: src.models.predictive_model.PredictiveModel
geo_encoder:
_target_: src.models.components.geo_encoders.average_encoder.AverageEncoder
geo_data_name: tessera
prediction_head:
_target_: src.models.components.pred_heads.mlp_regression_head.MLPRegressionPredictionHead
nn_layers: 2
hidden_dim: 512
trainable_modules: [prediction_head]
normalize_features: true
metrics: ${metrics}
optimizer:
_target_: torch.optim.Adam
_partial_: true
lr: 0.001
weight_decay: 0.0
scheduler:
_target_: torch.optim.lr_scheduler.ReduceLROnPlateau
_partial_: true
mode: min
factor: 0.1
patience: 10
loss_fn:
_target_: torch.nn.MSELoss
Binary file not shown.
Loading