Modeling Users' Dynamic Preference for Personalized Recommendation