Unsupervised Learning by Competing Hidden Units