Skip to Content

Notes on reciprocal recommender systems

Definition

A reciprocal recommender system can be viewed as a bipartite graph \(G\) defined by \( (M,W,E) \) where \(M\) and \(W\) denote the sets of nodes that represent men and women members in the system, \(E\) denotes the set of directed edges in \(G\).

Any directed edge between \(m \in M\) and \(w \in W\) (or \(w’ \in W\) and \(m’ \in M\) ) is associated with a mapping \(\psi\) from \(M \rightarrow W\) (or \(W \rightarrow M\)) that captures the preference of \(m\) for \(w\) (or the preference of \(w’ \in W\) for \(m’ \in M\)).

Preference takes value +1 in case of a like, -1 in case of a dislike. More concretely, \(\psi: (M \times W) \cup (W \times M) \rightarrow \{-1, +1\} \).

Problem

Given a member \(m \in M\) (or \(w \in W\)), the objective of the reciprocal recommender algorithm is —based on historical interactions between members— come up with a ranked list of \(w_1, w_2, …, w_n\) (or \(m_1, m_2, …, m_n\)) potential preferences likely to result in mutual likes, also called as a match.

Direct Reciprocity Embedding

Learn an embedding matrix \( \phi \) that maps each member in the graph \(G\) into a d-dimensional embedding vector for reciprocal recommendation such that the direct reciprocity between two members in \(G\) is preserved in the embedding space.

(Under construction…)