Skip to content

Machine learning (BGMM/GP) code for the Catassembly Triad framework in JACS. Validates catalyst efficacy prediction via triad descriptors (attachability, controllability, detachability).

License

Notifications You must be signed in to change notification settings

EMIT-Lab/BGMM-GP-CatassemblyTriad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine Learning-Assisted Analysis of the Catassembly Triad Framework

This repository contains the source code for the Bayesian Gaussian Mixture Model (BGMM) and Gaussian Process (GP) classification analysis described in the paper "Catassembly Triad: A Catalytic Framework for Enantioselective Chiral Molecular Assembly". The implementation quantitatively validates catalyst efficacy prediction through triad descriptors (attachability, controllability, detachability).

Key Features

  • Iterative BGMM clustering with automatic component selection
  • ELBO convergence analysis for model stability
  • 3D probability mapping with Gaussian Processes
  • Visualization of cluster evolution and classification confidence
  • Experimental validation

Installation

  1. Create virtual environment:
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
.venv\Scripts\activate    # Windows
  1. Install dependencies:
pip install numpy pandas scikit-learn matplotlib plotly kaleido

or:

uv add numpy

Project Structure

├── data/                    # Input datasets
│   └── data_sorted_by_No_in_article.csv
├── src/
│   ├── bgmm.py                # Bayesian GMM implementation
│   ├── elbo_plot.py           # ELBO convergence visualization
│   └── gp_plotly_3D.py        # 3D probability mapping
├── reports/                 # Generated analysis reports
├── output/                  # Visualizations and plots
└── pyproject.toml           # Dependency configuration

Usage

  1. Run BGMM Analysis
python src/bgmm.py

Generates: Cluster reports in reports/ 3D visualizations in output/

  1. Generate ELBO Plot
python src/elbo_plot.py

Generates: ELBO visualizations in output/

  1. Create 3D Probability Map
python src/gp_plotly_3D.py

Generates: GP 3D visualizations in output/

Citation

If you find this code useful in your research, please cite the following paper:

@article{Li2025Catassembly,
    title = {Catassembly Triad: A Catalytic Framework for Enantioselective Chiral Molecular Assembly},
    author = {Li, Zhihao and Huang, Xuehai and Jiang, Yansong and Zeng, Wei and Zou, Ding and Dong, Xue and Yang, Liulin and Cao, Xiaoyu and Tian, Zhongqun and Wang, Yu},
    journal = {Journal of the American Chemical Society},
    year = {2025},
    doi = {10.1021/jacs.5c16840},
    url = {https://doi.org/10.1021/jacs.5c16840}
}

About

Machine learning (BGMM/GP) code for the Catassembly Triad framework in JACS. Validates catalyst efficacy prediction via triad descriptors (attachability, controllability, detachability).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages