From 9fc61b63912d69f542642aae78dc2cd5b178d578 Mon Sep 17 00:00:00 2001 From: Licheng Liu <69484364+lichengl233@users.noreply.github.com> Date: Wed, 24 Sep 2025 16:10:31 -0500 Subject: [PATCH 1/4] Update README.md --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1351e44..f49babe 100644 --- a/README.md +++ b/README.md @@ -243,8 +243,9 @@ Models of KGMLag-CO2 and KGMLag-N2O were added to the model gallery of PyKGML so # Acknowledgement Funding sources for this research includes: 1. This research is part of [AI-LEAF: AI Institute for Land, Economy, Agriculture & Forestry](https://cse.umn.edu/aileaf) and is supported by USDA National Institute of Food and Agriculture (NIFA) and the National Science Foundation (NSF) National AI Research Institutes Competitive Award No. 2023-67021-39829. -2. The Forever Green Initiative of the University of Minnesota, using funds from the State of Minnesota Clean Water Fund provided by the Minnesota Department of Agriculture. -3. National Science Foundation: Signal in the Soil program (award No. 2034385). +2. National Science Foundation: Information and Intelligent Systems (award No. 2313174). +3. The Forever Green Initiative of the University of Minnesota, using funds from the State of Minnesota Clean Water Fund provided by the Minnesota Department of Agriculture. +4. National Science Foundation: Signal in the Soil program (award No. 2034385). # Contact Please contact the corresponding author Dr. Licheng Liu (lichengl@umn.edu) to provide your feedback. From e8a368b43e7c1262c9ab407444ac06a68477e567 Mon Sep 17 00:00:00 2001 From: Licheng Liu <69484364+lichengl233@users.noreply.github.com> Date: Wed, 24 Sep 2025 16:15:41 -0500 Subject: [PATCH 2/4] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f49babe..bd0d3d4 100644 --- a/README.md +++ b/README.md @@ -242,10 +242,12 @@ Models of KGMLag-CO2 and KGMLag-N2O were added to the model gallery of PyKGML so # Acknowledgement Funding sources for this research includes: -1. This research is part of [AI-LEAF: AI Institute for Land, Economy, Agriculture & Forestry](https://cse.umn.edu/aileaf) and is supported by USDA National Institute of Food and Agriculture (NIFA) and the National Science Foundation (NSF) National AI Research Institutes Competitive Award No. 2023-67021-39829. +1. This research is part of [AI-LEAF: AI Institute for Land, Economy, Agriculture & Forestry](https://cse.umn.edu/aileaf) and is supported by USDA National Institute of Food and Agriculture and the National Science Foundation National AI Research Institutes Competitive Award No. 2023-67021-39829. 2. National Science Foundation: Information and Intelligent Systems (award No. 2313174). 3. The Forever Green Initiative of the University of Minnesota, using funds from the State of Minnesota Clean Water Fund provided by the Minnesota Department of Agriculture. 4. National Science Foundation: Signal in the Soil program (award No. 2034385). +5. National Science Foundation: ESIIL (award No. 2153040), AI for Natural Methane working group +6. Department of Energy: Environmental System Science (award No. DE-SC0024360) # Contact Please contact the corresponding author Dr. Licheng Liu (lichengl@umn.edu) to provide your feedback. From 87ab1697511b140bb592d3cfc4cc908d0d860415 Mon Sep 17 00:00:00 2001 From: Licheng Liu <69484364+lichengl233@users.noreply.github.com> Date: Fri, 26 Sep 2025 13:28:55 -0500 Subject: [PATCH 3/4] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bd0d3d4..64e1db7 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ Each file is a serialized Python dictionary containing the following keys and va **Environment** We use Jupyter Notebook ([try it online or install locally](https://docs.jupyter.org/en/stable/start/)) for Python to example PyKGML usage on both cloud and local environments: - 1. **Google Colab** (recommended for new users): is a hosted Jupyter Notebook service that requires no setup to use and provides free access to computing resources including GPUs. To get started with Google Colab, please refer to [Colab's official tutorial](https://colab.research.google.com/). The Colab notebook on PyKGML demonstration is [Tutorial_CO2_Colab.ipynb](Tutorial_CO2_Colab.ipynb). + 1. **Google Colab** (recommended for new users): is a hosted Jupyter Notebook service that requires no setup to use and provides free access to computing resources including GPUs. To get started with Google Colab, please refer to [Colab's official tutorial](https://colab.research.google.com/). The Colab notebook on PyKGML demonstration is [Tutorial_CO2_Colab.ipynb](Tutorial_CO2_Colab.ipynb). ***Note: Remember to change the runtime type to include a "GPU" resource before running the code! 2. **Local** (or other cloud computing platform): The notebook on local PyKGML demonstration is [Tutorial_CO2_local.ipynb](Tutorial_CO2_local.ipynb). To use this notebook, The following applications and packages are required: - Python 3 ([download](https://www.python.org/downloads/)) From a8c75da73d560ea89903c20838c1d57428098684 Mon Sep 17 00:00:00 2001 From: Yufeng0412 Date: Thu, 2 Oct 2025 18:24:34 -0700 Subject: [PATCH 4/4] Update README --- README.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 64e1db7..c6dd414 100644 --- a/README.md +++ b/README.md @@ -150,7 +150,7 @@ We use Jupyter Notebook ([try it online or install locally](https://docs.jupyter # Create the model myKGML = Compiler.generate_model() -Details and example can be found in [unified_model_processing.ipynb](unified_model_processing.ipynb). +Details and example can be found in the tutorial, [Tutorial_CO2_Colab.ipynb](Tutorial_CO2_Colab.ipynb) or [Tutorial_CO2_local.ipynb](Tutorial_CO2_local.ipynb). # Benchmark dataset @@ -201,7 +201,7 @@ Two datasets were harmonized using the CO2 flux dataset from study 2 - Soil properties (6): bulk density (TBKDS), sand content (TSAND), silt content (TSILT), pH (TPH), cation exchange capacity (TCEC), soil organic carbon concetration (TSOC) - Management (3): N-fertilizer rate (FERTZR_N), planting day of year (PDOY), crop type (PLANTT). - Output variables (3): + Output variables (5): - N2O fluxes (N2O_FLUX), soil CO2 fluxes (CO2_FLUX), soil water content at 10 cm (WTR_3), soil ammonium concentration at 10 cm (NH4_3), soil nitrate concentration at 10 cm (NO3_3). * n2o_finetune_augment_data: @@ -211,12 +211,10 @@ Two datasets were harmonized using the CO2 flux dataset from study 2 - Data split: 5 chambers as the training data, and the other one as the testing data. Input variables (16): - - Meterological (7): solar radiation (RADN), max air T (TMAX_AIR), min air T (TMIN_AIR), max air humidity (HMAX_AIR), min air humidity (HMIN_AIR), wind speed (WIND), precipitation (PRECN). - - Soil properties (6): bulk density (TBKDS), sand content (TSAND), silt content (TSILT), pH (TPH), cation exchange capacity (TCEC), soil organic carbon concetration (TSOC) - - Management (3): N-fertilizer rate (FERTZR_N), planting day of year (PDOY), crop type (PLANTT). + - The same as n2o_pretrain_data. - Output variables (3): - - N2O fluxes (N2O_FLUX), soil CO2 fluxes (CO2_FLUX), soil water content at 10 cm (WTR_3), soil ammonium concentration at 10 cm (NH4_3), soil nitrate concentration at 10 cm (NO3_3). + Output variables (5): + - N2O fluxes (N2O_FLUX), soil CO2 fluxes (CO2_FLUX), soil water content at 10 cm (WTR_3), soil ammonium concentration at 10 cm (NH4_3), soil nitrate concentration at 10 cm (NO3_3). # PyKGML development In PyKGML, we functionize several strategies for incoporating domain knowledge into the development of a KGML model a user-friendly way. Those strategies were explored and summarized in the two references ([Liu et al. 2022](https://doi.org/10.5194/gmd-15-2839-2022), [2024](https://www.nature.com/articles/s41467-023-43860-5)): @@ -225,7 +223,7 @@ In PyKGML, we functionize several strategies for incoporating domain knowledge i 3. Hierarchical architecture design according to causal relationships. -PyKGML have realized loss function customization and model architecture design in a way to convert user's idea from an intuitive configuration script to a function or model using the loss function compiler or architecture compiler. Refer to [unified_model_processing.ipynb](unified_model_processing_v2.ipynb) for using examples. +PyKGML have realized loss function customization and model architecture design in a way to convert user's idea from an intuitive configuration script to a function or model using the loss function compiler or architecture compiler. Models of KGMLag-CO2 and KGMLag-N2O were added to the model gallery of PyKGML so users can adopt these previously tested architectures for training or fine-tuning. Please note that the KGMLag-CO2 and KGMLag-N2O models in PyKGML only include the final deployable architectures of the original models, and do not include the strategies involved in pretraining and fine-tuning steps to improve the model performances. Instead, we generalize the process of model pre-training and fine-tuning for all models included in the gallery.