Advertisement

Efficient processing of recommendation algorithms on a single-machine-based graph engine

  • Yong-Yeon Jo
  • Myung-Hwan Jang
  • Sang-Wook Kim
  • Kyungsik HanEmail author
Article
  • 122 Downloads

Abstract

The wide use of recommendation systems includes more users and items in system operations, leading to a significant increase in the size of related datasets. However, recommendation algorithms on existing single-machine-based graph engines have been developed without considering the important characteristics of recommendation datasets, i.e., huge size and power-law degree distribution. In this paper, we address how to realize efficient graph- and matrix-factorization-based recommendation algorithms, handling recommendation datasets on RealGraph, a state-of-the-art single-machine-based graph engine. Through extensive experiments, we demonstrate that our recommendation algorithms on RealGraph universally and consistently outperform the algorithms on other graph engines over all datasets up to 34 times.

Keywords

Graph engine Single machine Recommendation system High performance 

Notes

Acknowledgements

This research was supported by (1) Next-Generation Information Computing Development Program through the National Research Foundation of Korea (NRF) Funded by the Ministry of Science, ICT (MSIT) (NRF-2017M3C4A7069440), (2) NRF Funded by MSIT (NRF-2017R1A2B3004581), and (3) Semiconductor Industry Collaborative Project between Hanyang University and Samsung Electronics Co. Ltd.

