Abstract
One-class collaborative filtering (OCCF) is a fundamental research problem in a myriad of applications where the preferences of users can only be implicitly inferred from their one-class feedback (e.g., click an ad or purchase a product). The main challenges of OCCF lie in the sparsity of user feedback and the ambiguity of unobserved preferences. To effectively address the above two challenges, side networks from users and items are extensively exploited by state-of-the-art methods, which are predominantly focused on static settings. However, as real-world recommender systems evolve over time (where both the user–item ratings and user–user/item–item side networks will change), it is necessary to update OCCF results (e.g., the latent features of users and items) accordingly. The main obstacle for OCCF online update with co-evolving side networks lies in the fact that the coupled system is highly sensitive to local changes, which may cause massive perturbation on the latent features of a large number of users and items. In this paper, we propose a novel incremental one-class collaborative filtering (OCCF) method that can cope with co-evolving side networks efficiently. In particular, we model the evolution of latent features as a linear transformation process, which enables fast update of the latent features on the fly. Empirical experiments demonstrate that our method can provide high-quality recommendation results on real-world datasets.
Similar content being viewed by others
Notes
\(\Vert {\mathbf {a}}\Vert _2\) is the L2-norm of vector \(\mathbf {a}\).
Similarity between items is calculated by the cosine similarity between TF-IDF (Term Frequency-Inverse Document Frequency) [27] word vectors constructed from item reviews.
References
Aggarwal C, Subbian K (2014) Evolutionary network analysis: a survey. ACM Comput Surv 47(1):10
Aggarwal, CC, Li N (2011) On node classification in dynamic content-based networks. In: Proceedings of the 2011 SIAM international conference on data mining, pp 355–366
Boyd S, Vandenberghe L (2004) Convex optimization. Cambridge University Press, Cambridge
Chen C, Tong H (2015) Fast eigen-functions tracking on dynamic graphs. In: Proceedings of the 2015 SIAM international conference on data mining, pp 559–567
Chen C, Tong H, Xie L, Ying L, He Q (2016) Fascinate: fast cross-layer dependency inference on multi-layered networks. In: Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining, pp 765–774
Chen X, Candan KS (2014) LWI-SVD: low-rank, windowed, incremental singular value decompositions on time-evolving data sets. In: Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining, pp 987–996
Ding Y, Li X (2005) Time weight collaborative filtering. In: Proceedings of the 14th ACM international conference on information and knowledge management, pp 485–492
Field DJ (1994) What is the goal of sensory coding? Neural Comput 6(4):559–601
Herlocker JL, Konstan JA, Borchers A, Riedl J (1999) An algorithmic framework for performing collaborative filtering. In: Proceedings of the 22nd annual international ACM SIGIR conference on research and development in information retrieval, pp 230–237
Hofmann T (2004) Latent semantic models for collaborative filtering. ACM Trans Inf Syst 22(1):89–115
Hu Y, Koren Y, Volinsky C (2008) Collaborative filtering for implicit feedback datasets. In: Proceedings of the 8th IEEE international conference on data mining, pp 263–272
Huang X, Wu L, Chen E, Zhu H, Liu Q, Wang Y, Center BTI (2017) Incremental matrix factorization: a linear feature transformation perspective. In: Proceedings of the 26th international joint conference on artificial intelligence, pp 1901–1908
Jiang M, Cui P, Wang F, Zhu W, Yang S (2014) Scalable recommendation with social contextual information. IEEE Trans Knowl Data Eng 26(11):2789–2802
Koren Y (2008) Factorization meets the neighborhood: a multifaceted collaborative filtering model. In: Proceedings of the 14th ACM SIGKDD international conference on knowledge discovery and data mining, pp 426–434
Koren Y (2009) Collaborative filtering with temporal dynamics. In: Proceedings of the 15th ACM SIGKDD international conference on knowledge discovery and data mining, pp 447–456
Lee DD, Seung HS (1999) Learning the parts of objects by non-negative matrix factorization. Nature 401(6755):788–791
Lee DD, Seung HS (2001) Algorithms for non-negative matrix factorization. In: Advances in neural information processing systems, pp 556–562
Leskovec J, Backstrom L, Kumar R, Tomkins A (2008) Microscopic evolution of social networks. In: Proceedings of the 14th ACM SIGKDD international conference on knowledge discovery and data mining, pp 462–470
Leskovec J, Kleinberg J, Faloutsos C (2005) Graphs over time: densification laws, shrinking diameters and possible explanations. In: Proceedings of the 11th ACM SIGKDD international conference on knowledge discovery in data mining, pp 177–187
Li J, Dani H, Hu X, Tang J, Chang Y, Liu H (2017) Attributed network embedding for learning in a dynamic environment. In: Proceedings of the 26th ACM international conference on conference on information and knowledge management
Li J, Hu X, Jian L, Liu H (2016) Toward time-evolving feature selection on dynamic networks. In: Proceedings of the 2016 IEEE international conference on data mining, pp 1003–1008
Li Y, Hu J, Zhai C, Chen Y (2010) Improving one-class collaborative filtering by incorporating rich user information. In: Proceedings of the 19th ACM international conference on information and knowledge management, pp 959–968
Ma H, Zhou D, Liu C, Lyu MR, King I (2011) Recommender systems with social regularization. In: Proceedings of the 4th ACM international conference on web search and data mining, pp 287–296
Pan R, Zhou Y, Cao B, Liu NN, Lukose R, Scholz M, Yang Q (2008) One-class collaborative filtering. In: Proceedings of the 8th IEEE international conference on data mining, pp 502–511
Pan W, Chen L (2013) Gbpr: group preference based bayesian personalized ranking for one-class collaborative filtering. In: Proceedings of the 23rd international joint conference on artificial intelligence, vol 13, pp 2691–2697
Qin J, Ren K, Fang Y, Zhang W, Yu Y (2020) Sequential recommendation with dual side neighbor-based collaborative relation modeling. In: Proceedings of the 13th international conference on web search and data mining, pp 465–473
Rajaraman A, Ullman JD (2011) Mining of massive datasets. Cambridge University Press, Cambridge
Rendle S, Freudenthaler C, Gantner Z, Schmidt-Thieme L (2009) Bpr: Bayesian personalized ranking from implicit feedback. In: Proceedings of the 25th conference on uncertainty in artificial intelligence, pp 452–461
Rendle S, Freudenthaler C, Schmidt-Thieme L (2010) Factorizing personalized markov chains for next-basket recommendation. In: Proceedings of the 19th international conference on world wide web, pp 811–820
Shi Y, Karatzoglou A, Baltrunas L, Larson M, Oliver N, Hanjalic A (2012) Climf: learning to maximize reciprocal rank with collaborative less-is-more filtering. In: Proceedings of the sixth ACM conference on recommender systems, pp 139–146
Tang J, Gao H, Liu H (2012) mtrust: discerning multi-faceted trust in a connected world. In: Proceedings of the 5th ACM international conference on web search and data mining, pp 93–102
Tang J, Gao H, Liu H, Das Sarma A (2012) etrust: understanding trust evolution in an online world. In: Proceedings of the 18th ACM SIGKDD international conference on knowledge discovery and data mining, pp 253–261
Tang J, Hu X, Liu H (2013) Social recommendation: a review. Soc Netw Anal Min 3(4):1113–1133
Tang L, Liu H, Zhang J, Nazeri Z (2008) Community evolution in dynamic multi-mode networks. In: Proceedings of the 14th ACM SIGKDD international conference on knowledge discovery and data mining, pp 677–685
Tong H, Papadimitriou S, Sun J, Yu PS, Faloutsos C (2008) Colibri: fast mining of large static and dynamic graphs. In: Proceedings of the 14th ACM SIGKDD international conference on knowledge discovery and data mining, pp 686–694
Tong H, Papadimitriou S, Yu PS, Faloutsos C (2008) Fast monitoring proximity and centrality on time-evolving bipartite graphs. Stat Anal Data Min 1(3):142–156
Vinagre J, Jorge AM, Gama J (2014) Fast incremental matrix factorization for recommendation with positive-only feedback. In: International conference on user modeling, adaptation, and personalization. Springer, pp 459–470
Wang F, Tong H, Lin CY (2011) Towards evolutionary nonnegative matrix factorization. In: Twenty-fifth AAAI conference on artificial intelligence
Wang X, Lu W, Ester M, Wang C, Chen C (2016) Social recommendation with strong and weak ties. In: Proceedings of the 25th ACM international on conference on information and knowledge management, pp 5–14
Wu L, Ge Y, Liu Q, Chen E, Hong R, Du J, Wang M (2017) Modeling the evolution of users preferences and social links in social networking services. IEEE Trans Knowl Data Eng 29(6):1240–1253
Xiong L, Chen X, Huang TK, Schneider J, Carbonell JG (2010) Temporal collaborative filtering with bayesian probabilistic tensor factorization. In: Proceedings of the 2010 SIAM international conference on data mining. SIAM, pp 211–222
Yao Y, Tong H, Yan G, Xu F, Zhang X, Szymanski BK, Lu J (2014) Dual-regularized one-class collaborative filtering. In: Proceedings of the 23rd ACM international conference on conference on information and knowledge management, pp 759–768
Zhao T, McAuley J, King I (2014) Leveraging social connections to improve personalized ranking for collaborative filtering. In: Proceedings of the 23rd ACM international conference on conference on information and knowledge management, pp 261–270
Acknowledgements
This work is supported by National Science Foundation under Grant Nos. 1947135, and 2003924 by the NSF Program on Fairness in AI in collaboration with Amazon under Award No. 1939725. The content of the information in this document does not necessarily reflect the position or the policy of the Government or Amazon, and no official endorsement should be inferred. The US Government is authorized to reproduce and distribute reprints for Government purposes notwithstanding any copyright notation here on.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
The work was done while the first three authors were working at Futurewei Technologies, Inc.
Appendix
Appendix
1.1 Proof for Lemma 1
Proof
In Alg. 1, as term \(\tilde{\mathbf {M}}\), \(\tilde{\mathbf {N}}\), \(\tilde{\mathbf {R}}\), \(\mathbf {F}\) and \(\mathbf {G}\) remain the same during the iterations, we can pre-compute related constant terms to avoid redundant computations. The complexities of computing constant terms in Eqs. (9)–(13) are \(O(n_ir^2+\tilde{m}_rr)\) for \(\mathbf {F}'\tilde{\mathbf {R}}{\mathbf {G}}\); \(O(n_ur^2+\tilde{m}_ur)\) for \({\mathbf {F}}'\tilde{\mathbf {M}}{\mathbf {F}}\); \(O(n_ur^2)\) for \({\mathbf {F}}'{\mathbf {D}}_{\tilde{ M}}{\mathbf {F}}\); \(O(n_ur^2)\) for \({\mathbf {F}}'{\mathbf {F}}\); \(O(n_ir^2)\) for \({\mathbf {G}}'{\mathbf {G}}\); \(O(n_ir^2+\tilde{m}_ir)\) for \({\mathbf {G}}'\tilde{\mathbf {N}}{\mathbf {G}}\); and \(O(n_ir^2)\) for \({\mathbf {G}}'{\mathbf {D}}_{\tilde{ N}}{\mathbf {G}}\). Thus, the complexity for pre-computing is \(O((n_u+n_i)r^2+(\tilde{m}_u+\tilde{m}_i+\tilde{m}_r)r)\). In each iteration, it takes \(O(n_ur^2)\) and \(O(n_ir^2)\) to compute \({\mathbf {F}}{\mathbf {T}}_F\) (i.e., \(\tilde{\mathbf {F}}\)) and \({\mathbf {G}}{\mathbf {T}}_G\) (i.e., \(\tilde{\mathbf {G}}\)), respectively. The complexity of computing \(\mathbf {F}'\tilde{\mathbf {R}}_e{\mathbf {G}}{\mathbf {T}}_G\) is \(O(n_ir^2+\tilde{m}_rr)\), the rest of the computations for updating \({\mathbf {T}}_F\) and \({\mathbf {T}}_G\) are both \(O(r^3)\). Therefore, the overall complexity for Alg. 1 is \(O((\tilde{m}_u+\tilde{m}_i)r+((n_u+n_i+r)r^2+\tilde{m}_rr)t)\), where t is the number of iterations in the algorithm. \(\square \)
1.2 Proof for Lemma 2
Proof
The algorithm requires a space of \(O(n_ur+n_ir)\) to store \(\mathbf {F}\) and \(\mathbf {G}\), \(O(r^2)\) to store the transformation matrices \({\mathbf {T}}_F\) and \({\mathbf {T}}_G\), and \(O(\tilde{m}_u+\tilde{m}_i+\tilde{m}_r)\) to store the updated rating matrix and side networks. The space needed to compute and store the constant terms are \(O(n_ir+r^2)\) for \(\mathbf {F}'\tilde{\mathbf {R}}{\mathbf {G}}\); \(O(n_ur+r^2)\) for \({\mathbf {F}}'\tilde{\mathbf {M}}{\mathbf {F}}\) and \({\mathbf {F}}'{\mathbf {D}}_{\tilde{ M}}{\mathbf {F}}\); \(O(r^2)\) for \({\mathbf {F}}'{\mathbf {F}}\) and \({\mathbf {G}}'{\mathbf {G}}\); \(O(n_ir+r^2)\) for \({\mathbf {G}}'\tilde{\mathbf {N}}{\mathbf {G}}\) and \({\mathbf {G}}'{\mathbf {D}}_{\tilde{ N}}{\mathbf {G}}\), respectively. Therefore, the space costs for computing constant terms are \(O((n_u+n_i)r+r^2)\). In each iteration, it takes a space of \(O((n_u+n_i)r)\) to compute \(\tilde{\mathbf {F}}\) and \(\tilde{\mathbf {G}}\), \(O(\tilde{m}_r)\) to compute \(\tilde{\mathbf {R}}_e\), \(O(n_ir+r^2)\) to compute \(\mathbf {F}'\tilde{\mathbf {R}}_e{\mathbf {G}}{\mathbf {T}}_G\), \(O(r^2)\) for the rest of the matrix multiplications to update \({\mathbf {T}}_F\) and \({\mathbf {T}}_G\). Putting all these terms together, the overall space complexity for Alg. 1 is \(O((n_u+n_i+r)r+\tilde{m}_u+\tilde{m}_i+\tilde{m}_r)\). \(\square \)
Rights and permissions
About this article
Cite this article
Chen, C., Xia, Y., Zang, H. et al. Incremental one-class collaborative filtering with co-evolving side networks. Knowl Inf Syst 63, 105–124 (2021). https://doi.org/10.1007/s10115-020-01511-x
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10115-020-01511-x