Rolling element bearings are crucial components of rotating machinery used in various industries, including aerospace, navigation, machine tools, etc. Therefore, it is essential to establish suitable techniques for condition monitoring and fault diagnosis of bearings to avoid breakdowns and damages during operation for overall industrial sustainability. Vibration-based condition monitoring has been the most employed technique in this perspective. Many researchers have investigated the vibration response of rolling element bearings having inner race defects, outer race defects, or rolling element defects using conventional techniques in past decades. However, Machine Learning (ML) has emerged as another way of bearing fault diagnosis. In this work, fault signatures of ball bearings are classified using a total of 6 (with 24 subcategories) ML models, and a comparative performance of these models is presented. The ML classifiers are trained with extracted time-domain and frequency-domain features using open-source Case Western Reserve University (CWRU) bearing data. Two datasets of different sample size and number of samples of vibration data corresponding to a healthy ball bearing, a defective bearing with inner race defect, a ball defect, and an outer race defect, running at a particular set of working conditions, are considered. The accuracy of ML models is compared to identify the best model for classifying the faults under consideration.