PolyNanoStabML is a machine learning-based application for predicting the stability of polymer nanoparticles. The tool leverages regression and classification models to predict nanoparticle stability. Specifically, it uses regression model to predict half-life stability in acetate buffer and classification models to predict stability in PBS buffer.
The main goals of this project are:
- Predict nanoparticle stability in Acetate and PBS buffers using polymer properties.
- Analyze and preprocess provided data on polymer nanoparticles.
- Develop and evaluate machine learning models for stability prediction.
- Create a user-friendly interface for making predictions.
- Python 3.10
- pip (Python package installer)
-
Clone the repository:
git clone https://github.com/lamalab-org/PolyNanoStabML.git cd PolyNanoStabML
-
Set up the environment:
conda create --name polynanostab python=3.10 conda activate polynanostab
-
Install the required dependencies:
pip install -r requirements.txt
data/
: Contains the dataset used for training and testing.notebooks/
: Jupyter notebooks for data analysis and model development.polynanostab_app.py
: Streamlit application for the user interface.requirements.txt
: List of Python dependencies.
To explore the data and train the models, run the Jupyter notebooks in the notebooks/
directory.
To launch the prediction interface, run:
streamlit run polynanostab_app.py -- --data_path="/path/to/your/data.csv"
This will start a local server, and you can access the app through your web browser.
- Data preprocessing and analysis
- Machine learning model development (Gradient Boosting Regressor, Logistic Regression)
- Cross-validation techniques (Leave-One-Out Cross-Validation)
- Interactive web application for single and batch predictions
- Visualization of prediction results
This project is licensed under the MIT License - see the LICENSE file for details.