CarbonSense: A Multimodal Dataset and Baseline for Carbon Flux Modelling

## Abstract

Abstract Terrestrial carbon fluxes provide vital information about our biosphere’s health and its capacity to absorb anthropogenic CO 2 emissions. The importance of predicting carbon fluxes has led to the emerging field of data-driven carbon flux modelling (DDCFM), which uses statistical techniques to predict carbon fluxes from biophysical data. However, the field lacks a standardized dataset to promote comparisons between models. To address this gap, we present CarbonSense, the first machine learning-ready dataset for DDCFM. CarbonSense integrates measured carbon fluxes, meteorological predictors, and satellite imagery from 385 locations across the globe, offering comprehensive coverage and facilitating robust model training. Additionally, we provide a baseline model using a current state-of-the-art DDCFM approach and a novel transformer based model. Our experiments illustrate the potential gains that multimodal deep learning techniques can bring to this domain. By providing these resources, we aim to lower the barrier to entry for other deep learning researchers to develop new models and drive new advances in carbon flux modelling.

## 1 Introduction

The biosphere plays a critical role in regulating Earth’s climate. Since the mid-20th century, terrestrial ecosystems have absorbed up to a third of anthropogenic carbon emissions [sink]. However, climate change introduces uncertainty about the future resilience and capacity of these ecosystems. Understanding how the carbon dynamics of our biosphere are changing in response to both climate change and increasing anthropogenic pressures will give crucial insight into the health of our ecosystems and their ability to sequester carbon in the future.

Carbon fluxes describe the movement of carbon into and out of these ecosystems resulting from processes like photosynthesis and cellular respiration. They play a key role in assessing an ecosystem’s health, but measuring them requires long-term field sensor deployment to cover an area of only 100-1000m^2 [breathing]. This bottleneck has given rise to the field of data-driven carbon flux modelling (DDCFM) where researchers use biophysical predictors such as meteorological and geospatial data to model carbon fluxes. By training on data from a variety of field sites in varying ecosystems, these models can be used to predict carbon fluxes regionally or globally [first_fluxcom, xbase].

DDCFM presents a fascinating topic for deep learning researchers with real-world impact, yet it remains underexplored. As a result, the current state-of-the-art (SOTA) uses off-the-shelf solutions like random forests [nw_methane, fn_methane, abc_flux], gradient boosting [xbase], or ensembles of similar methods [bo_tun_co2, subtrop_wet]. These methods produce satisfactory results, but they fail to capitalize on the multimodal nature of the biophysical data. Recently, multimodal deep learning has exploded in popularity [mm_survey, mm_app_survey] and may offer a more appropriate framework for DDCFM through effective data integration and advanced neural architectures. Such advances could significantly enhance the quality of information available to decision-makers, thereby improving our ability to address climate change.

We wish to lower the barriers to entry into this area and encourage more work on DDCFM from the deep learning community. Data preparation for DDCFM is currently performed ad-hoc by research teams, leading to inconsistency and lack of standardization. The absence of standardized datasets and benchmarks hinders reproducibility and comparability of research findings. Our work addresses these gaps with the following contributions:

- •
We provide an overview of DDCFM for deep learning researchers (Section 2)
- •
We publish a multimodal machine learning-ready (ML-ready) dataset for DDCFM (Section 3)
- •
We provide a baseline model based on current SOTA practices in DDCFM, and compare it with a multimodal deep learning model which achieves improved performance (Section 4)

We will discuss our experiments in section 5 and provide guidelines for reporting results in this domain.

## 2 Data-Driven Carbon Flux Modelling

At its core, DDCFM is a regression problem. The target (carbon flux) depends on many factors including ecosystem composition, meteorological conditions, local topography and geology, and disturbances (fires, animal activity, etc). Meteorological data is relatively easy to obtain, but the other predictors are challenging to measure and represent, especially at a global scale. Remote sensing and semantic data are commonly employed as a proxy for the other predictors.

Figure: Figure 1: Simplified EC station. Sensors measure atmospheric gas concentrations across eddies.
Refer to caption: extracted/5649450/figures/ec_tower.png

### 2.1 Measuring Fluxes

The most common technique for measuring fluxes at ecosystem scale is eddy covariance (EC) [eddy]. This is a micrometeorological technique where researchers erect a tower (typically above canopy height) and mount sensors that measure atmospheric gas concentrations across small turbulent vortices (eddies). A simplified EC station is depicted in Figure 1. CO2 and water vapour are the most widely measured, but some towers also measure methane (CH4) [nw_methane, fn_methane] or nitrous oxide (N2O) [n2o]. Our work focuses on CO2 due to the prevalance of standardized data collections.

Carbon fluxes are expressed as mass / area / time (ex $g\cdot m^{-2}\cdot hr^{-1}$). Gross primary productivity (GPP) refers to the total carbon uptake by plants through photosynthesis. Ecosystem respiration (RECO) is the total carbon returned to the atmosphere through both plant and microbial respiration. Net ecosystem exchange (NEE) is the small difference between the two large component fluxes, GPP and RECO; a carbon sink will have a negative NEE as more carbon is being consumed through GPP than released through RECO. NEE is the flux that is directly measured by EC stations and is the main focus of our experiments, but GPP and RECO (which are derived from NEE) are also provided in our dataset.

### 2.2 Flux Predictors

#### Meteorological Data

DDCFM meteorological data comes from EC stations. In addition to carbon fluxes, EC stations measure local environmental and atmospheric conditions such as four-component net radiation, air temperature and relative humidity, precipitation, soil moisture and temperature, etc. The exact number and type of variables depends on the site, but regional networks maintain a minimum mandatory set for researchers wishing to submit their data [FLUXNET]. For trained models looking to predict fluxes at the global scale, meteorological data can be obtained from publicly available reanalysis products such as ERA5 [era5] which provides the variables on a 0.05 degree grid.

#### Geospatial Data

Satellite imagery of the area surrounding an EC station can give useful information about the land cover and ecosystem makeup. The most common products for DDCFM are based on Moderate Resolution Imaging Spectroradiometer (MODIS) data [tech_note]. This satellite pair ("Aqua" and "Terra") produce new imagery for Earth’s surface every 1-2 days and have 36 spectral bands with resolutions varying between 250m and 1km. The MCD43A4 product is particularly common - it fuses MODIS data in a 16-day sliding window to produce a single image each day. This helps to address cloud coverage and produces images which remove angle effects from directional reflectance [mcd43a4]. Each image therefore appears as it would from directly overhead at solar noon. MCD43A2 is also widely used, and contains categorical values for each pixel indicating snow and water cover [mcd43a2]. The terms "geospatial data", "satellite data" and "remote sensing data" are often used interchangeably in this domain, but it should be noted that not all geospatial data comes from satellites.

#### Semantic Data

Some models ingest semantic data such as land cover ("Croplands", "Evergreen needleleaf forest", "Snow and ice", etc). Land cover classifications follow standardized schemes such as the International Geosphere-Biosphere Programme (IGBP). Land cover classification is performed by domain experts, but some MODIS products coarsely approximate this information on a global grid [mcd12q1], allowing this data to also be used for global inference.

## 3 The CarbonSense Dataset

We present the first ML-ready dataset for DDCFM, CarbonSense. CarbonSense consists of EC station data and corresponding MODIS geospatial data for 385 sites across the globe, totalling over 27 million hourly observations. This section provides a brief overview of the dataset structure, processing pipeline, and usage guidelines. A more comprehensive guide is given in the supplementary material. For a detailed list of the 385 locations and their respective ecosystem types, see Appendix A.

### 3.1 Data Collection

