Data-Driven Robot Fault Detection and Diagnosis Using Generative Models: A Modified SFDD Algorithm