\section{Introduction and Related Work}
The field of recommender systems has experienced extensive growth in many research directions over the last decade \cite{adomavicius2005toward,ricci2015recommender}, including the area of multi-criteria recommendations \cite{adomavicius2015multi,sahoo2012research,jannach2012accuracy,jannach2014leveraging}. For example, several prominent websites from Zagat to TripAdvisor collect multi-criteria ratings to measure quality of items shown on their sites that can subsequently be used for recommendation purposes. 

Previous researchers try to improve accuracy of multi-criteria recommender systems in various ways, including Support Vector Regression \cite{jannach2012accuracy} or the halo effect \cite{sahoo2012research}. However, most of the methods do not take the information contained in user reviews into account, which could potentially alleviate the sparsity problem and improve quality of recommendations, as pointed out in \cite{chen2015recommender}. Some researchers propose to utilize aspect information \cite{bauman2017aspect,musto2017multi,cheng2018aspect,wang2010latent} from user reviews for multi-criteria recommendations. Although useful, these papers do not consider the latent semantic information contained in user reviews,  which is beneficial for understanding users' true experiences and expectations \cite{zhang2019deep}. Besides, user reviews contain high-dimensional user feedback information beyond aspects, while the multi-criteria ratings collected by the online platforms are limited by low-dimensional pre-defined criteria, which may not fully represent multiplicity of user experiences. Moreover, some of the multi-criteria ratings might be missing, thus limiting performance of explicit multi-criteria rating methods \cite{adomavicius2015multi}.

To address these concerns, it's natural to map the user reviews into latent embeddings and incorporate these embeddings into the recommendation process. However, typical review embeddings are noisy and high-dimensional, which significantly increases the difficulty of computation and optimization. To resolve this issue, prior literature proposed to compress text embeddings with reasonable semantic segmentation into low-dimensional discrete vectors \cite{chen2018learning,shu2017compressing}, showing that the compressed vectors manage to achieve better performance in sentiment analysis and machine translation tasks. In this paper, we extend this idea from text analysis to multi-criteria recommender systems and propose to use these ''compressed vectors'' as latent multi-criteria ratings for recommendation purposes.

Specifically, we propose to extract latent multi-criteria ratings from the user reviews using the variational autoencoder \cite{kingma2013auto}. Furthermore, we map the reviews into latent embeddings to represent high-dimensional user experiences, and then perform embedding compression (e.g., using Gumbel-Softmax Reparameterization \cite{jang2016categorical,maddison2014sampling}) to compress them into low-dimension discrete vectors, which constitute the latent multi-criteria ratings for recommendations. We empirically validate the proposed method on three datasets and demonstrate that our approach outperforms several important baselines consistently and significantly in terms of various recommendation accuracy measures.

Note that, the proposed latent multi-criteria ratings method has the following advantages over the method using multi-criteria ratings explicitly provided by the users:
\begin{itemize}
\item It is not limited by the pre-defined criteria to model user experiences.
\item It does not require to collect multi-criteria feedback from the user.
\item It does not need to deal with the missing values problem for multi-criteria ratings.
\item It captures latent interactions between users and items (using autoencoders), thus providing several benefits reported in \cite{zhang2019deep}.
\end{itemize}

In this paper, we make the following contributions. We propose a novel method that automatically generates latent multi-criteria ratings from user reviews by combining autoencoding and embedding compression techniques for multi-criteria recommendations. We also empirically demonstrate that our approach outperforms the selected baseline models consistently and significantly on three datasets across various experimental settings.








\section{Method}
In this section, we introduce the proposed model for latent multi-criteria recommendations by combining autoencoding and embedding compression techniques, as presented in Figure \ref{process}. In Stage 1, we use the variational autoencoder to project the user reviews onto a latent continuous space; and then we utilize the embedding compression technique to compress the embedding vectors obtained in the previous stage into discrete latent ratings during Stage 2. Finally in Stage 3, we apply various multi-criteria recommendation algorithms on the latent ratings to produce recommended items.

\begin{figure}[h]
\centering
\includegraphics[width=0.3\textwidth]{picture/picture.pdf}
\caption{Illustration of Our Proposed Model}
\label{process}
\end{figure}

\subsection{Stage 1: Review Encoding}
To project the discontinuous user reviews into latent continuous embeddings, we follow the idea of autoencoding \cite{sutskever2014sequence} and implement the bidirectional GRU \cite{cho2014learning} neural networks as the encoder and the decoder respectively. Compared with classical models like RNN or LSTM, GRU is computationally more efficient and better captures semantic meanings \cite{chung2014empirical}. 

