This project applies machine learning to detect whether a tumor is Malignant (M) or Benign (B) based on medical features such as mean radius, texture, perimeter, and area. The model is built using Python and scikit-learn.
- Load and clean the tumor dataset (
Tumor_Detection.csv). - Explore the data with descriptive statistics and visualizations.
- Preprocess data (drop irrelevant columns, handle missing values, scale features).
- Train a Random Forest Classifier to classify tumors.
- Evaluate performance using accuracy, confusion matrix, and classification report.
- Analyze important features influencing predictions.
-
Data Preparation
- Remove
idand unnamed columns. - Handle missing values.
- Encode target labels (
M=1,B=0).
- Remove
-
Exploratory Data Analysis
- Class distribution visualization.
- Summary statistics for numeric features.
- Correlation heatmap.
-
Modeling
- Train/test split.
- Standardize features.
- Train Random Forest Classifier.
-
Evaluation
- Accuracy and classification report.
- Confusion matrix heatmap.
- Feature importances plot.
- Accuracy: ~95β98% (depending on random train/test split).
- Top contributing features:
- Mean radius
- Mean perimeter
- Mean area
- Experiment with Logistic Regression, SVM, or XGBoost.
- Perform hyperparameter tuning with GridSearchCV.
- Apply feature selection and dimensionality reduction (PCA).
- Use cross-validation for more robust results.
Dataset adapted from the Breast Cancer Wisconsin Dataset (UCI Machine Learning Repository).
- Your Name
π§ tripathiharsh2104@gmail.com
π LinkedIn Profile """