diff --git a/README.md b/README.md index 1351e44..c6dd414 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/)) @@ -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. @@ -242,9 +240,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. -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). +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.