During the training process, every word $w$ in the review $s=\{w^{1},w^{2},\cdots,w^{N_{s}}\}$ is mapped to their corresponding word indexes in the pre-defined vocabulary $V$. Both the input and the output of the constructed autoencoder are the sequences of indexes. To illustrate the GRU learning procedure, we denote $[W^{z},W^{r},U^{z},U^{r}]$ as the weight matrices of current information and the past information for the update gate and the reset gate respectively. $x_{t}$ is the index vector input at the timestep $t$,  $h_{t}$ stands for the output vector, $z_{t}$ denotes the update gate status and $r_{t}$ represents the status of reset gate. The hidden state at timestep $t$ could be obtained following these equations:
\begin{equation}
z_t = \sigma_g(W_{z} x_t + U_{z} h_{t-1} + b_z) 
\end{equation}
\begin{equation}
r_t = \sigma_g(W_{r} x_t + U_{r} h_{t-1} + b_r) 
\end{equation}
\begin{equation}
h_t =  (1-z_t) \circ h_{t-1} + z_t \circ \sigma_h(W_{h} x_t + U_{h} (r_t \circ h_{t-1}) + b_h)
\end{equation}

By iteratively calculating hidden step throughout every time step, we could get the final hidden state at the end of the sentence, which constitutes the review embeddings $R = h_{N_{s}}$ that captures the latent semantic information of the user reviews. 

\subsection{Stage 2: Embedding Compression}
Note that, review embeddings obtained in Stage 1 are noisy and of high-dimensions, which significantly affect the performance of recommendation system. This motivates us to utilize embedding compression methods for efficient learning. We denote that the embedding matrix $R$ consists of $|S|$ embedding vectors with $H$ dimensions, where $|S|$ refers to the total number of reviews in the dataset. Given the arbitrary number $K$ and $M$, our goal is to find out discrete codes of dimension $K$ ($K << H$) that take integer value ranging from 1 to $M$ in the latent dimension. 

Inspired by the Gumbel-Softmax reparameterization method \cite{jang2016categorical,shu2017compressing}, we conduct the embedding compression process using the compositional code learning method that parameterizes the discrete codes onto continuous distributions. The Gumbel-Softmax technique \cite{gumbel1954statistical,maddison2014sampling} provides a simple and efficient way to get samples $z$ from a categorical distribution with class probabilities $\pi$:
\begin{equation}
z = \mbox{one-hot}(argmax_{i}[g_{i}+log \pi_{i}])
\end{equation}
where $g_{i}$ are drawn from the Gumbel distribution and $one-hot$ stands for the one-hot function that transforms the data to a binary one-hot encoding. We use the softmax function as the continuous differentiable approximation to the argmax function, so that the generated sample vectors would be:
\begin{equation} 
y_{i}=\frac{exp((log(\pi_{i})+g_{i})/\gamma)}{\sum_{K=1}^{K}exp((log(\pi_{K})+g_{K})/\gamma)}
\end{equation}
for $i=1,2,\cdots,K$ where $\gamma$ represents the temperature of the softmax function. Therefore as discussed in \cite{shu2017compressing}, if we reverse the entire sampling process described above, we can learn the discrete codes from our continuous embeddings. 

Specifically, given the number of latent dimensions $K$, we first apply the matrix factorization \cite{koren2009matrix} to get the top-K factor for that embedding matrix: $R = \sum_{i=1}^{K} D^{i}A_{i}$ where $A_{i} \in R^{K*H} $ is the basis matrix for the $i-th$ component. Therefore, the learning of discrete codes would be equivalent to the learning of a set one-hot vectors $d_{w}^{i}$ so that $ \hat{R} = \sum_{i=1}^{K}A_{i}^{T}d_{w}^{i}$ Furthermore, we assume that the discrete vectors $d_{w}^{i}$ are sampled from a prior distribution via Gumbel-Softmax Reparameterization method \cite{shu2017compressing} by minimizing the reconstruction loss compared with the origin embedding matrix,
\begin{equation}
min_{w_{i}}\frac{1}{|S|}\sum_{s\in S}||R_{s}-\hat{R_{s}}|| 
\end{equation}
where $R'_{s}$ stands for the embedding matrix reconstructed from the compressed codes we get. We optimize the prior parameters $\pi_{i}$ and $g_{i}$. Finally, the compressed vectors for each review embeddings $D_{w}$ could be obtained by applying $argmax$ to the one-hot vectors $d_{w}^{i}$.

\subsection{Stage 3: Multi-Criteria Recommendation}
When we compressed continuous review embeddings $R$ into discrete latent embeddings $D_{w}$ as described in Stage 2, we select 
the dimension of discrete codes $K$ corresponding to the dimension of collected multi-criteria ratings, and also select the range of each latent dimension $M$ matching with the range of organic multi-criteria ratings. In that sense, we could treat these compressed vectors $D_{w}$ as the \textbf{latent} multi-criteria ratings and then utilize these multi-criteria ratings for recommendation purposes, shown as Stage 3 in Figure \ref{process}. Note that, unlike traditional cases, the latent multi-criteria ratings are not specified by the users but obtained from the reviews as described in the previous stages. We conduct the multi-criteria recommendations using the state-of-the-art methods introduced in \cite{adomavicius2015multi}.