All meteorological data was aggregated from major EC data networks, including FLUXNET 2015 [FLUXNET], the Integrated Carbon Observation System (ICOS) 2023 release [ICOS_2023], ICOS Warm Winter release [ICOS_WW], and Ameriflux 2023 release [Ameriflux]. These source datasets were chosen due to their use of the ONEFlux processing pipeline [FLUXNET], ensuring standardized coding and units. A map of EC sites and their source networks is shown in Figure 2. North America and Europe are over-represented in this site list due greater data accessibility, and we discuss the implications of this in Section 3.3.

Geospatial data in CarbonSense are sourced from MODIS products. Specifically, we utilize the seven spectral bands from the MCD43A4 product [mcd43a4], as well as the water and snow cover bands from MCD43A2 [mcd43a2]. Following the guidelines from [tech_note], we extract images in a 4km by 4km square centered on each EC station. Given a spatial resolution of 500m per pixel, this yields an 8x8 pixel image with 9 channels for every site-day.

Figure: Figure 2: Global map of eddy covariance sites used in CarbonSense, with corresponding source networks. Some sites were present in multiple networks.
Refer to caption: extracted/5649450/figures/carbonsense_map.png

### 3.2 Data Pipeline

The first stage in the pipeline is EC data fusion. Many sites had overlapping data from different source networks. For example, the site Degero in Sweden (SE-Deg) had data from 2001-2020 in the ICOS Warm Winter release, and data from 2019-2022 in the ICOS 2023 release. Data were fused with overlapping values taken from the more recent release as in previous DDCFM work [xbase]. Any sites which report half-hourly data were downsampled to hourly at this stage, and daily and monthly recordings were discarded.

Once fused, we extracted the relevant time blocks for each EC station along with its geographic location. This metadata was used to obtain the appropriate MODIS data for each site. Data was pulled procedurally from Google Earth Engine [ee].

Meteorological data was pruned to remove unwanted variables. Some, like soil moisture and temperature, were either unavailable for most sites or were heavily gap-filled. We removed these variables to reduce the risk of compounding errors on the underlying pipeline gapfilling techniques. A full list of variables at this stage is given in Table 6.

As a final stage in the pipeline, we apply a min-max normalization on predictor variables. We map cyclic variables (those with a cyclic range such as wind direction) to the range $[-1,1)$ and acyclic variables to the range $[-0.5,0.5)$. This normalization procedure is conducive to our Fourier encoding method discussed in Section 4.1.

We offer CarbonSense as a finished dataset but also provide the raw data. The full pipeline code is available so that researchers can run and modify it freely. Our pipeline can be configured to include other variables or to have different "leniency" for gap-filled values. For example, those who wish to use CarbonSense with strictly observed values may do so at the cost of a smaller number of samples. A diagram of the entire pipeline is shown in Figure 3.

Figure: Figure 3: Data pipeline used to create CarbonSense from EC and MODIS data.
Refer to caption: extracted/5649450/figures/ec_pipeline.png

### 3.3 Using the Dataset

#### Site Sampling

The biased geographic and ecological distribution of sites remains a challenge in DDCFM, and CarbonSense is no different. Given the significant overrepresentation of certain regions (North America, Europe) and ecosystems (evergreen needleleaf forests, grasslands), we maintain a partitioned structure where each site has its own directory containing EC data, geospatial data, and metadata. Researchers are encouraged to select sites for training and testing based on their experiment objectives such as high performance on particular ecosystems, or out-of-distribution generalization. Our experiments in section 5 are an example of the latter.

#### Dataloader

We supply an example PyTorch dataloader for CarbonSense specifically tailored to our model. Using the dataloader requires specifying which carbon flux to use as the target (ex NEE, GPP, RECO), which sites to include in each dataloader instance, and the context window length for multi-timestep training.

#### Licensing

CarbonSense is available under the CC-BY-4.0 license, meaning it can be shared, transformed, and used for any purpose given proper attribution. This is an extension of the same license for all three source networks, and MODIS data is provided under public domain. We feel that permissive licensing is essential in order to foster greater scientific interest in DDCFM.

## 4 The EcoPerceiver Architecture

In this section we present EcoPerceiver, a multimodal architecture for DDCFM. The SOTA for DDCFM are tabular methods, and we felt it would be appropriate to include a baseline model which demonstrates how deep learning concepts can be leveraged for this unique problem domain.

EcoPerceiver is based on the Perceiver architecture [perceiver], which cross attends a variable number of inputs onto a compact latent space, allowing for extreme input flexibility. Missing inputs are common in DDCFM due to coverage gaps, outlier values, or failing sensors. Rather than rely on gapfilling techniques, we chose this architecture for its robustness to missing inputs.

We also wanted a model which could ingest data from a varying time window. To our knowledge, this is the first DDCFM model to treat carbon dynamics as non-Markovian with respect to predictors. We feel this more accurately reflects biological processes, since a plant’s rate of photosynthesis may also depend on conditions hours or days into the past. Our ablation experiments in Appendix B.6 explore this idea further.

Figure: Figure 4: Overview of EcoPerceiver architecture.
Refer to caption: extracted/5649450/figures/EcoPerceiver_Overview.png

### 4.1 Data Ingestion

Small fluctuations in meteorological variables have the potential to influence ecological processes. For this reason, it is important that the model is sensitive to small changes in input values. We take inspiration from NeRF’s Fourier encoding [nerf] which maps continuous values to higher dimensional space with high frequency sinusoids. Each variable $x$ is therefore encoded as:

$$ $\mathit{f}(x;K)=\Bigl{[}\,\dots\,,\,\sin(2^{k}\pi x)\,,\,\cos(2^{k}\pi x)\,,\, \dots\Big{|}\,k\in[0,K)\Bigr{]},$ (1) $$

where $K$ is a hyperparameter indicating the maximum sampling frequency. Higher values of $K$ allow the model to better discern between small differences in input. With our normalization scheme, cyclic variables at values of $-1$ and $1$ will produce identical vectors under this transform as intended. Each input is given a learned embedding specific to the underlying variable. This is then concatenated with the Fourier encoding to produce a final input vector of length $H_{i}=2K+l_{emb}$ for each input. Figure 5 depicts this encoding procedure.

Figure: Figure 5: Fourier input encoding for EcoPerceiver. Spectral inputs are similarly processed, but with a linear projection instead of Fourier encoding.
Refer to caption: extracted/5649450/figures/EcoPerceiver_Fourier.png

Geospatial data is similarly processed, except that each spectral band is flattened into a vector of length $2K$ via linear transformation instead of Fourier encoding. Each band is then given an embedding to produce a vector of length $H_{i}$. We then stack the encoded data to create a matrix of shape $(T,V_{t},H_{i})$ where $V_{t}$ is the sum of the total number of variables and $T$ is the context window length.

To account for missing values and timesteps without geospatial data, EcoPerceiver takes a modality mask indicating which values to ignore in the cross attentive layers. This modality mask doubles as a dropout mechanism which reduces over-reliance on a small subset of variables (observational dropout).

### 4.2 Windowed Cross Attention

We build on Perceiver’s core concept of cross-attending data onto a compact latent space for processing. EcoPerceiver uses a latent space of size $(T,H_{l})$ where $H_{l}$ is the latent hidden dimension. Each token extracts input data via cross-attention from its respective timestep’s observations. Intuitively, each token may represent the ecosystem’s "state" at a particular time, and ingests observations from that timestep.

This operation would be inefficient with vanilla cross attention, as each token would use at most $\frac{1}{T}$ observations with an attention mask removing the rest. We take inspiration from SWin Transformer [swin] and instead push the context window dimension ($T$) into the batch dimension for both input and latent space. The resulting Windowed Cross Attention (WCA) has a runtime of $O(T\cdot V_{t}\cdot H_{a})$ where $H_{a}$ is the projection dimension.

