Generalization Error Bounds for Collaborative Prediction with Low-Rank Matrices