Login | Register

A Framework Design for Integrating Knowledge Graphs into Recommendation Systems


A Framework Design for Integrating Knowledge Graphs into Recommendation Systems

Mao, Yuhao (2021) A Framework Design for Integrating Knowledge Graphs into Recommendation Systems. Masters thesis, Concordia University.

[thumbnail of YuhaoMao_MASc_W2021.pdf]
Text (application/pdf)
YuhaoMao_MASc_W2021.pdf - Accepted Version


Online recommendation is a significant research domain in artificial intelligence. A recommendation system recommends different items to users, and has applications in varied domains, including news, music, movies, etc. Initially, recommendation systems were based on demographic, content-based filtering and collaborative filtering. But collaborative filtering often suffers from sparsity and cold start problems, therefore, side information is often used to address these issues and improve recommendation performance. Currently, incorporating knowledge into the recommendation algorithm has attracted increasing attention, as it can help improve recommendation system performance. Knowledge graph representation and construction, and recommendation system development are independent but related; the triples of knowledge graph form the input to the recommendation system. While, there are a number of independent solutions for each of these two tasks, currently, there is no existing solution that can combine the construction of knowledge graph and input it to the recommendation system to provide an integrated work pipeline. Our major contribution is a modular, easy to use framework solution that fills this gap, essentially enabling integration of a structured knowledge graph and a recommendation system. Our framework provides multiple functionalities, including cross-language invocation and pipeline execution mechanism, and also knowledge graph query, modification and visualization. We instantiate our implementation of the proposed framework and evaluate its performance to show that we achieve higher accuracy in recommendations by using side information extracted from knowledge graphs. Our framework addresses the complete pipeline from constructing structured data knowledge graph to training recommendation model to incorporating the recommendation system into application domains.

Divisions:Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering
Item Type:Thesis (Masters)
Authors:Mao, Yuhao
Institution:Concordia University
Degree Name:M.A. Sc.
Program:Computer Science
Date:23 January 2021
Thesis Supervisor(s):Mokhov, Serguei A. and Mudur, Sudhir
Keywords:knowledge graphs, recommendation systems, side information, software frameworks
ID Code:988028
Deposited By: Yuhao Mao
Deposited On:27 Oct 2022 13:51
Last Modified:27 Oct 2022 13:51


