Just to elaborate on the sampling techniques @goerlitz is mentioning:
It’s a common ML challenge and the standard approaches for sampling are:

Under-sampling: Randomly delete records from the over-represented classes
Over-sampling: Duplicate records in the under-represented classes
Synthetic sampling/data augmentation: In NLP, there are actually quite some interesting techniques with which you can augment your data in the under-represented classes to increase record count. Check out this library: GitHub - makcedward/nlpaug: Data augmentation for NLP