Machine Learning project to diagnose breast cancer (malignant/benign) using logistic regression, trained on the Breast Cancer Wisconsin dataset.
Features | Tech Stack | Installation | Project Structure | Contributing | Author
- Logistic Regression classifier for tumor diagnosis
- Exploratory data analysis (EDA) and preprocessing
- Confusion matrix, ROC curve, and model evaluation metrics
- Modular codebase (data, preprocessing, model, utils)
- Easy reproducibility and extendability for other ML models
- Language: Python 3.8+
- ML Library: scikit-learn
- Data Handling: pandas, numpy
- Visualization: matplotlib, seaborn
- Notebook Support: Jupyter
- Python 3.8+
- pip package manager
- Recommended: virtual environment (venv or conda)
# Clone the repository
git clone https://github.com/TechFreak2003/breast-cancer-logreg.git
cd breast-cancer-logreg
# Install dependencies
pip install -r requirements.txt
# Run the main script
python main.py
breast-cancer-diagnosis/
├── data/
│ └── breast_cancer_data.csv # Dataset (Kaggle)
│
├── notebooks/
│ └── exploratory_analysis.ipynb # EDA and initial experiments
│
├── src/
│ ├── data_loader.py # Load and read CSV
│ ├── preprocess.py # Data cleaning & encoding
│ ├── model.py # Train & evaluate logistic regression
│ └── utils.py # Visualization & helpers
├── .gitignore
├── README.md
├── requirements.txt
└── main.py # Orchestrates the full pipeline
- Source: Kaggle - Breast Cancer Wisconsin Dataset
- Target Column:
diagnosis
(M
= malignant,B
= benign) - Features: 30 numerical features (radius, texture, area, etc.)
Example outputs include:
- Accuracy: 95%+
- Confusion Matrix: True Positives / False Negatives breakdown
- ROC-AUC: Area under the curve visualized
📌 Overview of the ML pipeline including logistic regression and other models
📌 Include your actual metrics or screenshots after model evaluation
Contributions are welcome! Please check the issues and submit PRs to improve the code, add enhancements, or fix bugs.
To contribute:
- Fork the repo
- Create a new branch (
git checkout -b feature-name
) - Commit changes (
git commit -am 'Add new feature'
) - Push and open a Pull Request
Avatar | Name | GitHub | Role | Contributions |
---|---|---|---|---|
![]() |
Suvrodeep Das | TechFreak2003 | Creator | Full implementation, docs |
This project is licensed under the MIT License.
Created with ❤️ by Suvrodeep Das