An end-to-end AI-powered biomarker discovery platform that integrates bioinformatics, machine learning, and explainable AI to identify potential disease-associated biomarkers from gene expression data.
The platform allows researchers to upload or automatically retrieve public gene expression datasets, perform preprocessing, train machine learning models, interpret predictions using SHAP explainability, and generate biological insights.
Finding reliable biomarkers from high-dimensional genomic data is challenging because gene expression datasets contain thousands of features (genes) but limited samples.
This project aims to build an automated workflow:
Supports:
- User-uploaded gene expression matrices
- Sample metadata upload
- Example datasets
- GEO accession-based dataset retrieval
Currently supports:
- GEO datasets (GSE accession)
- CSV expression matrices
- CSV metadata files
Pipeline includes:
- Expression matrix loading
- Sample validation
- Metadata matching
- Data preprocessing
- Gene feature handling
- Dataset quality checks
Includes:
- Gene expression visualization
- PCA analysis
- Sample clustering
- Distribution analysis
Implemented models:
- Random Forest Classifier
- Logistic Regression
The models learn patterns between:
Gene Expression β Disease State
Uses SHAP (SHapley Additive exPlanations) to understand model decisions.
Provides:
- Global feature importance
- Top biomarker candidates
- SHAP summary plots
- SHAP ranking of important genes
The platform ranks candidate biomarkers using machine learning feature importance and SHAP explainability.
Outputs include:
- Ranked biomarkers
- Feature importance
- Expression comparison
- Biomarker confidence scores
Interpret discovered biomarkers using biological knowledge.
Future support includes:
- Gene Ontology (GO)
- KEGG Pathways
- Functional Annotation
- Disease Association
Generate a downloadable report containing:
- Dataset summary
- Quality control statistics
- PCA visualization
- Differentially expressed genes
- Machine learning performance
- SHAP explainability
- Ranked biomarker candidates
- Biological interpretation
The platform can automatically:
- Download GEO datasets
- Extract expression matrices
- Extract sample metadata
- Detect experimental groups
- Prepare data for downstream analysis
The current version of this platform supports GEO studies that provide a processed gene expression matrix (Series Matrix).
Supported:
- Microarray expression datasets
- Processed expression matrices available through GEO
Currently not supported:
- Raw RNA-seq FASTQ files
- Supplementary count files only
- Single-cell RNA-seq datasets
- GEO studies requiring external preprocessing
Future versions will include automated processing of RNA-seq count matrices and expanded support for additional transcriptomic data formats.
The platform can automatically:
- Download GEO datasets
- Extract expression matrices
- Extract sample metadata
- Detect experimental groups
- Prepare data for downstream analysis
Example:
GEO Accession
β
βΌ
Automatic Download
β
βΌ
Expression Matrix
β
βΌ
Automatic Metadata Extraction
β
βΌ
Preprocessing
β
βΌ
Machine Learning
β
βΌ
Biomarker Discovery
AI_Biomarker_Discovery/
β
βββ app.py
β
βββ pages/
β βββ 1_Home.py
β βββ 2_Dataset.py
β βββ 3_Preprocessing.py
β βββ 4_Exploration.py
β βββ 5_Feature_Selection.py
β βββ 6_Machine_Learning.py
β βββ 7_SHAP_Explainability.py
β βββ 8_Biomarker_Results.py
β βββ 9_Biological_Interpretation.py
β βββ 10_Report.py
β
βββ utils/
β βββ data_loader.py
β βββ preprocessing.py
β βββ feature_selection.py
β βββ models.py
β βββ shap_analysis.py
β βββ geo_downloader.py
β βββ visualization.py
β βββ biology.py
β βββ biomarker_ranking.py
β βββ report.py
β
βββ data/
βββ report.py/
βββ requirements.txt
βββ assets/
|
βββ README.md
- Python 3.12+
- GEOparse
- Gene expression analysis
- Genomic datasets
- Scikit-learn
- Random Forest
- Logistic Regression
- SHAP
- Pandas
- NumPy
- Matplotlib
- Streamlit
- ReportLab
Example:
| Gene | Sample_1 | Sample_2 | Sample_3 |
|---|---|---|---|
| TP53 | 10.2 | 12.5 | 8.4 |
| EGFR | 5.6 | 7.2 | 2.3 |
Format:
Gene β First column
Samples β Remaining columns
Example:
| Sample | Group |
|---|---|
| Sample_1 | Control |
| Sample_2 | Control |
| Sample_3 | Disease |
Sample names must match expression matrix columns.
Clone repository:
git clone https://github.com/Bano733-code/AI-Biomarker-Discovery.gitNavigate:
cd AI-Biomarker-DiscoveryCreate environment:
python -m venv venvActivate environment:
Windows:
venv\Scripts\activateLinux/Mac:
source venv/bin/activateInstall dependencies:
pip install -r requirements.txtStart Streamlit:
streamlit run app.pyThe application will open in your browser.
Planned improvements:
- Differential expression analysis
- GO and KEGG pathway enrichment
- Gene ontology annotation
- Biological network visualization
- RNA-seq normalization workflows
- Deep learning models
- Automated research report generation
- Integration with additional biological databases
This project explores the application of:
- Machine Learning
- Explainable AI
- Computational Biology
- Genomics
for discovering interpretable biomarkers from high-dimensional biological datasets.
Bano Rani
BS Bioinformatics Student
Research Interests:
- Machine Learning in Bioinformatics
- Computational Biology
- Genomics
- Precision Medicine
- AI-driven Drug Discovery
Data sources:
- NCBI Gene Expression Omnibus (GEO)
- Public genomic datasets
Libraries:
- Scikit-learn
- SHAP
- Streamlit
- GEOparse









