Technologies Used
Programming Languages
- Python — core language for data processing, feature engineering, and model building
Libraries and Frameworks
Cheminformatics
- RDKit — used to:
- Convert SMILES strings into molecular structures
- Generate Morgan fingerprints (2048-bit vectors)
- Compute molecular descriptors (e.g., molecular weight, logP)
Machine Learning
- XGBoost — gradient boosting model used for classification
- Handles small datasets effectively
- Robust to class imbalance
- Provides feature importance
Data Processing
- Pandas — dataset creation, cleaning, and manipulation
- NumPy — numerical operations and vector handling
Explainability
- SHAP (SHapley Additive exPlanations) — used to interpret model predictions
- Identifies which molecular features contribute to toxicity
Data Sources / APIs
FDA Adverse Event Reporting System (FAERS)
- Used as inspiration to identify pulmonary toxicity signals
PubChem
- Source for canonical SMILES and molecular structures
ChEMBL
- Used to expand dataset with real drug molecules programmatically
Model Pipeline
SMILES → RDKit → Morgan Fingerprints → XGBoost → Risk Score → SHAP Explanation
Frontend / Interface
- Streamlit — lightweight web interface for:
- Inputting SMILES strings
- Displaying risk predictions
- Showing explanation outputs
Development Environment
- Jupyter Notebook / Google Colab — experimentation and model training
- Git & GitHub — version control and project management
Key Techniques Used
- Molecular fingerprinting
- Supervised classification
- Class imbalance handling
- Model explainability
- Data curation and validation
Summary
The system integrates cheminformatics, machine learning, and explainability into a single pipeline that transforms raw chemical structures into interpretable lung toxicity predictions.
Log in or sign up for Devpost to join the conversation.