In keeping with Perceiver, each WCA operation is followed by a self-attention operation in the latent space. We pass a causal mask to the self attention so each timestep is conditioned only on past and present observations. We refer to this as Causal Self Attention (CSA). This constitutes a full WCA block as shown in Figure 6.

WCA blocks are repeated $N$ times, repeatedly cross attending inputs onto the latent space with self attention in between. We then apply a series of $M$ CSA operations and use the final timestep’s token as input to a linear layer. The output of this is the estimate of the desired carbon flux.

Figure: Figure 6: Windowed Cross Attention (WCA) block. Encoded inputs are cross-attended onto the latent space with a modality mask to indicate missing values. The time dimension is pushed into the batch dimension, so this operation is performed $B\cdot T$ times per batch. Causal self attention proceeds as normal.
Refer to caption: extracted/5649450/figures/EcoPerceiver_WCA.png

## 5 Experiments

**Table 1: Train / test split distribution by IGBP type**
| IGBP | Train | Test |
| --- | --- | --- |
| WET | 42 | 5 |
| DNF | 0 | 1 |
| WSA | 8 | 2 |
| EBF | 10 | 3 |
| ENF | 80 | 5 |
| DBF | 42 | 5 |
| CRO | 44 | 5 |
| MF | 10 | 3 |
| GRA | 59 | 5 |
| OSH | 25 | 5 |
| CVM | 1 | 1 |
| CSH | 5 | 2 |
| SAV | 11 | 3 |
| SNO | 0 | 1 |
| WAT | 1 | 1 |

In this section, we present a series of experiments using CarbonSense. Our analysis includes two models: an EcoPerceiver model as introduced in 4, and an XGBoost model [XGBoost] implemented to mimic current SOTA approaches in DDCFM [xbase]. We demonstrate the power of tailored deep architectures for DDCFM and establish a robust baseline that will support and inspire future research efforts. We also present guidelines for running similar experiments and presenting results.

### 5.1 Data Splitting

EC stations were randomly divided into train and test sets based on their IGBP ecosystem classification (IGBP type). We mostly refer to IGBP types by their acronyms for brevity, but a list of IGBP types with expanded names is found in Appendix A.

Despite the imbalance of IGBP types in CarbonSense, we wanted the test set to be as balanced as possible. The number of sites in the test set were determined with $\text{min}(5,\lceil 0.2*\text{num_sites}\rceil)$. This provided between 1 and 5 sites per IGBP type as shown in Table 1. As a consequence, SNO and DNF provide information about zero-shot generalization, and CVM and WAT about one-shot generalization.

The main focus of this research is on models trained across different ecosystem types, as opposed to other research studying DDCFM within a single type (ex [nw_methane, bo_tun_co2, subtrop_wet]). However, the partitioned nature of CarbonSense makes it flexible for different modelling objectives, such as individual ecosystems. We give an example of this in Appendix B.7.

### 5.2 Model Configurations

EcoPerceiver experiments were each run on 4 A100 GPUs using dataset parallelization. The train sites were further divided into train and validation splits at a 0.8 / 0.2 ratio respectively. We used the AdamW optimizer [adamw] with a learning rate of 8e-5 and a batch size of 4096. A single warm-up epoch was performed followed by a cosine annealing learning rate schedule over 20 epochs, but all experiments converged between 6 and 13 epochs.

XGBoost experiments were run on CPU nodes. We designed our XGBoost experiments to resemble [xbase] as closely as possible. This allows us to compare EcoPerceiver’s relative performance against a stand-in for the SOTA. Appendix B provides a detailed description of XGBoost data preprocessing, hyperparameters for all models, ablation studies, and more.

### 5.3 Metrics

The most commonly used performance metric in DDCFM (and any form of hydrologic modelling) is the Nash-Sutcliffe Modelling Efficiency (NSE) [nse], described with the following equation:

$$ $\text{NSE}(x)=1-\frac{\sum_{i}(y_{i}-x_{i})^{2}}{\sum_{i}(y_{i}-\bar{y})^{2}}$ (2) $$

where a value of $1$ represents perfect correlation between $x$ and $y$. A value of 0 0 represents the same performance as guessing the mean of $y$, and negative values indicate that the mean of $y$ is a better predictor than $x$. NSE is more challenging to use directly as a loss function since it would require the dataloader to also provide the mean of the data for a given site or ecosystem type. We therefore use mean squared error (MSE) as a loss function and report its root (RMSE) as well as NSE in our results.

**Table 2: NSE and RMSE by model and IGBP type, aggregate mean across 10 seeds. See Appendix B.5 for box plots of performance.**
|  | XGBoost | EcoPerceiver |  |  |
| --- | --- | --- | --- | --- |
| IGBP | NSE | RMSE | NSE | RMSE |
| CRO | 0.8066 | 3.2381 | 0.8482 | 2.8677 |
| CSH | 0.7510 | 1.5224 | 0.7670 | 1.4709 |
| CVM | 0.5277 | 5.5157 | 0.5763 | 5.2236 |
| DBF | 0.7250 | 4.0959 | 0.7547 | 3.8678 |
| DNF | 0.2803 | 4.0974 | 0.4336 | 3.6322 |
| EBF | 0.7966 | 4.6050 | 0.8220 | 4.3070 |
| ENF | 0.7765 | 2.8141 | 0.7694 | 2.8579 |
| GRA | 0.7461 | 3.2487 | 0.7967 | 2.9059 |
| MF | 0.7559 | 3.8633 | 0.7717 | 3.7361 |
| OSH | 0.5451 | 1.8796 | 0.6060 | 1.7475 |
| SAV | 0.5802 | 1.6514 | 0.7368 | 1.3070 |
| SNO | -0.0370 | 1.4291 | 0.2898 | 1.1816 |
| WAT | -11.0524 | 3.1838 | -14.4010 | 3.5802 |
| WET | 0.4530 | 2.2073 | 0.4137 | 2.2830 |
| WSA | 0.6132 | 2.5153 | 0.6267 | 2.4706 |

Data balance in results reporting is also a concern. At first glance, the data appears very imbalanced with respect to ecosystem prevalence. CarbonSense contains 64 grasslands (GRA) sites, but only 1 deciduous needleleaf forest (DNF). While this is an extreme gap, ecosystems are more diverse than IGBP types can capture; grasslands in central North America will differ significantly from those in Europe or Asia. Still, it is prudent to separate results by IGBP type to give a better picture of model performance.

### 5.4 Results

We ran 10 experiments with each model using different seeds to get an accurate picture of performance. Table 2 shows the mean performance on the test set for each model over every IGBP type, and we give an example of model output visualization in Figure 7.

EcoPerceiver outperformed the XGBoost baseline across most IGBP types. XGBoost performed better in permanent wetlands (WET), water bodies (WAT), and evergreen needleleaf forests (ENF) by a slim margin. These are the three key ecosystems of the boreal biome, indicating XGBoost retains an advantage in that region. WAT is particularly far out of distribution (EC stations are mounted above lakes) and both models did worse than predicting the mean, indicating this could be an issue with data quantity.

Figure: Figure 7: Example NEE measurements and model predictions from an Australian cropland site. Qualitative analysis of model outputs is important in DDCFM, and is discussed in Appendix B.8.
Refer to caption: extracted/5649450/figures/qualitative_AU.png

Besides WAT, EcoPerceiver did substantially better on zero- and one-shot tests. The NSE differential between the two models was $+0.0486$ on CVM, $+0.1533$ on DNF, and $+0.3268$ on SNO in favour of EcoPerceiver. High predictive power on out-of-distribution sites like this is especially important for researchers wishing to run inference on global data, where each grid cell is likely to be quite different from any of the training sites.

Our results also underline the importance of using NSE as the main metric for evaluation. Consider the models’ performance on open savannas (SAV). XGBoost had an RMSE of 1.6514 versus EcoPerceiver’s 1.3070. The magnitude of difference is small, and both values are significantly lower than the RMSE of many other IGBP types. But XGBoost had an NSE of 0.5802 while EcoPerceiver achieved 0.7368 which is a significant improvement. Different ecosystems have different variances in their carbon fluxes, and NSE accounts for this by dividing the performance by the variance of the target.

## 6 Conclusion

Our work establishes a foothold for deep learning in the field of DDCFM. We provide an open source ML-ready dataset, CarbonSense, using EC station data and geospatial data from a variety of ecosystems. DDCFM is inherently a multimodal task, and our baseline model EcoPerceiver demonstrates that recent advances in multimodal deep learning can unlock substantial performance gains in this domain. We implore more deep learning researchers to help develop this field further, because the potential of artificial intelligence to improve our world can only be realized if we actively apply it to solve pressing social and environmental issues.

#### Future Work

Our work leaves much to be explored in both dataset and model development. CarbonSense can be expanded as more EC station data is incorporated into regional network releases. Additional geospatial data could be added in the form of global soil products or higher resolution satellite imagery. Future models may work to address the shortcomings of EcoPerceiver in the boreal ecosystems, or incorporate more sophisticated fusion techniques like the use of convolutional layers in image ingestion.

#### Limitations

Data diversity remains the biggest challenge in this domain. CarbonSense has a data imbalance in not only ecosystem types, but geographic location. Africa, Central Asia, and South America are all underrepresented. While these areas contain many EC stations, most do not have readily available data in ONEFlux format, presenting a barrier to their inclusion in CarbonSense. Researchers should be aware of the consequences of developing models with imbalanced data, including poor performance in underrepresented areas.

## Checklist

- 1.
For all authors…
(a)
Do the main claims made in the abstract and introduction accurately reflect the paper’s contributions and scope?
[Yes]
(b)
Did you describe the limitations of your work?
[Yes] See 6
(c)
Did you discuss any potential negative societal impacts of your work?
[Yes] Our limitations cover this
(d)
Have you read the ethics review guidelines and ensured that your paper conforms to them?
[Yes] There is no PII in our dataset, and the applications are largely non-commercial.
- 2.
If you are including theoretical results…
(a)
Did you state the full set of assumptions of all theoretical results?
[N/A]
(b)
Did you include complete proofs of all theoretical results?
[N/A]
- 3.
If you ran experiments (e.g. for benchmarks)…
(a)
Did you include the code, data, and instructions needed to reproduce the main experimental results (either in the supplemental material or as a URL)?
[Yes] See supplemental material
(b)
Did you specify all the training details (e.g., data splits, hyperparameters, how they were chosen)?
[Yes] Briefly discussed in section 5, expanded upon in section B
(c)
Did you report error bars (e.g., with respect to the random seed after running experiments multiple times)?
[Yes] See Appendix B.5, Figures 8 and 9
(d)
Did you include the total amount of compute and the type of resources used (e.g., type of GPUs, internal cluster, or cloud provider)?
[Yes] See section 5
- 4.
If you are using existing assets (e.g., code, data, models) or curating/releasing new assets…
(a)
If your work uses existing assets, did you cite the creators?
[Yes] See section 3.1 for data attributions. Appendix contains full EC site list.
(b)
Did you mention the license of the assets?
[Yes] Section 3.3 has info on licensing of EC data and MODIS data
(c)
Did you include any new assets either in the supplemental material or as a URL?
[Yes] See supplementary material
(d)
Did you discuss whether and how consent was obtained from people whose data you’re using/curating?
[N/A] Covered under licensing
(e)
Did you discuss whether the data you are using/curating contains personally identifiable information or offensive content?
[N/A] Our dataset contains no PII.
- 5.
If you used crowdsourcing or conducted research with human subjects…
(a)
Did you include the full text of instructions given to participants and screenshots, if applicable?
[N/A]
(b)
Did you describe any potential participant risks, with links to Institutional Review Board (IRB) approvals, if applicable?
[N/A]
(c)
Did you include the estimated hourly wage paid to participants and the total amount spent on participant compensation?
[N/A]

## Appendix A Eddy Covariance Site Details

Here we provide an exhaustive list of EC sites used in CarbonSense along with their most recent publication. As per Ameriflux’s data policy, each site has an individual citation with DOI; other networks simply required citation of the unified release. It would be impractical to have each site’s full description in these tables, but the first two letters of each code represent the country where the site is located (ex. "DE" for Germany).

We also enumerate all meteorological predictors and targets in table 6.

**Table 3: EC Sites**
| Croplands (CRO) |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- |
| BE-Lon [ICOS_2023] | CA-ER1 [CA-ER1] | CA-MA1 [CA-MA1] | CA-MA2 [CA-MA2] | CH-Oe2 [ICOS_WW] | CZ-KrP [ICOS_WW] |
| DE-Geb [ICOS_2023] | DE-Kli [ICOS_2023] | DE-RuS [ICOS_2023] | DE-Seh [FLUXNET] | DK-Fou [FLUXNET] | DK-Vng [ICOS_2023] |
| FI-Jok [FLUXNET] | FI-Qvd [ICOS_WW] | FR-Aur [ICOS_2023] | FR-EM2 [ICOS_2023] | FR-Gri [ICOS_2023] | FR-Lam [ICOS_2023] |
| IT-BCi [ICOS_WW] | IT-CA2 [FLUXNET] | US-A74 [US-A74] | US-ARM [US-ARM] | US-Bi1 [US-Bi1] | US-Bi2 [US-Bi2] |
| US-CF1 [US-CF1] | US-CF2 [US-CF2] | US-CF3 [US-CF3] | US-CF4 [US-CF4] | US-CRT [US-CRT] | US-CS1 [US-CS1] |
| US-CS3 [US-CS3] | US-CS4 [US-CS4] | US-DFC [US-DFC] | US-DS3 [US-DS3] | US-Lin [US-Lin] | US-Mo1 [US-Mo1] |
| US-Mo3 [US-Mo3] | US-Ne1 [US-Ne1] | US-RGA [US-RGA] | US-RGB [US-RGB] | US-RGo [US-RGo] | US-Ro1 [US-Ro1] |
| US-Ro2 [US-Ro2] | US-Ro5 [US-Ro5] | US-Ro6 [US-Ro6] | US-Tw2 [US-Tw2] | US-Tw3 [US-Tw3] | US-Twt [FLUXNET] |
| US-xSL [US-xSL] |  |  |  |  |  |
| Closed Shrublands (CSH) |  |  |  |  |  |
| BE-Maa [ICOS_2023] | IT-Noe [FLUXNET] | US-KS2 [US-KS2] | US-Rls [US-Rls] | US-Rms [US-Rms] | US-Rwe [US-Rwe] |
| US-Rwf [US-Rwf] |  |  |  |  |  |
| Cropland/Natural Vegetation Mosaics (CVM) |  |  |  |  |  |
| US-HWB [US-HWB] | US-xDS [US-xDS] |  |  |  |  |
| Deciduous Broadleaf Forests (DBF) |  |  |  |  |  |
| AU-Lox [FLUXNET] | BE-Lcr [ICOS_2023] | CA-Cbo [CA-Cbo] | CA-Oas [FLUXNET] | CA-TPD [CA-TPD] | CZ-Lnz [ICOS_2023] |
| CZ-Stn [ICOS_WW] | DE-Hai [ICOS_2023] | DE-Hzd [ICOS_WW] | DE-Lnf [FLUXNET] | DK-Sor [ICOS_2023] | FR-Fon [ICOS_2023] |
| FR-Hes [ICOS_2023] | IT-BFt [ICOS_2023] | IT-CA1 [FLUXNET] | IT-CA3 [FLUXNET] | IT-Col [FLUXNET] | IT-Isp [FLUXNET] |
| IT-PT1 [FLUXNET] | IT-Ro1 [FLUXNET] | IT-Ro2 [FLUXNET] | JP-MBF [FLUXNET] | MX-Tes [MX-Tes] | PA-SPn [FLUXNET] |
| US-Bar [US-Bar] | US-Ha1 [US-Ha1] | US-MMS [US-MMS] | US-MOz [US-MOz] | US-Oho [US-Oho] | US-Rpf [US-Rpf] |
| US-UMB [US-UMB] | US-UMd [US-UMd] | US-WCr [FLUXNET] | US-Wi1 [US-Wi1] | US-Wi3 [US-Wi3] | US-Wi8 [US-Wi8] |
| US-xBL [US-xBL] | US-xBR [US-xBR] | US-xGR [US-xGR] | US-xHA [US-xHA] | US-xML [US-xML] | US-xSC [US-xSC] |
| US-xSE [US-xSE] | US-xST [US-xST] | US-xTR [US-xTR] | US-xUK [US-xUK] | ZM-Mon [FLUXNET] |  |
| Deciduous Needleleaf Forests (DNF) |  |  |  |  |  |
| BR-CST [BR-CST] |  |  |  |  |  |
| Evergreen Broadleaf Forests (EBF) |  |  |  |  |  |
| AU-Cum [FLUXNET] | AU-Rob [FLUXNET] | AU-Wac [FLUXNET] | AU-Whr [FLUXNET] | AU-Wom [FLUXNET] | BR-Sa3 [FLUXNET] |
| CN-Din [FLUXNET] | FR-Pue [ICOS_2023] | GF-Guy [ICOS_2023] | GH-Ank [FLUXNET] | IT-Cp2 [ICOS_2023] | IT-Cpz [FLUXNET] |
| MY-PSO [FLUXNET] |  |  |  |  |  |

