Dealing with imbalanced and weakly labeled data in machine learning using fuzzy and rough set methods