References

  1. 1.
    Adomavicius G, Tuzhilin A (2005) Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions. IEEE Trans Knowl Data Eng 17(6):734–749CrossRefGoogle Scholar
  2. 2.
    Carey MJ, DeWitt DJ, Franklin MJ, Hall NE, McAuliffe ML, Naughton JF, Schuh DT, Solomon MH, Tan C, Tsatalos OG, White SJ, Zwilling, MJ (1994) Shoring up persistent applications. In: Proceedings of the ACM International Conference on Management of Data, ACM, pp 383–394Google Scholar
  3. 3.
    Carey MJ, DeWitt DJ, Richardson JE, Shekita EJ (1986) Object and file management in the EXODUS extensible database system. University of Wisconsin-Madison, MadisonGoogle Scholar
  4. 4.
    Chen H, Li Z, Hu W (2016) An improved collaborative recommendation algorithm based on optimized user similarity. J Supercomput 72(7):2565–2578CrossRefGoogle Scholar
  5. 5.
    Chen, HC., Chen, AL (2001) A music recommendation system based on music data grouping and user interests. In: Proceedings of the International Conference on Information and Knowledge Management, ACM, pp 231–238Google Scholar
  6. 6.
    Chi Y, Dai G, Wang Y, Sun G, Li G, Yang H (2016) Nxgraph: an efficient graph processing system on a single machine. In: Proceedings of the IEEE International Conference on Data Engineering, pp 409–420Google Scholar
  7. 7.
    Chou HT, Dewitt DJ, Katz RH, Klug AC (1985) Design and implementation of the wisconsin storage system. Softw Pract Exp 15(10):943–962CrossRefGoogle Scholar
  8. 8.
    Da Zheng DM, Burns R, Vogelstein J, Priebe CE, Szalay AS (2015) Flashgraph: processing billion-node graphs on an array of commodity ssds. In: Proceedings of the USENIX Conference on File and Storage Technologies, pp 45–58Google Scholar
  9. 9.
    Fousek J (2017) Efficient sparse matrix-delayed vector multiplication for discretized neural field model. J Supercomput 74(5):1–22Google Scholar
  10. 10.
    Gomez-Uribe CA, Hunt N (2016) The netflix recommender system: algorithms, business value, and innovation. ACM Trans Manag Inf Syst (TMIS) 6(4):13:1–13:19Google Scholar
  11. 11.
    Gonzalez JE, Low Y, Gu H, Bickson D, Guestrin C (2012) Powergraph: distributed graph-parallel computation on natural graphs. In: Proceedings of the USENIX Symposium on Operating Systems Design and Implementation, vol 12, p 2Google Scholar
  12. 12.
    Ha J, Kwon SH, Kim SW, Faloutsos C, Park S (2012) Top-n recommendation through belief propagation. In: Proceedings of the ACM International Conference on Information and Knowledge Management, ACM, pp 2343–2346Google Scholar
  13. 13.
    Han WS, Lee S, Park K, Lee JH, Kim MS, Kim J, Yu H (2013) Turbograph: a fast parallel graph engine handling billion-scale graphs in a single pc. In: Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, ACM, pp 77–85Google Scholar
  14. 14.
    Hung L (2005) A personalized recommendation system based on product taxonomy for one-to-one marketing online. Expert Syst Appl 29(2):383–392CrossRefGoogle Scholar
  15. 15.
    Hwang WS, Li S, Kim SW, Lee K (2014) Data imputation using a trust network for recommendation. In: Proceedings of the International Conference on World Wide Web, pp 299–300Google Scholar
  16. 16.
    Jamali M, Ester M (2010) A matrix factorization technique with trust propagation for recommendation in social networks. In: Proceedings of the ACM Conference on Recommender Systems, ACM, pp 135–142Google Scholar
  17. 17.
    Jang MH, Faloutsos C, Kim SW, Kang U, Ha J (2016) Pin-trust: fast trust propagation exploiting positive, implicit, and negative information. In: Proceedings of the ACM International on Conference on Information and Knowledge Management, ACM, pp 629–638Google Scholar
  18. 18.
    Jo YY, Jang MH, Jung H, Kim, SW (2018) A high-performance graph engine for efficient social network analysis. In: Proceedings of the International Conference on World Wide Web, pp 61–62Google Scholar
  19. 19.
    Kim J, Kang S, Lim Y, Kim HM (2013) Recommendation algorithm of the app store by using semantic relations between apps. J Supercomput 65(1):16–26CrossRefGoogle Scholar
  20. 20.
    Kim MS, An K, Park H, Seo H, Kim J (2016) GTS: a fast and scalable graph processing method based on streaming topology to GPUS. In: Proceedings of the ACM International Conference on Management of Data, ACM, pp 447–461Google Scholar
  21. 21.
    Koren Y, Bell R, Volinsky C (2009) Matrix factorization techniques for recommender systems. Computer 42(8):30–37CrossRefGoogle Scholar
  22. 22.
    Kyrola A, Blelloch GE, Guestrin C (2012) Graphchi: large-scale graph computation on just a pc. In: Proceedings of the USENIX Symposium on Operating Systems Design and Implementation, USENIX, pp 31–46Google Scholar
  23. 23.
    Lee YC, Kim SW, Lee D (2018) GOCCF: graph-theoretic one-class collaborative filtering based on uninteresting items. In: Proceedings of the AAAI Conference on Artificial Intelligence, pp 3448–3456Google Scholar
  24. 24.
    Leskovec J, Kleinberg J, Faloutsos C (2007) Graph evolution: densification and shrinking diameters. ACM Trans Knowl Discov Data 1(1):2CrossRefGoogle Scholar
  25. 25.
    Liu NN, Yang Q (2008) Eigenrank: a ranking-oriented approach to collaborative filtering. In: Proceedings of the Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, ACM, pp 83–90Google Scholar
  26. 26.
    Ma L, Yang Z , Chen H , Xue J, Dai Y (2017) Garaph: efficient GPU-accelerated graph processing on a single machine with balanced replication. In: Proceedings of the USENIX Annual Technical Conference, pp 195–207Google Scholar
  27. 27.
    Maass S, Min C, Kashyap S, Kang W, Kumar M, Kim T (2017) Mosaic: Processing a trillion-edge graph on a single machine. In: Proceedings of the European Conference on Computer Systems, pp 527–543Google Scholar
  28. 28.
    Nelakurthi, AR, He, J (2017) Finding cut from the same cloth: cross network link recommendation via joint matrix factorization. In: Proceedings of the AAAI Conference on Artificial Intelligence, pp 1467–1473Google Scholar
  29. 29.
    Paterek A (2007) Improving regularized singular value decomposition for collaborative filtering. In: Proceedings of the KDD Cup and Workshop 2007, pp 5–8Google Scholar
  30. 30.
    Roy A, Mihailovic I, Zwaenepoel W (2013) X-stream: edge-centric graph processing using streaming partitions. In: Proceedings of the ACM Symposium on Operating Systems Principles, ACM, pp 472–488Google Scholar
  31. 31.
    Schafer JB, Frankowski D, Herlocker J, Sen S (2007) Collaborative filtering recommender systems. In: The Adaptive Web, vol 4321. Springer, Berlin, pp 291–324Google Scholar
  32. 32.
    Shi L, Zhao WX, Shen YD (2017) Local representative-based matrix factorization for cold-start recommendation. ACM Trans Inf Syst 36(2):22CrossRefGoogle Scholar
  33. 33.
    Takács G, Pilászy I, Németh B, Tikk D (2008) Matrix factorization and neighbor based algorithms for the netflix prize problem. In: Proceedings of the ACM Conference on Recommender Systems, ACM, pp 267–274Google Scholar
  34. 34.
    Takács G, Tikk D (2012) Alternating least squares for personalized ranking. In: Proceedings of the ACM Conference on Recommender Systems, ACM, pp 83–90Google Scholar
  35. 35.
    Walter FE, Battiston S, Schweitzer F (2008) A model of a trust-based recommendation system on a social network. Auton Agent Multi-Agent Syst 16(1):57–74CrossRefGoogle Scholar
  36. 36.
    Yang Z, Chen W, Huang J (2017) Enhancing recommendation on extremely sparse data with blocks-coupled non-negative matrix factorization. Neurocomputing 278:126–133CrossRefGoogle Scholar
  37. 37.
    Yildirim H, Krishnamoorthy MS (2008) A random walk method for alleviating the sparsity problem in collaborative filtering. In: Proceedings of the ACM Conference on Recommender Systems, ACM, pp 131–138Google Scholar
  38. 38.
    Zhou Y, Wilkinson D, Schreiber R, Pan R (2008) Large-scale parallel collaborative filtering for the netflix prize. In: Proceedings of the International Conference on Algorithmic Applications in Management, Springer, Berlin, pp 337–348Google Scholar
  39. 39.
    Zhu X, Han W, Chen W (2015) Gridgraph: large-scale graph processing on a single machine using 2-level hierarchical partitioning. In: Proceedings of the USENIX Annual Technical Conference, USENIX, pp 375–386Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer and SoftwareHanyang UniversitySeoulKorea
  2. 2.Department of Software and Computer EngineeringAjou UniversitySuwonKorea

Personalised recommendations