A cognitive fault diagnosis system for distributed sensor networks