Deployment Summary: Breast Cancer Prediction Web App
Project Title: Breast Cancer Tumor Classifier
Model: Random Forest Classifier using top 15 features
Dataset: Breast Cancer Wisconsin Diagnostic Dataset (sklearn.datasets.load_breast_cancer)
Deployment Type: Web Application (HTML + Flask) + API
Hosting Platform: Render (Free Cloud Hosting)
Steps Followed
-
Data Preparation:
- Loaded the breast cancer dataset from
scikit-learn. - Selected the top 15 most relevant features using
SelectKBestwithf_classif.
- Loaded the breast cancer dataset from
-
Model Building:
- Trained a compact
RandomForestClassifierwithn_estimators=25,max_depth=6. - Evaluated accuracy on test data (approx. ~94–96%).
- Saved the model as
model.joblibusingjoblib.dump().
- Trained a compact
-
Web App Development:
- Created a Flask app (
app.py) to load the saved model and take 15 inputs via a form. - Designed a user-friendly HTML form (
index.html) for the input interface. - Rendered prediction output directly on the webpage (malignant or benign).
- Created a Flask app (
-
API Integration:
- Exposed a POST endpoint
/predictto receive form data and return prediction results dynamically.
- Exposed a POST endpoint
-
Deployment:
- Used Render.com (free tier) to deploy the web app.
- Created
requirements.txt,Procfile, and pushed the project to GitHub. - Linked GitHub repository to Render for auto-deployment.
- A live, browser-accessible breast cancer classifier that accepts 15 feature values and predicts whether a tumor is malignant or benign.
- Fully functional on free cloud infrastructure (Render).
- Project includes both web form interface and API logic.