KGAT: Knowledge Graph Attention Network for Recommendation

Extracted source text ยท arXiv 1905.07854

\documentclass[sigconf]{acmart}
\usepackage{booktabs} % For formal tables
\usepackage{multirow}
\usepackage{color}
\usepackage{subfigure} % Written by Steven Douglas Cochran
\usepackage{array}
\usepackage{breqn}
\usepackage{{inputenc}}
\usepackage{balance}
\usepackage{multirow,tabularx}
\usepackage{longtable}
\usepackage{booktabs,longtable}
\usepackage{hhline}
\usepackage[flushleft]{threeparttable}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{epsfig}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage{thmtools}
\usepackage{enumitem}
\usepackage{verbatim}
\usepackage{amsfonts}
\usepackage{hyperref}
\hypersetup{colorlinks=false,linkcolor=blue,urlcolor=blue,citecolor=red}
\epstopdfsetup{update}

\newcommand\norm[1]{\left\lVert#1\right\rVert}
\newcommand{\Lapl}{\mathbf{\mathop{\mathcal{L}}}}
\newcommand{\Trans}[1]{{#1}^{\top}}
\newcommand{\Trace}[1]{tr\left({#1}\right)}
\newcommand{\Bracs}[1]{\left({#1}\right)}
\newcommand{\Mat}[1]{\mathbf{#1}}
\newcommand{\MatS}[3]{\mathbf{#1}^{#2}_{#3}}
\newcommand{\Space}[1]{\mathbb{#1}}
\newcommand{\Set}[1]{\mathcal{#1}}
\newcommand{\vectornorm}[1]{\left|\left|#1\right|\right|}
\newcommand{\bpi}{\boldsymbol{\pi}}
\newcommand{\BlockMat}[2]{\left[\begin{matrix}#1\\#2\end{matrix}\right]}
\newcommand{\BlockMatSquare}[4]{\left[\begin{matrix}#1 & #2\\#3 & #4\end{matrix}\right]}

\newcommand{\ie}{\emph{i.e., }}
\newcommand{\eg}{\emph{e.g., }}
\newcommand{\etal}{\emph{et al.}}
\newcommand{\st}{\emph{s.t. }}
\newcommand{\etc}{\emph{etc.}}
\newcommand{\wrt}{\emph{w.r.t. }}
\newcommand{\cf}{\emph{cf. }}
\newcommand{\aka}{\emph{aka. }}

\theoremstyle{definition}
\newtheorem{definition}{Definition}[section]

% defining the \BibTeX command - from Oren Patashnik's original BibTeX documentation.
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08emT\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}

\hyphenpenalty=10000
\tolerance=5000


\begin{document}

\settopmatter{printacmref=true}
\fancyhead{}

\title{KGAT: Knowledge Graph Attention Network for Recommendation}
% \title{End-to-end Modeling of High-order Relations in \\Knowledge Graph for Recommendation}

\author{Xiang Wang}
\affiliation{%
	\institution{National University of Singapore}
}
\email{xiangwang@u.nus.edu}

\author{Xiangnan He}
\authornote{Xiangnan He is the corresponding author.}
\affiliation{%
	\institution{University of Science and Technology of China}
}
\email{xiangnanhe@gmail.com}

\author{Yixin Cao}
\affiliation{%
	\institution{National University of Singapore}
}
\email{caoyixin2011@gmail.com}

\author{Meng Liu}
\affiliation{%
 \institution{Shandong University}
}
\email{mengliu.sdu@gmail.com}

\author{Tat-Seng Chua}
\affiliation{%
	\institution{National University of Singapore}
}
\email{dcscts@nus.edu.sg}

%\renewcommand{\shortauthors}{Xiang \etal}


\begin{abstract}

To provide more accurate, diverse, and explainable recommendation, it is compulsory to go beyond modeling user-item interactions and take side information into account. Traditional methods like factorization machine (FM) cast it as a supervised learning problem, which assumes each interaction as an independent instance with side information encoded. Due to the overlook of the relations among instances or items (\eg the director of a movie is also an actor of another movie), these methods are insufficient to distill the collaborative signal from the collective behaviors of users. 

In this work, we investigate the utility of knowledge graph (KG), which breaks down the independent interaction assumption by linking items with their attributes. We argue that in such a hybrid structure of KG and user-item graph, high-order relations --- which connect two items with one or multiple linked attributes --- are an essential factor for successful recommendation. We propose a new method named \textit{Knowledge Graph Attention Network} (KGAT) which explicitly models the high-order connectivities in KG in an end-to-end fashion. It recursively propagates the embeddings from a node's neighbors (which can be users, items, or attributes) to refine the node's embedding, and employs an attention mechanism to discriminate the importance of the neighbors. Our KGAT is conceptually advantageous to existing KG-based recommendation methods, which either exploit high-order relations by extracting paths or implicitly modeling them with regularization. Empirical results on three public benchmarks show that KGAT significantly outperforms state-of-the-art methods like Neural FM~\cite{NFM} and RippleNet~\cite{RippleNet}. Further studies verify the efficacy of embedding propagation for high-order relation modeling and the interpretability benefits brought by the attention mechanism. We release the codes and datasets at \url{https://github.com/xiangwang1223/knowledge_graph_attention_network}.
%importance of embedding propagation for learning better user and item representations, justifying the rationality and effectiveness of KGAT. 
%demonstrating significant improvements over state-of-the-art recommender models like CKE~\cite{CKE} and RippleNet~\cite{RippleNet}. 

%build recommendation model based on knowledge graph (KG), which links items and their attributes as a graph structure, to 

%Incorporating knowledge graph (KG) into recommender systems is promising to assist the representation learning of users and items, thus augmenting the modeling of user-item interactions. Existing efforts typically harness an item's (or a user's) representations by integrating semantic embeddings derived from KG that are related to the item (or the user's historical items). Nevertheless, we argue that such methods fail to encode the \textbf{collaborative signal}, which refers to sophisticated user-item connections, in the embedding process. As a result, the resultant embeddings may not be sufficient to characterize user preferences on items.

% Learning vector representations (\aka embeddings) of users and items is of crucial importance for modern recommender systems.
% Incorporating knowledge graph (KG) helps assist the representation learning, thus augmenting the modeling of user-item interaction.
% % In particular, KG stores the facts --- background knowledge of items and semantic relations among them --- in the form of entity-relation-entity triplets.
% Existing efforts typically harness an item's (or a user's) representation by integrating semantic embeddings derived from KG that are related to the item (or the previously interacted items).
% We argue that an inherent drawback of such methods is that, the \textbf{collaborative signal}, which refers to sophisticated user-item connections, is not encoded in the embedding process.
% As such, the resultant embeddings may not be sufficient to characterize user preferences on items.

%In this work, we propose to integrate the collaborative knowledge graph --- more specifically the integration of user-item interaction graph and knowledge graph --- into the embedding function. Inspired by the recent success of graph neural networks, we design a new framework, \emph{Knowledge-Graph Attention Network} (KGAT), to learn better representations of users and items by propagating embeddings on the collaborative knowledge graph. This leads to the expressiveness modeling of \textbf{high-order connectivity} in collaborative knowledge graph, effectively injecting the collaborative signal into the embedding process in an explicit manner. Moreover, attention mechanism is introduced to suggest parts of propagation flow to focus on; such attention flow serves as explanations behind an interaction. We conduct extensive experiments on three public benchmarks, demonstrating significant improvements over state-of-the-art recommender models like CKE~\cite{CKE} and RippleNet~\cite{RippleNet}. Further analysis verifies the importance of embedding propagation for learning better user and item representations, justifying the rationality and effectiveness of KGAT. 

\end{abstract}

\copyrightyear{2019}
\acmYear{2019}
\setcopyright{acmcopyright}
\acmConference[KDD '19]{The 25th ACM SIGKDD Conference on Knowledge
Discovery and Data Mining}{August 4--8, 2019}{Anchorage, AK, USA}
\acmBooktitle{The 25th ACM SIGKDD Conference on Knowledge Discovery and Data
Mining (KDD '19), August 4--8, 2019, Anchorage, AK, USA}
\acmPrice{15.00}
\acmDOI{10.1145/3292500.3330989}
\acmISBN{978-1-4503-6201-6/19/08}

%
% The code below should be generated by the tool at
% http://dl.acm.org/ccs.cfm
% Please copy and paste the code instead of the example below.
%
\begin{CCSXML}
	<ccs2012>
	<concept>
	<concept_id>10002951.10003317.10003347.10003350</concept_id>
	<concept_desc>Information systems~Recommender systems</concept_desc> <concept_significance>500</concept_significance>
	</concept>
	</ccs2012>
\end{CCSXML}

\ccsdesc[500]{Information systems~Recommender systems}
\keywords{Collaborative Filtering, Recommendation, Graph Neural Network, Higher-order Connectivity, Embedding Propagation, Knowledge Graph}
\maketitle

% \input{1_intro}
% \input{1_introduction}
\input{1_intro}
% \input{1_introduction}
\input{2_preliminary}
\input{3_method_new.tex}
% \input{3_method}
\input{4_experiment}
% \input{5_related}
\input{6_conclusion}


\bibliographystyle{ACM-Reference-Format}
\balance

\bibliography{ms}
\balance

\end{document}

\section{Introduction}
% Importance of side info modeling in recom, traditional FM
The success of recommendation system makes it prevalent in Web applications, ranging from search engines, E-commerce, to social media sites and news portals --- without exaggeration, almost every service that provides content to users is equipped with a recommendation system. 
To predict user preference from the key (and widely available) source of user behavior data, much research effort has been devoted to collaborative filtering (CF)~\cite{NAIS,NCF,NGCF}. Despite its effectiveness and universality, CF methods suffer from the inability of modeling side information~\cite{NSCR,TEM}, such as item attributes, user profiles, and contexts, thus perform poorly in sparse situations where users and items have few interactions. 
To integrate such information, a common paradigm is to transform them into a generic feature vector, together with user ID and item ID, and feed them into a supervised learning (SL) model to predict the score. Such a SL paradigm for recommendation has been widely deployed 
in industry~\cite{DIN,DeepCrossing,WideDeep}, and some representative models include factorization machine (FM)~\cite{FM}, NFM (neural FM)~\cite{NFM}, Wide\&Deep~\cite{WideDeep}, and xDeepFM~\cite{xDeepFM}, \etc 

\begin{figure}[t]
    \centering
	\includegraphics[width=0.4\textwidth]{chart/intro.png}
	\vspace{-10pt}
	\caption{A toy example of collaborative knowledge graph. $u_1$ is the target user to provide recommendation for. The yellow circle and grey circle denote the important users and items discovered by high-order relations but are overlooked by traditional methods. Best view in color.
	%illustration of collaborative knowledge graph and high-order connectivity for $u_1$.
	}
	\label{fig:intro}
	\vspace{-15pt}
\end{figure}

% % Drawback, why KG
% Although these methods have provided strong performance, a deficiency is that they model each interaction as an independent data instance and does not consider their relations. 
% This makes them insufficient to distill the attribute-based collaborative signal from the collective behaviors of users.  
% Figure \ref{fig:intro} shows an illustrative example. Assume the target user $u_1$ watches the movie $i_1$, which is \textit{directed by} the person $e_1$.
% To recommend for $u_1$, CF methods emphasize the histories of users who watched $i_1$, \ie $u_4$ and $u_5$; by feeding the movie director into SL models like FM, it will emphasize the movies that are \textit{directed by} $e_1$, \ie $i_2$.
% Nevertheless, due to the lack of strategies to relate instances, these models 1) fail to emphasize the users that watched \textbf{other movies} directed by $e_1$, \ie $u_2$ and $u_3$ marked in the yellow circle, and 2) fail to consider the movies that are acted by $e_1$, or more generally, have \textbf{other relations} with $e_1$ rather than \textit{directed by}, \ie $i_3$ and $i_4$ marked in the grey circle.
% We therefore argue that CF and SL methods have not fully explored the attribute-based collaborative signal.

Although these methods have provided strong performance, a deficiency is that they model each interaction as an independent data instance and do not consider their relations. 
This makes them insufficient to distill attribute-based collaborative signal from the collective behaviors of users.
As shown in Figure \ref{fig:intro}, there is an interaction between user $u_1$ and movie $i_1$, which is \textit{directed by} the person $e_1$. CF methods focus on the histories of similar users who also watched $i_1$, \ie $u_4$ and $u_5$; while SL methods emphasize the similar items with the attribute $e_1$, \ie $i_2$. Obviously, these two types of information not only are complementary for recommendation, but also form a high-order relationship between a target user and item together. However, existing SL methods fail to unify them and cannot take into account the high-order connectivity, such as the users in the yellow circle who watched \textbf{other movies} directed by the same person $e_1$, or the items in the grey circle that share \textbf{other common relations} with $e_1$.
% We therefore argue that CF and SL methods have not fully explored the attribute-based collaborative signal.

% Existing KG-based RS, limitations and challenges
To address the limitation of feature-based SL models, a solution is to take the graph of item side information, \aka knowledge graph\footnote{A KG is typically described as a heterogeneous network consisting of entity-relation-entity triplets, where the entity can be an item or an attribute.}~\cite{cao2018joint,cao2018neural}, into account to construct the predictive model. We term the hybrid structure of knowledge graph and user-item graph as \textit{collaborative knowledge graph} (CKG).
%, and aim to develop recommender models based on CKG.
As illustrated in Figure \ref{fig:intro}, the key to successful recommendation is to fully exploit the high-order relations in CKG, \eg the long-range connectivities:
\begin{itemize}[leftmargin=*]
    \item $u_1\xrightarrow{r_1}i_1\xrightarrow{-r_2} e_1 \xrightarrow{r_2} i_2 \xrightarrow{-r_1} \{u_2, u_3\},$
    \item $u_1\xrightarrow{r_1}i_1\xrightarrow{-r_2} e_1 \xrightarrow{r_3}\{i_3, i_4\},$
\end{itemize}
which represent the way to the yellow and grey circle, respectively.
% $u_1\xrightarrow{r_1}i_1\xrightarrow{-r_2} e_1 \xrightarrow{r_2} i_2 \xrightarrow{-r_1} \{u_2, u_3\},$ which represents the way to the yellow circle, and 
% $u_1\xrightarrow{r_1}i_1\xrightarrow{-r_2} e_1 \xrightarrow{r_3}\{i_3, i_4\},$
% which represents the way to the grey circle. 
Nevertheless, to exploit such high-order information the challenges are non-negligible: 1) the nodes that have high-order relations with the target user increase dramatically with the order size, which imposes computational overload to the model, and 2) the high-order relations contribute unequally to a prediction, which requires the model to carefully weight (or select) them. 

Several recent efforts have attempted to leverage the CKG structure for recommendation, which can be roughly categorized into two types, path-based~\cite{DBLP:conf/wsdm/YuRSGSKNH14,MetaFMG,MCRec,KGreasoning19,KGRnn18,RippleNet} and regularization-based~\cite{CKE,KGreasoning19,KGMemory18,KTUP}: 
\begin{itemize}[leftmargin=*]
    \item Path-based methods extract paths that carry the high-order information and feed them into predictive model. To handle the large number of paths between two nodes, they have either applied path selection algorithm 
    % tocite: 2-3 work, e.g., recsys18, aaai19, etc.
    to select prominent paths~\cite{KGRnn18,KGreasoning19}, 
    % tocite: 2-3 work
    or defined meta-path patterns to constrain the paths~\cite{yu2013collaborative,MCRec}. One issue with such two-stage methods is that the first stage of path selection has a large impact on the final performance, but it is not optimized for the recommendation objective. Moreover, defining effective meta-paths requires domain knowledge, which can be rather labor-intensive for complicated KG with diverse types of relations and entities, since many meta-paths have to be defined to retain model fidelity.
    \item Regularization-based methods devise additional loss terms that capture the KG structure to regularize the recommender model learning. 
    %tocite: 2-3 work, www 19? yongfeng?
    For example, KTUP~\cite{KTUP} and CFKG~\cite{CFKG} jointly train the two tasks of recommendation and KG completion with shared item embeddings. 
    Instead of directly plugging high-order relations into the model optimized for recommendation, these methods only encode them in an implicit manner. Due to the lack of an explicit modeling, neither the long-range connectivities are guaranteed to be captured, nor the results of high-order modeling are interpretable. 
\end{itemize}

Considering the limitations of existing solutions, we believe it is of critical importance to develop a model that can exploit high-order information in KG in an efficient, explicit, and end-to-end manner. Towards this end, we take inspiration from the recent developments of 
%tocite: GCN, graphSAGE
graph neural networks~\cite{GCN,GraphSage,GAT}, which have the potential of achieving the goal but have not been explored much for KG-based recommendation. 
Specifically, we propose a new method named \textit{Knowledge Graph Attention Network} (KGAT), which is equipped with two designs to correspondingly address the challenges in high-order relation modeling:
1) recursive embedding propagation, which updates a node's embedding based on the embeddings of its neighbors, and recursively performs such embedding propagation to capture high-order connectivities in a linear time complexity; and 
2) attention-based aggregation, which employs the neural attention mechanism~\cite{Attention,ACF} to learn the weight of each neighbor during a propagation, such that the attention weights of cascaded propagations can reveal the importance of a high-order connectivity.
Our KGAT is conceptually advantageous to existing methods in that: 1) compared with path-based methods, it avoids the labor-intensive process of materializing paths, thus is more efficient and convenient to use, and 2) compared with regularization-based methods, it directly factors high-order relations into the predictive model, thus all related parameters are tailored for optimizing the recommendation objective. 

The contributions of this work are summarized as follows:
\begin{itemize}[leftmargin=*]
    \item We highlight the importance of explicitly modeling the high-order relations in collaborative knowledge graph to provide better recommendation with item side information. 
    %To the best of our knowledge, this is the first work that adopts graph neural networks to capture higher-order connectivity for effective knowledge-aware recommendation.
    \item We develop a new method KGAT, which achieves high-order relation modeling in an explicit and end-to-end manner under the graph neural network framework. 
    %We develop a new framework, which encodes collaborative signal in the knowledge embedding function by transferring knowledge in the embedding space.
    \item We conduct extensive experiments on three public benchmarks, demonstrating the effectiveness of KGAT and its interpretability in understanding the importance of high-order relations. 
    %for top-N recommendation, showing significant improvements over the state-of-the-art methods
    % Empirical results indicate that using multiple propagation layers is capable of capturing the CF effect reflected in the higher-order connectivity.

\end{itemize}

%The regularization-based methods~\cite{CKE,KGreasoning19,RippleNet,KGMemory18} leverage KG triplets as a regularizer to guide the learning of user and item representations, while direct user-item connections are used to optimize the objective function for recommendation. For example, CKE~\cite{CKE} and DKN~\cite{DKN} generate semantic embeddings from KG via knowledge graph embedding (KGE) techniques, and then incorporate them into recommenders --- matrix factorization (MF)~\cite{BPRMF} and neural MF (NeuMF)~\cite{NCF}, respectively. Despite their great success, they only take direct connections between entities into consideration, while forgoing compositional relations within multi-hop paths. Such major limitation make them a suboptimal solution to transfer knowledge.

% Our method


%Incorporating knowledge graphs (KGs) into recommender systems attracts increasing attention from both industry and academia~\cite{CKE,KGreasoning19,RippleNet,KGMemory18,KGRnn18}, due to its comprehensive data: background knowledge of items and relations among them. The fact about an item is typically presented in the form of entity-relation-entity triplets, like (\emph{Hugh Jackman, IsCastOf, Logan}). Such structural knowledge can be seamlessly integrated with user-item interactions, opening up research possibility to understand user preferences on items.

% \begin{figure}[t]
%     \centering
% 	\includegraphics[width=0.4\textwidth]{chart/intro.pdf}
% 	\vspace{-10pt}
% 	\caption{An illustration of collaborative knowledge graph and high-order connectivity for $u_1$.}
% 	\label{fig:intro}
% 	\vspace{-10pt}
% \end{figure}

%Jointly exploring user behaviors and item knowledge, we are capable of establishing extra connectivity between users and items, which are complementary to user-item interaction data. Taking movie recommendation as an example (Figure~\ref{fig:intro}), the user of interest $u_1$ is connected to the target item $i_3$ via multi-hop relation paths like $p_1: u_1\xrightarrow{r_1} i_1\xrightarrow{-r_1} u_2\xrightarrow{r_1} i_3$ and $p_2: u_1\xrightarrow{r_1} i_1\xrightarrow{r_3} e_2\xrightarrow{-r_3} i_3$. Such connectivity helps to reason about unseen user-item interactions (\ie a potential recommendation) by synthesizing information from paths.
% Moreover, it carries rich signal to unveil the possible user intents behind an interaction.
% It is therefore promising to model such high-order connectivity into recommender systems, 
%Modeling such high-order connectivity, hence, is of crucial importance to inject the knowledge into the modeling of user-item interactions.


%While many efforts~\cite{CKE,KGreasoning19,RippleNet,KGMemory18,KGRnn18,yu2013collaborative,DBLP:conf/wsdm/YuRSGSKNH14,DBLP:conf/ijcai/GaoYWZLH18,MetaFMG,MCRec} have exploited KG in recommender systems, we argue that they do not fully explore the high-order connectivity. Here we categorize existing approaches into regularization- and path-based fashions, and highlight their technical limitations. The regularization-based methods~\cite{CKE,KGreasoning19,RippleNet,KGMemory18} leverage KG triplets as a regularizer to guide the learning of user and item representations, while direct user-item connections are used to optimize the objective function for recommendation. For example, CKE~\cite{CKE} and DKN~\cite{DKN} generate semantic embeddings from KG via knowledge graph embedding (KGE) techniques, and then incorporate them into recommenders --- matrix factorization (MF)~\cite{BPRMF} and neural MF (NeuMF)~\cite{NCF}, respectively. Despite their great success, they only take direct connections between entities into consideration, while forgoing compositional relations within multi-hop paths. Such major limitation make them a suboptimal solution to transfer knowledge.

%XN: can put in related work
%Another line of research introduces meta-paths~\cite{yu2013collaborative,DBLP:conf/wsdm/YuRSGSKNH14,DBLP:conf/ijcai/GaoYWZLH18,MetaFMG,MCRec} and paths~\cite{KGreasoning19,KGRnn18} to directly infer user preferences. For instance, FMG~\cite{MetaFMG} and MCRec~\cite{MCRec} encode paths as embeddings to represent the user-item connectivity \wrt meta-paths; RippleNet~\cite{RippleNet} recently construct ripple set (\ie high-order neighboring items derived from KG) for each user to enrich her representations. While explicitly modeling high-order connectivity, it is highly challenging in real-world recommendation scenarios because most of these methods require extensive domain knowledge to define meta-paths or labor-intensive feature engineering to obtain qualified paths. Moreover, the scale of paths can easily reach millions or even larger when a large number of KG entities are involved, making it prohibitive to efficiently transfer knowledge.

% To alleviate such issues, RippleNet~\cite{RippleNet} recently combines the regularization- and path-based methods, which conducts random walks on the fly to extract paths rooted each user and utilizes the representations of items involved in paths to enrich her representation.
% While achieving better performance, it still suffers from the following shortcomings: 1)~the KG triplets are weakly characterized to guide random walks; and 2)~the scale of paths easily reach millions or even larger with the increase of the size of KG, which 

%In this work, we propose to explicitly model both high-order connectivity and compositional relations, considering the whole heterogeneous graph structure, rather than on the granularity of triples or paths. We first unify a user-item knowledge graph by integrating the user-item bipartite graph with KG as Figure~\ref{fig:intro} shows. Generally speaking, there are tow types of signal carried in high-order connectivity: 1)~\emph{Collaborative filtering signal} indicates that similar users would exhibit similar preferences on items. For example, $u_1\xrightarrow{r_1} i_1\xrightarrow{-r_1} u_2$ reveals the behavior similarity between $u_1$ and $u_2$; $p_1$ suggests that $u_1$ is likely to adopt $i_3$, since her similar user $u_2$ has consumed $i_3$ before. 2)~\emph{Collaborative knowledge signal} illustrates that users tend to adopt items with similar properties.For instance, $u_1\xrightarrow{r_1} i_1\xrightarrow{r_2} e_1$ shows that $u_1$ might prefer movies acted by the actor $e_2$; thus $p_2$ reasons about $u_1$'s interest to $i_3$ by her fine-grained preference on $e_1$.Here we integrate two types of information as \textbf{collaborative signal}.

%We design a neural network, \emph{Knowledge-Graph Attention Network} (KGAT) to recursively propagate embeddings of all nodes along the whole graph structure.It essentially passes messages along high-order connectivities in the embedding space, so as to encode two types of collaborative signal seamlessly in the embedding space.Specially, we devise an \textbf{attentive embedding propagation} layer, which updates the representation of each node (it can be user, item, and entity) by aggregating messages from the connected neighbors.Wherein, user nodes not only are influenced by its neighbors, but also serve as bridges to connect items and enhance item relations in terms of user behaviors.Moreover, the attention mechanism is introduced to specify the contribution of each neighbor for propagating embeddings towards the node, where the relation between them is considered to augment the semantic information.By stacking multiple such layers, we are able to enforce the knowledge embeddings to capture the collaborative signal in high-order relational connectivity, getting rid of heavy feature engineering to extract paths.
%For example, stacking two layers injects the behavior similarity of $u_1\xleftarrow{r_1} i_2\xleftarrow{-r_1} u_2$ and fine-grained preference of $u_1\xleftarrow{r_1} i_1\xleftarrow{r_2} e_1$ into $u_1$'s representations;
%conducting three layers further captures the collaborative filtering and knowledge signals.When performing the propagation of knowledge embeddings, we are able to extract the attention flow (which is an aggregation of attention scores between two nodes) and determine the explanation priority of connectivities.As a result, we inject the collaborative signal into the knowledge embeddings for understanding user preferences on items. We conduct extensive experiments on three public benchmarks to verify the rationality and effectiveness of our method.

% \section{Introduction}
% Incorporating knowledge graphs (KGs) into recommender systems attracts increasing attention in both industry and academia~\cite{CKE,KGreasoning19,RippleNet,KGMemory18,KGRnn18}.
% KG typically contains background knowledge of items, consisting of real-world entities and the relations that hold between them.
% The structural knowledge has great potential to improve the accuracy and explainability of recommendation.


% Many prior efforts on leveraging KG has been done~\cite{CKE,DKN,KGreasoning19,KGMemory18,DBLP:conf/icpr/Do0V18,KGreasoning19,KGRnn18}. They mostly regards KG as relational information among items, which is complementary to user-item interactions, thus encoding KG as embeddings to improve the quality of item representations (or user representations) for recommendation framework (\ie collaborative filtering (CF)).
% Though effective, this type of side information utilization has not explored the full power of KG, and fails to consider recommendation from a comprehensive perspective among users and items.
% As shown in Figure~\ref{fig:intro}, we can infer $u_1$'s preference on $i_3$ by $p_1: u_1\xrightarrow{r_1} i_1\xrightarrow{-r_1} u_2\xrightarrow{r_1} i_3$ or $p_2: u_1\xrightarrow{r_1} i_1\xrightarrow{r_3} e_2\xrightarrow{-r_3} i_3$, or even both of them.
% Clearly, the high-order connectivities (\aka multi-hop paths) from a user to the target item play an equally important role as those among items.
% However, the above efforts only capture them in a rather implicit way when reconstructing user-item interactions.

% In this paper, we propose a knowledge-graph attention network to explicitly incorporate both connectivities into the embedding space.
% The basic idea is to unify a user-item knowledge graph and propagate knowledge embeddings over the heterogeneous graph, while considering not only the \emph{collaborative filtering signal}, which indicates that similar users would exhibit similar preferences on items, as well as \emph{collaborative knowledge signal}, which suggests that users would have interests on similar properties of items.
% Here we integrate two types of information as \textbf{collaborative signal}.
% For example, $u_1\xrightarrow{r_1} i_1\xrightarrow{-r_1} u_2$ indicates the behavior similarity between $u_1$ and $u_2$; hence $p_1$ suggests that $u_1$ is likely to adopt $i_3$, since her similar user $u_2$ has consumed $i_3$ before.
% Meanwhile, $u_1\xrightarrow{r_1} i_1\xrightarrow{r_2} e_1$ suggests that $u_1$ might prefer movies acted by the actor $e_2$; thus $p_2$ reasons about $u_1$'s interest to $i_3$ by her fine-grained preference on $e_1$.

% While it is intuitively useful to model high-order connectivities that carry collaborative signal, it is highly challenging to achieve this goal due to the following reasons.
% \begin{itemize}[leftmargin=*]
%     \item High-order connectivity contains high-level semantics, which are compositional of all nodes inside and multi-step relations. Recent effort, CFKG~\cite{CFKG}, only consider the direct relations between users, items, and entities, rather than sophisticated relations.
%     Hence it fails to characterize high-order connectivity inherent in user-item interactions.
%     the disregard of semantic relations within paths also limits their understanding of user preferences.
    
%     \item There indeed exist various types of collaborative signal, as different entities and relations in KG are involved to serve as internal bridges between users and items. Hence, prior efforts on transferring such signal as meta-paths~\cite{yu2013collaborative,DBLP:conf/wsdm/YuRSGSKNH14,DBLP:conf/ijcai/GaoYWZLH18,MetaFMG,Meta-path-2018kdd} and paths~\cite{KGreasoning19,KGRnn18} has suboptimal scalability and flexibility, since most of them requires extensive domain knowledge to define meta-paths or labor-intensive feature engineering to extract qualified paths.
%     Moreover, the scale of paths can easily reach millions or even larger in real-world scenarios, making it prohibitive to efficiently transfer high-quality knowledge.
% \end{itemize}

% \vspace{5px}
% \noindent\textbf{Present Work:}
% We propose to exploit graph neural network to encode two types of collaborative signal seamlessly.
% Instead of expanding the interaction paths for a user, we design a neural network, \emph{Knowledge-Graph Attention Network} (KGAT), to recursively propagate embeddings of all nodes along the graph structure.
% It essentially passes messages along high-order connectivities in the embedding space.
% Specially, we devise an \textbf{attentive embedding propagation} layer, which updates the representation of each node (it can be user, item, and entity) by aggregating messages from the connected neighbors.
% Wherein, user nodes not only are influenced by its neighbors, but also serve as bridges to connect items and enhance item relations in terms of user behaviors.
% Moreover, the attention mechanism is introduced to specify the contribution of each neighbor for propagating embeddings towards the node, where the relation between them is considered to augment the semantic information.
% By stacking multiple such layers, we are able to enforce the knowledge embeddings to capture the collaborative signal in high-order relational connectivity, getting rid of heavy feature engineering to extract paths.
% For example, stacking two layers injects the behavior similarity of $u_1\xleftarrow{r_1} i_2\xleftarrow{-r_1} u_2$ and fine-grained preference of $u_1\xleftarrow{r_1} i_1\xleftarrow{r_2} e_1$ into $u_1$'s representations;
% conducting three layers further captures the collaborative filtering and knowledge signals.
% When performing the propagation of knowledge embeddings, we are able to extract the attention flow (which is an aggregation of attention scores between two nodes) and determine the explanation priority of connectivities.
% As a result, we inject the collaborative signal into the knowledge embeddings for understanding user preferences on items. 
% We conduct extensive experiments on three public benchmarks to verify the rationality and effectiveness of our method.


\section{Task Formulation}

\begin{figure*}[ht]
    \centering
	\includegraphics[width=0.85\textwidth]{chart/framework2.png}
	\vspace{-10pt}
	\caption{Illustration of the proposed KGAT model. The left subfigure shows model framework of KGAT, and the right subfigure presents the attentive embedding propagation layer of KGAT.}
	\label{fig:framework}
	\vspace{-10pt}
\end{figure*}

We first introduce the concept of CKG and highlight the high-order connectivity among nodes, as well as the compositional relations.
% In what follows, we formulate our task.
% \subsection{Unified User-Item Knowledge Graph}
% At the core of knowledge-aware recommendation is to estimate how likely a user will adopt an item, based on historical interactions (\eg purchases and clicks) and knowledge graph (\eg background of items).

\vspace{5px}
\noindent\textbf{User-Item Bipartite Graph:}
In a recommendation scenario, we typically have historical user-item interactions (\eg purchases and clicks).
Here we represent interaction data as a user-item bipartite graph $\Set{G}_1$, which is defined as $\{(u,y_{ui},i)|u\in\Set{U},i\in\Set{I})\}$, where $\Set{U}$ and $\Set{I}$ separately denote the user and item sets, and a link $y_{ui}=1$ indicates that there is an observed interaction between user $u$ and item $i$; otherwise $y_{ui}=0$.

\vspace{5px}
\noindent\textbf{Knowledge Graph}.
In addition to the interactions, we have side information for items (\eg item attributes and external knowledge).
Typically, such auxiliary data consists of real-world entities and relationships among them to profile an item.
For example, a movie can be described by its director, cast, and genres.
We organize the side information in the form of knowledge graph $\Set{G}_2$, which is a directed graph composed of subject-property-object triple facts~\cite{KTUP}.
Formally, it is presented as $\{(h,r,t)|h,t\in\Set{E},r\in\Set{R}\}$, where each triplet describes that there is a relationship $r$ from head entity $h$ to tail entity $t$.
For example, (\emph{Hugh Jackman, ActorOf, Logan}) states the fact that Hugh Jackman is an actor of the movie Logan.
Note that $\Set{R}$ contains relations in both canonical direction (\eg \emph{ActorOf}) and inverse direction (\eg \emph{ActedBy}).
Moreover, we establish a set of item-entity alignments $\Set{A}=\{(i,e)|i\in\Set{I},e\in\Set{E}\}$, where $(i,e)$ indicates that item $i$ can be aligned with an entity $e$ in the KG.



% we have a knowledge graph of item side information,


% we has a knowledge graph $\Set{G}_2$ which is a directed graph composed of subject-property-object triple facts.
% It is formulated as $\{(h,r,t)|h,t\in\Set{E},r\in\Set{R}\}$, wherein, each triplet describes that there is a relationship $r$ from head entity $h$ to tail entity $t$.
% For example, (\emph{Hugh Jackman, IsActorOf, Logan}) states the fact that Hugh Jackman is an actor of movie Logan.

% In many recommendation scenarios, we are able to associate an item $i\in\Set{I}$ with an entity $e\in\Set{E}$ via string matching.
% For instance, the movie \emph{Logan} of interest for recommendation appears in KG as an entity with the same name.

% we have KG data, which is organized as a directed graph where nodes are entities $\Set{E}$ and edges are relations $\Set{R}$.
% Typically, it consists of entity-relation-entity triplets, formulated as $\Set{KG}=\{(h,r,t)|h,t\in\Set{E},r\in\Set{R}\}$, where each triplet $(h,r,t)$ describes a fact that there is relationship $r$ from head entity $h$ to tail entity $t$.
% For example, (\emph{Ed Sheeran, IsSingerOf, Shape of You}) states that \emph{Ed Sheeran} is the singer of the song \emph{Shape of You}.
% Note that $\Set{R}$ contains relations both in canonical direction (\eg \emph{IsSingerOf}) and in inverse direction (\eg \emph{SungBy}).

\vspace{5px}
\noindent\textbf{Collaborative Knowledge Graph}.
Here we define the concept of CKG, which encodes user behaviors and item knowledge as a unified relational graph.
We first represent each user behavior as a triplet, $(u,\emph{Interact},i)$, where $y_{ui}=1$ is represented as an additional relation \emph{Interact} between user $u$ and item $i$.
Then based on the item-entity alignment set, the user-item graph can be seamlessly integrated with KG as a unified graph $\Set{G}=\{(h,r,t)|h,t\in\Set{E}',r\in\Set{R}'\}$, where $\Set{E}'=\Set{E}\cup\Set{U}$ and $\Set{R}'=\Set{R}\cup\{\emph{Interact}\}$.

\vspace{5px}
\noindent\textbf{Task Description}
We now formulate the recommendation task to be addressed in this paper:
\begin{itemize}[leftmargin=*]
    \item \textbf{Input}: collaborative knowledge graph $\Set{G}$ that includes the user-item bipartite graph $\Set{G}_1$ and knowledge graph $\Set{G}_2$.
    \item \textbf{Output}: a prediction function that predicts the probability $\hat{y}_{ui}$ that user $u$ would adopt item $i$.
\end{itemize}
% \textbf{Input}: collaborative knowledge graph $\Set{G}$ including the user-item bipartite graph $\Set{G}_1$ and knowledge graph $\Set{G}_2$.

% \textbf{Output}: a prediction function that predicts the probability $\hat{y}_{ui}$ that user $u$ would adopt item $i$.

% We now define the problem w

% Our holistic goal  is twofold: given the user-item knowledge graph $\Set{G}$, we estimate how likely a user $u$ will conduct a target item $i$, and further extract top-$K$ connectivites to explain why the user should engage with the user.
% The above two goals shall be achieved by exploiting the structural knowledge in the unified graph, depicting user behaviors and item knowledge in a unified framework.



\vspace{5px}
\noindent\textbf{High-Order Connectivity}.
Exploiting high-order connectivity is of importance to perform high-quality recommendation.
Formally, we define the \emph{$L$-order connectivity} between nodes as a multi-hop relation path: $e_{0}\xrightarrow{r_{1}}e_{1}\xrightarrow{r_{2}}\cdots\xrightarrow{r_{L}}e_{L}$, where $e_{l}\in\Set{E}'$ and $r_{l}\in\Set{R}'$;
$(e_{l-1},r_{l},e_{l})$ is the $l$-th triplet, and $L$ is the length of the sequence.
To infer user preference, CF methods build upon behavior similarity among users --- more specifically similar users would exhibit similar preferences on items.
Such intuition can be represented as behavior-based connectivity like $u_1\xrightarrow{r_1} i_{1}\xrightarrow{-r_1} u_2\xrightarrow{r_1} i_2$,
% To be more specific, $u_1\xrightarrow{r_1} i_{1}\xrightarrow{-r_1} u_2$ indicates the behavior similarity between $u_1$ and $u_2$, as both users have interacted with $i_2$;
which suggests that $u_1$ would exhibit preference on $i_2$, since her similar user $u_2$ has adopted $i_2$ before.
Distinct from CF methods, SL models like FM and NFM focus on attributed-based connectivity, assuming that users tend to adopt items that share similar properties.
For example, $u_1\xrightarrow{r_1} i_{1}\xrightarrow{r_2} e_1 \xrightarrow{-r_2} i_2$ suggests that $u_1$ would adopt $i_2$ since it has the same director $e_1$ with $i_1$ she liked before.
However, FM and NFM treat entities as the values of individual feature fields, failing to reveal relatedness across fields and related instances.
For instance, it is hard to model $u_1\xrightarrow{r_1} i_{1}\xrightarrow{r_2} e_1 \xrightarrow{-r_3} i_2$, although $e_1$ serves as the bridge connecting \emph{director} and \emph{actor} fields.
We therefore argue that these methods do not fully explore the high-order connectivity and leave compositional high-order relations untouched.




%
%suggests that $u_1$ would exhibit preference on $i_2$, since her similar user $u_2$ has adopted $i_2$ before.
%Such connectivity pattern refers to \textbf{collaborative filtering signal}, which assumes that similar users would have similar preference on items.
%In addition, another path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{r_2} e_1$ reflects $u_1$'s fine-grained interest on $e_1$; the longer path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{r_2} e_1 \xleftarrow{-r_2} i_2$ thus suggests that $u_1$ would adopt $i_2$ since it has the same property $e_1$ with $i_1$ she liked before.
%We term such connectivity as \textbf{collaborative knowledge signal}, which helps unveils the possible user intent behind an interaction.
% \vspace{5px}
% \noindent\textbf{Task Description}
% Our holistic goal  is twofold: given the user-item knowledge graph $\Set{G}$, we estimate how likely a user $u$ will conduct a target item $i$, and further extract top-$K$ connectivites to explain why the user should engage with the user.
% The above two goals shall be achieved by exploiting the structural knowledge in the unified graph, depicting user behaviors and item knowledge in a unified framework.

% Through string matching, we are able to associate an item with an entity: $\Set{I}\subseteq\Set{E}$.
% Hereafter, we represent each user behavior as a triplet: $(u,\emph{Interact}i)$, where $\emph{Interact}$ relation suggests that $u$ interacted with $i$ before.
% As such, the interaction data can be seamlessly integrated with KG data as an enriched graph $\Set{G}=\{(h,r,t)|h,r\in\Set{E}',r\in\Set{R}'\}$, where $\Set{E}'=\Set{E}\cup\Set{U}$ and $\Set{R}'=\Set{R}\cup\{\emph{Interact}\}$.
% For consistency, the notation KG in the rest paper denotes the combined graph, including both original KG and user-item interaction data, otherwise noted.

%By exploring interlinks within KG, the connectivity between nodes can be expressed as paths.
%Formally, we define the \emph{$L$-order connectivity} from one node to another as a sequence of connected nodes:
%$e_{0}\xleftarrow{r_{1}}e_{1}\xleftarrow{r_{2}}\cdots\xleftarrow{r_{L-1}}e_{L}$, where $e_{l}\in\Set{E}'$ and $r_{1}\in\Set{R}'$;
%$(e_{l-1},r_{l},e_{l})$ is the $l$-th triplet in $s_{L}$, and $L$ is the length of the sequence.
%Such high-order connectivity contains rich semantics that carries collaborative signal.
%For example, the path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{-r_1} u_2$ indicates the behavior similarity between $u_1$ and $u_2$, as both users have interacted with $i_2$; the longer path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{-r_1} u_2\xleftarrow{r_1} i_2$ suggests that $u_1$ would exhibit preference on $i_2$, since her similar user $u_2$ has adopted $i_2$ before.
%Such connectivity pattern refers to \textbf{collaborative filtering signal}, which assumes that similar users would have similar preference on items.
%In addition, another path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{r_2} e_1$ reflects $u_1$'s fine-grained interest on $e_1$; the longer path $u_1\xleftarrow{r_1} i_{1}\xleftarrow{r_2} e_1 \xleftarrow{-r_2} i_2$ thus suggests that $u_1$ would adopt $i_2$ since it has the same property $e_1$ with $i_1$ she liked before.
%We term such connectivity as \textbf{collaborative knowledge signal}, which helps unveils the possible user intent behind an interaction.

%In this work, we focus on integrating sophisticated user-item connectivity into the representation learning.
%We aim to exploit the high-order connectivity, a natural way that encodes collaborative signal, to improve the embedding process.


% \subsection{Modeling Collaborative Signal}

% \section{Preliminary}
% We first introduce the integration of KG and user-item interactions.
% We then discuss how collaborative signal is encoded in high-order connectivity.

% \subsection{Knowledge-aware Recommendation}
% At the core of recommender systems is to estimate how likely a user will adopt an item, based on historical interactions (\eg purchases and clicks).
% We represent interaction data as a user-item bipartite graph, which is defined as $\{(u,\emph{Interact},i|u\in\Set{U},i\in\Set{I})\}$, where $\Set{U}$ and $\Set{I}$ separately denote the user and item sets, and \emph{Interact} is a defined relation to indicate that there is an observed interaction between user $u$ and item $i$ (\ie $y_{ui}$=1).

% Beyond the interaction data, we have a knowledge graph (KG), where nodes are entities $\Set{E}$ and edges are relations $\Set{R}$.
% Typically, it consists of entity-relation-entity triplets, formulated as $\Set{KG}=\{(h,r,t)|h,t\in\Set{E},r\in\Set{R}\}$, where each triplet $(h,r,t)$ describes a fact that there is relationship $r$ from head entity $h$ to tail entity $t$.
% For example, (\emph{Ed Sheeran, IsSingerOf, Shape of You}) states that \emph{Ed Sheeran} is the singer of the song \emph{Shape of You}.
% Note that $\Set{R}$ contains relations both in canonical direction (\eg \emph{IsSingerOf}) and in inverse direction (\eg \emph{SungBy}).

% Through string matching, we are able to associate an item with an entity: $\Set{I}\subseteq\Set{E}$, so as to integrate these two structure data into an enriched graph $\Set{G}=\{(h,r,t)|h,r\in\Set{E}',r\in\Set{R}'\}$, where $\Set{E}'=\Set{E}\cup\Set{U}$ and $\Set{R}'=\Set{R}\cup\{\emph{Interact}\}$.
% For consistency, the notation KG in the rest paper denotes the combined graph, including both original KG and user-item interaction data, otherwise noted.
% Given such KG data, interaction prediction of knowledge-aware recommendation aims to quantify the probability of user $u$ would interact with item $i$ as $\hat{y}(u,i)=P(u,i|\Set{G})$.

% \subsection{Collaborative Signals in Knowledge Graph}
% By exploring interlinks within KG, the connectivity between users and items can be expressed as paths.
% Formally, we define the \emph{$L$-order connectivity} from one node to another as a sequence of connected nodes:
% $s_{L}=[e_{0}\xleftarrow{r_{1}}e_{1}\xleftarrow{r_{2}}\cdots\xleftarrow{r_{L-1}}e_{L}]$, where $e_{l}\in\Set{E}'$ and $r_{1}\in\Set{R}'$;
% $(e_{l-1},r_{l},e_{l})$ is the $l$-th triplet in $s_{L}$, and $L$ is the length of the sequence.
% Consuming compositional semantics within high-order connectivity, we can establish two kinds of signal.

% \vspace{2px}
% \noindent\textbf{Collaborative Filtering Signals}.
% For example, the path 


% \subsection{Collaborative Signals in Knowledge Graph}
% By exploring the graph structure, the connectivities between users and items can be expressed as paths.
% Formally, we define the \textit{$L$-order connectivity} from one node to another as a sequence of connected nodes: 
% $s_{L}=[e_{0}\xleftarrow{r_{1}}e_{1}\xleftarrow{r_{2}}\cdots\xleftarrow{r_{L-1}}e_{L}]$, where $e_{l}\in\Set{E}'$ and $r_{1}\in\Set{R}'$;
% $(e_{l-1},r_{l},e_{l})$ is the $l$-th triplet in $s_{L}$, and $L$ is the length of the sequence.
% Roughly speaking, there are two kinds of signal derived from the interlinks.


% \vspace{2px}
% \noindent\textbf{Collaborative Filtering Signals}.
% As Figure~\ref{xx} demonstrates, the connectivities encode rich compositional semantics, \eg:
% \begin{itemize}[leftmargin=*]
% \item $u_{1}\xleftarrow{r_1} i_{1}$. This first-order connectivity indicates $u_1$'s direct preference on $i_1$.

% \item $u_{1}\xleftarrow{r_1} i_{2}\xleftarrow{r_2} u_{2}$. This second-order connectivity illustrates that $u_{1}$ and $u_{2}$ have common interest on item $i_{2}$.
% \end{itemize}
% Higher-order connectivity information reveals the possible CF signals, in the form of information flow from the target item to the user.
% For example, $u_{1}\xleftarrow{r_1} i_{2}\xleftarrow{r_2} u_{2}\xleftarrow{r_1} i_{4}$ indicates that, 
% since both $u_{1}$ and $u_{2}$ have shown common interest on $i_{2}$, it's likely that $u_{1}$ would also adopt $i_{4}$, since it is also liked by $u_{2}$; the same CF signal can be discovered from the connectivity $u_{1}\xleftarrow{r_1} i_{3}\xleftarrow{r_2} u_{3}\xleftarrow{r_1} i_{4}$, but through different intermediate nodes ($i_3$ and $u_3$) as the bridge.

% \vspace{2px}
% \noindent\textbf{Collaborative Knowledge Signals}.
% By involving other entities, we exhibit the relatedness between items, \eg:
% \begin{itemize}[leftmargin=*]
% \item $i_{1}\xleftarrow{r_3} e_{1}$. This first-order connectivity shows $i_1$'s property on $e_1$.

% \item $i_{1}\xleftarrow{r_3} e_{1}\xleftarrow{r_4} i_{2}$. This second-order connectivity suggests that $i_{1}$ and $i_{2}$ have semantic relatedness \wrt entity $e_{1}$.
% \end{itemize}
% By synthesizing such compositional semantics, the higher-order connectivity helps to unveil the possible user intents behind an interaction.
% For example, $u_{1}\xleftarrow{r_1} i_{2}\xleftarrow{r_3} e_{1}\xleftarrow{r_4} i_{4}$ indicates that, as $u_1$ likes $i_2$ that shares the same property $e_1$ with $i_4$, $u_1$ would also adopt $i_4$.
% As such, how to model such higher-order connectivities and aggregate CF and CK signals from them plays a pivotal role in recommendation.  
\section{Methodology}



We now present the proposed KGAT model, which exploits high-order relations in an end-to-end fashion.
Figure~\ref{fig:framework} shows the model framework, which consists of three main components:
1)~embedding layer, which parameterizes each node as a vector by preserving the structure of CKG;
2)~attentive embedding propagation layers, which recursively propagate embeddings from a node's neighbors to update its representation, and employ knowledge-aware attention mechanism to learn the weight of each neighbor during a propagation;
and 3)~prediction layer, which aggregates the representations of a user and an item from all propagation layers, and outputs the predicted matching score.



% To exploit high-order information in CKG, we now present our KGAT as illustrated in Figure~\ref{fig:framework}.
% KGAT consists of three main components: 1)~embedding layer, which parameterizes the ID of each node as vector representation by preserving the structure of CKG;
% 2)~attentive embedding propagation layers, which recursively propagate embeddings from a node's neighbors to update its representation, and employ the knowledge-aware attention mechanism to learn the weight of each neighbor during a propagation; and 3)~prediction layer, which aggregates the representations of a user and an item from all propagation layers, and outputs the predicted matching score.


\subsection{Embedding Layer}\label{sec:embedding-propagation}

Knowledge graph embedding is an effective way to parameterize entities and relations as vector representations, while preserving the graph structure.
Here we employ TransR~\cite{TransR}, a widely used method, on CKG.
To be more specific, it learns embeds each entity and relation by optimizing the translation principle $\Mat{e}^{r}_{h}+\Mat{e}_{r}\approx \Mat{e}^{r}_{t}$, if a triplet $(h,r,t)$ exists in the graph.
Herein, $\Mat{e}_{h},\Mat{e}_{t}\in\Space{R}^{d}$ and $\Mat{e}_{r}\in\Space{R}^{k}$ are the embedding for $h$, $t$, and $r$, respectively;
and $\Mat{e}_{h}^{r},\Mat{e}_{t}^{r}$ are the projected representations of $\Mat{e}_{h}$ and $\Mat{e}_{t}$ in the relation $r$'s space. 
Hence, for a given triplet $(h,r,t)$, its plausibility score (or energy score) is formulated as follows:
\begin{align}\label{transr}
    g(h,r,t)=\norm{\Mat{W}_{r}\Mat{e}_{h}+\Mat{e}_{r} - \Mat{W}_{r}\Mat{e}_{t}}_{2}^{2},
\end{align}
% where $\Mat{e}_{h},\Mat{e}_{t}\in\Space{R}^{k}$ and $\Mat{e}_{r}\in\Space{R}^{d}$ are the embeddings for $h$, $t$, and $r$, respectively;
% $d$ and $k$ separately denote the embedding size of entity space and relation space; 
where $\Mat{W}_{r}\in\Space{R}^{k\times d}$ is the transformation matrix of relation $r$, which projects entities from the $d$-dimension entity space into the $k$-dimension relation space.
A lower score of $g(h,r,t)$ suggests that the triplet is more likely to be true true, and vice versa.

The training of TransR considers the relative order between valid triplets and broken ones, and encourages their discrimination through a pairwise ranking loss:
\begin{align}\label{equ:kg-loss}
    \Lapl_{\text{KG}}=\sum_{(h,r,t,t')\in\Set{T}}-\ln\sigma\Big(g(h,r,t')-g(h,r,t)\Big),
\end{align}
where $\Set{T}=\{(h,r,t,t')|(h,r,t)\in\Set{G},(h,r,t')\not\in\Set{G}\}$, and $(h,r,t')$ is a broken triplet constructed by replacing one entity in a valid triplet randomly; $\sigma(\cdot)$ is the sigmoid function.
This layer models the entities and relations on the granularity of triples, working as a regularizer and injecting the direct connections into representations, and thus increases the model representation ability (evidences in Section~\ref{sec:ablation-study}.)

\subsection{Attentive Embedding Propagation Layers}
Next we build upon the architecture of graph convolution network~\cite{GCN} to recursively propagate embeddings along high-order connectivity;
moreover, by exploiting the idea of graph attention network~\cite{GAT}, we generate attentive weights of cascaded propagations to reveal the importance of such connectivity.
% Next we build upon the architecture of graph convolution~\cite{GCN} and graph attention mechanism~\cite{GAT}, in order to recursively propagate embeddings along high-order connectivity and use the attentive weights of cascaded propagations to reveal the importance of high-order connectivity.
Here we start by describing a single layer, which consists of three components: \emph{information propagation}, \emph{knowledge-aware attention}, and \emph{information aggregation}, and then discuss how to generalize it to multiple layers.


\vspace{5px}
\noindent\textbf{Information Propagation:}
% Generally speaking, each triplet is an atom of a high-order connectivity; one entity can be involved in multiple triplets, serving as the bridge connecting two triplets.
% When working as the tail, such a bridge entity can be influenced by the connected head entities; simultaneously, it can be viewed as the head entity, which propagates its own information to the connected tails.
One entity can be involved in multiple triplets, serving as the bridge connecting two triplets and propagating information.
Taking $e_1\xrightarrow{r_2} i_{2}\xrightarrow{-r_1} u_2$ and $e_2\xrightarrow{r_3} i_{2}\xrightarrow{-r_1} u_2$ as an example, item $i_2$ takes attributes $e_1$ and $e_2$ as inputs to enrich its own features, and then contributes user $u_2$'s preferences, which can be simulated by propagating information from $e_1$ to $u_2$.
We build upon this intuition to perform information propagation between an entity and its neighbors.

% Exploiting the local structure of an entity is promising to enrich the representation of the target entity.
% Intuitively, the historical items of a user exhibit the user's preference distribution~\cite{SVDFeatures,FISM};
% meanwhile, the user group that consumes an item and the entities directly connected to the item can be viewed as the item's features, which reflect the similarity conditioned on user behaviors and knowledge metadata.
% We build upon this intuition to perform information propagation between an entity and its neighbors.

Considering an entity $h$, we use $\Set{N}_{h}=\{(h,r,t)|(h,r,t)\in\Set{G}\}$ to denote the set of triplets where $h$ is the head entity, termed ego-network~\cite{DeepInf}.
To characterize the first-order connectivity structure of entity $h$, we compute the linear combination of $h$'s ego-network:
\begin{align}
    \Mat{e}_{\Set{N}_{h}}=\sum_{(h,r,t)\in\Set{N}_{h}}\pi(h,r,t)\Mat{e}_{t},
\end{align}
where $\pi(h,r,t)$ controls the decay factor on each propagation on edge $(h,r,t)$, indicating how much information being propagated from $t$ to $h$ conditioned to relation $r$.


% From the viewpoint of information propagation, $\pi(h,r,t)$ indicates how much information being propagated from the neighbor $t$ to the ego node $h$ conditioned to relation $r$.

% From the viewpoint of representation learning, $\pi(h,r,t)$ reflects how much the neighbor conditioned to the relation contributes the ego node's representation.
% From the viewpoint of information propagation, $\pi(h,r,t)$ can be interpreted as a discount factor, considering the information being propagated should decay with connectivity lengths~\cite{DBLP:conf/icml/GilmerSRVD17}.

\vspace{5px}
\noindent\textbf{Knowledge-aware Attention:}
We implement $\pi(h,r,t)$ via relational attention mechanism, which is formulated as follows:
\begin{align}\label{equ:attention}
    \pi(h,r,t)=\Trans{(\Mat{W}_{r}\Mat{e}_{t})}\text{tanh}\Big((\Mat{W}_{r}\Mat{e}_{h}+\Mat{e}_{r})\Big),
\end{align}
where we select tanh~\cite{GAT} as the nonlinear activation function.
% $\rho(\cdot)$ is a nonlinear activation function set as tanh~\cite{GAT,Attention} here.
This makes the attention score dependent on the distance between $e_h$ and $e_t$ in the relation $r$'s space, \eg propagating more information for closer entities.
Note that, we employ only inner product on these representations for simplicity, and leave the further exploration of the attention module as the future work.

Hereafter, we normalize the coefficients across all triplets connected with $h$ by adopting the softmax function:
\begin{align}
    \pi(h,r,t)=\frac{\exp(\pi(h,r,t))}{\sum_{(h,r',t')\in\Set{N}_{h}}\exp(\pi(h,r',t'))}.
\end{align}
As a result, the final attention score is capable of suggesting which neighbor nodes should be given more attention to capture collaborative signals.
When performing propagation forward, the attention flow suggests parts of the data to focus on, which can be treated as explanations behind the recommendation.




% The mechanism of information propagation in GCN~\cite{GCN} and GraphSage~\cite{GraphSage} typically sets the discount factor between two nodes as $1/\sqrt{|\Set{N}_{h}||\Set{N}_{t}|}$ or $1/|\Set{N}_{t}|$.
% Such a heuristic setting depends only on the proximity structure of graph, failing to specify varying importance of neighbors.
% Taking $e_1\xrightarrow{r_2} i_{2}$ and $e_2\xrightarrow{r_3} i_{2}$ as an example, when characterizing $i_2$, $e_1$ with $r_1$ might contribute more than $e_2$ with $r_3$, rather than equally.

Distinct from the information propagation in GCN~\cite{GCN} and GraphSage~\cite{GraphSage} which set the discount factor between two nodes as $1/\sqrt{|\Set{N}_{h}||\Set{N}_{t}|}$ or $1/|\Set{N}_{t}|$, our model not only exploits the proximity structure of graph, but also specify varying importance of neighbors.
Moreover, distinct from graph attention network~\cite{GAT} which only takes node representations as inputs, we model the relation $e_r$ between $e_h$ and $e_t$, encoding more information during propagation.
We perform experiments to verify the effectiveness of the attention mechanism and visualize the attention flow in Section~\ref{sec:ablation-study} and Section~\ref{sec:visualization}, respectively.


% Hereafter, we normalize the coefficients across all triplets connected with $h$ by adopting softmax function:
% \begin{align}
%     \pi(h,r,t)=\frac{\exp(\pi(h,r,t))}{\sum_{(h,r',t')\in\Set{N}_{h}}\exp(\pi(h,r',t'))}.
% \end{align}
% As a result, the final attention score is capable of suggesting which neighboring nodes should get more attention to capture CF signals.
% When performing propagation forward, our attention flow suggests parts of the data to focus on, which can be treated as explanations behind the recommendation.
% We perform experiments to verify the effectiveness of the attention mechanism and visualize the attention flow in Section~\ref{sec:ablation-study} and Section~\ref{sec:visualization}, respectively.

\vspace{5px}
\noindent\textbf{Information Aggregation}:
The final phase is to aggregate the entity representation $\Mat{e}_h$ and its ego-network representations $\Mat{e}_{\Set{N}_{h}}$ as the new representation of entity $h$ --- more formally, $\Mat{e}_{h}^{(1)}=f(\Mat{e}_h,\Mat{e}_{\Set{N}_{h}})$.
We implement $f(\cdot)$ using three types of aggregators:
\begin{itemize}[leftmargin=*]
    \item \emph{GCN Aggregator}~\cite{GCN} sums two representations up and applies a nonlinear transformation, as follows:
        \begin{align}
            f_{\text{GCN}}=\text{LeakyReLU}\Big(\Mat{W}(\Mat{e}_{h} + \Mat{e}_{\Set{N}_{h}})\Big),
        \end{align}
        where we set the activation function set as LeakyReLU~\cite{Nonlinear}; $\Mat{W}\in\Space{R}^{d'\times d}$ are the trainable weight matrices to distill useful information for propagation, and $d'$ is the transformation size.
    
    \item \emph{GraphSage Aggregator}~\cite{GraphSage} concatenates two representations, followed by a nonlinear transformation:
        \begin{align}
            f_{\text{GraphSage}}=\text{LeakyReLU}\Big(\Mat{W}(\Mat{e}_{h} || \Mat{e}_{\Set{N}_{h}})\Big),
        \end{align}
        where $||$ is the concatenation operation.
        
    \item \emph{Bi-Interaction Aggregator} is carefully designed by us to consider two kinds of feature interactions between $\Mat{e}_{h}$ and $\Mat{e}_{\Set{N}_{h}}$, as follows:
        \begin{align}
            f_{\text{Bi-Interaction}}=&\text{LeakyReLU}\Big(\Mat{W}_{1}(\Mat{e}_{h} + \Mat{e}_{\Set{N}_{h}})\Big) +\nonumber\\ &\text{LeakyReLU}\Big(\Mat{W}_{2}(\Mat{e}_{h}\odot\Mat{e}_{\Set{N}_{h}})\Big),
        \end{align}
        where $\Mat{W}_1,\Mat{W}_2\in\Space{R}^{d'\times d}$ are the trainable weight matrices, and $\odot$ denotes the element-wise product. Distinct from GCN and GraphSage aggregators, we additionally encode the feature interaction between $\Mat{e}_{h}$ and $\Mat{e}_{\Set{N}_{h}}$. This term makes the information being propagated sensitive to the affinity between $\Mat{e}_{h}$ and $\Mat{e}_{\Set{N}_{h}}$, \eg passing more messages from similar entities.
\end{itemize}
To summarize, the advantage of the embedding propagation layer lies in explicitly exploiting the first-order connectivity information to relate user, item, and knowledge entity representations.
We empirically compare the three aggregators in Section~\ref{sec:aggregator}.

\vspace{5px}
\noindent\textbf{High-order Propagation:}
We can further stack more propagation layers to explore the high-order connectivity information, gathering the information propagated from the higher-hop neighbors.
More formally, in the $l$-th steps, we recursively formulate the representation of an entity as:
\begin{gather}\label{equ:l-aggregator}
    \Mat{e}_{h}^{(l)}=f\Big(\Mat{e}^{(l-1)}_{h}, \Mat{e}^{(l-1)}_{\Set{N}_{h}}\Big),
\end{gather}
wherein the information propagated within $l$-ego network for the entity $h$ is defined as follows,
\begin{gather}\label{equ:l-message}
    \Mat{e}^{(l-1)}_{\Set{N}_{h}}=\sum_{(h,r,t)\in\Set{N}_{h}}\pi(h,r,t)\Mat{e}^{(l-1)}_{t},
\end{gather}
$\Mat{e}_{t}^{(l-1)}$ is the representation of entity $t$ generated from the previous information propagation steps, memorizing the information from its $(l-1)$-hop neighbors;
$\Mat{e}_{h}^{(0)}$ is set as $\Mat{e}_{h}$ at the initial information-propagation iteration.
It further contributes to the representation of entity $h$ at layer $l$.
As a result, high-order connectivity like $u_2\xrightarrow{r_1} i_{2}\xrightarrow{-r_2} e_1 \xrightarrow{r_2} i_1\xrightarrow{-r_1} u_1$ can be captured in the embedding propagation process.
Furthermore, the information from $u_{2}$ is explicitly encoded in $\Mat{e}^{(3)}_{u_{1}}$.
Clearly, the high-order embedding propagation seamlessly injects the attribute-based collaborative signal into the representation learning process.


\subsection{Model Prediction}
% \subsection{Model Prediction}

After performing $L$ layers, we obtain multiple representations for user node $u$, namely $\{\Mat{e}^{(1)}_{u},\cdots,\Mat{e}^{(L)}_{u}\}$;
analogous to item node $i$, $\{\Mat{e}^{(1)}_{i},\cdots,\Mat{e}^{(L)}_{i}\}$ are obtained.
As the output of the $l$-th layer is the message aggregation of the tree structure depth of $l$ rooted at $u$ (or $i$) as shown in Figure~\ref{fig:intro}, the outputs in different layers emphasize the connectivity information of different orders.
We hence adopt the layer-aggregation mechanism~\cite{JumpKG} to concatenate the representations at each step into a single vector, as follows:
\begin{align}\label{equ:final-rep}
    \Mat{e}^{*}_{u}=\Mat{e}^{(0)}_{u}\Vert\cdots\Vert\Mat{e}^{(L)}_{u},\quad
    \Mat{e}^{*}_{i}=\Mat{e}^{(0)}_{i}\Vert\cdots\Vert\Mat{e}^{(L)}_{i},
\end{align}
where $\Vert$ is the concatenation operation.
By doing so, we not only enrich the initial embeddings by performing the embedding propagation operations, but also allow controlling the strength of propagation by adjusting $L$.

Finally, we conduct inner product of user and item representations, so as to predict their matching score:
\begin{align}
    \hat{y}(u,i)=\Trans{\Mat{e}^{*}_{u}}\Mat{e}^{*}_{i}.
\end{align}
% In this work, we emphasize the embedding function learning, thus only consider the linear feature interaction between these two representations, leaving the exploration of nonlinear patterns in the future work.

\subsection{Optimization}

To optimize the recommendation model, we opt for the BPR loss~\cite{BPRMF}.
Specifically, it assumes that the observed interactions, which indicate more user preferences, should be assigned higher prediction values than unobserved ones:
\begin{align}\label{equ:cf-loss}
	\Lapl_{\text{CF}}=\sum_{(u,i,j)\in\Set{O}}-\ln\sigma\Big(\hat{y}(u,i)-\hat{y}(u,j)\Big)
\end{align}
where $\Set{O}=\{(u,i,j)|(u,i)\in\Set{R}^{+}, (u,j)\in\Set{R}^{-}\}$ denotes the training set, $\Set{R}^{+}$ indicates the observed (positive) interactions between user $u$ and item $j$ while $\Set{R}^{-}$ is the sampled unobserved (negative) interaction set;
$\sigma(\cdot)$ is the sigmoid function.

Finally, we have the objective function to learn Equations~\eqref{equ:kg-loss} and~\eqref{equ:cf-loss} jointly, as follows:
\begin{align}\label{equ:loss}
    \Lapl_{\text{KGAT}}=\Lapl_{\text{KG}}+\Lapl_{\text{CF}}+\lambda\norm{\Theta}^{2}_{2},
\end{align}
where $\Theta=\{\Mat{E}, \Mat{W}_{r},\forall l\in\Set{R},\Mat{W}_{1}^{(l)},\Mat{W}_{2}^{(l)}, \forall l \in \{1,\cdots,L\}\}$ is the model parameter set, and $\Mat{E}$ is the embedding table for all entities and relations;
$L_{2}$ regularization parameterized by $\lambda$ on $\Theta$ is conducted to prevent overfitting.
It is worth pointing out that in terms of model size, the majority of model parameters comes from the entity embeddings (\eg 6.5 million on experimented Amazon dataset), which is almost identical to that of FM;
the propagation layer weights are lightweight (\eg 5.4 thousand for the tower structure of three layers, \ie $64-32-16-8$, on the Amazon dataset).

\subsubsection{\textbf{Training:}}
We optimize $\Lapl_{KG}$ and $\Lapl_{CF}$ alternatively, where mini-batch Adam~\cite{Adam} is adopted to optimize the embedding loss and the prediction loss.
Adam is a widely used optimizer, which is able to adaptively control the learning rate \wrt the absolute value of gradient.
In particular, for a batch of randomly sampled $(h,r,t,t')$, we update the embeddings for all nodes; hereafter, we sample a batch of $(u,i,j)$ randomly, retrieve their representations after $L$ steps of propagation, and then update model parameters by using the gradients of the prediction loss.

\subsubsection{\textbf{Time Complexity Analysis:}}
As we adopt the alternative optimization strategy, the time cost mainly comes from two parts.
For the knowledge graph embedding (\cf Equation~\eqref{equ:kg-loss}), the translation principle has computational complexity $O(|\Set{G}_{2}|d^{2})$.
For the attention embedding propagation part, the matrix multiplication of the $l$-th layer has computational complexity $O(|\Set{G}|d_{l}d_{l-1})$; and $d_{l}$ and $d_{l-1}$ are the current and previous transformation size.
For the final prediction layer, only the inner product is conducted, for which the time cost of the whole training epoch is $O(\sum_{l=1}^{L}|\Set{G}|d_{l})$.
Finally, the overall training complexity of KGAT is $O(|\Set{G}_{2}|d^{2}+\sum_{l=1}^{L}|\Set{G}|d_{l}d_{l-1} +|\Set{G}|d_{l})$.

As online services usually require real-time recommendation, the computational cost during inference is more important that that of training phase. Empirically, FM, NFM, CFKG, CKE, GC-MC, \textbf{KGAT}, MCRec, and RippleNet cost around $700$s, $780$s, $800$s, $420$s, $500$s, $\Mat{560}$s, $20$ hours, and $2$ hours for all testing instances on Amazon-Book dataset, respectively.
As we can see, KGAT achieves comparable computation complexity to SL models (FM and NFM) and regularization-based methods (CFKG and CKE), being much efficient that path-based methods (MCRec and RippleNet).



% Empirically, under the same experimental settings (as explained in Section~\ref{sec:experiment-settings}), FM, NFM, and KGAT cost around $40$s, $50$s, and $150$s per epoch on Last-FM dataset for training. Hence, KGAT achieves comparable computation complexity to FM and NFM.

% \subsubsection{\textbf{Message and Node Dropout.}}
% Although deep learning models have strong representation ability, they usually suffer from the overfitting issue.
% Dropout is an effective solution to prevent neural networks from overfitting.
% Following the prior work~\cite{GC-MC}, we adopt two dropout techniques: \emph{message dropout} and \emph{node dropout}.
% Message dropout randomly drops out the outgoing messages.
% In particular, we propose to adopt dropout on the messages being propagated in Equation~\eqref{equ:l-message}, with a probability $p_{1}$.
% As such, in the $l$-th propagation layer, only part of messages contributes to the new representations.
% We also conduct node dropout to randomly block a particular node and discard all its outgoing messages.
% Especially, for the $l$-th propagation layer, we randomly drop $p_{2}$ percent on the nodes of the Laplacian matrix, where $p_{2}$ is the dropout ratio.

% While the message dropout endows the representations more robustness against the presence or absence of single connections between users and items, node dropout focuses on reducing the influences of particular users or items~\cite{GC-MC}.
% We perform experiments to investigate the role of message dropout and node dropout, analyzing their effectiveness in Section~\ref{sec:dropout}.

\section{Experiments}

We evaluate our proposed method, especially the embedding propagation layer, on three real-world datasets.
We aim to answer the following research questions:
\begin{itemize}[leftmargin=*]
	\item \textbf{RQ1}: How does KGAT perform compared with state-of-the-art knowledge-aware recommendation methods?
	\item \textbf{RQ2}: How do different components (\ie knowledge graph embedding, attention mechanism, and aggregator selection) affect KGAT?
% 	\item \textbf{RQ2}: How do different hyper-parameter settings (\eg depth of layer, attentive embedding propagation layer, message and node dropout) affect KGAT?
	\item \textbf{RQ3}: Can KGAT provide reasonable explanations about user preferences towards items?
\end{itemize}




\subsection{Dataset Description}

To evaluate the effectiveness of KGAT, we utilize three benchmark datasets: Amazon-book, Last-FM, and Yelp2018, which are publicly accessible and vary in terms of domain, size, and sparsity.


\vspace{2px}
\noindent\textbf{Amazon-book\footnote{\url{http://jmcauley.ucsd.edu/data/amazon}.}:}
Amazon-review is a widely used dataset for product recommendation~\cite{amazon-review}.
We select Amazon-book from this collection.
To ensure the quality of the dataset, we use the $10$-core setting, \ie retaining users and items with at least ten interactions.

\vspace{2px}
\noindent\textbf{Last-FM\footnote{\url{https://grouplens.org/datasets/hetrec-2011/}.}:}
This is the music listening dataset collected from Last.fm online music systems.
Wherein, the tracks are viewed as the items.
In particular, we take the subset of the dataset where the timestamp is from Jan, 2015 to June, 2015.
We use the same $10$-core setting in order to ensure data quality.

\vspace{2px}
\noindent\textbf{Yelp2018\footnote{\url{https://www.yelp.com/dataset/challenge}.}:}
This dataset is adopted from the 2018 edition of the Yelp challenge.
Here we view the local businesses like restaurants and bars as the items.
Similarly, we use the $10$-core setting to ensure that each user and item have at least ten interactions.

Besides the user-item interactions, we need to construct item knowledge for each dataset.
For Amazon-book and Last-FM, we follow the way in~\cite{KB4Rec} to map items into Freebase entities via title matching if there is a mapping available.
In particular, we consider the triplets that are directly related to the entities aligned with items, no matter which role (\ie subject or object) it serves as.
Distinct from existing knowledge-aware datasets that provide only one-hop entities of items, we also take the triplets that involve two-hop neighbor entities of items into consideration.
For Yelp2018, we extract item knowledge from the local business information network (\eg category, location, and attribute) as KG data.
To ensure the KG quality, we then preprocess the three KG parts by filtering out infrequent entities (\ie lowever than $10$ in both datasets) and retaining the relations appearing in at least $50$ triplets.
We summarize the statistics of three datasets in Table~\ref{tab:dataset}.
% and publish our datasets at \url{https://github.com/xiangwang1223/knowledge_graph_attention_network}.

For each dataset, we randomly select $80\%$ of interaction history of each user to constitute the training set, and treat the remaining as the test set.
From the training set, we randomly select $10\%$ of interactions as validation set to tune hyper-parameters.
For each observed user-item interaction, we treat it as a positive instance, and then conduct the negative sampling strategy to pair it with one negative item that the user did not consume before.

\subsection{Experimental Settings}

\begin{table}[t]
\caption{Statistics of the datasets.}
\vspace{-10px}
\label{tab:dataset}
\resizebox{0.46\textwidth}{!}{
\begin{tabular}{c l|r|r|r}
\hline
 &  & \multicolumn{1}{l|}{Amazon-book} & \multicolumn{1}{l|}{Last-FM} & \multicolumn{1}{l}{Yelp2018} \\ \hline\hline
\multirow{3}{*}{\begin{tabular}[c]{@{}c@{}}User-Item\\ Interaction\end{tabular}} & \#Users & $70,679$ & $23,566$ & $45,919$ \\
 & \#Items & $24,915$ & $48,123$ & $45,538$ \\
 & \#Interactions & $847,733$ & $3,034,796$ & $1,185,068$ \\ \hline\hline
\multirow{3}{*}{\begin{tabular}[c]{@{}c@{}}Knowledge\\ Graph\end{tabular}} & \#Entities & $88,572$ & $58,266$ & $90,961$ \\
 & \#Relations & $39$ & $9$ & $42$ \\ 
 & \#Triplets & $2,557,746$ & $464,567$ & $1,853,704$ \\ \hline
\end{tabular}}
\vspace{-15px}
\end{table}

\subsubsection{\textbf{Evaluation Metrics}}
For each user in the test set, we treat all the items that the user has not interacted with as the negative items.
Then each method outputs the user's preference scores over all the items, except the positive ones in the training set.
To evaluate the effectiveness of top-$K$ recommendation and preference ranking, we adopt two widely-used evaluation protocols~\cite{NCF,HOP-rec}: recall@$K$ and ndcg@$K$.
By default, we set $K=20$.
We report the average metrics for all users in the test set.


\subsubsection{\textbf{Baselines}}
To demonstrate the effectiveness, we compare our proposed KGAT with SL (FM and NFM), regularization-based (CFKG and CKE), path-based (MCRec and RippleNet), and graph neural network-based (GC-MC) methods, as follows:

\begin{itemize}[leftmargin=*]
	\item \textbf{FM}~\cite{FM}:~This is a bechmark factorization model, where considers the second-order feature interactions between inputs. Here we treat IDs of a user, an item, and its knowledge (\ie entities connected to it) as input features.
	
	\item \textbf{NFM}~\cite{NFM}: The method is a state-of-the-art factorization model, which subsumes FM under neural network. Specially, we employed one hidden layer on input features as suggested in~\cite{NFM}.
	
	\item \textbf{CKE}~\cite{CKE}: This is a representative regularization-based method, which exploits semantic embeddings derived from TransR~\cite{TransR} to enhance matrix factorization~\cite{BPRMF}.
    
    \item \textbf{CFKG}~\cite{CFKG}: The model applies TransE~\cite{TransE} on the unified graph including users, items, entities, and relations, casting the recommendation task as the plausibility prediction of $(u,\emph{Interact},i)$ triplets.
    
    \item \textbf{MCRec}~\cite{MCRec}: This is a path-based model, which extracts qualified meta-paths as connectivity between a user and an item.
    
	\item \textbf{RippleNet}~\cite{RippleNet}: Such model combines regularization- and path-based methods, which enrich user representations by adding that of items within paths rooted at each user.
	
	\item \textbf{GC-MC}~\cite{GC-MC}: Such model is designed to employ GCN~\cite{GCN} encoder on graph-structured data, especially for the user-item bipartite graph. Here we apply it on the user-item knowledge graph. Especially, we employ one graph convolution layers as suggested in~\cite{GC-MC}, where the hidden dimension is set equal to the embedding size.
\end{itemize}


\subsubsection{\textbf{Parameter Settings}}\label{sec:experiment-settings}
We implement our KGAT model in Tensorflow.
The embedding size is fixed to $64$ for all models, except RippleNet $16$ due to its high computational cost.
We optimize all models with Adam optimizer, where the batch size is fixed at $1024$.
The default Xavier initializer~\cite{Xarvier} to initialize the model parameters.
We apply a grid search for hyper-parameters: the learning rate is tuned amongst $\{0.05, 0.01, 0.005, 0.001\}$, the coefficient of $L_2$ normalization is searched in $\{10^{-5},10^{-4},\cdots,10^{1},10^{2}\}$, and the dropout ratio is tuned in $\{0.0,0.1,\cdots,0.8\}$ for NFM, GC-MC, and KGAT.
Besides, we employ the node dropout technique for GC-MC and KGAT, where the ratio is searched in $\{0.0,0.1,\cdots,0.8\}$.
For MCRec, we manually define several types of user-item-attribute-item meta-paths, such as \emph{user-book-author-user} and \emph{user-book-genre-user} for Amazon-book dataset; we set the hidden layers as suggested in~\cite{MCRec}, which is a tower structure with $512$, $256$, $128$, $64$ dimensions.
For RippleNet, we set the number of hops and the memory size as $2$ and $8$, respectively.
Moreover, early stopping strategy is performed, \ie premature stopping if recall@$20$ on the validation set does not increase for $50$ successive epochs.
To model the third-order connectivity, we set the depth of KGAT $L$ as three with hidden dimension $64$, $32$, and $16$, respectively; we also report the effect of layer depth in Section~\ref{sec:layer-depth}.
For each layer, we conduct the Bi-Interaction aggregator.



\subsection{Performance Comparison (RQ1)}
We first report the performance of all the methods, and then investigate how the modeling of high-order connectivity alleviate the sparsity issues.



\subsubsection{\textbf{Overall Comparison}}

\begin{figure*}[t]
\centering
\subfigure[ndcg on Amazon-Book]{
\label{fig:sparsity-amazon-book}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-amazon-book.png}}
\subfigure[ndcg on Last-FM]{
\label{fig:sparsity-last-fm}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-last-fm.png}}
\subfigure[ndcg on Yelp2018]{
\label{fig:sparsity-yelp2018}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-yelp2018.png}}
\vspace{-15pt}
\caption{Performance comparison over the sparsity distribution of user groups on different datasets.
The background histograms indicate the density of each user group; meanwhile, the lines demonstrate the performance \wrt ndcg@$20$.}
\label{fig:sparsity}\vspace{-10pt}
\end{figure*}

\begin{table}[t]
\caption{Overall Performance Comparison.}
\vspace{-10px}
\label{tab:overall-performance}
\resizebox{0.48\textwidth}{!}{
\begin{tabular}{l|c c | c c | c c}
\hline
 & \multicolumn{2}{c|}{Amazon-Book} & \multicolumn{2}{c|}{Last-FM} & \multicolumn{2}{c}{Yelp2018} \\
 & recall & ndcg & recall & ndcg & recall & ndcg \\ \hline\hline
FM & $0.1345$ & $0.0886$ & $0.0778$ & $0.1181$ & $0.0627$ & $0.0768$ \\
NFM & $\Mat{0.1366}$ & $0.0913$ & $\Mat{0.0829}$ & $0.1214$ & $0.0660$ & $0.0810$ \\ \hline
CKE & $0.1343$ & $0.0885$ & $0.0736$ & $0.1184$ & $0.0657$ & $0.0805$ \\
CFKG & $0.1142$ & $0.0770$ & $0.0723$ & $0.1143$ & $0.0522$ & $0.0644$ \\ \hline
% HOP-Rec & $0.1352$ & $\Mat{0.0914}$ & $0.0704$ & $0.1155$ & $0.0649$ & $0.0819$ \\
MCRec & $0.1113$ & $0.0783$ & - & - & - & - \\
RippleNet & $0.1336$ & $0.0910$ & $0.0791$ & $0.1238$ & $\Mat{0.0664}$ & $\Mat{0.0822}$ \\
GC-MC & $0.1316$ & $0.0874$ & $0.0818$ & $\Mat{0.1253}$ & $0.0659$ & $0.0790$ \\ \hline
KGAT & $\Mat{0.1489^{*}}$ & $\Mat{0.1006^{*}}$ & $\Mat{0.0870^{*}}$ & $\Mat{0.1325^{*}}$ & $\Mat{0.0712^{*}}$ & $\Mat{0.0867^{*}}$ \\ \hline\hline
\%Improv. & $8.95\%$ & $10.05\%$ & $4.93\%$ & $5.77\%$ & $7.18\%$ & $5.54\%$ \\ \hline
\end{tabular}}
\vspace{-15px}
\end{table}

The performance comparison results are presented in Table~\ref{tab:overall-performance}. We have the following observations:
\begin{itemize}[leftmargin=*]
    \item KGAT consistently yields the best performance on all the datasets. In particular, KGAT improves over the strongest baselines \wrt recall@$20$ by $8.95\%$, $4.93\%$, and $7.18\%$ in Amazon-book, Last-FM, and Yelp2018, respectively.
    By stacking multiple attentive embedding propagation layers, KGAT is capable of exploring the high-order connectivity in an explicit way, so as to capture collaborative signal effectively.
    This verifies the significance of capturing collaborative signal to transfer knowledge.
    Moreover, compared with GC-MC, KGAT justifies the effectiveness of the attention mechanism, specifying the attentive weights \wrt compositional semantic relations, rather than the fixed weights used in GC-MC.
    
    \item SL methods (\ie FM and NFM) achieve better performance than the CFKG and CKE in most cases, indicating that regularization-based methods might not make full use of item knowledge. In particular, to enrich the representation of an item, FM and NFM exploit the embeddings of its connected entities, while CFKG and CKE only use that of its aligned entities. Furthermore, the cross features in FM and NFM actually serve as the second-order connectivity between users and entities, whereas CFKG and CKE model connectivity on the granularity of triples, leaving high-order connectivity untouched.
    
    % \item CFKG performs poor on three datasets, while CKE consistently outperforms CFKG across all cases. This suggests that, compared with inner product between user $u$ and item $i$ representations, the translation principle on $(u,\emph{Interact},i)$ is not sufficient to capture the collaborative filtering effect.
    
    \item Compared to FM, the performance of RippleNet verifies that incorporating two-hop neighboring items is of importance to enrich user representations. It therefore points to the positive effect of modeling the high-order connectivity or neighbors. However, RippleNet slightly underperforms NFM in Amazon-book and Last-FM, while performing better in Yelp2018.
    One possible reason is that NFM has stronger expressiveness, since the hidden layer allows NFM to capture the nonlinear and complex feature interactions between user, item, and entity embeddings.
    
    \item RippleNet outperforms MCRec by a large margin in Amazon-book. One possible reason is that MCRec depends heavily on the quality of meta-paths, which require extensive domain knowledge to define. The observation is consist with~\cite{RippleNet}.
    
    \item GC-MC achieves comparable performance to RippleNet in Last-FM and Yelp2018 datasets. While introducing the high-order connectivity into user and item representations, GC-MC forgoes the semantic relations between nodes; whereas RippleNet utilizes relations to guide the exploration of user preferences.
    
    
\end{itemize}








\subsubsection{\textbf{Performance Comparison \wrt Interaction Sparsity Levels}}\label{sec:sparsity}
One motivation to exploiting KG is to alleviate the sparsity issue, which usually limits the expressiveness of recommender systems.
It is hard to establish optimal representations for inactive users with few interactions.
Here we investigate whether exploiting connectivity information helps alleviate this issue.

% \begin{figure*}[t]
% \centering
% \subfigure[ndcg on Amazon-Book]{
% \label{fig:sparsity-amazon-book}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-amazon-book.pdf}}
% \subfigure[ndcg on Last-FM]{
% \label{fig:sparsity-last-fm}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-last-fm.pdf}}
% \subfigure[ndcg on Yelp2018]{
% \label{fig:sparsity-yelp2018}\includegraphics[width=0.32\textwidth]{chart/sparsity-ndcg-yelp2018.pdf}}
% \vspace{-10pt}
% \caption{Performance comparison over the sparsity distribution of user groups on different datasets.
% The background histograms indicate the number of users per group; meanwhile, the lines demonstrate the performance \wrt ndcg@$20$.}
% \label{fig:sparsity}\vspace{-10pt}
% \end{figure*}

Towards this end, we perform experiments over user groups of different sparsity levels.
In particular, we divide the test set into four groups based on interaction number per user, meanwhile try to keep different groups have the same total interactions.
Taking Amazon-book dataset as an example, the interaction numbers per user are less than $7$, $15$, $48$, and $4475$ respectively.
Figure~\ref{fig:sparsity} illustrates the results \wrt ndcg@$20$ on different user groups in Amazon-book, Last-FM, and Yelp2018.
We can see that:
\begin{itemize}[leftmargin=*]
    \item KGAT outperforms the other models in most cases, especially on the two sparsest user groups in Amazon-Book and Yelp2018.
    It again verifies the significance of high-order connectivity modeling, which 1) contains the lower-order connectivity used in baselines, and 2) enriches the representations of inactive users via recursive embedding propagation.
    
    
    % \item KGAT substantially outperforms the other models, especially on the two sparsest user groups in Amazon-Book and Yelp2018, demonstrating that exploiting high-order connectivity is of significance to characterize the inactive users.
    
    % \item The gaps between KGAT and baselines is being narrowed with the increase of interaction density in Yelp2018. This suggests that the impacts of high-order connectivity become negligible to enhance KG modeling, when interactions are sufficient to model user preferences.
    
    \item It is worthwhile pointing out that KGAT slightly outperforms some baselines in the densest user group (\eg the $<2057$ group of Yelp2018). One possible reason is that the preferences of users with too many interactions are too general to capture. High-order connectivity could introduce more noise into the user preferences, thus leading to the negative effect.
\end{itemize}


\subsection{Study of KGAT (RQ2)}

\begin{table}[t]
\caption{Effect of embedding propagation layer numbers ($L$).
}
\vspace{-10px}
\label{tab:depth}
\resizebox{0.48\textwidth}{!}{
\begin{tabular}{l|c c|c c|c c}
\hline
 & \multicolumn{2}{c|}{Amazon-Book} & \multicolumn{2}{c|}{Last-FM} & \multicolumn{2}{c}{Yelp2018} \\ 
 & recall & ndcg & recall & ndcg & recall & ndcg \\ \hline\hline
KGAT-1 & 0.1393 & 0.0948 & 0.0834 & 0.1286 & 0.0693 & 0.0848 \\ 
KGAT-2 & 0.1464 & 0.1002 & 0.0863 & 0.1318 & 0.0714 & \textbf{0.0872} \\ 
KGAT-3 & 0.1489 & 0.1006 & 0.0870 & 0.1325 & 0.0712 & 0.0867 \\ 
KGAT-4 & \textbf{0.1503} & \textbf{0.1015} & \textbf{0.0871} & \textbf{0.1329} & \textbf{0.0722} & 0.0871 \\ \hline
\end{tabular}}
\vspace{-10px}
\end{table}

To get deep insights on the attentive embedding propagation layer of KGAT, we investigate its impact.
We first study the influence of layer numbers.
In what follows, we explore how different aggregators affect the performance.
We then examine the influence of knowledge graph embedding and attention mechanism.

\subsubsection{\textbf{Effect of Model Depth}}\label{sec:layer-depth}
We vary the depth of KGAT (\eg $L$) to investigate the efficiency of usage of multiple embedding propagation layers.
In particular, the layer number is searched in the range of $\{1,2,3,4\}$; we use KGAT-1 to indicate the model with one layer, and similar notations for others.
We summarize the results in Table~\ref{tab:depth}, and have the following observations:
\begin{itemize}[leftmargin=*]
    \item Increasing the depth of KGAT is capable of boosting the performance substantially. Clearly, KGAT-2 and KGAT-3 achieve consistent improvement over KGAT-1 across all the board. We attribute the improvements to the effective modeling of high-order relation between users, items, and entities, which is carried by the second- and third-order connectivities, respectively.
    
    \item Further stacking one more layer over KGAT-3, we observe that KGAT-4 only achieve marginal improvements. It suggests that considering third-order relations among entities could be sufficient to capture the collaborative signal, which is consistent to the findings in~\cite{KGreasoning19,MCRec}.
    
    \item Jointly analyzing Tables~\ref{tab:overall-performance} and~\ref{tab:depth}, KGAT-1 consistently outperforms other baselines in most cases. It again verifies the effectiveness of that attentive embedding propagation, empirically showing that it models the first-order relation better.
\end{itemize}

\subsubsection{\textbf{Effect of Aggregators}}\label{sec:aggregator}




To explore the impact of aggregators, we consider the variants of KGAT-1 that uses different settings --- more specifically GCN, GraphSage, and Bi-Interaction (\cf Section~~\ref{sec:embedding-propagation}), termed KGAT-1$_{\text{GCN}}$, KGAT-1$_{\text{GraphSage}}$, and KGAT-1$_{\text{Bi}}$, respectively.
Table~\ref{tab:aggregator} summarizes the experimental results.
We have the following findings:
\begin{itemize}[leftmargin=*]
    \item KGAT-1$_{\text{GCN}}$ is consistently superior to KGAT-1$_{\text{GraphSage}}$. One possible reason is that GraphSage forgoes the interaction between the entity representation $\Mat{e}_{h}$ and its ego-network representation $\Mat{e}_{\Set{N}_{h}}$. It hence illustrates the importance of feature interaction when performing information aggregation and propagation.
    
    \item Compared to KGAT-1$_{\text{GCN}}$, the performance of KGAT-1$_{\text{Bi}}$ verifies that incorporating additional feature interaction can improve the representation learning. It again illustrates the rationality and effectiveness of Bi-Interaction aggregator.
\end{itemize}


\subsubsection{\textbf{Effect of Knowledge Graph Embedding and Attention Mechanism}}\label{sec:ablation-study}

% \begin{table}[t]
% \caption{Effect of embedding propagation layer numbers ($L$).
% }
% \vspace{-10px}
% \label{tab:depth}
% \resizebox{0.48\textwidth}{!}{
% \begin{tabular}{l|c c|c c|c c}
% \hline
%  & \multicolumn{2}{c|}{Amazon-Book} & \multicolumn{2}{c|}{Last-FM} & \multicolumn{2}{c}{Yelp2018} \\ 
%  & recall & ndcg & recall & ndcg & recall & ndcg \\ \hline\hline
% KGAT-1 & 0.1393 & 0.0948 & 0.0834 & 0.1286 & 0.0693 & 0.0848 \\ 
% KGAT-2 & 0.1464 & 0.1002 & 0.0863 & 0.1318 & 0.0714 & \textbf{0.0872} \\ 
% KGAT-3 & 0.1488 & 0.1006 & 0.0870 & 0.1325 & 0.0712 & 0.0867 \\ 
% KGAT-4 & \textbf{0.1503} & \textbf{0.1015} & \textbf{0.0871} & \textbf{0.1329} & \textbf{0.0722} & 0.0871 \\ \hline
% \end{tabular}}
% \vspace{-10px}
% \end{table}


\begin{table}[t]
\caption{Effect of aggregators.}
\vspace{-10px}
\label{tab:aggregator}
\resizebox{0.48\textwidth}{!}{
\begin{tabular}{l|c c|c c|c c}
\hline
 & \multicolumn{2}{c|}{Amazon-Book} & \multicolumn{2}{c|}{Last-FM} & \multicolumn{2}{c}{Yelp2018} \\ 
Aggregator & recall & ndcg & recall & ndcg & recall & ndcg \\ \hline\hline
GCN & 0.1381 & 0.0931 & 0.0824 & 0.1278 & 0.0688 & 0.0847 \\ 
GraphSage & 0.1372 & 0.0929 & 0.0822 & 0.1268 & 0.0666 & 0.0831 \\ 
Bi-Interaction & \textbf{0.1393} & \textbf{0.0948} & \textbf{0.0834} & \textbf{0.1286} & \textbf{0.0693} & \textbf{0.0848} \\ \hline
\end{tabular}}
\vspace{-10px}
\end{table}

\begin{table}[t]
\caption{Effect of knowledge graph embedding and attention mechanism.
}
\vspace{-10px}
\label{tab:att&kge}
\resizebox{0.48\textwidth}{!}{
\begin{tabular}{l|c c|c c|c c}
\hline
 & \multicolumn{2}{c|}{Amazon-Book} & \multicolumn{2}{c|}{Last-FM} & \multicolumn{2}{c}{Yelp2018} \\ 
 & recall & ndcg & recall & ndcg & recall & ndcg \\ \hline\hline
w/o K\&A & 0.1367 & 0.0928 & 0.0819 & 0.1252 & 0.0654 & 0.0808 \\ 
w/o KGE  & 0.1380 & 0.0933 & 0.0826 & 0.1273 & 0.0664 & 0.0824 \\ 
w/o Att  & 0.1377 & 0.0930 & 0.0826 & 0.1270 & 0.0657 & 0.0815 \\ \hline
\end{tabular}}
\vspace{-10px}
\end{table}

\begin{figure}[t]
    \centering
	\includegraphics[width=0.44\textwidth]{chart/case-study-l4.png}
	\vspace{-10pt}
	\caption{Real Example from Amazon-Book.}
	\label{fig:case-study}
	\vspace{-15pt}
\end{figure}

To verify the impact of knowledge graph embedding and attention mechanism, we do ablation study by considering three variants of KGAT-1.
In particular, we disable the TransR embedding component (\cf Equation~\eqref{equ:kg-loss}) of KGAT, termed KGAT-1$_{\text{w/o KGE}}$;
we disable the attention mechanism (\cf Equation~\eqref{equ:attention}) and set $\pi(h,r,t)$ as $1/|\Set{N}_{h}|$, termed KGAT-1$_{\text{w/o Att}}$.
Moreover, we obtain another variant by removing both components, named KGAT-1$_{\text{w/o K\&A}}$.
We summarize the experimental results in Table~\ref{tab:att&kge} and have the following findings:
\begin{itemize}[leftmargin=*]
    \item Removing knowledge graph embedding and attention components degrades the model's performance. KGAT-1$_{\text{w/o K\&A}}$ consistently underperforms KGAT-1$_{\text{w/o KGE}}$ and KGAT-1$_{\text{w/o Att}}$.
    It makes sense since KGAT$_{\text{w/o K\&A}}$ fails to explicitly model the representation relatedness on the granularity of triplets.
    
    
    \item Compared with KGAT-1$_{\text{w/o Att}}$, KGAT-1$_{\text{w/o KGE}}$ performs better in most cases. One possible reason is that treating all neighbors equally (\ie KGAT-1$_{\text{w/o Att}}$) might introduce noises and mislead the embedding propagation process. 
    It verifies the substantial influence of graph attention mechanism.
\end{itemize}

\subsection{Case Study (RQ3)}\label{sec:visualization}
Benefiting from the attention mechanism, we can reason on high-order connectivity to infer the user preferences on the target item, offering explanations.
Towards this end, we randomly selected one user $u_{208}$ from Amazon-Book, and one relevant item $i_{4293}$ (from the test, unseen in the training phase).
We extract behavior-based and attribute-based high-order connectivity connecting the user-item pair, based on the attention scores.
% In particular, top-$2$ triplets are selected recursively; as such, we have four paths per connectivity pattern.
Figure~\ref{fig:case-study} shows the visualization of high-order connectivity. There are two key observations:
\begin{itemize}[leftmargin=*]
    \item KGAT captures the behavior-based and attribute-based high-order connectivity, which play a key role to infer user preferences.
    The retrieved paths can be viewed as the evidence why the item meets the user's preference. As we can see, the connectivity $u_{208}\xrightarrow{r_0} \emph{Old Man's War}\xrightarrow{r_{14}} \emph{John Scalzi}\xrightarrow{-r_{14}} i_{4293}$ has the highest attention score, labeled with the solid line in the left subfigure.
    Hence, we can generate the explanation as \emph{The Last Colony is recommended since you have watched Old Man's War written by the same author John Scalzi}.
    
    \item The quality of item knowledge is of crucial importance. As we can see, entity \emph{English} with relation \emph{Original Language} is involved in one path, which is too general to provide high-quality explanations. This inspires us to perform hard attention to filter less informative entities out in future work. 
\end{itemize}














% \begin{figure}[t]
% \centering
% % \subfigure[recall on Amazon-Book]{
% % \label{fig:sparsity-amazon-book}\includegraphics[width=0.44\textwidth]{chart/case-study-l1.pdf}}
% % \hspace{10px}
% \subfigure[recall on Last-FM]{
% \label{fig:sparsity-last-fm}\includegraphics[width=0.44\textwidth]{chart/case-study-l4.pdf}}
% % \subfigure[recall on Yelp2018]{
% % \label{fig:sparsity-yelp2018}\includegraphics[width=0.32\textwidth]{chart/sparsity-rec-yelp2018.pdf}}
% \vspace{-10pt}
% \caption{Performance comparison over the sparsity distribution of user groups on different datasets.
% Wherein, the background histograms indicate the number of users involved in each group; meanwhile, the lines demonstrate the performance \wrt recall@$20$.}
% \label{fig:case-study}\vspace{-10pt}
% \end{figure}
\section{Conclusion and Future Work}

In this work, we explore high-order connectivity with semantic relations in CKG for knowledge-aware recommendation.
We devised a new framework KGAT, which explicitly models the high-order connectivities in CKG in an end-to-end fashion.
At it core is the attentive embedding propagation layer, which adaptively propagates the embeddings from a node's neighbors to update the node's representation.
Extensive experiments on three real-world datasets demonstrate the rationality and effectiveness of KGAT.

This work explores the potential of graph neural networks in recommendation, and represents an initial attempt to exploit structural knowledge with information propagation mechanism.
Besides knowledge graph, many other structural information indeed exists in real-world scenarios, such as social networks and item contexts.
For example, by integrating social network with CKG, we can investigate how social influence affects the recommendation.
Another exciting direction is the integration of information propagation and decision process, which opens up research possibilities of explainable recommendation.

\vspace{1px}
\noindent\textbf{Acknowledgement:}
This research is part of NExT++ research and also supported by the Thousand Youth Talents Program 2018.
NExT++ is supported by the National Research Foundation, Prime Minister's Office, Singapore under its IRC@SG Funding Initiative.



% For example, by integrating item knowledge graph with user-item graph, we can establish knowledge-aware connectivities between users and items, which help unveil user decision-making process in choosing items.
% We hope the development of NGCF is beneficial to the reasoning of user online behavior towards more effective and interpretable recommendation.  
%By explicitly injecting such signal into the embedding function of CF methods, we are able to design more effective solution for recommendation task.




% In this work, we exploit the higher-order connectivity to encode the collaborative signal.
% We proposed a new framework to generate better user and item representations by performing embedding propagation along high-order connectivity.
% Leveraging the proposed embedding propagation layer, we can explicitly inject the collaborative signal into the embedding function.
% Experiments performed on three datasets demonstrate the effectiveness of our model and the promise of embedding propagation.

% In future, we will extend our work in three directions.
% First, we will consider other linked data, such as knowledge graph and contexts, since the auxiliary data provides extra connectivity between users and items.
% Second, we will attempt to incorporate the attention mechanism, specifying the attentive weights for user-item connections.
% Third, we would like to explore the adversarial learning~\cite{APR} \wrt node embedding and graph structure for enhancing the robustness of our method.
%%% -*-BibTeX-*-
%%% Do NOT edit. File created by BibTeX with style
%%% ACM-Reference-Format-Journals [18-Jan-2012].

\begin{thebibliography}{41}

%%% ====================================================================
%%% NOTE TO THE USER: you can override these defaults by providing
%%% customized versions of any of these macros before the \bibliography
%%% command.  Each of them MUST provide its own final punctuation,
%%% except for \shownote{}, \showDOI{}, and \showURL{}.  The latter two
%%% do not use final punctuation, in order to avoid confusing it with
%%% the Web address.
%%%
%%% To suppress output of a particular field, define its macro to expand
%%% to an empty string, or better, \unskip, like this:
%%%
%%% \newcommand{\showDOI}[1]{\unskip}   % LaTeX syntax
%%%
%%% \def \showDOI #1{\unskip}           % plain TeX syntax
%%%
%%% ====================================================================

\ifx \showCODEN    \undefined \def \showCODEN     #1{\unskip}     \fi
\ifx \showDOI      \undefined \def \showDOI       #1{#1}\fi
\ifx \showISBNx    \undefined \def \showISBNx     #1{\unskip}     \fi
\ifx \showISBNxiii \undefined \def \showISBNxiii  #1{\unskip}     \fi
\ifx \showISSN     \undefined \def \showISSN      #1{\unskip}     \fi
\ifx \showLCCN     \undefined \def \showLCCN      #1{\unskip}     \fi
\ifx \shownote     \undefined \def \shownote      #1{#1}          \fi
\ifx \showarticletitle \undefined \def \showarticletitle #1{#1}   \fi
\ifx \showURL      \undefined \def \showURL       {\relax}        \fi
% The following commands are used for tagged output and should be
% invisible to TeX
\providecommand\bibfield[2]{#2}
\providecommand\bibinfo[2]{#2}
\providecommand\natexlab[1]{#1}
\providecommand\showeprint[2][]{arXiv:#2}

\bibitem[\protect\citeauthoryear{Ai, Azizi, Chen, and Zhang}{Ai
  et~al\mbox{.}}{2018}]%
        {CFKG}
\bibfield{author}{\bibinfo{person}{Qingyao Ai}, \bibinfo{person}{Vahid Azizi},
  \bibinfo{person}{Xu Chen}, {and} \bibinfo{person}{Yongfeng Zhang}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Learning Heterogeneous Knowledge Base Embeddings
  for Explainable Recommendation}.
\newblock \bibinfo{journal}{\emph{Algorithms}} \bibinfo{volume}{11},
  \bibinfo{number}{9} (\bibinfo{year}{2018}), \bibinfo{pages}{137}.
\newblock


\bibitem[\protect\citeauthoryear{Bordes, Usunier, Garc{\'{\i}}a{-}Dur{\'{a}}n,
  Weston, and Yakhnenko}{Bordes et~al\mbox{.}}{2013}]%
        {TransE}
\bibfield{author}{\bibinfo{person}{Antoine Bordes}, \bibinfo{person}{Nicolas
  Usunier}, \bibinfo{person}{Alberto Garc{\'{\i}}a{-}Dur{\'{a}}n},
  \bibinfo{person}{Jason Weston}, {and} \bibinfo{person}{Oksana Yakhnenko}.}
  \bibinfo{year}{2013}\natexlab{}.
\newblock \showarticletitle{Translating Embeddings for Modeling
  Multi-relational Data}. In \bibinfo{booktitle}{\emph{{NeurIPS}}}.
  \bibinfo{pages}{2787--2795}.
\newblock


\bibitem[\protect\citeauthoryear{Cao, Hou, Li, and Liu}{Cao
  et~al\mbox{.}}{2018a}]%
        {cao2018neural}
\bibfield{author}{\bibinfo{person}{Yixin Cao}, \bibinfo{person}{Lei Hou},
  \bibinfo{person}{Juanzi Li}, {and} \bibinfo{person}{Zhiyuan Liu}.}
  \bibinfo{year}{2018}\natexlab{a}.
\newblock \showarticletitle{Neural Collective Entity Linking}. In
  \bibinfo{booktitle}{\emph{COLING}}. \bibinfo{pages}{675--686}.
\newblock


\bibitem[\protect\citeauthoryear{Cao, Hou, Li, Liu, Li, Chen, and Dong}{Cao
  et~al\mbox{.}}{2018b}]%
        {cao2018joint}
\bibfield{author}{\bibinfo{person}{Yixin Cao}, \bibinfo{person}{Lei Hou},
  \bibinfo{person}{Juanzi Li}, \bibinfo{person}{Zhiyuan Liu},
  \bibinfo{person}{Chengjiang Li}, \bibinfo{person}{Xu Chen}, {and}
  \bibinfo{person}{Tiansi Dong}.} \bibinfo{year}{2018}\natexlab{b}.
\newblock \showarticletitle{Joint Representation Learning of Cross-lingual
  Words and Entities via Attentive Distant Supervision}. In
  \bibinfo{booktitle}{\emph{EMNLP}}. \bibinfo{pages}{227--237}.
\newblock


\bibitem[\protect\citeauthoryear{Cao, Wang, He, Hu, and Chua}{Cao
  et~al\mbox{.}}{2019}]%
        {KTUP}
\bibfield{author}{\bibinfo{person}{Yixin Cao}, \bibinfo{person}{Xiang Wang},
  \bibinfo{person}{Xiangnan He}, \bibinfo{person}{Zikun Hu}, {and}
  \bibinfo{person}{Tat-Seng Chua}.} \bibinfo{year}{2019}\natexlab{}.
\newblock \showarticletitle{Unifying Knowledge Graph Learning and
  Recommendation: Towards a Better Understanding of User Preferences}. In
  \bibinfo{booktitle}{\emph{{WWW}}}.
\newblock


\bibitem[\protect\citeauthoryear{Chen, Zhang, He, Nie, Liu, and Chua}{Chen
  et~al\mbox{.}}{2017}]%
        {ACF}
\bibfield{author}{\bibinfo{person}{Jingyuan Chen}, \bibinfo{person}{Hanwang
  Zhang}, \bibinfo{person}{Xiangnan He}, \bibinfo{person}{Liqiang Nie},
  \bibinfo{person}{Wei Liu}, {and} \bibinfo{person}{Tat{-}Seng Chua}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Attentive Collaborative Filtering: Multimedia
  Recommendation with Item- and Component-Level Attention}. In
  \bibinfo{booktitle}{\emph{{SIGIR}}}. \bibinfo{pages}{335--344}.
\newblock


\bibitem[\protect\citeauthoryear{Cheng, Koc, Harmsen, Shaked, Chandra, Aradhye,
  Anderson, Corrado, Chai, Ispir, Anil, Haque, Hong, Jain, Liu, and Shah}{Cheng
  et~al\mbox{.}}{2016}]%
        {WideDeep}
\bibfield{author}{\bibinfo{person}{Heng{-}Tze Cheng}, \bibinfo{person}{Levent
  Koc}, \bibinfo{person}{Jeremiah Harmsen}, \bibinfo{person}{Tal Shaked},
  \bibinfo{person}{Tushar Chandra}, \bibinfo{person}{Hrishi Aradhye},
  \bibinfo{person}{Glen Anderson}, \bibinfo{person}{Greg Corrado},
  \bibinfo{person}{Wei Chai}, \bibinfo{person}{Mustafa Ispir},
  \bibinfo{person}{Rohan Anil}, \bibinfo{person}{Zakaria Haque},
  \bibinfo{person}{Lichan Hong}, \bibinfo{person}{Vihan Jain},
  \bibinfo{person}{Xiaobing Liu}, {and} \bibinfo{person}{Hemal Shah}.}
  \bibinfo{year}{2016}\natexlab{}.
\newblock \showarticletitle{Wide {\&} Deep Learning for Recommender Systems}.
  In \bibinfo{booktitle}{\emph{DLRS@RecSys}}. \bibinfo{pages}{7--10}.
\newblock


\bibitem[\protect\citeauthoryear{Glorot and Bengio}{Glorot and Bengio}{2010}]%
        {Xarvier}
\bibfield{author}{\bibinfo{person}{Xavier Glorot} {and} \bibinfo{person}{Yoshua
  Bengio}.} \bibinfo{year}{2010}\natexlab{}.
\newblock \showarticletitle{Understanding the difficulty of training deep
  feedforward neural networks}. In \bibinfo{booktitle}{\emph{{AISTATS}}}.
  \bibinfo{pages}{249--256}.
\newblock


\bibitem[\protect\citeauthoryear{Hamilton, Ying, and Leskovec}{Hamilton
  et~al\mbox{.}}{2017}]%
        {GraphSage}
\bibfield{author}{\bibinfo{person}{William~L. Hamilton},
  \bibinfo{person}{Zhitao Ying}, {and} \bibinfo{person}{Jure Leskovec}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Inductive Representation Learning on Large Graphs}.
  In \bibinfo{booktitle}{\emph{{NeurIPS}}}. \bibinfo{pages}{1025--1035}.
\newblock


\bibitem[\protect\citeauthoryear{He and McAuley}{He and McAuley}{2016}]%
        {amazon-review}
\bibfield{author}{\bibinfo{person}{Ruining He} {and} \bibinfo{person}{Julian
  McAuley}.} \bibinfo{year}{2016}\natexlab{}.
\newblock \showarticletitle{Ups and Downs: Modeling the Visual Evolution of
  Fashion Trends with One-Class Collaborative Filtering}. In
  \bibinfo{booktitle}{\emph{{WWW}}}. \bibinfo{pages}{507--517}.
\newblock


\bibitem[\protect\citeauthoryear{He and Chua}{He and Chua}{2017}]%
        {NFM}
\bibfield{author}{\bibinfo{person}{Xiangnan He} {and}
  \bibinfo{person}{Tat{-}Seng Chua}.} \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Neural Factorization Machines for Sparse Predictive
  Analytics}. In \bibinfo{booktitle}{\emph{{SIGIR}}}.
  \bibinfo{pages}{355--364}.
\newblock


\bibitem[\protect\citeauthoryear{He, He, Song, Liu, Jiang, and Chua}{He
  et~al\mbox{.}}{2018}]%
        {NAIS}
\bibfield{author}{\bibinfo{person}{Xiangnan He}, \bibinfo{person}{Zhankui He},
  \bibinfo{person}{Jingkuan Song}, \bibinfo{person}{Zhenguang Liu},
  \bibinfo{person}{Yu{-}Gang Jiang}, {and} \bibinfo{person}{Tat{-}Seng Chua}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{{NAIS:} Neural Attentive Item Similarity Model for
  Recommendation}.
\newblock \bibinfo{journal}{\emph{{TKDE}}} \bibinfo{volume}{30},
  \bibinfo{number}{12} (\bibinfo{year}{2018}), \bibinfo{pages}{2354--2366}.
\newblock


\bibitem[\protect\citeauthoryear{He, Liao, Zhang, Nie, Hu, and Chua}{He
  et~al\mbox{.}}{2017}]%
        {NCF}
\bibfield{author}{\bibinfo{person}{Xiangnan He}, \bibinfo{person}{Lizi Liao},
  \bibinfo{person}{Hanwang Zhang}, \bibinfo{person}{Liqiang Nie},
  \bibinfo{person}{Xia Hu}, {and} \bibinfo{person}{Tat{-}Seng Chua}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Neural Collaborative Filtering}. In
  \bibinfo{booktitle}{\emph{{WWW}}}. \bibinfo{pages}{173--182}.
\newblock


\bibitem[\protect\citeauthoryear{Hu, Shi, Zhao, and Yu}{Hu
  et~al\mbox{.}}{2018}]%
        {MCRec}
\bibfield{author}{\bibinfo{person}{Binbin Hu}, \bibinfo{person}{Chuan Shi},
  \bibinfo{person}{Wayne~Xin Zhao}, {and} \bibinfo{person}{Philip~S. Yu}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Leveraging Meta-path based Context for Top- {N}
  Recommendation with {A} Neural Co-Attention Model}. In
  \bibinfo{booktitle}{\emph{{SIGKDD}}}. \bibinfo{pages}{1531--1540}.
\newblock


\bibitem[\protect\citeauthoryear{Huang, Zhao, Dou, Wen, and Chang}{Huang
  et~al\mbox{.}}{2018}]%
        {KGMemory18}
\bibfield{author}{\bibinfo{person}{Jin Huang}, \bibinfo{person}{Wayne~Xin
  Zhao}, \bibinfo{person}{Hong{-}Jian Dou}, \bibinfo{person}{Ji{-}Rong Wen},
  {and} \bibinfo{person}{Edward~Y. Chang}.} \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Improving Sequential Recommendation with
  Knowledge-Enhanced Memory Networks}. In \bibinfo{booktitle}{\emph{{SIGIR}}}.
  \bibinfo{pages}{505--514}.
\newblock


\bibitem[\protect\citeauthoryear{Kingma and Ba}{Kingma and Ba}{2014}]%
        {Adam}
\bibfield{author}{\bibinfo{person}{Diederik~P. Kingma} {and}
  \bibinfo{person}{Jimmy Ba}.} \bibinfo{year}{2014}\natexlab{}.
\newblock \showarticletitle{Adam: {A} Method for Stochastic Optimization}.
\newblock \bibinfo{journal}{\emph{CoRR}}  \bibinfo{volume}{abs/1412.6980}
  (\bibinfo{year}{2014}).
\newblock


\bibitem[\protect\citeauthoryear{Kipf and Welling}{Kipf and Welling}{2017}]%
        {GCN}
\bibfield{author}{\bibinfo{person}{Thomas~N. Kipf} {and} \bibinfo{person}{Max
  Welling}.} \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Semi-Supervised Classification with Graph
  Convolutional Networks}. In \bibinfo{booktitle}{\emph{{ICLR}}}.
\newblock


\bibitem[\protect\citeauthoryear{Lian, Zhou, Zhang, Chen, Xie, and Sun}{Lian
  et~al\mbox{.}}{2018}]%
        {xDeepFM}
\bibfield{author}{\bibinfo{person}{Jianxun Lian}, \bibinfo{person}{Xiaohuan
  Zhou}, \bibinfo{person}{Fuzheng Zhang}, \bibinfo{person}{Zhongxia Chen},
  \bibinfo{person}{Xing Xie}, {and} \bibinfo{person}{Guangzhong Sun}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{xDeepFM: Combining Explicit and Implicit Feature
  Interactions for Recommender Systems}. In \bibinfo{booktitle}{\emph{{KDD}}}.
  \bibinfo{pages}{1754--1763}.
\newblock


\bibitem[\protect\citeauthoryear{Lin, Liu, Sun, Liu, and Zhu}{Lin
  et~al\mbox{.}}{2015}]%
        {TransR}
\bibfield{author}{\bibinfo{person}{Yankai Lin}, \bibinfo{person}{Zhiyuan Liu},
  \bibinfo{person}{Maosong Sun}, \bibinfo{person}{Yang Liu}, {and}
  \bibinfo{person}{Xuan Zhu}.} \bibinfo{year}{2015}\natexlab{}.
\newblock \showarticletitle{Learning Entity and Relation Embeddings for
  Knowledge Graph Completion}. In \bibinfo{booktitle}{\emph{{AAAI}}}.
  \bibinfo{pages}{2181--2187}.
\newblock


\bibitem[\protect\citeauthoryear{Maas, Hannun, and Ng}{Maas
  et~al\mbox{.}}{2013}]%
        {Nonlinear}
\bibfield{author}{\bibinfo{person}{Andrew~L Maas}, \bibinfo{person}{Awni~Y
  Hannun}, {and} \bibinfo{person}{Andrew~Y Ng}.}
  \bibinfo{year}{2013}\natexlab{}.
\newblock \showarticletitle{Rectifier nonlinearities improve neural network
  acoustic models}. In \bibinfo{booktitle}{\emph{ICML}},
  Vol.~\bibinfo{volume}{30}. \bibinfo{pages}{3}.
\newblock


\bibitem[\protect\citeauthoryear{Qiu, Tang, Ma, Dong, Wang, and Tang}{Qiu
  et~al\mbox{.}}{2018}]%
        {DeepInf}
\bibfield{author}{\bibinfo{person}{Jiezhong Qiu}, \bibinfo{person}{Jian Tang},
  \bibinfo{person}{Hao Ma}, \bibinfo{person}{Yuxiao Dong},
  \bibinfo{person}{Kuansan Wang}, {and} \bibinfo{person}{Jie Tang}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{DeepInf: Social Influence Prediction with Deep
  Learning}. In \bibinfo{booktitle}{\emph{{KDD}}}. \bibinfo{pages}{2110--2119}.
\newblock


\bibitem[\protect\citeauthoryear{Rendle, Freudenthaler, Gantner, and
  Schmidt{-}Thieme}{Rendle et~al\mbox{.}}{2009}]%
        {BPRMF}
\bibfield{author}{\bibinfo{person}{Steffen Rendle}, \bibinfo{person}{Christoph
  Freudenthaler}, \bibinfo{person}{Zeno Gantner}, {and} \bibinfo{person}{Lars
  Schmidt{-}Thieme}.} \bibinfo{year}{2009}\natexlab{}.
\newblock \showarticletitle{{BPR:} Bayesian Personalized Ranking from Implicit
  Feedback}. In \bibinfo{booktitle}{\emph{{UAI}}}. \bibinfo{pages}{452--461}.
\newblock


\bibitem[\protect\citeauthoryear{Rendle, Gantner, Freudenthaler, and
  Schmidt{-}Thieme}{Rendle et~al\mbox{.}}{2011}]%
        {FM}
\bibfield{author}{\bibinfo{person}{Steffen Rendle}, \bibinfo{person}{Zeno
  Gantner}, \bibinfo{person}{Christoph Freudenthaler}, {and}
  \bibinfo{person}{Lars Schmidt{-}Thieme}.} \bibinfo{year}{2011}\natexlab{}.
\newblock \showarticletitle{Fast context-aware recommendations with
  factorization machines}. In \bibinfo{booktitle}{\emph{{SIGIR}}}.
  \bibinfo{pages}{635--644}.
\newblock


\bibitem[\protect\citeauthoryear{Shan, Hoens, Jiao, Wang, Yu, and Mao}{Shan
  et~al\mbox{.}}{2016}]%
        {DeepCrossing}
\bibfield{author}{\bibinfo{person}{Ying Shan}, \bibinfo{person}{T.~Ryan Hoens},
  \bibinfo{person}{Jian Jiao}, \bibinfo{person}{Haijing Wang},
  \bibinfo{person}{Dong Yu}, {and} \bibinfo{person}{J.~C. Mao}.}
  \bibinfo{year}{2016}\natexlab{}.
\newblock \showarticletitle{Deep Crossing: Web-Scale Modeling without Manually
  Crafted Combinatorial Features}. In \bibinfo{booktitle}{\emph{{KDD}}}.
  \bibinfo{pages}{255--262}.
\newblock


\bibitem[\protect\citeauthoryear{Sun, Yang, Zhang, Bozzon, Huang, and Xu}{Sun
  et~al\mbox{.}}{2018}]%
        {KGRnn18}
\bibfield{author}{\bibinfo{person}{Zhu Sun}, \bibinfo{person}{Jie Yang},
  \bibinfo{person}{Jie Zhang}, \bibinfo{person}{Alessandro Bozzon},
  \bibinfo{person}{Long{-}Kai Huang}, {and} \bibinfo{person}{Chi Xu}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Recurrent knowledge graph embedding for effective
  recommendation}. In \bibinfo{booktitle}{\emph{RecSys}}.
  \bibinfo{pages}{297--305}.
\newblock


\bibitem[\protect\citeauthoryear{van~den Berg, Kipf, and Welling}{van~den Berg
  et~al\mbox{.}}{2017}]%
        {GC-MC}
\bibfield{author}{\bibinfo{person}{Rianne van~den Berg},
  \bibinfo{person}{Thomas~N. Kipf}, {and} \bibinfo{person}{Max Welling}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Graph Convolutional Matrix Completion}. In
  \bibinfo{booktitle}{\emph{{KDD}}}.
\newblock


\bibitem[\protect\citeauthoryear{Vaswani, Shazeer, Parmar, Uszkoreit, Jones,
  Gomez, Kaiser, and Polosukhin}{Vaswani et~al\mbox{.}}{2017}]%
        {Attention}
\bibfield{author}{\bibinfo{person}{Ashish Vaswani}, \bibinfo{person}{Noam
  Shazeer}, \bibinfo{person}{Niki Parmar}, \bibinfo{person}{Jakob Uszkoreit},
  \bibinfo{person}{Llion Jones}, \bibinfo{person}{Aidan~N. Gomez},
  \bibinfo{person}{Lukasz Kaiser}, {and} \bibinfo{person}{Illia Polosukhin}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Attention is All you Need}. In
  \bibinfo{booktitle}{\emph{{NeurIPS}}}. \bibinfo{pages}{6000--6010}.
\newblock


\bibitem[\protect\citeauthoryear{Velickovic, Cucurull, Casanova, Romero,
  Li{\`{o}}, and Bengio}{Velickovic et~al\mbox{.}}{2018}]%
        {GAT}
\bibfield{author}{\bibinfo{person}{Petar Velickovic}, \bibinfo{person}{Guillem
  Cucurull}, \bibinfo{person}{Arantxa Casanova}, \bibinfo{person}{Adriana
  Romero}, \bibinfo{person}{Pietro Li{\`{o}}}, {and} \bibinfo{person}{Yoshua
  Bengio}.} \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Graph Attention Networks}. In
  \bibinfo{booktitle}{\emph{{ICLR}}}.
\newblock


\bibitem[\protect\citeauthoryear{Wang, Zhang, Wang, Zhao, Li, Xie, and
  Guo}{Wang et~al\mbox{.}}{2018b}]%
        {RippleNet}
\bibfield{author}{\bibinfo{person}{Hongwei Wang}, \bibinfo{person}{Fuzheng
  Zhang}, \bibinfo{person}{Jialin Wang}, \bibinfo{person}{Miao Zhao},
  \bibinfo{person}{Wenjie Li}, \bibinfo{person}{Xing Xie}, {and}
  \bibinfo{person}{Minyi Guo}.} \bibinfo{year}{2018}\natexlab{b}.
\newblock \showarticletitle{RippleNet: Propagating User Preferences on the
  Knowledge Graph for Recommender Systems}. In
  \bibinfo{booktitle}{\emph{{CIKM}}}. \bibinfo{pages}{417--426}.
\newblock


\bibitem[\protect\citeauthoryear{Wang, He, Feng, Nie, and Chua}{Wang
  et~al\mbox{.}}{2018a}]%
        {TEM}
\bibfield{author}{\bibinfo{person}{Xiang Wang}, \bibinfo{person}{Xiangnan He},
  \bibinfo{person}{Fuli Feng}, \bibinfo{person}{Liqiang Nie}, {and}
  \bibinfo{person}{Tat{-}Seng Chua}.} \bibinfo{year}{2018}\natexlab{a}.
\newblock \showarticletitle{{TEM:} Tree-enhanced Embedding Model for
  Explainable Recommendation}. In \bibinfo{booktitle}{\emph{{WWW}}}.
  \bibinfo{pages}{1543--1552}.
\newblock


\bibitem[\protect\citeauthoryear{Wang, He, Nie, and Chua}{Wang
  et~al\mbox{.}}{2017}]%
        {NSCR}
\bibfield{author}{\bibinfo{person}{Xiang Wang}, \bibinfo{person}{Xiangnan He},
  \bibinfo{person}{Liqiang Nie}, {and} \bibinfo{person}{Tat{-}Seng Chua}.}
  \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Item Silk Road: Recommending Items from Information
  Domains to Social Users}. In \bibinfo{booktitle}{\emph{{SIGIR}}}.
  \bibinfo{pages}{185--194}.
\newblock


\bibitem[\protect\citeauthoryear{Wang, He, Wang, Feng, and Chua}{Wang
  et~al\mbox{.}}{2019a}]%
        {NGCF}
\bibfield{author}{\bibinfo{person}{Xiang Wang}, \bibinfo{person}{Xiangnan He},
  \bibinfo{person}{Meng Wang}, \bibinfo{person}{Fuli Feng}, {and}
  \bibinfo{person}{Tat{-}Seng Chua}.} \bibinfo{year}{2019}\natexlab{a}.
\newblock \showarticletitle{Neural Graph Collaborative Filtering}. In
  \bibinfo{booktitle}{\emph{{SIGIR}}}.
\newblock


\bibitem[\protect\citeauthoryear{Wang, Wang, Xu, He, Cao, and Chua}{Wang
  et~al\mbox{.}}{2019b}]%
        {KGreasoning19}
\bibfield{author}{\bibinfo{person}{Xiang Wang}, \bibinfo{person}{Dingxian
  Wang}, \bibinfo{person}{Canran Xu}, \bibinfo{person}{Xiangnan He},
  \bibinfo{person}{Yixin Cao}, {and} \bibinfo{person}{Tat{-}Seng Chua}.}
  \bibinfo{year}{2019}\natexlab{b}.
\newblock \showarticletitle{Explainable Reasoning over Knowledge Graphs for
  Recommendation}. In \bibinfo{booktitle}{\emph{{AAAI}}}.
\newblock


\bibitem[\protect\citeauthoryear{Xu, Li, Tian, Sonobe, Kawarabayashi, and
  Jegelka}{Xu et~al\mbox{.}}{2018}]%
        {JumpKG}
\bibfield{author}{\bibinfo{person}{Keyulu Xu}, \bibinfo{person}{Chengtao Li},
  \bibinfo{person}{Yonglong Tian}, \bibinfo{person}{Tomohiro Sonobe},
  \bibinfo{person}{Ken{-}ichi Kawarabayashi}, {and} \bibinfo{person}{Stefanie
  Jegelka}.} \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Representation Learning on Graphs with Jumping
  Knowledge Networks}. In \bibinfo{booktitle}{\emph{{ICML}}},
  Vol.~\bibinfo{volume}{80}. \bibinfo{pages}{5449--5458}.
\newblock


\bibitem[\protect\citeauthoryear{Yang, Chen, Wang, and Tsai}{Yang
  et~al\mbox{.}}{2018}]%
        {HOP-rec}
\bibfield{author}{\bibinfo{person}{Jheng{-}Hong Yang},
  \bibinfo{person}{Chih{-}Ming Chen}, \bibinfo{person}{Chuan{-}Ju Wang}, {and}
  \bibinfo{person}{Ming{-}Feng Tsai}.} \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{HOP-rec: high-order proximity for implicit
  recommendation}. In \bibinfo{booktitle}{\emph{RecSys}}.
  \bibinfo{pages}{140--144}.
\newblock


\bibitem[\protect\citeauthoryear{Yu, Ren, Gu, Sun, and Han}{Yu
  et~al\mbox{.}}{2013}]%
        {yu2013collaborative}
\bibfield{author}{\bibinfo{person}{Xiao Yu}, \bibinfo{person}{Xiang Ren},
  \bibinfo{person}{Quanquan Gu}, \bibinfo{person}{Yizhou Sun}, {and}
  \bibinfo{person}{Jiawei Han}.} \bibinfo{year}{2013}\natexlab{}.
\newblock \showarticletitle{Collaborative filtering with entity similarity
  regularization in heterogeneous information networks}.
\newblock \bibinfo{journal}{\emph{IJCAI}}  \bibinfo{volume}{27}
  (\bibinfo{year}{2013}).
\newblock


\bibitem[\protect\citeauthoryear{Yu, Ren, Sun, Gu, Sturt, Khandelwal, Norick,
  and Han}{Yu et~al\mbox{.}}{2014}]%
        {DBLP:conf/wsdm/YuRSGSKNH14}
\bibfield{author}{\bibinfo{person}{Xiao Yu}, \bibinfo{person}{Xiang Ren},
  \bibinfo{person}{Yizhou Sun}, \bibinfo{person}{Quanquan Gu},
  \bibinfo{person}{Bradley Sturt}, \bibinfo{person}{Urvashi Khandelwal},
  \bibinfo{person}{Brandon Norick}, {and} \bibinfo{person}{Jiawei Han}.}
  \bibinfo{year}{2014}\natexlab{}.
\newblock \showarticletitle{Personalized entity recommendation: a heterogeneous
  information network approach}. In \bibinfo{booktitle}{\emph{{WSDM}}}.
  \bibinfo{pages}{283--292}.
\newblock


\bibitem[\protect\citeauthoryear{Zhang, Yuan, Lian, Xie, and Ma}{Zhang
  et~al\mbox{.}}{2016}]%
        {CKE}
\bibfield{author}{\bibinfo{person}{Fuzheng Zhang},
  \bibinfo{person}{Nicholas~Jing Yuan}, \bibinfo{person}{Defu Lian},
  \bibinfo{person}{Xing Xie}, {and} \bibinfo{person}{Wei{-}Ying Ma}.}
  \bibinfo{year}{2016}\natexlab{}.
\newblock \showarticletitle{Collaborative Knowledge Base Embedding for
  Recommender Systems}. In \bibinfo{booktitle}{\emph{{KDD}}}.
  \bibinfo{pages}{353--362}.
\newblock


\bibitem[\protect\citeauthoryear{Zhao, Yao, Li, Song, and Lee}{Zhao
  et~al\mbox{.}}{2017}]%
        {MetaFMG}
\bibfield{author}{\bibinfo{person}{Huan Zhao}, \bibinfo{person}{Quanming Yao},
  \bibinfo{person}{Jianda Li}, \bibinfo{person}{Yangqiu Song}, {and}
  \bibinfo{person}{Dik~Lun Lee}.} \bibinfo{year}{2017}\natexlab{}.
\newblock \showarticletitle{Meta-Graph Based Recommendation Fusion over
  Heterogeneous Information Networks}. In \bibinfo{booktitle}{\emph{{KDD}}}.
  \bibinfo{pages}{635--644}.
\newblock


\bibitem[\protect\citeauthoryear{Zhao, He, Dou, Huang, Ouyang, and Wen}{Zhao
  et~al\mbox{.}}{2018}]%
        {KB4Rec}
\bibfield{author}{\bibinfo{person}{Wayne~Xin Zhao}, \bibinfo{person}{Gaole He},
  \bibinfo{person}{Hong{-}Jian Dou}, \bibinfo{person}{Jin Huang},
  \bibinfo{person}{Siqi Ouyang}, {and} \bibinfo{person}{Ji{-}Rong Wen}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{KB4Rec: {A} Dataset for Linking Knowledge Bases
  with Recommender Systems}.
\newblock \bibinfo{journal}{\emph{CoRR}}  \bibinfo{volume}{abs/1807.11141}
  (\bibinfo{year}{2018}).
\newblock


\bibitem[\protect\citeauthoryear{Zhou, Zhu, Song, Fan, Zhu, Ma, Yan, Jin, Li,
  and Gai}{Zhou et~al\mbox{.}}{2018}]%
        {DIN}
\bibfield{author}{\bibinfo{person}{Guorui Zhou}, \bibinfo{person}{Xiaoqiang
  Zhu}, \bibinfo{person}{Chengru Song}, \bibinfo{person}{Ying Fan},
  \bibinfo{person}{Han Zhu}, \bibinfo{person}{Xiao Ma},
  \bibinfo{person}{Yanghui Yan}, \bibinfo{person}{Junqi Jin},
  \bibinfo{person}{Han Li}, {and} \bibinfo{person}{Kun Gai}.}
  \bibinfo{year}{2018}\natexlab{}.
\newblock \showarticletitle{Deep Interest Network for Click-Through Rate
  Prediction}. In \bibinfo{booktitle}{\emph{{KDD}}}.
  \bibinfo{pages}{1059--1068}.
\newblock


\end{thebibliography}