**Table 4: EC Sites (cont’d)**
| Evergreen Needleleaf Forests (ENF) |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- |
| AR-Vir [FLUXNET] | CA-Ca1 [CA-Ca1] | CA-Ca2 [CA-Ca2] | CA-LP1 [CA-LP1] | CA-Man [FLUXNET] | CA-NS1 [CA-NS1] |
| CA-NS2 [CA-NS2] | CA-NS3 [CA-NS3] | CA-NS4 [CA-NS4] | CA-NS5 [CA-NS5] | CA-Obs [FLUXNET] | CA-Qfo [CA-Qfo] |
| CA-SF1 [CA-SF1] | CA-SF2 [CA-SF2] | CA-TP1 [CA-TP1] | CA-TP2 [FLUXNET] | CA-TP3 [CA-TP3] | CA-TP4 [FLUXNET] |
| CH-Dav [ICOS_2023] | CN-Qia [FLUXNET] | CZ-BK1 [ICOS_2023] | CZ-RAJ [ICOS_WW] | DE-Lkb [FLUXNET] | DE-Msr [ICOS_2023] |
| DE-Obe [ICOS_WW] | DE-RuW [ICOS_2023] | DE-Tha [ICOS_2023] | DK-Gds [ICOS_2023] | FI-Hyy [ICOS_2023] | FI-Ken [ICOS_2023] |
| FI-Let [ICOS_2023] | FI-Sod [FLUXNET] | FI-Var [ICOS_2023] | FR-Bil [ICOS_2023] | FR-FBn [ICOS_WW] | FR-LBr [FLUXNET] |
| IL-Yat [ICOS_WW] | IT-La2 [FLUXNET] | IT-Lav [ICOS_WW] | IT-Ren [ICOS_2023] | IT-SR2 [ICOS_2023] | IT-SRo [FLUXNET] |
| NL-Loo [FLUXNET] | RU-Fy2 [ICOS_WW] | RU-Fyo [ICOS_WW] | SE-Htm [ICOS_2023] | SE-Nor [ICOS_2023] | SE-Ros [ICOS_WW] |
| SE-Svb [ICOS_2023] | US-BZS [US-BZS] | US-Blo [FLUXNET] | US-CS2 [US-CS2] | US-Fmf [US-Fmf] | US-Fuf [US-Fuf] |
| US-GBT [FLUXNET] | US-GLE [US-GLE] | US-HB2 [US-HB2] | US-HB3 [US-HB3] | US-Ho2 [US-Ho2] | US-KS1 [US-KS1] |
| US-Me1 [US-Me1] | US-Me2 [US-Me2] | US-Me3 [US-Me3] | US-Me4 [FLUXNET] | US-Me5 [FLUXNET] | US-Me6 [US-Me6] |
| US-NC1 [US-NC1] | US-NC3 [US-NC3] | US-NR1 [US-NR1] | US-Prr [FLUXNET] | US-Vcm [US-Vcm] | US-Vcp [US-Vcp] |
| US-Wi0 [US-Wi0] | US-Wi2 [FLUXNET] | US-Wi4 [US-Wi4] | US-Wi5 [US-Wi5] | US-Wi9 [US-Wi9] | US-xAB [US-xAB] |
| US-xBN [US-xBN] | US-xDJ [US-xDJ] | US-xJE [US-xJE] | US-xRM [US-xRM] | US-xSB [US-xSB] | US-xTA [US-xTA] |
| US-xYE [US-xYE] |  |  |  |  |  |
| Grasslands (GRA) |  |  |  |  |  |
| AT-Neu [FLUXNET] | AU-DaP [FLUXNET] | AU-Emr [FLUXNET] | AU-Rig [FLUXNET] | AU-Stp [FLUXNET] | AU-TTE [FLUXNET] |
| AU-Ync [FLUXNET] | BE-Dor [ICOS_WW] | CA-MA3 [CA-MA3] | CH-Aws [ICOS_WW] | CH-Cha [ICOS_WW] | CH-Fru [ICOS_WW] |
| CH-Oe1 [FLUXNET] | CN-Cng [FLUXNET] | CN-Dan [FLUXNET] | CN-Du2 [FLUXNET] | CN-Du3 [FLUXNET] | CN-HaM [FLUXNET] |
| CN-Sw2 [FLUXNET] | CZ-BK2 [FLUXNET] | DE-Gri [ICOS_2023] | DE-RuR [ICOS_2023] | DK-Eng [FLUXNET] | FR-Mej [ICOS_2023] |
| FR-Tou [ICOS_2023] | GL-ZaH [ICOS_2023] | IT-MBo [ICOS_WW] | IT-Niv [ICOS_2023] | IT-Tor [ICOS_2023] | NL-Hor [FLUXNET] |
| PA-SPs [FLUXNET] | RU-Ha1 [FLUXNET] | SE-Deg [ICOS_2023] | US-A32 [US-A32] | US-AR1 [US-AR1] | US-AR2 [US-AR2] |
| US-ARb [US-ARb] | US-ARc [US-ARc] | US-BRG [US-BRG] | US-Cop [US-Cop] | US-Goo [FLUXNET] | US-Hn2 [US-Hn2] |
| US-IB2 [FLUXNET] | US-KFS [US-KFS] | US-KLS [US-KLS] | US-Kon [US-Kon] | US-Mo2 [US-Mo2] | US-NGC [US-NGC] |
| US-ONA [US-ONA] | US-Ro4 [US-Ro4] | US-SRG [US-SRG] | US-Seg [US-Seg] | US-Sne [US-Sne] | US-Snf [US-Snf] |
| US-Var [US-Var] | US-Wkg [US-Wkg] | US-xAE [US-xAE] | US-xCL [US-xCL] | US-xCP [US-xCP] | US-xDC [US-xDC] |
| US-xKA [US-xKA] | US-xKZ [US-xKZ] | US-xNG [US-xNG] | US-xWD [US-xWD] |  |  |
| Mixed Forests (MF) |  |  |  |  |  |
| AR-SLu [FLUXNET] | BE-Bra [ICOS_2023] | BE-Vie [ICOS_2023] | CA-Gro [CA-Gro] | CD-Ygb [ICOS_2023] | CH-Lae [ICOS_WW] |
| CN-Cha [FLUXNET] | DE-Har [ICOS_2023] | DE-HoH [ICOS_2023] | JP-SMF [FLUXNET] | US-Syv [US-Syv] | US-xDL [US-xDL] |
| US-xUN [US-xUN] |  |  |  |  |  |
| Open Shrublands (OSH) |  |  |  |  |  |
| CA-NS6 [CA-NS6] | CA-NS7 [Ameriflux] | CA-SF3 [FLUXNET] | ES-Agu [ICOS_WW] | ES-Amo [FLUXNET] | ES-LJu [ICOS_WW] |
| ES-LgS [FLUXNET] | ES-Ln2 [FLUXNET] | GL-Dsk [ICOS_2023] | IT-Lsn [ICOS_2023] | RU-Cok [FLUXNET] | US-EML [US-EML] |
| US-Fcr [US-Fcr] | US-Hn3 [US-Hn3] | US-ICh [US-ICh] | US-ICt [US-ICt] | US-Jo1 [US-Jo1] | US-Jo2 [US-Jo2] |
| US-Rws [US-Rws] | US-SRC [US-SRC] | US-Ses [US-Ses] | US-Sta [FLUXNET] | US-Whs [US-Whs] | US-Wi6 [US-Wi6] |
| US-Wi7 [US-Wi7] | US-xHE [US-xHE] | US-xJR [US-xJR] | US-xMB [US-xMB] | US-xNQ [US-xNQ] | US-xSR [US-xSR] |
| Savannas (SAV) |  |  |  |  |  |
| AU-ASM [FLUXNET] | AU-Cpr [FLUXNET] | AU-DaS [FLUXNET] | AU-Dry [FLUXNET] | AU-GWW [FLUXNET] | CG-Tch [FLUXNET] |
| ES-Abr [ICOS_WW] | ES-LM1 [ICOS_WW] | ES-LM2 [ICOS_WW] | SD-Dem [FLUXNET] | SN-Dhr [FLUXNET] | US-LS2 [US-LS2] |
| US-Wjs [US-Wjs] | US-xSJ [US-xSJ] |  |  |  |  |
| Snow and Ice (SNO) |  |  |  |  |  |
| US-NGB [US-NGB] |  |  |  |  |  |

