shapda

Pytorch Code for our paper Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation

https://github.com/shl-shawn/shapda

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.3%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Pytorch Code for our paper Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation

Basic Info
  • Host: GitHub
  • Owner: shl-shawn
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 7.66 MB
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed 11 months ago
Metadata Files
Readme Citation

README.md

ShapDA

Code and dataset for our paper: Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation

Table of Contents

  1. About
  2. Data
  3. Installation
  4. Training and Evaluation
  5. Results
  6. Citation

🔍 About

alt text

Unsupervised Domain Adaptation in Lactic Acid Production: The source domain uses simple glucose (SG) while the target domain uses complex bio-waste hydrolysate (CW). Subplot (a) shows FTIR data for the source ($Xs$) and target ($Xt$), highlighting the domain shift. Subplot (b) presents ShapDA, which identifies domain-invariant features. A regression model trained on these features enhances target predictions ($\hat{y}_t$), mitigating the effects of domain shift.

🧪 Data

The dataset is available at Zenodo. The files should be extracted and placed in the dataset folder.

⚙️ Installation

To reproduce our results, please kindly create and use the following environment.

python git clone https://github.com/shl-shawn/ShapDA.git cd ShapDA conda create -n ShapDA python conda activate ShapDA pip install -r requirements.txt

🤖 Training and Evaluation

The following deep models can be executed with their default parameters. To run the training and testing scripts, ensure that the correct paths to the dataset, model weights, and save directory are specified (i.e., weight_path, dataset_dir and save_dir).

Domain Adversarial Neural Networks for Regression (DANN-R)

```python

Train

cd src/DANN-R python train.py

Test

cd src/DANN-R python test.py ```

Domain Adaptation Regression with GRAM matrices (DARE-GRAM)

```python

Train

cd src/DARE-GRAM python train.py

Test

cd src/DARE-GRAM python test.py ```

Deep Correlation Alignment for Regression (DeepCORAL-R)

```python

Train

cd src/DeepCORAL-R python train.py

Test

cd src/DeepCORAL-R python test.py ```

ShapDA

bash cd src/ShapDA - shapfs_glucose.ipynb: Implements the ShapDA method for predicting glucose concentration in both source and target domains. - shapfs_lacticacid.ipynb: Applies ShapDA to predict lactic acid concentration across source and target domains. - shapfs_combine.ipynb: Combines domain-invariant features for glucose and lactic acid to evaluate their impact on prediction accuracy.

📊 Results

Glucose prediction

DA Methods Source (SG) Target (CW)
R² ↑ RMSE [g/L] ↓ RMSEP [%] ↓ RPD ↑ R² ↑ RMSE [g/L] ↓ RMSEP [%] ↓ RPD ↑
No Adaptation 0.98 4.4 3.8 8.3 0.56 20.4 14.2 1.5
DeepCORAL-R 0.80 18.0 15.9 2.2 0.69 17.3 12.0 1.8
DANN-R 0.89 13.0 11.5 3.1 0.86 11.5 8.0 2.7
DARE-GRAM 0.98 5.0 4.5 8.0 0.92 8.7 6.0 3.6
ShapDA (ours) 0.98 4.3 3.7 8.5 0.96 5.8 4.0 5.4

Table 1: Unsupervised domain adaptation results for glucose prediction in source (SG) and target (CW) fermentations. Arrows indicate desired direction: ↑ (higher is better), ↓ (lower is better).

Lactic acid prediction

DA Methods Source (SG) Target (CW)
R² ↑ RMSE [g/L] ↓ RMSEP [%] ↓ RPD ↑ R² ↑ RMSE [g/L] ↓ RMSEP [%] ↓ RPD ↑
No Adaptation 0.99 3.3 3.9 9.0 0.79 9.4 10.6 2.2
DeepCORAL-R 0.95 6.1 6.9 4.6 0.82 8.4 9.5 2.4
DANN-R 0.88 9.5 10.8 3.9 0.83 8.2 9.2 2.5
DARE-GRAM 0.90 8.9 10.2 3.1 0.87 7.3 8.2 2.8
ShapDA (ours) 0.99 3.1 3.7 9.7 0.91 6.1 6.8 3.3

Table 2: Unsupervised domain adaptation results for lactic acid prediction from source (SG) to target (CW) fermentations. Arrows indicate desired direction: ↑ (higher is better), ↓ (lower is better).

📚 Citation

If you use our work or dataset in your work, please cite it as:

APA

Babor, M., Liu, S., Arefi, A., Olszewska-Widdrat, A., Sturm, B., Venus, J., & Höhne, M. M. (2024). Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation. Preprint submitted to Bioresource Technology. https://doi.org/10.2139/ssrn.5012080

BibTex

@article{Babor_Domain_2024, author = {Babor, Majharulislam and Liu, Shanghua and Arefi, Arman and Olszewska-Widdrat, Agata and Sturm, Barbara and Venus, Joachim and Höhne, Marina M.-C.}, doi = {10.2139/ssrn.5012080}, journal = {Preprint submitted to Bioresource Technology}, title = {{Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation}}, year = {2024}, url = {https://doi.org/10.2139/ssrn.5012080}}

🙏 Acknowledgement

  • DANN-R is developed from DANN.
  • DARE-GRAM is used as our codebase.
  • DeepCORAL-R is developed from DeepCORAL.

Owner

  • Login: shl-shawn
  • Kind: user

Citation (CITATION.cff)

title: "Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation"
version: 1.0.0
doi: 10.2139/ssrn.5012080
date-released: 2017-12-18
url: "http://dx.doi.org/10.2139/ssrn.5012080"
preferred-citation:
  type: article
  authors:
    - family-names: "Babor"
      given-names: "Majharulislam"
      orcid: "https://orcid.org/0000-0002-5440-7573"
    - family-names: "Liu"
      given-names: "Shanghua"
      orcid: "https://orcid.org/0009-0009-9855-9040"
    - family-names: "Arefi"
      given-names: "Arman"
      orcid: "https://scholar.google.com/citations?hl=en&user=gcRa6ZUAAAAJ"
    - family-names: "Olszewska-Widdrat"
      given-names: "Agata"
      orcid: "https://orcid.org/0000-0002-7843-6846"
    - family-names: "Sturm"
      given-names: "Barbara"
      orcid: "https://scholar.google.com/citations?user=o44XenAAAAAJ&hl=en&oi=ao"
    - family-names: "Venus"
      given-names: "Joachim"
      orcid: "https://orcid.org/0000-0001-7708-1783"
    - family-names: "Höhne"
      given-names: "Marina M.-C."
      orcid: "https://scholar.google.com/citations?hl=en&user=YwdAiikAAAAJ"
  doi: "10.2139/ssrn.5012080"
  journal: "Preprint submitted to Bioresource Technology"
  title: "Domain-Invariant Monitoring for Lactic Acid Production: Transfer Learning from Glucose to Bio-Waste Using Machine Learning Interpretation"
  year: 2024
  month: 11
  # volume: 0
  # issue: 0
  # start: 1
  # end: 23

GitHub Events

Total
  • Push event: 4
Last Year
  • Push event: 4