This project implements a Support Vector Machine (SVM)–based classification model to identify different varieties of wheat seeds using their morphological characteristics. The workflow includes data cleaning, feature scaling, model training, and performance evaluation.
The main objectives of this project are:
- To preprocess and clean real-world agricultural data
- To build a multi-class classification model using SVM
- To evaluate classification performance using standard metrics
The dataset contains measurements of wheat seed kernels and their corresponding class labels.
- Area
- Perimeter
- Compactness
- Length of kernel
- Width of kernel
- Asymmetry coefficient
- Length of kernel groove
- Class (1, 2, 3): Represents three different wheat seed varieties
- Python
- Pandas
- NumPy
- Scikit-learn
-
Data Loading
- Dataset loaded from CSV format.
-
Data Inspection
- Data types, missing values, and memory usage analyzed.
-
Data Cleaning
- Removal of unnamed and irrelevant columns.
-
Feature Engineering
- Separation of features and target variable.
- Feature standardization using StandardScaler.
-
Model Training
- Data split into training and testing sets.
- Support Vector Classifier (SVC) trained on the training data.
-
Model Evaluation
- Prediction on test data.
- Accuracy-based performance evaluation.
- Classification Accuracy: 90.48%
- Agricultural quality assessment
- Automated crop variety identification
- Precision agriculture applications
- Machine learning classification benchmarking
The Support Vector Machine model demonstrated strong performance in classifying wheat seed varieties using morphological features. Proper feature scaling played a key role in achieving reliable classification accuracy.
- Hyperparameter tuning using GridSearchCV
- Kernel comparison (linear, RBF, polynomial)
- Cross-validation for robustness
- Confusion matrix and detailed classification report analysis