generated from eliahuhorwitz/Academic-project-page-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
572 lines (451 loc) · 25.7 KB
/
index.html
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<!-- Meta tags for social media banners, these should be filled in appropriatly as they are your "business card" -->
<!-- Replace the content tag with appropriate information -->
<meta name="description" content="ClimODE">
<meta property="og:title" content="ClimODE: Climate and Weather Forecasting With Physics-informed Neural ODEs"/>
<meta property="og:description" content="We introduce a novel climate and weather modeling approach, inspired by physics, using ODEs that capture underlying inductive biases and allow for uncertainty quantification in predictions"/>
<meta property="og:url" content="URL OF THE WEBSITE"/>
<!-- Path to banner image, should be in the path listed below. Optimal dimenssions are 1200X630-->
<meta property="og:image" content="static/image/banner.png" />
<meta property="og:image:width" content="1200"/>
<meta property="og:image:height" content="630"/>
<meta name="twitter:title" content="ClimODE: Climate and Weather Forecasting With Physics-informed Neural ODEs">
<meta name="twitter:description" content="We introduce a novel climate and weather modeling approach, inspired by physics, using ODEs that capture underlying inductive biases and allow for uncertainty quantification in predictions">
<!-- Path to banner image, should be in the path listed below. Optimal dimenssions are 1200X600-->
<meta name="twitter:image" content="static/images/banner.png">
<meta name="twitter:card" content="summary_large_image">
<!-- Keywords for your paper to be indexed by-->
<meta name="keywords" content="neural ODE, time-series forecasting, climate prediction, physics-informed ML">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ClimODE</title>
<link rel="icon" type="image/x-icon" href="static/images/favicon.ico">
<link href="https://fonts.googleapis.com/css?family=Google+Sans|Noto+Sans|Castoro"
rel="stylesheet">
<link rel="stylesheet" href="static/css/bulma.min.css">
<link rel="stylesheet" href="static/css/bulma-carousel.min.css">
<link rel="stylesheet" href="static/css/bulma-slider.min.css">
<link rel="stylesheet" href="static/css/fontawesome.all.min.css">
<link rel="stylesheet"
href="https://cdn.jsdelivr.net/gh/jpswalsh/academicons@1/css/academicons.min.css">
<link rel="stylesheet" href="static/css/index.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://documentcloud.adobe.com/view-sdk/main.js"></script>
<script defer src="static/js/fontawesome.all.min.js"></script>
<script src="static/js/bulma-carousel.min.js"></script>
<script src="static/js/bulma-slider.min.js"></script>
<script src="static/js/index.js"></script>
</head>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
</script>
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<body>
<section class="hero">
<div class="hero-body">
<div class="container is-max-desktop">
<div class="columns is-centered">
<div class="column has-text-centered">
<h1 class="title is-1 publication-title">ClimODE: Climate and Weather Forecasting With Physics-informed Neural ODEs</h1>
<div class="is-size-5 publication-authors">
<h6 style="font-size:30px;"><span style="color: #ff0000">Oral (Top 1%)</span>, ICLR 2024 </h6>
<!-- Paper authors -->
<span class="author-block">
<a href="https://yoverma.github.io/yoerma.github.io/" target="_blank">Yogesh Verma</a>,</span>
<span class="author-block">
<a href="https://users.aalto.fi/~heinom10/" target="_blank">Markus Heinonen</a>,</span>
<span class="author-block">
<a href="https://www.mit.edu/~vgarg/" target="_blank">Vikas Garg</a>
</span>
</div>
<div class="is-size-5 publication-authors">
<span class="author-block">Aalto University, Finland & YaiYai Ltd <br></span>
</div>
<div class="column has-text-centered">
<div class="publication-links">
<!-- Arxiv PDF link -->
<span class="link-block">
<a href="https://arxiv.org/pdf/2404.10024.pdf" target="_blank"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fas fa-file-pdf"></i>
</span>
<span>Paper</span>
</a>
</span>
<!-- Supplementary PDF link -->
<!-- <span class="link-block">
<a href="static/pdfs/supplementary_material.pdf" target="_blank"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fas fa-file-pdf"></i>
</span>
<span>Supplementary</span>
</a>
</span> -->
<!-- Github link -->
<span class="link-block">
<a href="https://github.com/Aalto-QuML/ClimODE" target="_blank"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="fab fa-github"></i>
</span>
<span>Code</span>
</a>
</span>
<!-- ArXiv abstract Link -->
<span class="link-block">
<a href="https://arxiv.org/abs/2404.10024" target="_blank"
class="external-link button is-normal is-rounded is-dark">
<span class="icon">
<i class="ai ai-arxiv"></i>
</span>
<span>arXiv</span>
</a>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Teaser video-->
<section class="hero teaser">
<div class="container is-max-desktop">
<div class="hero-body">
<video poster="" width="100%" id="tree" autoplay controls muted loop height="140%">
<!-- Your video here -->
<source src="static/videos/Slowed_video_combined_comp1.mp4"
type="video/mp4" width="68">
</video>
<h2 class="subtitle has-text-justified">
<b>We model climate/weather as a spatiotemporal process using the concept of advection.</b> This provides a <font color="red"> strong physical prior </font> to modeling the spatiotemporal dynamics. In order to model the external sources and provide uncertainty quantification, we add a <font color="orange"> Gaussian emission model </font>, which models the day-night cycle and provides uncertainty quantification in the predictions. The video shows the predictions of the ClimODE model for various observables.
</h2>
</div>
</div>
</section>
<!-- End teaser video -->
<!-- Paper abstract -->
<section class="section hero is-light">
<div class="container is-max-desktop">
<div class="columns is-centered has-text-centered">
<div class="column is-four-fifths">
<h2 class="title is-3">Abstract</h2>
<div class="content has-text-justified">
<p>
Climate and weather prediction traditionally relies on complex numerical simulations of atmospheric physics. Deep learning approaches, such as transformers, have recently challenged the simulation paradigm with complex network forecasts. However, <b> they often act as data-driven black-box models that neglect the underlying physics and lack uncertainty quantification</b>. We address these limitations with <font color="blue"> ClimODE, a spatiotemporal continuous-time process that implements a key principle of advection from statistical mechanics </font>, namely, weather changes due to a spatial movement of quantities over time. <font color="brown"> ClimODE models precise weather evolution with value-conserving dynamics, learning global weather transport as a neural flow, which also enables estimating the uncertainty in predictions </font>. Our approach outperforms existing data-driven methods in global and regional forecasting with an order of magnitude smaller parameterization, establishing a new state of the art.
</p>
</div>
</div>
</div>
<div class="columns is-centered has-text-centered">
<div class="column">
<h2 class="title is-3">Overview</h2>
<div class="tile is-ancestor is-centered">
<div class="tile is-parent">
<a href="#method-overview" class="tile is-child box">
<p class="title is-4">Method</p>
<p>
How do we model weather/climate via advection?
</p>
</a>
</div>
<div class="tile is-parent">
<a href="#visualizations" class="tile is-child box">
<p class="title is-4">Visualizations</p>
<p>
Explore visualizations of how ClimODE models the global weather/climate.
</p>
</a>
</div>
<div class="tile is-parent">
<a href="#results" class="tile is-child box">
<p class="title is-4">Training Results</p>
<p>
Results of ClimODE in various weather forecasting tasks.
</p>
</a>
</div>
<div class="tile is-parent">
<a href="#ablations" class="tile is-child box">
<p class="title is-4">Ablations</p>
<p>
Ablations and Interpretability of Predictions
</p>
</a>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- End paper abstract -->
<section class="section">
<div class="container is-max-desktop">
<div class="columns is-centered">
<!-- Visual Effects. -->
<div class="column is-full-width">
<h2 class="title is-3" id="method-overview">Method Overview</h2>
<div class="hero-body has-text-centered">
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/workflow_final_climate_v6.png" />
</p>
<h3 class="subtitle has-text-justified">
<b>Our method whole pipeline.</b>
Based on initial velocity estimates, the advection ODE component serves as the foundational backbone of the model, projecting future predictions. These projections are subsequently forwarded to the emission model, further refining them by estimating bias and uncertainty, ultimately yielding the final predictions.
</h3>
</div>
<div>
<div class="content has-text-justified">
<p>
</p>
</div>
<!-- <h3 class="title is-4 ap-text">Adversarial Prompts</h3> -->
<h2 class="title is-4 has-text-justified">Neural Transport Model</h2>
<div class="content has-text-justified">
<p>
We model weather/climate as a spatiotemporal process <b>u</b>(x,t) = (u<sub>1</sub>(x,t),...,u<sub>K</sub>(x,t)) of K quantities as an advection PDE,<br>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/image.png" />
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/fig1_v2_final.png" />
</p>
<!-- We employ the following two approaches to condition the generative model g on the label y and sample-aligned training examples (x ̃, y). -->
<!-- For the depth estimation task, we use the ControlNet model <a href="https://arxiv.org/abs/2302.05543">(Zhang L. et al.)</a> with depth conditioning. We use the depth maps from the training dataset. ControlNet then generates an RGB image conditioned on the given depth map. -->
<!-- which extends the conditioning mechanisms of the Stable Diffusion to accept various spatial modalities, e.g., depth, segmentation masks, or edges. -->
<!-- Specifically, we use ControlNet v1.0 with depth conditioning1. -->
<!-- For semantic classification tasks, we utilize the foreground object masks and use an in-painting technique proposed by <a href="https://arxiv.org/abs/2201.09865">Lugmayr A. et al.</a> that preserves the masked region throughout the denoising process, essentially keeping it intact. -->
<!-- These mechanisms provide us with a generative model conditioned both on a text prompt and label. -->
<!-- We denote the resulting distribution modeled by this generative model as g(y, c). -->
</p>
</div>
<h2 class="title is-4 has-text-justified">Flow velocity</h2>
<div class="content has-text-justified">
<p>
We model the flow velocity by parametrising it as a function of <b>u</b>(t)= {<b>u</b>(x,t) : x <span>∈</span> <span>Ω</span> }, spatial gradients <span>∇</span> <b>u</b>(t), current velocity <b>v</b>(t) and spatiotemporal embeddings <span>ψ</span> as, <br>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/image_2.png" />
</p>
To capture local and global effects pertaining to weather (or climate), we propose a hybrid network as,<br>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/image_v3.png" />
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/Group.jpg" />
</p>
</p>
</div>
</div>
</div>
<!-- <h3 class="title is-4">Guided Prompts</h3>
<div class="content has-text-justified">
<p>
</p>
</div> -->
<br>
<!-- <h3 class="title is-4 gap-text">Guided Adversarial Prompts</h3>
<div class="content has-text-justified">
<p>
</p>
</div> -->
</div>
<br>
<h2 class="title is-3" id="results">Results</h2>
<div class="content has-text-justified">
We now show the ClimODE's forecasting capabilities by predicting the future state based on the initial state for various lead times, focusing on key meteorological variables
</div>
<h3 class="title is-4">Global Forecasting</h3>
<div class="columns is-centered is-vcentered">
<div class="content has-text-justified">
We assess ClimODE's performance in global forecasting, encompassing the prediction of crucial meteorological variables described above. It demonstrates <font color="red"> ClimODE's superior performance across all metrics and variables </font> over other neural baselines, while falling short against the gold-standard IFS, as expected. These findings indicate the <font color="orange"> effectiveness of incorporating an underlying physical framework</font> for climate or weather modeling.
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/global_forecast_updated.png" />
</p>
</div>
</div>
<!-- <div class="column is-0.1"></div> -->
<h3 class="title is-4">CRPS Scores and Monthly Forecasting</h3>
<div class="columns is-centered is-vcentered">
<div class="content has-text-justified">
We also evaluated our model using CRPS (Continuous Ranked Probability Score) and Globaly monthly forecasting to forecast monthly averages of quantities, shown below. It can be seen our model can predict the weather quite well with predicted variance and bias outperform FCN in monthly forecasting.
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/crps_average.png" />
</p>
</div>
</div>
<h2 class="title is-3" id="ablations">Ablations</h2>
<h3 class="title is-4" id="results-iwilds">Effect of emission model</h3>
<div class="columns is-centered is-vcentered">
<div class="column is-6 has-text-justified">
<p>
<!-- We train a classification model on the original spuriously correlated dataset with varying number of extra data points generated using different types of prompts. -->
<!-- We measure the accuracy on a balanced set where waterbirds and landbirds appear on both land and water. -->
The right plot shows model predictions <b>u(x,t)</b> of ground temperature (t2m) for a specific location while also including emission bias <span>µ</span> and variance <span>σ</span> . Remarkably, the model captures <font color="red"> diurnal variations and effectively estimates variance </font>.
</p>
<p>
<!-- We train a classification model on the original spuriously correlated dataset with varying number of extra data points generated using different types of prompts. -->
<!-- We measure the accuracy on a balanced set where waterbirds and landbirds appear on both land and water. -->
The bottom plot highlights bias and variance on a global scale. <font color="orange"> Positive bias is evident around the Pacific ocean </font> , corresponding to daytime, while a negative bias prevails around Europe and Africa, signifying nighttime. The <font color="blue"> uncertainties indicate confidence </font> in ocean estimation, with northern land regions being challenging.
</p>
</div>
<div class="column is-1"></div>
<div class="column is-5 has-text-centered">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/mean_bias_showcase_final_v3.png" alt="Agreement Score" class="img-center">
</div>
</div>
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/mean_std_tp_v1.png" />
</p>
<h3 class="title is-4">Effect of individual components</h3>
<div class="columns is-centered is-vcentered">
<div class="content has-text-justified">
We analyze the contributions of various model components to its performance.The below plot delineates the impact of components: <font color="blue"> NODE</font> is a free-form second-order neural ODE, <font color="orange"> Adv</font> corresponds to the advection ODE form, <font color="green"> Att</font> adds the attention in addition to convolutions, and <font color="red"> ClimODE</font> adds also the emission component.
<p align="center">
<img src="https://raw.githubusercontent.com/yogeshverma1998/ClimODE/master/static/images/ablation_final_v2.png" />
</p>
</div>
</div>
<h3 class="title is-4" id="results-iwilds">Additional results and analysis</h3>
<div class="content has-text-justified">
We also have additional results on the following: <br>
<p style="margin-left:20px;">
<span>•</span> Results for <em>regional forecasting, longer-lead times</em> of various quantities and comparison to baselines <br>
<span>•</span> Abaltion to check the mass-conserving property of the ODE-system.<br>
<span>•</span> Correlations among the data variables.
</p>
</div>
</div>
</div>
</div>
</section>
<section class="hero is-small">
<div class="hero-body">
<div class="container">
<h2 class="title is-3" id="visualizations">Visualizations</h2>
<h3 class="title is-3">Global Predictions</h3>
<div class="content is-centered">
<b>Below is the global forecast video of various meteorological variables predicted by ClimODE. </b>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_climate_video_u10_comp.mp4"
type="video/mp4" width="68">
</video>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_climate_video_v10_comp.mp4"
type="video/mp4" width="68">
</video>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_climate_video_z_comp.mp4"
type="video/mp4" width="68">
</video>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_climate_video_t2m_comp.mp4"
type="video/mp4" width="68">
</video>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_climate_video_t_comp.mp4"
type="video/mp4" width="68">
</video>
</div>
<h3 class="title is-3">Evolution by Advection</h3>
<div class="content is-centered">
<b>Below is the evolution of weather as a quantity-preserving advection system. </b>
</video>
<video poster="" width="100%" id="tree" autoplay controls muted loop height="100%">
<!-- Your video here -->
<source src="static/videos/Slowed_advection_video_panel_comp_v2.mp4"
type="video/mp4" width="68">
</video>
</div>
</div>
</div>
</section>
<!-- <section class="hero is-small">
<div class="hero-body">
<div class="container">
<h2 class="title is-3" id="visualizations" >Visualizations</h2>
<h3 class="title is-3">Global Predictions</h3>
<div class="content has-text-justified">
Below is the global forecast video of various meteorological variables predicted by ClimODE.
</div>
<div id="results-carousel" class="carousel results-carousel">
<div class="item item-video1">
<video poster="" id="video1" autoplay controls muted loop height="70%">
<source src="static/videos/Slowed_climate_video_u10_comp.mp4"
type="video/mp4">
</video>
</div>
<div class="item item-video2">
<video poster="" id="video2" autoplay controls muted loop height="70%">
<source src="static/videos/Slowed_climate_video_v10_comp.mp4"
type="video/mp4">
</video>
</div>
<div class="item item-video3">
<video poster="" id="video3" autoplay controls muted loop height="70%">
<source src="static/videos/Slowed_climate_video_t_comp.mp4"
type="video/mp4">
</video>
</div>
</div>
</div>
</div>
</section> -->
<!-- Youtube video -->
<!-- End youtube video -->
<!-- Paper poster -->
<section class="hero is-small is-light">
<div class="hero-body">
<div class="container">
<h2 class="title">Poster</h2>
<iframe src="static/pdfs/ClimODE_poster_arche.pdf" width="100%" height="550">
</iframe>
</div>
</div>
</section>
<!--End paper poster -->
<!--BibTex citation -->
<section class="section" id="BibTeX">
<div class="container is-max-desktop content">
<h2 class="title">BibTeX</h2>
<pre><code>@inproceedings{
verma2024climode,
title={Clim{ODE}: Climate Forecasting With Physics-informed Neural {ODE}s},
author={Yogesh Verma and Markus Heinonen and Vikas Garg},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=xuY33XhEGR}
}</code></pre>
</div>
</section>
<!--End BibTex citation -->
<footer class="footer">
<div class="container">
<div class="columns is-centered">
<div class="column is-8">
<div class="content">
<p>
This page was built using the <a href="https://github.com/eliahuhorwitz/Academic-project-page-template" target="_blank">Academic Project Page Template</a> which was adopted from the <a href="https://nerfies.github.io" target="_blank">Nerfies</a> project page.
You are free to borrow the of this website, we just ask that you link back to this page in the footer. <br> This website is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/" target="_blank">Creative
Commons Attribution-ShareAlike 4.0 International License</a>.
</p>
</div>
</div>
</div>
</div>
</footer>
<!-- Statcounter tracking code -->
<!-- You can add a tracker to track page visits by creating an account at statcounter.com -->
<!-- End of Statcounter Code -->
</body>
</html>