README.md

March 4, 2024 ยท View on GitHub

Disentangled Graph Variational Auto-Encoder for Multimodal Recommendation with Interpretability, TMM'24

Abstract

Multimodal recommender systems amalgamate multimodal information (e.g., textual descriptions, images) into a collaborative filtering framework to provide more accurate recommendations. While the incorporation of multimodal information could enhance the interpretability of these systems, current multimodal models represent users and items utilizing entangled numerical vectors, rendering them arduous to interpret. To address this, we propose a Disentangled Graph Variational Auto-Encoder (DGVAE) that aims to enhance both model and recommendation interpretability. DGVAE initially projects multimodal information into textual contents, such as converting images to text, by harnessing state-of-the-art multimodal pre-training technologies. It then constructs a frozen item-item graph and encodes the contents and interactions into two sets of disentangled representations utilizing a simplified residual graph convolutional network. DGVAE further regularizes these disentangled representations through mutual information maximization, aligning the representations derived from the interactions between users and items with those learned from textual content. This alignment facilitates the interpretation of user binary interactions via text. Our empirical analysis conducted on three real-world datasets demonstrates that DGVAE significantly surpasses the performance of state-of-the-art baselines by a margin of 10.02%. We also furnish a case study from a real-world dataset to illustrate the interpretability of DGVAE.

Full paper: arXiv, IEEE

Model Arch.

Fig. 1. The framework of DGVAE, which fully utilizes multimodal information to construct the word vector and the item-item graph. DGVAE learns its model parameters by reconstructing both the word vector and the rating vector of a user.

Performance on Baby Dataset

MetricR@10R@20N@10N@20
Multi-VAE0.03530.05790.01890.0248
MacridVAE0.04630.07030.02640.0327
DGCF0.04410.07090.02390.0308
LightGCN0.04790.07540.02570.0328
VBPR0.04230.06630.02230.0284
MMGCN0.04210.06600.02200.0282
GRCN0.05320.08240.02820.0358
DualGNN0.05130.08030.02780.0352
LATTICE0.05470.08500.02920.0370
MVGAE(w/o POE)0.03070.05200.01510.0206
SLMRec0.05210.07720.02890.0354
BM30.05640.08830.03010.0383
DMRL0.05430.08470.03220.0405
DGVAE0.06360.10090.03400.0436
improv.12.77%14.27%5.59%7.65%

Interpretability

Fig. 2. An illustration of interpretability of DGVAE. The left part shows the interacted items by user A1E3O99XB3BN3W. The middle part visualizes the learned latent prototypes of DGVAE. The right part presents the learned prototypes and the recommended item.

How to run

After install requirements.txt, simply run ./run-baby.sh