**Table 5: EC Sites (cont’d)**
| Water Bodies (WAT) |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- |
| US-Pnp [US-Pnp] | US-UM3 [US-UM3] |  |  |  |  |
| Permanent Wetlands (WET) |  |  |  |  |  |
| AR-TF1 [AR-TF1] | AU-Fog [FLUXNET] | CA-ARB [CA-ARB] | CA-ARF [CA-ARF] | CA-CF1 [CA-CF1] | CA-DB2 [CA-DB2] |
| CA-DBB [CA-DBB] | CN-Ha2 [FLUXNET] | CZ-wet [ICOS_2023] | DE-Akm [ICOS_WW] | DE-SfN [FLUXNET] | DE-Spw [FLUXNET] |
| DE-Zrk [FLUXNET] | DK-Skj [ICOS_2023] | FI-Lom [FLUXNET] | FI-Sii [ICOS_2023] | FR-LGt [ICOS_2023] | GL-NuF [ICOS_2023] |
| GL-ZaF [FLUXNET] | IE-Cra [ICOS_WW] | PE-QFR [PE-QFR] | RU-Che [FLUXNET] | SE-Sto [ICOS_2023] | SJ-Adv [FLUXNET] |
| UK-AMo [ICOS_2023] | US-ALQ [US-ALQ] | US-Atq [FLUXNET] | US-BZB [US-BZB] | US-BZF [US-BZF] | US-BZo [US-BZo] |
| US-EDN [US-EDN] | US-HB1 [US-HB1] | US-ICs [US-ICs] | US-Ivo [FLUXNET] | US-KS3 [US-KS3] | US-Los [FLUXNET] |
| US-Myb [US-Myb] | US-NC4 [US-NC4] | US-ORv [US-ORv] | US-OWC [US-OWC] | US-Srr [US-Srr] | US-StJ [US-StJ] |
| US-Tw1 [US-Tw1] | US-Tw4 [US-Tw4] | US-Tw5 [US-Tw5] | US-WPT [US-WPT] | US-xBA [US-xBA] |  |
| Woody Savannas (WSA) |  |  |  |  |  |
| AU-Ade [FLUXNET] | AU-Gin [FLUXNET] | AU-How [FLUXNET] | AU-RDF [FLUXNET] | BR-Npw [BR-Npw] | ES-Cnd [ICOS_WW] |

**Table 6: Meteorological Variables in CarbonSense**
| Code | Description | Units |
| --- | --- | --- |
| Predictors |  |  |
| TA_F | Air temperature | deg C |
| PA_F | Atmospheric pressure | kPa |
| P_F | Precipitation | mm |
| RH | Relative humidity | % |
| VPD_F | Vapor pressure deficit | hPa |
| WS_F | Wind speed | m s^-1 |
| USTAR | Wind shear | m s^-1 |
| WD | Wind direction | decimal degrees |
| NETRAD | Net radiation | W m^-2 |
| SW_IN_F | Incoming shortwave radiation | W m^-2 |
| SW_OUT | Outgoing shortwave radiation | W m^-2 |
| SW_DIF | Incoming diffuse shortwave radiation | W m^-2 |
| LW_IN_F | Incoming longwave radiation | W m^-2 |
| LW_OUT | Outgoing longwave radiation | W m^-2 |
| PPFD_IN | Incoming photosynthetic photon flux density | µmol Photon m^-2 s^-1 |
| PPFD_OUT | Outgoing photosynthetic photon flux density | µmol Photon m^-2 s^-1 |
| PPFD_DIF | Incoming diffuse photosynthetic photon flux density | µmol Photon m^-2 s^-1 |
| CO2_F_MDS | CO2 atmospheric concentration | µmol CO2 mol^-1 |
| G_F_MDS | Soil heat flux | W m^-2 |
| LE_F_MDS | Latent heat flux | W m^-2 |
| H_F_MDS | Sensible heat flux | W m^-2 |
| Targets |  |  |
| NEE_VUT_REF | Net Ecosystem Exchange (variable USTAR) | µmol CO2 m^-2 s^-1 |
| GPP_DT_VUT_REF | Gross Primary Production (daytime partitioning) | µmol CO2 m^-2 s^-1 |
| GPP_NT_VUT_REF | Gross Primary Production (nighttime partitioning) | µmol CO2 m^-2 s^-1 |
| RECO_DT_VUT_REF | Ecosystem Respiration (daytime partitioning) | µmol CO2 m^-2 s^-1 |
| RECO_NT_VUT_REF | Ecosystem Respiration (nighttime partitioning) | µmol CO2 m^-2 s^-1 |

## Appendix B Experiment Details

### B.1 Dataset Configuration

As part of the CarbonSense pipeline, we filter out poorly gapfilled values. Each variable in the EC data has a corresponding "quality check" (QC) flag indicating if it was directly measured, gap filled during the ONEFlux pipeline (with varying gap fill quality levels), or simply taken from ERA5 reanalysis products. The tolerance level can be configured during the CarbonSense normalization process, and we discuss this further in the supplementary material.

