Hashtag Recommendation System Design
Context
You are designing a hashtag recommendation system for a social-media platform. Given a user u composing a post with draft content c at time t, the system should rank and recommend the top-k hashtags.
Tasks
-
Signals/Features: What signals would you collect to recommend hashtags for a given (u, c, t)? Group them logically (e.g., engagement, content similarity, social/graph, demographics, popularity/trends).
-
Cold Start: For users or hashtags where those features are unavailable or uninformative (e.g., new users or new hashtags), how would you handle recommendations?
-
Scoring Function: How would you combine the collected features into a scoring function that produces a ranked list of hashtags?
-
Weight/Parameter Learning: How would you determine or learn the weights for each feature? Discuss both offline and online approaches.