To summarize, we propose to uniquely combine the method of variational autoencoders with the embedding compression techniques to learn the latent multi-criteria ratings from user reviews for multi-criteria recommendation purposes.  In the next section, we experimentally demonstrate the superiority and effectiveness of the proposed approach.

\section{Experiments and Results}
\subsection{Experimental Settings}
We implement the model on the following datasets: Yelp Challenge Dataset \footnote{https://www.yelp.com/dataset} Round 8 and Round 11 of restaurant recommendations and on TripAdvisor Dataset \footnote{http://www.cs.cmu.edu/˜jiweil/html/hotel-review.html} of hotel recommendations that contain user reviews, as well as multi-criteria feedback. The difference between two Yelp datasets is the time when the data is collected: Round 8 dataset is collected in 2016, while Round 11 dataset is collected in 2018. To avoid the sparsity and the cold start problems, we only consider users that rate at least five items, restaurants that have been rated by at least ten users and hotels that have been rated by at least five users. The basic statistics of the filtered datasets are shown in Table \ref{statisticalnumber}. (Note that the unfiltered datasets are much larger.)

To demonstrate the effectiveness of the proposed latent multi-criteria rating (LatentMC) model, we select several multi-criteria rating models for comparison, including:
\begin{itemize}
\item \textbf{MC}: the multi-criteria ratings explicitly specified by the users in the three datasets.
\item \textbf{Overall}: the overall ratings in the three dataset.
\item \textbf{Embedding}: the uncompressed review embeddings obtained in Stage 1 (see Figure 1) as latent multi-criteria ratings in the three datasets.
\item \textbf{Aspect}: the extracted aspect ratings \cite{bauman2017aspect} as multi-criteria ratings in the three datasets.
\item \textbf{PCA}: the top-k factors extracted using Principal Component Analysis \cite{jolliffe2011principal} as latent multi-criteria ratings in the three datasets.
\end{itemize}

Also, to evaluate recommendation performance, we implement the state-of-the-art multi-criteria recommendation models introduced in \cite{adomavicius2015multi}, including KNN, SlopeOne, CoCluster, Support Vector Regression (SVR) and Aggregate Function. The first three models are adjusted to their multi-criteria recommendation versions by calculating similarities using multi-criteria ratings instead of only overall ratings.

\subsection{Experimental Results}
We conduct the 5-fold cross-validation recommendation experiments and report the performance results on the test set. As shown in Table \ref{result}, our proposed LatentMC model outperforms the baselines consistently and significantly across different datasets, performance measures and algorithms.  For example using Aggregate algorithm, the Pre@1, Pre@5, Rec@1, Rec@5 measures for the three datasets improve by 1.73\%, 1.56\%, 6.05\%, 1.29\%, 1.91\%, 2.32\%, 4.03\%, 2.00\%, 2.52\%, 4.86\%, 5.47\% and 1.99\% respectively compared to the second-best baseline models. In general, we obtain over 2\% accuracy improvements in most of the cases.

Furthermore, we make the following observations. First, compared with the recommendation results directly using uncompressed review embeddings, the latent compressed multi-criteria rating method achieves better performance. The improvement is achieved through the compression process that cleans up the noisy high-dimensional embedding vectors and extracts the essence of the reviews. Second, we observe that review-based multi-criteria recommendation model performs better that the non-review recommendation model, even without using the explicit multi-criteria rating information. This indicates that user reviews contain richer and high-dimensional information, compared to low-dimensional multi-criteria ratings. Thus, it is crucial to properly model user reviews in the recommendation process. Finally, the latent rating method outperforms the explicit rating models because they capture the latent semantic information within user reviews, which supports the general advantages of using latent methods in text analysis \cite{zhang2019deep}.

\vspace{-0.5cm}
\subsection{Conclusions}
To conclude, the latent multi-criteria ratings generated by the proposed model achieve significantly better performance for multi-criteria recommendations in comparison to the alternative methods. In addition, it has the following natural advantages over classical multi-criteria recommendation approaches. First, it is not limited by the pre-defined criteria and missing values to model user experiences. Second, it does not require to collect multi-criteria feedback from the user. Third, it captures latent interactions between users and items, which provide several benefits reported in \cite{zhang2019deep}.

As the future work, we would like to improve the latent multi-criteria rating generation process even further. Also, we plan to study the semantic meaning and interpretability of the latent multi-criteria ratings.





