Automating Fault Detection and Quality Control in PCBs: A Machine Learning Approach to Handle Imbalanced Data