I understand that both training and testing sets should have the same distribution and also understand that we should not touch the test set (in terms of oversampling). But we know that oversampling the training set (specifically in multiclass classification) totally changes the distribution of the training set. For example:
- The distribution of my training set before oversampling is: 90%, 5%, 3%, 2% [for classes A, B, C, and D]
- The distribution of my training set after oversampling is: 25%, 25%, 25%, 25% [for classes A, B, C, and D]
- The distribution of my training set using stratified cross-validation is: 90%, 5%, 3%, 1% [for classes A, B, C, and D] -->as stratifying keeps the distribution of the original data.
Could someone please explain why do we use oversampling when both training and testing sets need to have the same distribution?