Supervised Learning - Classification Week 7 Challenge
Q1.
1)Pros :
- Works well for high dimensional problems.
- Since it calculates using support vectors the computational memory is low.
2)Cons :
- Does not work well for a large amount of data.
- Does not work well if the target classes are overlapped.
Pros of SVM:
-
Effective in High-Dimensional Spaces: SVMs perform well in high-dimensional feature spaces, making them suitable for tasks with a large number of features.
-
Powerful Kernel Functions: SVMs can leverage different kernel functions (linear, polynomial, radial basis function, etc.) to transform data into higher dimensions, enabling the model to capture complex, non-linear relationships.
-
Maximizes Margin: SVM aims to maximize the margin between classes, which results in better generalization and robustness. It helps avoid overfitting.
-
Good for Small Data Sets: SVMs are effective when the dataset is small to moderately sized, as they do not rely on large amounts of data for training.
-
Outliers Handling: SVMs are less sensitive to outliers, thanks to their focus on margin maximization. Outliers do not significantly affect the decision boundary.
-
Global Optimality: SVMs find a global optimum solution for the decision boundary, unlike some other machine learning algorithms that might get stuck in local optima.
-
Good Generalization: SVMs usually generalize well, providing a model that can make accurate predictions on unseen data.
-
Wide Range of Applications: SVMs can be used for classification, regression, and novelty detection, making them versatile in various domains, such as text classification, image recognition, and bioinformatics.
Cons of SVM:
-
Computationally Intensive: Training an SVM can be computationally expensive, especially when dealing with large datasets. This makes SVMs less suitable for real-time or online learning.
-
Choice of Kernel: Selecting the right kernel function and its parameters can be challenging. Poor choices can lead to suboptimal results.
-
Sensitivity to Data Scale: SVMs are sensitive to the scale of input features, so proper feature scaling (e.g., standardization) is often required.
-
Complexity in Multi-Class Classification: SVMs are inherently binary classifiers, so they require strategies like one-vs-all (OvA) or one-vs-one (OvO) to handle multi-class classification problems. This can lead to increased model complexity.
-
Interpretability: SVMs may not be as interpretable as some other algorithms like decision trees. Understanding the impact of individual features on the decision boundary can be challenging.
-
Data Imbalance: SVMs can be sensitive to class imbalance in the dataset. When one class significantly outnumbers the other, the model may be biased towards the majority class.
-
Memory Usage: Storing the support vectors in memory can be memory-intensive, especially with large datasets.
Q2. *** Check Attach file .