Unsupervised Learning Framwork provides one interface for numerous unsupervised, weakly-supervised and semi-supervised method.