  Standard training techniques for neural networks involve multiple sources of
randomness, e.g., initialization, mini-batch ordering and in some cases data
augmentation. Given that neural networks are heavily over-parameterized in
practice, such randomness can cause {\em churn} -- for the same input,
disagreements between predictions of the two models independently trained by
the same algorithm, contributing to the `reproducibility challenges' in modern
machine learning. In this paper, we study this problem of churn, identify
factors that cause it, and propose two simple means of mitigating it. We first
demonstrate that churn is indeed an issue, even for standard image
classification tasks (CIFAR and ImageNet), and study the role of the different
sources of training randomness that cause churn. By analyzing the relationship
between churn and prediction confidences, we pursue an approach with two
components for churn reduction. First, we propose using \emph{minimum entropy
regularizers} to increase prediction confidences. Second, \changes{we present a
novel variant of co-distillation approach~\citep{anil2018large} to increase
model agreement and reduce churn}. We present empirical results showing the
effectiveness of both techniques in reducing churn while improving the accuracy
of the underlying model.