[1] Aamir, M., and Bhusry, M. Recommendation system: state of the art
approach. International Journal of Computer Applications 120, 12 (2015).
[2] Abadi, M., Agarwal, A., Barham, P., Brevdo, E., Chen, Z., Citro,
C., Corrado, G. S., Davis, A., Dean, J., Devin, M., Ghemawat, S.,
Goodfellow, I., Harp, A., Irving, G., Isard, M., Jia, Y., Jozefowicz,
R., Kaiser, L., Kudlur, M., Levenberg, J., Man´e, D., Monga,
R., Moore, S., Murray, D., Olah, C., Schuster, M., Shlens, J.,
Steiner, B., Sutskever, I., Talwar, K., Tucker, P., Vanhoucke, V.,
Vasudevan, V., Vi´egas, F., Vinyals, O., Warden, P., Wattenberg,
M., Wicke, M., Yu, Y., and Zheng, X. TensorFlow: Large-scale machine
learning on heterogeneous systems, 2015. Software available from tensorflow.org.
[3] Abu Kausar, M., Dhaka, V., and Singh, S. Web crawler: A review.
International Journal of Computer Applications 63 (02 2013), 31–36.
[4] Adam Murray. How knowledge graphs boost the
benefits of analytics. https://www.sisense.com/blog/
how-knowledge-graphs-boost-the-benefits-of-analytics. Accessed:
[5] Adomavicius, G., and Tuzhilin, A. Toward the next generation of
recommender systems: a survey of the state-of-the-art and possible extensions.
IEEE Transactions on Knowledge and Data Engineering 17, 6 (2005), 734–749.
[6] Adomavicius, G., and Tuzhilin, A. Towards the Next Generation
of Recommender Systems: A Survey of the State-of-the-Art and Possible
Extensions. IEEE Transactions on Knowledge and Data Engineering 17, 6 (June
2005), 734–749.
[7] Aijal, J. What is a knowledge graph and how does
one work? https://thenextweb.com/podium/2019/06/11/
what-is-a-knowledge-graph-and-how-does-one-work/. Accessed: 2019-12-
[8] Akash Tandon. Reconciling your data and the world
with knowledge graphs. https://towardsdatascience.com/
Accessed: 2020-07-27.
[9] Almazro, D., Shahatah, G., Albdulkarim, L., Kherees, M., Martinez,
R., and Nzoukou, W. A survey paper on recommender systems, 2010.
[10] Arora, S. A survey on graph neural networks for knowledge graph completion,
[11] Auer, S., Kovtun, V., Prinz, M., Kasprzik, A., Stocker, M., and
Vidal, M. E. Towards a knowledge graph for science. In Proceedings of the
8th International Conference on Web Intelligence, Mining and Semantics (2018),
pp. 1–6.
[12] Bassil, Y. A survey on information retrieval, text categorization, and web
crawling, 2012.
[13] Berg, R. v. d., Kipf, T. N., and Welling, M. Graph convolutional matrix
completion. arXiv preprint arXiv:1706.02263 (2017).
[14] Besta, M., Peter, E., Gerstenberger, R., Fischer, M., Podstawski,
M., Barthels, C., Alonso, G., and Hoefler, T. Demystifying graph databases: Analysis and taxonomy of data organization, system designs, and
graph queries, 2019.
[15] Bobadilla, J., Ortega, F., Hernando, A., and Rrez, G. Recommender
systems survey. Know.-Based Syst. (July 2013).
[16] Brachman, R. J., and Levesque, H. J. Readings in Knowledge
Representation. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA,
[17] Cai-Nicolas Ziegler, D. F. Book-crossing dataset. [online], 2004. http:
[18] Caruso, F., Giuffrida, G., and Zarba, C. Subjective collaborative
filtering, 2011.
[19] Chah, N. Ok google, what is your ontology? or: Exploring freebase classification
to understand google’s knowledge graph, 2018.
[20] Cheng, L., Zhang, Y., Wu, D., Jie, Z., Bing, L., Lu, W., and Si, L.
Knowledge graph empowered entity description generation, 2020.
[21] Chong, D. Deep dive into netflix recommender
system. https://towardsdatascience.com/
deep-dive-into-netflixs-recommender-system-341806ae3b48. Accessed:
[22] Christophides, V. Resource Description Framework (RDF) Schema (RDFS).
Springer US, Boston, MA, 2009, pp. 2425–2428.
[23] Covington, P., Adams, J., and Sargin, E. Deep neural networks for
youtube recommendations. In Proceedings of the 10th ACM Conference on
Recommender Systems (New York, NY, USA, 2016).
[24] DB-ENGINES. Db-engines ranking of graph dbms. [Online; accessed 25-May-
2020], 2020. https://db-engines.com/en/ranking/graph+dbms.
[25] DB-ENGINES. Db-engines ranking of rdf stores. [Online; accessed 25-May-
2020], 2020. https://db-engines.com/en/ranking/rdf+store.
[26] Dong, X., Gabrilovich, E., Heitz, G., Horn, W., Lao, N., Murphy,
K., Strohmann, T., Sun, S., and Zhang, W. Knowledge vault: A web-scale
approach to probabilistic knowledge fusion. In Proceedings of the 20th ACM
SIGKDD international conference on Knowledge discovery and data mining
(2014), pp. 601–610.
[27] Edwin, N. M. Software frameworks, architectural and design patterns. Journal
of Software Engineering and Applications 2014 (2014).
[28] Ekstrand, M. D., Riedl, J. T., and Konstan, J. A. Collaborative filtering
recommender systems. Now Publishers Inc, 2011.
[29] Guo, Q., Zhuang, F., Qin, C., Zhu, H., Xie, X., Xiong, H., and He, Q.
A survey on knowledge graph-based recommender systems, 2020.
[30] Hanika, T., Marx, M., and Stumme, G. Discovering implicational
knowledge in wikidata, 2019.
[31] Heist, N., Hertling, S., Ringler, D., and Paulheim, H. Knowledge
graphs on the web – an overview, 2020.
[32] Hogan, A., Blomqvist, E., Cochez, M., d’Amato, C., de Melo, G.,
Gutierrez, C., Gayo, J. E. L., Kirrane, S., Neumaier, S., Polleres,
A., et al. Knowledge graphs. arXiv preprint arXiv:2003.02320 (2020).
[33] Huang, X., Fang, Q., Qian, S., Sang, J., Li, Y., and Xu, C.
Explainable interaction-driven user modeling over knowledge graph for sequential
recommendation. In Proceedings of the 27th ACM International Conference on
Multimedia (2019), pp. 548–556.
[34] Huang, X., Zhang, J., Li, D., and Li, P. Knowledge graph embedding based
question answering. In Proceedings of the Twelfth ACM International Conference
on Web Search and Data Mining (2019), pp. 105–113.
[35] Hug, N. SurPRISE scikit for recommender systems. [online], 2016–2020. http:
[36] Jenson, G. GER’s anatomy: How to generate good enough
recommendations. [online], Dec. 2014. https://maori.geek.nz/
[37] Jenson, G. Good enough recommendations (GER) recommendation engine.
[online], 2014–2015. https://github.com/grahamjenson/ger.
[38] Ji, S., Pan, S., Cambria, E., Marttinen, P., and Yu, P. S. A survey on
knowledge graphs: Representation, acquisition and applications, 2020.
[39] Kendall Clark. Turning data into knowledge graphs.
Accessed: 2018-03-09.
[40] Keskar, N. S., Mudigere, D., Nocedal, J., Smelyanskiy, M., and
Tang, P. T. P. On large-batch training for deep learning: Generalization
gap and sharp minima. CoRR abs/1609.04836 (2016).
[41] Lai, H. An openiss framework specialization for deep learning-based person
re-identification. Master’s thesis, Concordia University, 2019.
[42] Lawan, A., and Rakib, A. The semantic web rule language expressiveness
extensions-a survey, 2019.
[43] Lee, N., Torr, P. H., and Jaggi, M. Data parallelism in training sparse
neural networks. arXiv preprint arXiv:2003.11316 (2020).
[44] LensKit Project. LensKit recommendation framework. [online], 2018–2021.
[45] Lopes, N., Polleres, A., Passant, A., Decker, S., Bischof, S.,
Berrueta, D., Campos, A., Corlosquet, S., Euzenat, J., Erling, O., et al. Rdf and xml: Towards a unified query layer. In Proc. W3C workshop on
RDF next steps (2010), pp. No–pagination.
[46] Mao, Y. Knowledge graph-based deep learning rrecommendation system
framework. [online], Jan. 2021. https://github.com/OpenISS/
[47] Mao, Y., Mokhov, S. A., and Mudur, S. P. Application of knowledge
graphs to provide side information for improved recommendation accuracy,
2021. https://arxiv.org/abs/2101.03054, submitted for review to Science
of Computer Programming.
[48] McFee, B., Barrington, L., and Lanckriet, G. Learning content
similarity for music recommendation, 2011.
[49] medium. Introduction to Web Crawling and Scraping. [Online;
accessed 13-April-2018], 2018. https://medium.com/@allisonmorgan/
[50] Meng, Y., Chen, G., Liao, B., Guo, J., and Liu, W. Wasserstein
collaborative filtering for item cold-start recommendation, 2019.
[51] Merzi, O. Introduction to knowledge graphs. https://medium.com/
analytics-vidhya/introduction-to-knowledge. Accessed: 2019-12-09.
[52] Mizgajski, J., and Morzy, M. Affective recommender systems in online
news industry: How emotions influence reading choices. User Modeling and
User-Adapted Interaction (Apr. 2019).
[53] Mooney, R. J., and Roy, L. Content-based book recommending using
learning for text categorization, 1999.
[54] Morita, G. recommendationRaccoon (raccoon). [online], 2016–
2018. https://github.com/guymorita/recommendationRaccoon#
[55] Namaki, M. H., Chowdhury, F. A. R. R., Islam, M. R., Doppa, J. R.,
and Wu, Y. Learning to speed up query planning in graph databases, 2018.
[56] Narula, G. S. Ontology mapping and merging aspects in semantic web.
International Robotics and Automation Journal 4 (01 2018).
[57] Neo4j. Cypher query language. https://neo4j.com/developer/
cypher-query-language. Accessed: 2020-04-01.
[58] Nickel, M., Murphy, K., Tresp, V., and Gabrilovich, E. A review of
relational machine learning for knowledge graphs. Proceedings of the IEEE 104,
1 (2015), 11–33.
[59] Ning, Y., Shi, Y., Hong, L., Rangwala, H., and Ramakrishnan,
N. A gradient-based adaptive learning framework for efficient personal
recommendation. In Proceedings of the Eleventh ACM Conference on
Recommender Systems (2017), pp. 23–31.
[60] Nzeko’o, A. J. N., Tchuente, M., and Latapy, M. A general graphbased
framework for top-n recommendation using content, temporal and trust
information. arXiv preprint arXiv:1905.02681 (2019).
[61] Paulheim, H. Knowledge graph refinement: A survey of approaches and
evaluation methods. Semantic web 8, 3 (2017), 489–508.
[62] Pazzani, M. J., and Billsus, D. Content-based recommendation systems. In
The adaptive web. Springer, 2007, pp. 325–341.
[63] Pree, W. Meta patterns - a means for capturing the essentials of reusable
object-oriented design. In ECOOP (1994).
[64] Qu, Y., Bai, T., Zhang, W., Nie, J., and Tang, J. An end-to-end
neighborhood-based interaction model for knowledge-enhanced recommendation,
[65] Rastin, N., and Jahromi, M. Z. Using content features to enhance
performance of user-based collaborative filtering performance of user-based
collaborative filtering, 2014.
[66] REJOINER. The amazon recommendations secret to
selling more online. http://rejoiner.com/resources/
amazon-recommendations-secret-selling-online. Accessed: 2018-03-
[67] Rodriguez, A. Youtube recommendations drive 70
percent of what we watch. https://qz.com/1178125/
youtubes-recommendations-drive-70-of-what-we-watch/. Accessed:
[68] Rodriguez Garcia, M. A., and Hoehndorf, R. Inferring ontology graph
structures using owl reasoning. BMC bioinformatics 19, 1 (2018), 7.
[69] Schafer, J. B., Frankowski, D., Herlocker, J., and Sen, S.
Collaborative filtering recommender systems. In The adaptive web. Springer,
2007, pp. 291–324.
[70] Shang, M.-S., Zhang, Z.-K., Zhou, T., and Zhang, Y.-C. Collaborative
filtering with diffusion-based similarity on tripartite graphs, 2009.
[71] Shinavier, J. Optimizing real-time rdf data streams, 2010.
[72] Siddiqui, F., and Alam, M. A. Web ontology language design and related
tools: a survey. Journal of Emerging Technologies in Web Intelligence 3, 1 (2011),
[73] Singh, J. Universal gesture tracking framework in OpenISS and ROS and its
applications. Master’s thesis, Concordia University, Jan. 2020.
[74] Sun, Z., Guo, Q., Yang, J., Fang, H., Guo, G., Zhang, J., and Burke,
R. Research commentary on recommendations with side information: A survey and research directions. Electronic Commerce Research and Applications 37
(2019), 100879.
[75] Tomaszuk, D., and Hyland-Wood, D. Rdf 1.1: Knowledge representation
and data integration language for the web, 2020.
[76] Wang, H., Zhang, F., Wang, J., Zhao, M., Li, W., Xie, X., and
Guo, M. Ripplenet: Propagating user preferences on the knowledge graph
for recommender systems, 2018.
[77] Wang, H., Zhang, F., Xie, X., and Guo, M. Dkn: Deep knowledge-aware
network for news recommendation, 2018.
[78] Wang, H., Zhang, F., Zhang, M., Leskovec, J., Zhao, M., Li, W.,
and Wang, Z. Knowledge-aware graph neural networks with label smoothness
regularization for recommender systems, 2019.
[79] Wang, H., Zhang, F., Zhao, M., Li, W., Xie, X., and Guo, M. Multi-task
feature learning for knowledge graph enhanced recommendation, 2019.
[80] Wang, P., Jiang, H., Xu, J., and Zhang, Q. Knowledge graph construction
and applications for web search and beyond. Data Intelligence 1, 4 (2019), 333–
[81] Wang, Q., Mao, Z., Wang, B., and Guo, L. Knowledge graph embedding:
A survey of approaches and applications. IEEE Transactions on Knowledge and
Data Engineering 29, 12 (2017), 2724–2743.
[82] Wang, X., He, X., Cao, Y., Liu, M., and Chua, T.-S. Kgat: Knowledge
graph attention network for recommendation, 2019.
[83] Wang, X., Peng, Z., Wang, S., Yu, P. S., Fu, W., and Hong, X. Crossdomain
recommendation for cold-start users via neighborhood based feature
mapping, 2018.
[84] Wang, X., Wang, D., Xu, C., He, X., Cao, Y., and Chua, T.-
S. Explainable reasoning over knowledge graphs for recommendation. In
Proceedings of the AAAI Conference on Artificial Intelligence (2019), vol. 33,
pp. 5329–5336.
[85] Wang, X. H., Zhang, D. Q., Gu, T., and Pung, H. K. Ontology based
context modeling and reasoning using owl. In IEEE Annual Conference on
Pervasive Computing and Communications Workshops, 2004. Proceedings of the
Second (2004), pp. 18–22.
[86] Wei, J., He, J., Chen, K., Zhou, Y., and Tang, Z. Collaborative filtering
and deep learning based recommendation system for cold start items. Expert
Systems with Applications 69 (2017), 29–39.
[87] Wikipedia. Knowledge graph — Wikipedia, the free encyclopedia. https:
//en.wikipedia.org/wiki/Knowledge_Graph. Accessed: 2012-05-01.
[88] Wikipedia. Recommender system — Wikipedia, the free encyclopedia. https:
//en.wikipedia.org/wiki/Recommender_system. Accessed: 2020-07-27.
[89] Wikipedia. Web crawler — Wikipedia, the free encyclopedia. https://en.
wikipedia.org/wiki/Web_crawler. Accessed: 2020-07-27.
[90] Wikipedia. Software framework. [online], wikipedia, 2006–2011. https://en.
[91] Wikipedia contributors. Arangodb — Wikipedia, the free encyclopedia.
947546389, 2020. [Online; accessed 3-August-2020].
[92] Wu, Q., Zhang, H., and Zha, H. Inductive relational matrix completion,
[93] Zhang, S., Yao, L., Sun, A., and Tay, Y. Deep learning based recommender
system: A survey and new perspectives. ACM Computing Surveys (CSUR) 52,
1 (2019), 1–38.
[94] Zhao, Z., Han, S.-K., and So, I.-M. Architecture of knowledge graph
construction techniques. International Journal of Pure and Applied Mathematics
118, 19 (2018), 1869–1883.
All items in Spectrum are protected by copyright, with all rights reserved. The use of items is governed by Spectrum's terms of access.

Repository Staff Only: item control page

Downloads per month over past year

Research related to the current document (at the CORE website)
- Research related to the current document (at the CORE website)
Back to top Back to top