This is a multiclass classification for an imbalanced dataset. I set the class_weight for this model to "balanced". I have a perfect training accuracy (1.0) and a nearly perfect testing accuracy (0.994). I looked at my confusion matrices but they predicted each class really well. Am I overfitting? I ran a cross val score on the features and targets before train test split, and I got a cross val score of 0.996.
Training confusion matrix:
array([[1., 0., 0., 0., 0.],
[0., 1., 0., 0., 0.],
[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.],
[0., 0., 0., 0., 1.]])
Testing confusion matrix:
array([[0.997, 0.003 , 0. , 0., 0.],
[0. , 1. , 0. , 0., 0.],
[0. , 0. , 1. , 0., 0.],
[0. , 0. , 0. , 1., 0.],
[0.01 , 0. , 0.007, 0., 0.980]])