Knowledge and Information Systems

, Volume 39, Issue 3, pp 491–511 | Cite as

Bounded matrix factorization for recommender system

Regular Paper


Matrix factorization has been widely utilized as a latent factor model for solving the recommender system problem using collaborative filtering. For a recommender system, all the ratings in the rating matrix are bounded within a pre-determined range. In this paper, we propose a new improved matrix factorization approach for such a rating matrix, called Bounded Matrix Factorization (BMF), which imposes a lower and an upper bound on every estimated missing element of the rating matrix. We present an efficient algorithm to solve BMF based on the block coordinate descent method. We show that our algorithm is scalable for large matrices with missing elements on multicore systems with low memory. We present substantial experimental results illustrating that the proposed method outperforms the state of the art algorithms for recommender system such as stochastic gradient descent, alternating least squares with regularization, SVD++ and Bias-SVD on real-world datasets such as Jester, Movielens, Book crossing, Online dating and Netflix.


Low-rank approximation Recommender systems Bound constraints  Matrix factorization Block coordinate descent method Scalable algorithm Block 



This work is supported in part by the National Science Foundation (NSF) Grants CCF-0808863, Defense Advanced Research Projects Agency (DARPA) XDATA program Grant FA8750-12-2-0309 and ERC Grant 258581 (under FP7/2007-2013) “Structured low-rank approximation”; the Research Foundation Flanders (FWO-Vlaanderen); the Flemish Government (Methusalem Fund, METH1); the Belgian Federal Government (IAP VII / DYSCO). Any opinions, findings and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundations and DARPA. Part of this research was carried out while the second author was with Georgia Institute of Technology.


  1. 1.
    Bertsekas DP (1999) Nonlinear programming. Athena Scientific, BelmontMATHGoogle Scholar
  2. 2.
    Brozovsky L, Petricek V (2007) Recommender system for online dating service. In: Proceedings of conference Znalosti 2007, Ostrava, VSBGoogle Scholar
  3. 3.
    Cichocki A, Anh-Huy P (2009) Fast local algorithms for large scale nonnegative matrix and tensor factorizations. IEICE Trans Fundam Electron Commun Comput Sci E92-A:708–721Google Scholar
  4. 4.
    Cichocki A, Zdunek R, Amari S (2007) Hierarchical als algorithms for nonnegative matrix and 3d tensor factorization. Lect Notes Comput Sci 4666:169–176Google Scholar
  5. 5.
    Deerwester S, Dumais ST, Furnas GW, Landauer TK, Harshman R (1990) Indexing by latent semantic analysis. J Am Soc Inf Sci 41:391–407CrossRefGoogle Scholar
  6. 6.
    Funk S (2006) Stochastic gradient descent. [online; accessed 6-June-2012]
  7. 7.
    Goldberg K (2003) Jester collaborative filtering dataset., [Online; accessed 6-June-2012]
  8. 8.
    Golub GH, Van Loan CF (1996) Matrix computations, 3rd edition. The Johns Hopkins University Press, BaltimoreGoogle Scholar
  9. 9.
    Grippo L, Sciandrone M (2000) On the convergence of the block nonlinear gauss-seidel method under convex constraints. Oper Res Lett 26(3):127–136MATHMathSciNetGoogle Scholar
  10. 10.
    Ho ND, Van Dooren P, Blondel VD (2008) Descent methods for nonnegative matrix factorization. CoRR, abs/0801.3199Google Scholar
  11. 11.
    Kim H, Park H (2007) Sparse non-negative matrix factorizations via alternating non-negativity-constrained least squares for microarray data analysis. Bioinformatics 23(12):1495–1502CrossRefGoogle Scholar
  12. 12.
    Kim H, Park H (2008) Nonnegative matrix factorization based on alternating nonnegativity constrained least squares and active set method. SIAM J Matrix Anal Appl 30(2):713–730CrossRefMATHMathSciNetGoogle Scholar
  13. 13.
    Kim J, Park H (2011) Fast nonnegative matrix factorization: an active-set-like method and comparisons. SIAM J Sci Comput 33(6):3261–3281CrossRefMATHMathSciNetGoogle Scholar
  14. 14.
    Kim J, He Y, Park H (2013) Algorithms for nonnegative matrix and tensor factorizations: a unified view based on block coordinate descent framework. J Glob Optim, pp 1–35Google Scholar
  15. 15.
    Koren Y (2008) Factorization meets the neighborhood: a multifaceted collaborative filtering model. In: Proceeding of the 14th ACM SIGKDD international conference on Knowledge discovery and data mining-KDD ’08, pp 426–434Google Scholar
  16. 16.
    Koren Y (2009) Collaborative filtering with temporal dynamics. In: Proceedings of the 15th ACM SIGKDD international conference on knowledge discovery and data mining—KDD ’09, pp 447Google Scholar
  17. 17.
    Koren Y, Bell R, Volinsky C (2009) Matrix factorization techniques for recommender systems. Computer 42(8):30–37CrossRefGoogle Scholar
  18. 18.
    Kuang D, Park H, Ding CHQ (2012) Symmetric nonnegative matrix factorization for graph clustering. In: Proceedings of SIAM international conference on data mining—SDM’12, pp 106–117Google Scholar
  19. 19.
    Lin CJ (2007) Projected gradient methods for nonnegative matrix factorization. Neural Comput 19(10):2756–2779CrossRefMATHMathSciNetGoogle Scholar
  20. 20.
    Low Y, Gonzalez J, Kyrola A, Bickson D, Guestrin C, Hellerstein JM (2010) Graphlab: a new parallel framework for machine learning. In: Conference on uncertainty in artificial intelligence (UAI)Google Scholar
  21. 21.
    Mackey LW, Weiss D, Jordan MI (2010) Mixed membership matrix factorization. In: Proceedings of the 27th international conference on machine learning (ICML-10), pp 711–718Google Scholar
  22. 22.
    Markovsky I (2011) Algorithms and literate programs for weighted low-rank approximation with missing data. In: Levesley J, Iske A, Georgoulis E (eds) Approximation algorithms for complex systems, chapter: 12. Springer, Berlin, pp 255–273Google Scholar
  23. 23.
    Movielens dataset., 1999 [online: accessed 6-June-2012]
  24. 24.
    Paterek A (2007) Improving regularized singular value decomposition for collaborative filtering. In: Proceedings of 13th ACM international conference on knowledge discovery and data mining-KDD’07, pp 39–42Google Scholar
  25. 25.
    Salakhutdinov R, Mnih A (2008) Bayesian probabilistic matrix factorization using markov chain monte carlo. In: ICML, pp 880–887Google Scholar
  26. 26.
    Xiong L, Chen X, Huang TK, Schneider JG, Carbonell JG (2010) Temporal collaborative filtering with bayesian probabilistic tensor factorization. In: Proceedings of the SIAM international conference on data mining-SDM’10, pp 211–222Google Scholar
  27. 27.
    Yu HF, Hsieh CJ, Si S, Dhillon IS (2012) Scalable coordinate descent approaches to parallel matrix factorization for recommender systems. In: Proceedings of the IEEE international conference on data mining-ICDM’12, pp 765–774Google Scholar
  28. 28.
    Zhou Y, Wilkinson D, Schreiber R, Pan R (2008) Large-scale parallel collaborative filtering for the netflix prize. Algorithmic Aspects Inf Manag 5034:337–348CrossRefGoogle Scholar
  29. 29.
    Ziegler CN, McNee SM, Konstan JA, Lausen G (2005) Improving recommendation lists through topic diversification. In: Proceedings of the 14th international conference on world wide web-WWW’05, pp 22–32Google Scholar

Copyright information

© Springer-Verlag London 2013

Authors and Affiliations

  • Ramakrishnan Kannan
    • 1
  • Mariya Ishteva
    • 2
  • Haesun Park
    • 1
  1. 1.School of Computational Science and EngineeringGeorgia Institute of TechnologyAtlantaUSA
  2. 2.Department ELECVrije Universiteit BrusselBrusselsBelgium

Personalised recommendations