Dropout is a regularization technique patented by Google[1] for reducing overfitting in neural networks by preventing complex co-adaptations on training data. It is a very efficient way of performing model averaging with neural networks.[2] The term "dropout" refers to dropping out units (both hidden and visible) in a neural network.[3][4]