A context-aware recommendation system with effective contextual pre-filtering model