Comparison of Classifiers
Comparison of Classifiers
November 5, 2024
[3]: # The Iris dataset is a classic dataset in the field of machine learning and␣
↪statistics, widely used for classification tasks. :
1
[4]: # Load the Iris dataset
data = load_iris()
X = data.data # Features
y = data.target # Target labels
# Print results
print("\nDecision Tree Results:")
print(f"Cross-Validation Accuracy: {dt_accuracy:.2f}")
print("Classification Report:\n", classification_report(y, dt_y_pred,␣
↪target_names=data.target_names, zero_division=1))
2
weighted avg 1.00 1.00 1.00 150
# Print results
print("\nK-Nearest Neighbors Results:")
print(f"Cross-Validation Accuracy: {knn_accuracy:.2f}")
print("Classification Report:\n", classification_report(y, knn_y_pred,␣
↪target_names=data.target_names, zero_division=1))
3
plt.figure(figsize=(6, 4))
sns.heatmap(knn_conf_matrix, annot=True, fmt="d", cmap="Blues",
xticklabels=data.target_names, yticklabels=data.target_names)
plt.title("K-Nearest Neighbors - Confusion Matrix")
plt.xlabel("Predicted")
plt.ylabel("Actual")
plt.show()
4
[8]: # 3. Logistic Regression Classifier
logistic_regression = LogisticRegression(max_iter=200)
# Print results
print("\nLogistic Regression Results:")
print(f"Cross-Validation Accuracy: {lr_accuracy:.2f}")
print("Classification Report:\n", classification_report(y, lr_y_pred,␣
↪target_names=data.target_names, zero_division=1))
5
[9]: # Print a summary of cross-validation accuracies for all classifiers
print("\nFinal Comparison of Cross-Validation Accuracies:")
for name, accuracy in accuracy_results.items():
print(f"{name}: {accuracy:.2f}")