We chose to use a maximum QC flag of 1, indicating all values in the dataset were either directly measured, or gap filled with high confidence. We found this had the best trade-off of data quality and quantity, as setting the maximum QC flag to 0 (only directly measured values) reduced the dataset size by 55%, while including medium-confidence values only increased it by 9%.

The data split was randomized within each ecosystem type. We held out 20% or 5 sites for each type, whichever is lower. The remaining sites were divided 80/20 between training and validation sets for EcoPerceiver, while our XGBoost model used all the training data for a cross-validation procedure.

### B.2 EcoPerceiver Configuration

Hyperparameter tuning for EcoPerceiver was performed with our train and validation splits, and comprised the bulk of the experiment efforts. Where possible, we started with our best guesses and ran a pseudo-random search based on intuition. A true random search of the parameter space would have been extremely sparse given the available compute resources.

We set our latent hidden size to 128, our input embedding size to 16, and the number of Fourier encoding frequencies to 12. This gave a total input hidden size of 40. Our context window is 32, meaning our model sees the previous 32 hours of observations. We use 8 WCA blocks followed by 4 CSA blocks. We set our observational dropout at 0.3 and use causal masking in all self-attention blocks. In keeping with [perceiver], we employ weight sharing between all WCA blocks. With these hyperparameters our model weighs in at a very reasonable 988,633 parameters.

Heavier configurations were considered, but performance gains were minimal (see ablation studies) and the compute tradeoff made it impractical for anyone without multi-GPU cluster access to use the model. This is especially true for increasing the context window or latent hidden dimension.

### B.3 XGBoost Configuration

**Table 7: XGBoost Hyperparameters**
| Parameter | Value |
| --- | --- |
| learning_rate | 0.1 |
| alpha | 0.1 |
| gamma | 0.4 |
| lambda | 0.0 |
| max_depth | 9 |
| min_child_weight | 9 |
| n_estimators | 150 |
| subsample | 0.7 |
| scale_pos_weight | 0.5 |
| colsample_bytree | 0.7 |
| colsample_bylevel | 0.8 |

Hyperparameters were found by random search. We used the same train/test split as the EcoPerceiver experiment; the train set was used in a 5-fold cross validation framework with 50 iterations. Once hyperparameters were found, we retrained XGBoost on all training data before running inference on the test set. Table 7 details the parameterization of our final model.

Since XGBoost is a tabular algorithm, we prepared geospatial data in a similar fashion to XBASE [xbase]; each spectral band represents a single input value to the model. The value is obtained by taking a weighted average of pixels based on Euclidean distance from the center of the image. Missing pixels were removed from this process, and the weights of the remaining pixels were increased to accommodate for this. The code for this procedure is provided with CarbonSense.

### B.4 Reproducibility and Reliability

Both EcoPerceiver and XGBoost were trained with reproducibility in mind. Once optimal hyperparameters were found, we performed 10 experiments with each model in order to obtain a reliable measure of performance (inspired by [confidence]). Set seeds were provided to all frameworks utilizing RNG, and distributed dataloader workers were also seed-controlled to ensure full reproducibility of our results.

The seeds for our experiments were simple integer values (0, 10, 20, … , 90) and were provided for the final training runs after hyperparameters had already been chosen.

### B.5 Detailed Results

Here we take a closer look at the performance of our models across different IGBP types. Figure 8 and Figure 9 show box plots of our models’ test set performance using NSE and RMSE respectively, across all seeds. Note that the y-axis changes between each plot. We do this because the variance in model performance across different seeds was generally small, and charting all box plots on the same axis made the chart unreadable.

Figure: Figure 8: NSE scores of EcoPerceiver and XGBoost across different IGBP types. Each chart represents 10 experiments with different seeds. Whiskers indicate approximately $1.5$ x interquartile range.
Refer to caption: extracted/5649450/figures/nse_scores.png

As discussed in Section 5, EcoPerceiver performs better than the XGBoost model in 12 out of 15 IGBP types. In 1 of the 3 that XGBoost wins, both models do substantially worse than simply guessing the mean, which makes the results for WAT challenging to interpret. The other 2, ENF and WET, are not significantly better than EcoPerceiver’s performance and have mean NSE advantages of $+0071$ and $+0.0393$ respectively in favour of XGBoost. This could be explained by the nature of data splitting; once hyperparameters were obtained for XGBoost, it was able to train on the entirety of the train split, while EcoPerceiver still had to reserve 20% of the split for validation testing to measure convergence. Both ENF and WET had significant train set prevalence, so these represent IGBP types where XGBoost was most able to take advantage of additional data.

Imperfect hyperparameter selection could also account for the lack of consistent performance. While XGBoost is lightweight enough for a virtually exhaustive parameter search with cross validation, deep models have significantly higher experiment overhead. Due to compute limitations, we were limited in how thoroughly we could explore model configurations for EcoPerceiver.

Figure: Figure 9: RMSE scores of EcoPerceiver and XGBoost across different IGBP types. Each chart represents 10 experiments with different seeds. Whiskers indicate approximately $1.5$ x interquartile range.
Refer to caption: extracted/5649450/figures/rmse_scores.png

### B.6 Ablation Studies

Here we present ablation studies on EcoPerceiver. While we seek to provide a broad view of the impacts of our architectural decisions, note that running all these tests with a large number of seeds was computationally infeasible for us. The boxplots in this section instead represent scores across different IGBP types. We truncated the y axes to positive values due to the outlier IGBP (SNO) making the charts impossible to read.

Running only one seed means the uncertainty of these tests are high, but we felt it would still be beneficial to get an idea of the model’s ablated performance.

Figure: Figure 10: Effects of context window length on NSE (left) and RMSE (right) of test site inference for EcoPerceiver.
Refer to caption: extracted/5649450/figures/abl_context_nse.png

We first conduct an experiment to test the assumption that DDCFM benefits from ingesting data in a temporal context window. The results are shown in Figure 10. There is a clear performance advantage going from a context window of 8 hours to 16, and a small advantage going from 16 to 32. Anecdotally, this reflects our findings from early hyperparameter tuning experiments. Going from 32 to 64 did not meaningfully improve performance, but it did significantly increase our wall time and memory usage. We therefore used a context window of 32 for our main experiments.

Figure: Figure 11: Effects of causal masking and observational dropout on NSE (left) and RMSE (right) of test site inference for EcoPerceiver.
Refer to caption: extracted/5649450/figures/abl_other_nse.png

Figure 11 shows the effects of both causal masking and observational dropout in EcoPerceiver. We found observational dropout to have a small but notable improvement on test performance. Causal masking very slightly improved NSE but not RMSE, and we feel the uncertainty here makes it impossible to make any statements about its value. Nonetheless, it was kept in the final model since it does not impact wall time, does not appear to make results worse, but does align the model more closely with real-world ecological processes. By ensuring that carbon fluxes depend only on past meteorological conditions and not future ones, causal masking enhances the ecological validity of our model, even if its impact on performance metrics is minimal.

### B.7 Ecosystem-Specific DDCFM

**Table 8: EcoPerceiver performance on DBF sites when trained on only DBF data vs trained on all sites**
| Only DBF | All Sites |  |  |
| --- | --- | --- | --- |
| NSE | RMSE | NSE | RMSE |
| 0.7405 | 3.9782 | 0.7532 | 3.8806 |

DDCFM is not always performed at the global scale; many research teams have studied it in the context of specific regions and ecosystem types [nw_methane, fn_methane, subtrop_wet, dino_flux]. This use case is one of the reasons for CarbonSense’s partitioned structure. As a proof of concept, we ran a single experiment with EcoPerceiver where we use the same parameters and train/test split as our main experiment, but only include the DBF sites. We then compared the test set performance against our main model. Table 8 shows the results - our model trained on multiple ecosystem types had notably better performance despite a similar convergence time.

