Sukhil-Patel commited on
Commit
0561e73
·
verified ·
1 Parent(s): d711046

Upload folder using huggingface_hub

Browse files
Files changed (4) hide show
  1. README.md +6 -9
  2. config.json +39 -18
  3. data_config.yaml +70 -5
  4. pytorch_model.bin +2 -2
README.md CHANGED
@@ -9,12 +9,13 @@ library_name: pytorch
9
 
10
 
11
 
12
- # PVNet2
13
 
14
  ## Model Description
15
 
16
  <!-- Provide a longer summary of what this model is/does. -->
17
- This model class uses satellite data, numericl weather predictions, and recent Grid Service Point( GSP) PV power output to forecast the near-term (~8 hours) PV power output at all GSPs. More information can be found in the model repo [1] and experimental notes in [this google doc](https://docs.google.com/document/d/1fbkfkBzp16WbnCg7RDuRDvgzInA6XQu3xh4NCjV-WDA/edit?usp=sharing).
 
18
 
19
  - **Developed by:** openclimatefix
20
  - **Model type:** Fusion model
@@ -28,23 +29,19 @@ This model class uses satellite data, numericl weather predictions, and recent G
28
 
29
  <!-- This should link to a Data Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
30
 
31
- The model is trained on data from 2019-2022 and validated on data from 2022-2023. See experimental notes in the [the google doc](https://docs.google.com/document/d/1fbkfkBzp16WbnCg7RDuRDvgzInA6XQu3xh4NCjV-WDA/edit?usp=sharing) for more details.
32
 
33
 
34
  ### Preprocessing
35
 
36
- Data is prepared with the `ocf_datapipes.training.pvnet` datapipe [2].
37
 
38
 
39
  ## Results
40
 
41
  The training logs for the current model can be found here:
42
- - [https://wandb.ai/openclimatefix/pvnet2.1/runs/v4xgpar9](https://wandb.ai/openclimatefix/pvnet2.1/runs/v4xgpar9)
43
-
44
-
45
- The training logs for all model runs of PVNet2 can be found [here](https://wandb.ai/openclimatefix/pvnet2.1).
46
 
47
- Some experimental notes can be found at in [the google doc](https://docs.google.com/document/d/1fbkfkBzp16WbnCg7RDuRDvgzInA6XQu3xh4NCjV-WDA/edit?usp=sharing)
48
 
49
 
50
  ### Hardware
 
9
 
10
 
11
 
12
+ # PVNet India
13
 
14
  ## Model Description
15
 
16
  <!-- Provide a longer summary of what this model is/does. -->
17
+ This model class uses numerical weather predictions from providers such as ECMWF to forecast the PV power in North West India over the next 48 hours. More information can be found in the model repo [1] and experimental notes [here](https://github.com/openclimatefix/PVNet/tree/main/experiments/india).
18
+
19
 
20
  - **Developed by:** openclimatefix
21
  - **Model type:** Fusion model
 
29
 
30
  <!-- This should link to a Data Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
31
 
32
+ The model is trained on data from 2019-2022 and validated on data from 2022-2023. See experimental notes [here](https://github.com/openclimatefix/PVNet/tree/main/experiments/india)
33
 
34
 
35
  ### Preprocessing
36
 
37
+ Data is prepared with the `ocf_datapipes.training.pvnet_site` datapipe [2].
38
 
39
 
40
  ## Results
41
 
42
  The training logs for the current model can be found here:
43
+ - [https://wandb.ai/openclimatefix/india_pv_v2/runs/6e9vqmr4](https://wandb.ai/openclimatefix/india_pv_v2/runs/6e9vqmr4)
 
 
 
44
 
 
45
 
46
 
47
  ### Hardware
config.json CHANGED
@@ -1,59 +1,80 @@
1
  {
2
  "_target_": "pvnet.models.multimodal.multimodal.Model",
3
  "output_quantiles": [
4
- 0.02,
5
  0.1,
6
- 0.25,
7
  0.5,
8
- 0.75,
9
- 0.9,
10
- 0.98
11
  ],
12
  "interval_minutes": 15,
13
  "use_weighted_loss": false,
14
- "pv_interval_minutes": 15,
15
  "nwp_encoders_dict": {
16
  "ecmwf": {
17
  "_target_": "pvnet.models.multimodal.encoders.encoders3d.ResConv3DNet2",
18
  "_partial_": true,
19
- "in_channels": 12,
20
  "out_features": 256,
21
  "n_res_blocks": 4,
22
  "hidden_channels": 256,
23
- "image_size_pixels": 64
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  }
25
  },
26
  "pv_encoder": {
27
  "_target_": "pvnet.models.multimodal.site_encoders.encoders.SingleAttentionNetwork",
28
  "_partial_": true,
29
  "num_sites": 1,
30
- "out_features": 40,
31
  "num_heads": 4,
32
- "kdim": 40,
33
- "id_embed_dim": 20
34
  },
35
  "output_network": {
36
  "_target_": "pvnet.models.multimodal.linear_networks.networks.ResFCNet2",
37
  "_partial_": true,
38
- "fc_hidden_features": 512,
39
  "n_res_blocks": 6,
40
- "res_block_layers": 2,
41
  "dropout_frac": 0.0
42
  },
43
- "embedding_dim": 128,
44
  "include_sun": true,
45
  "include_gsp_yield_history": false,
46
  "forecast_minutes": 2880,
47
  "history_minutes": 60,
48
- "min_sat_delay_minutes": 60,
49
- "sat_history_minutes": 90,
50
  "nwp_history_minutes": {
51
- "ecmwf": 60
 
 
52
  },
53
  "nwp_forecast_minutes": {
54
- "ecmwf": 2880
 
 
 
 
 
 
 
55
  },
56
  "pv_history_minutes": 60,
 
57
  "target_key": "pv",
58
  "optimizer": {
59
  "_target_": "pvnet.optimizers.EmbAdamWReduceLROnPlateau",
 
1
  {
2
  "_target_": "pvnet.models.multimodal.multimodal.Model",
3
  "output_quantiles": [
 
4
  0.1,
 
5
  0.5,
6
+ 0.9
 
 
7
  ],
8
  "interval_minutes": 15,
9
  "use_weighted_loss": false,
 
10
  "nwp_encoders_dict": {
11
  "ecmwf": {
12
  "_target_": "pvnet.models.multimodal.encoders.encoders3d.ResConv3DNet2",
13
  "_partial_": true,
14
+ "in_channels": 13,
15
  "out_features": 256,
16
  "n_res_blocks": 4,
17
  "hidden_channels": 256,
18
+ "image_size_pixels": 42
19
+ },
20
+ "mo_global": {
21
+ "_target_": "pvnet.models.multimodal.encoders.encoders3d.ResConv3DNet2",
22
+ "_partial_": true,
23
+ "in_channels": 10,
24
+ "out_features": 256,
25
+ "n_res_blocks": 5,
26
+ "hidden_channels": 256,
27
+ "image_size_pixels": 50
28
+ },
29
+ "gfs": {
30
+ "_target_": "pvnet.models.multimodal.encoders.encoders3d.ResConv3DNet2",
31
+ "_partial_": true,
32
+ "in_channels": 13,
33
+ "out_features": 256,
34
+ "n_res_blocks": 3,
35
+ "hidden_channels": 256,
36
+ "image_size_pixels": 10
37
  }
38
  },
39
  "pv_encoder": {
40
  "_target_": "pvnet.models.multimodal.site_encoders.encoders.SingleAttentionNetwork",
41
  "_partial_": true,
42
  "num_sites": 1,
43
+ "out_features": 64,
44
  "num_heads": 4,
45
+ "kdim": 64,
46
+ "id_embed_dim": 64
47
  },
48
  "output_network": {
49
  "_target_": "pvnet.models.multimodal.linear_networks.networks.ResFCNet2",
50
  "_partial_": true,
51
+ "fc_hidden_features": 128,
52
  "n_res_blocks": 6,
53
+ "res_block_layers": 4,
54
  "dropout_frac": 0.0
55
  },
56
+ "embedding_dim": 16,
57
  "include_sun": true,
58
  "include_gsp_yield_history": false,
59
  "forecast_minutes": 2880,
60
  "history_minutes": 60,
 
 
61
  "nwp_history_minutes": {
62
+ "ecmwf": 60,
63
+ "mo_global": 60,
64
+ "gfs": 0
65
  },
66
  "nwp_forecast_minutes": {
67
+ "ecmwf": 2880,
68
+ "mo_global": 1680,
69
+ "gfs": 2220
70
+ },
71
+ "nwp_interval_minutes": {
72
+ "ecmwf": 60,
73
+ "mo_global": 60,
74
+ "gfs": 180
75
  },
76
  "pv_history_minutes": 60,
77
+ "pv_interval_minutes": 15,
78
  "target_key": "pv",
79
  "optimizer": {
80
  "_target_": "pvnet.optimizers.EmbAdamWReduceLROnPlateau",
data_config.yaml CHANGED
@@ -6,8 +6,18 @@ input_data:
6
  default_history_minutes: 60
7
  nwp:
8
  ecmwf:
9
- forecast_minutes: 2880
 
 
 
 
10
  history_minutes: 60
 
 
 
 
 
 
11
  nwp_channels:
12
  - hcc
13
  - lcc
@@ -21,18 +31,73 @@ input_data:
21
  - v10
22
  - dlwrf
23
  - dswrf
24
- nwp_image_size_pixels_height: 64
25
- nwp_image_size_pixels_width: 64
 
26
  nwp_provider: ecmwf
27
  nwp_zarr_path: PLACEHOLDER.zarr
28
  time_resolution_minutes: 60
29
- x_dim_name: longitude
30
- y_dim_name: latitude
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  pv:
 
 
 
 
 
32
  n_pv_systems_per_example: 1
33
  pv_files_groups:
34
  - label: india
35
  pv_filename: PLACEHOLDER.netcdf
36
  pv_metadata_filename: PLACEHOLDER.csv
37
  pv_ml_ids: []
 
 
 
38
  time_resolution_minutes: 15
 
6
  default_history_minutes: 60
7
  nwp:
8
  ecmwf:
9
+ coarsen_to_degrees: 0.2
10
+ dropout_fraction: 1.0
11
+ dropout_timedeltas_minutes:
12
+ - -360
13
+ forecast_minutes: 2880.0
14
  history_minutes: 60
15
+ max_staleness_minutes: null
16
+ nwp_accum_channels:
17
+ - dswrf
18
+ - dlwrf
19
+ - sr
20
+ - duvrs
21
  nwp_channels:
22
  - hcc
23
  - lcc
 
31
  - v10
32
  - dlwrf
33
  - dswrf
34
+ - duvrs
35
+ nwp_image_size_pixels_height: 42
36
+ nwp_image_size_pixels_width: 42
37
  nwp_provider: ecmwf
38
  nwp_zarr_path: PLACEHOLDER.zarr
39
  time_resolution_minutes: 60
40
+ gfs:
41
+ dropout_fraction: 1.0
42
+ dropout_timedeltas_minutes:
43
+ - -300
44
+ forecast_minutes: 2160.0
45
+ history_minutes: 0
46
+ nwp_channels:
47
+ - t
48
+ - prate
49
+ - u10
50
+ - v10
51
+ - dlwrf
52
+ - dswrf
53
+ - hcc
54
+ - lcc
55
+ - mcc
56
+ - r
57
+ - sde
58
+ - tcc
59
+ - vis
60
+ nwp_image_size_pixels_height: 10
61
+ nwp_image_size_pixels_width: 10
62
+ nwp_provider: gfs
63
+ nwp_zarr_path: PLACEHOLDER.zarr
64
+ time_resolution_minutes: 180
65
+ mo_global:
66
+ dropout_fraction: 1.0
67
+ dropout_timedeltas_minutes:
68
+ - -180
69
+ forecast_minutes: 1680.0
70
+ history_minutes: 60
71
+ max_staleness_minutes: null
72
+ nwp_channels:
73
+ - temperature_sl
74
+ - wind_u_component_10m
75
+ - wind_v_component_10m
76
+ - downward_shortwave_radiation_flux_gl
77
+ - cloud_cover_high
78
+ - cloud_cover_low
79
+ - cloud_cover_medium
80
+ - relative_humidity_sl
81
+ - snow_depth_gl
82
+ - visibility_sl
83
+ nwp_image_size_pixels_height: 50
84
+ nwp_image_size_pixels_width: 50
85
+ nwp_provider: mo_global
86
+ nwp_zarr_path: PLACEHOLDER.zarr
87
+ time_resolution_minutes: 60
88
  pv:
89
+ dropout_fraction: 1.0
90
+ dropout_timedeltas_minutes:
91
+ - -15
92
+ forecast_minutes: 2880
93
+ history_minutes: 60
94
  n_pv_systems_per_example: 1
95
  pv_files_groups:
96
  - label: india
97
  pv_filename: PLACEHOLDER.netcdf
98
  pv_metadata_filename: PLACEHOLDER.csv
99
  pv_ml_ids: []
100
+ system_dropout_fraction_max: 0
101
+ system_dropout_fraction_min: 0
102
+ system_dropout_timedeltas_minutes: null
103
  time_resolution_minutes: 15
pytorch_model.bin CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:1be652c35d18ac4ec55d79363e3f98c145bc81838dcd529984d92af5d2a0ac20
3
- size 283446466
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:70156641924ac90d26bab7157c12cfad57b33a43d092d5e5068d9ec1982d7b82
3
+ size 237540402