Consistent Collaborative Filtering via Tensor Decomposition

Published: 09 Jul 2023, Last Modified: 09 Jul 2023Accepted by TMLREveryoneRevisionsBibTeX
Abstract: Collaborative filtering is the de facto standard for analyzing users’ activities and building recommendation systems for items. In this work we develop Sliced Anti-symmetric Decomposition (SAD), a new model for collaborative filtering based on implicit feedback. In contrast to traditional techniques where a latent representation of users (user vectors) and items (item vectors) are estimated, SAD introduces one additional latent vector to each item, using a novel three-way tensor view of user-item interactions. This new vector extends user-item preferences calculated by standard dot products to general inner products, producing interactions between items when evaluating their relative preferences. SAD reduces to state-of-the-art (SOTA) collaborative filtering models when the vector collapses to 1, while in this paper we allow its value to be estimated from data. Allowing the values of the new item vector to be different from 1 has profound implications. It suggests users may have nonlinear mental models when evaluating items, allowing the existence of cycles in pairwise comparisons. We demonstrate the efficiency of SAD in both simulated and real world datasets containing over 1M user-item interactions. By comparing with seven SOTA collaborative filtering models with implicit feedbacks, SAD produces the most consistent personalized preferences, in the meanwhile maintaining top-level of accuracy in personalized recommendations. We release the model and inference algorithms in a Python library https://github.com/apple/ml-sad.
Submission Length: Regular submission (no more than 12 pages of main content)
Changes Since Last Submission: We revised the last sentence of Section 4.3 by adding more explanation to what values $\tau_i$ can take: > In SAD we estimate the value of $T$ from data. As discussed in Section 1, we encourage the values of entries in $T$ to be 1 unless there > is strong evidence from the data suggesting otherwise. This is achieved by adding an $l_1$ ​regularization centered around 1 to the > entries in $T$ independently. We rewrote the paragraph that introduced (8) to explain how $\tau$s were defined > SAD extends the original equations (2) and (3) by introducing a new non-negative vector $\tau_i$ for every item (a column in $T$ in Equation (7)). We can re-write Equation (6) as follows for every item pair $i$ and $j$: We made changes to the revised manuscript by adding a paragraph above Section 4.4 on Pg 6. > The $l_1$ regularization has another side effect. In Equation 8, multiplying any constant $c$ to $\eta_{hi}$ > and $1/c$ to $\tau_{hi}$ results in the same objective function, causing $H$ and $T$ unidentifiable. > The additional $l_1$ regularization around 1 mitigates the identifiability problem by discouraging any > constant multiplication that moves $\tau_{hj}$ away from 1, making the joint objective function identifiable > between $H$ and $T$. We added more explanation in the revised manuscript on Pg 10 when describing the two methods for recommendation in real data application. > SAD faces some unconventional challenges (hence opportunities) in producing a ranking when violation of transitivity exists. Consider three items $I$, $j$ and $t$. With transitivity, if user has $i \succ j$ and $j \succ t$, then $I \succ t$ must hold. However, SAD can result in a scenario in which $t \succ i$, forming a preference cycle among the three items, in which case no ranking can be inferred. We propose two methods using pairwise comparisons for SAD in the evaluation. We also added Figure 1, Algorithm 1 and missing captions in existing figures and table in revised manuscript. More details can be found in our responses to reviewers. All the changes in the revised manuscript are highlighted by yellow color. > further remarks We added revisions to reflect our responses to further remarks from reviewer Kngd. The revisions are highlighted in green. > Decision by Action Editors We made more revisions based on Action Editors final comments, by discussing the experiments we conducted, the two datasets referenced, and future extensions (in discussion section).
Video: https://www.youtube.com/watch?v=MTHefLFLSZI
Code: https://github.com/apple/ml-sad
Supplementary Material: zip
Assigned Action Editor: ~Lijun_Zhang1
License: Creative Commons Attribution 4.0 International (CC BY 4.0)
Submission Number: 1031
Loading