Implementation of Temporal Ensembling for Semi-Supervised Learning by Laine et al. with tensorflow eager execution