Quantifying Feature Overlaps in Deep Neural Networks and Their Applications in Unsupervised Learning and Generative Adversarial Networks