Multi-Omics Drug Sensitivity Prediction
Explainable precision-medicine predictions from multi-omics data
Patients respond differently to the same drug, and black-box models are hard to trust in healthcare.
A LightGBM model on gene-expression and drug-response data, with SHAP explanations and a dashboard.
822 drugs ranked per condition, each with gene-level explanations.

- Role
- Research project, ML pipeline and dashboard
- Year
- 2026
- Stack
- Python, LightGBM, PyTorch, scikit-learn, SHAP, pandas, NumPy, Streamlit
Overview
A machine-learning framework that predicts how effective a drug will be for a given biological profile and ranks candidate therapies, with explanations a clinician can read.
The problem
Patients respond differently to the same drug. Picking a therapy by trial and error costs time, and black-box models are hard to trust in healthcare.
What I built
- 1Combined LINCS L1000 gene-expression data with GDSC drug-response data to predict IC50 values.
- 2Built the feature pipeline: matching LINCS and GDSC records, cleaning, exploratory analysis, pathway-level features, autoencoder dimensionality reduction and hyperparameter tuning.
- 3Compared LightGBM with Random Forest, neural network and TabNet baselines; LightGBM won with R² 0.51 and RMSE 1.96.
- 4Used SHAP to show which genes drive each prediction.
- 5Built a Streamlit dashboard to pick a condition, compare the top drugs and inspect feature importance.
Highlights
- R² of 0.51 and RMSE of 1.96 on IC50 regression, ahead of Random Forest, neural network and TabNet baselines.
- 822 drugs scored in the dashboard.
- Gene-level explanations for every recommendation.
How it works
- LINCS L1000 gene expression
- GDSC drug response (IC50)
- Feature table
- LightGBM model
- SHAP explanations
- Streamlit dashboard
Key decisions and trade-offs
Explain every prediction
SHAP values show which genes drive each recommendation, so a clinician can question the model instead of trusting it blindly.
Screens


