Soft Error Tolerant Convolutional Neural Networks on FPGAs With Ensemble Learning