Typicality-based Collaborative Filtering Recommendation