Added progress indicator and performance optimizations for loading training data.
Implemented recommendation system.