As with the ablation studies, we did not have the compute resources to do 10 seeds for every experiment variation - but it shows the flexibility of CarbonSense for different research scenarios. It also provides preliminary evidence that DDCFM with multimodal models may benefit from adding more training data even if it is relatively out of distribution.

### B.8 Qualitative Analysis

While error metrics are useful for assessing the aggregate performance of the model, we encourage researchers to inspect the model outputs in comparison to the observed data. As an example, consider Figures 12 and 13 below. Both of these were randomly selected 4-day stretches of data from their respective sites. Both models appear able to model GF-Guy very well, but not CA-LP1, and this may be counterintuitive at first glance. But there’s quite a bit going on here.

GF-Guy is an evergreen broadleaf forest in the tropics. This is not highly prevalent type in CarbonSense, but its carbon fluxes appear quite stable from day to day. We found that ecosystems with this interseasonal stability tend to be more easily modelled in our experiments, though this is not an easy metric to quantify. It should be noted that the y-axis has a much larger scale, so while the models appear close to the ground truth, they often have an error in excess of 5 µmol CO2 m^-2. This again highlights the importance of using NSE as an error metric - RMSE will unfairly punish highly active ecosystems like this due to higher natural variance in carbon fluxes.

CA-LP1 is an evergreen needleleaf forest in the temperate region, which is one of the best represented ecosystems in CarbonSense, yet both models struggle with it (despite low absolute error), especially in the winter. Reading into this site reveals it is a pine beetle-attacked forest [CA-LP1]; disturbances like these can be challenging to model as we discussed in 2. This gives future work in DDCFM a vector for potential improvement.

Figure: Figure 12: Hourly data and model results for GF-Guy, an evergreen broadleaf forest station in French Guiana.
Refer to caption: extracted/5649450/figures/qualitative_GF-Guy.png

Figure: Figure 13: Hourly data and model results for CA-LP1, a pine beetle-attacked evergreen needleleaf forest in northern British Columbia.
Refer to caption: extracted/5649450/figures/qualitative_CA-LP1.png

## Peer Reviews

confidence: 5
contribution: 2
initial_rating: 6
presentation: 3
questions: How does the Perceiver model compare to other advanced machine learning models in terms of performance? In addition, which component of EcoPerceiver affects performance the most? I think adding more machine learning model baselines and conducting ablation study would help determine the model's relative strengths and weaknesses.
soundness: 2
strengths: CarbonSense integrates diverse data modalities—measured carbon fluxes, meteorological predictors, and satellite imagery—across a wide array of ecosystems. Researchers can use this dataset as a standardized benchmark.
summary: This paper proposes a standardized dataset called CarbonSense, which is a dataset compiled from various sources. The compilation steps include fusing the data together on the same hourly scale, extracting relevant features, and doing min max normalization. Along with the dataset, the paper also proposes a data driven model based on Perceiver called EcoPerceiver. This proposed model uses transformer architecture to cross attend all input features. The paper also implemented a SOTA approach baseline and compared its performance on the proposed dataset with EcoPerceiver.
weaknesses: 1.The dataset was compiled from multiple sources with various modalities, which may introduce inconsistency or OOD samples when doing model training. Careful data analysis can be helpful
2. The experiment shows the proposed EcoPerceiver outperformed the current SOTA approach for most IGBP types especially WET, WAT, and ENF. However, the paper did not include an ablation study to showcase why the proposed model achieved this performance.
3.There is only one baseline compared and there is no model with single modalities.

---

confidence: 3
contribution: 3
initial_rating: 6
presentation: 4
questions: * Consider adding satellite date from Sentinel 2 and 2 or Landsat which are higher resilution for days available. These datasets are open for anyone to use.
* Is it possible to keep expanding the dataset in a systematic way by ingesting EC and MODIS data periodically?
soundness: 3
strengths: * Paper is well written and cohesive. It is easy to follow and understand even for non-experts in the field
* Adds a clear contribution to existing dataset in terms of scale and modalities added. This will definitely help progress in the field.
* Dataset will be open for anyone to use. This is important for it to make any impact.
summary: Authors present CarbonSense as a machine learding ready multimodal dataset for carbon flux modeling. The dataset includes meteorological variables, MODIS 81 pixels satellite observations, and eddy covariance of carbon fluxes from hundreds of locations globally, Authors, in addition to the proposed dataset, presented a baseline machine learning model to predict carbon fluxes. The model shows the power of the multimodality of the dataset to improve canbon flux modeling performance.
weaknesses: * The satellite imagery added is very low resolution wich limits it's potential usefulness. 
* The dataset does not include many observations outside developed countries. Nothing the authors can do sinse they leverage existing EC stations available.

---

confidence: 5
contribution: 3
initial_rating: 6
presentation: 3
questions: - The train/test splits are divided by station location, which avoids spatial autocorrelation issues. It seems there could be significant temporal autocorrelation within each split since there are many measurements from the same location. Is temporal autocorrelation a concern?

- What does the purple vector in Figure 4 represent?

- How do other deep learning models (existing models besides the new EcoPerceiver) perform on CarbonSense?
soundness: 3
strengths: - The benchmark has multimodal inputs, which helps fill a notable gap in multimodal benchmarks for remote sensing/geospatial ML. 
- The paper presents useful and approachable background about the carbon flux modeling problem.
- The benchmark code is designed to allow flexibility in reproducing and extending or modifying the dataset based on user needs.
- The benchmark has a permissive CC-BY license.
- The EcoPerceiver method is well motivated based on the domain-specific carbon flux modeling problem.
- Domain relevant metrics are used for evaluation.
summary: This paper presents a new benchmark dataset, Carbon Sense, for predicting carbon flux from geospatial and meteorological data. Two models are evaluated on the new benchmark: 1) an XGBoost model which emulates the SOTA method from prior work, and 2) the EcoPerceiver model proposed in this paper. Domain-relevant evaluation metrics of RMSE and NSE (Nash-Sutcliffe Modelling Efficiency) are reported for each model and broken down by ecosystem type, with statistical tests of significance of the differences in performance. EcoPerceiver significantly outperforms the XGBoost model, indicating there is room for improvement on the benchmark relative to the previous SOTA with more sophisticated/tailored ML approaches.
weaknesses: - The train/test splits are divided by station location, which avoids spatial autocorrelation issues. It seems there could be significant temporal autocorrelation within each split since there are many measurements from the same location. Is temporal autocorrelation a concern?
- The experiments only compared two models, XGBoost and EcoPerceiver. It would be useful to see additional models benchmarked (especially deep learning models) to get a sense of the variation in performance existing solutions on this benchmark.
- What does the purple vector in Figure 4 represent?

Meta-review: The paper presents an ML ready dataset for carbon flux modeling that includes multiple modalities (measure fluxes, satellite images, other predictors) making it a nice comprehensive dataset for use by the community. Further, they present a novel transformer model (based on the Perceiver architecture) to act as a baseline for this dataset and also show ablations regarding this model as well as comparisons to simple ML methods (linear regression, XGBoost, etc).

The main strength is the comprehensive dataset and all reviewers are in agreement regarding its utility for the community. The perceiver architecture is also well-motivated as a strong baseline to handle multiple modalities and missing data.
The main weakness is limited deep learning models used for evaluation of the dataset and a related limited analysis on the data itself (due to multiple modalities, missing data, data imbalance). While the second weakness is acknowledged partly by the authors in their limitation, an in-depth analysis on the effects of these could be useful - example, different DL models (conv-based, MLP-based, etc) may be more susceptible to this heterogeneity or be better choices and having them as part of the baselines may prove beneficial as well as an analysis as to why they are better/worse.

Decision: Accept (Poster)