Skip to content

Input Data

James Kirk edited this page Apr 3, 2018 · 3 revisions

A TensorRec system consumes three matrices of data: user_features, item_features, and interactions. It uses this data to learn to make and rank recommendations. TensorRec can consume these matrices as any scipy.sparse matrix.

user_features and item_features represent metadata about the items being recommended and the users receiving the recommendations. These features can be any numerical value, either integer or floating point.

interactions are observed relationships between users and items. Different loss graphs treat interaction values in different ways, so the valid values for your interactions will be determined by the loss graph you choose.

When TensorRec learns, it is learning to transform the user and item features in to low-dimensional latent representations. It is also learning to use these low-dimensional latent representations to predict scores/ranks that reflect the interactions.

The algorithm used to transform features in to low-dimensional representations is called the representation graph. The algorithm used to transform a user representation and an item representation in to a prediction is called the prediction graph. The algorithm used to learn from predictions and interactions is called the loss graph. These three graphs are configurable components of a TensorRec system.

TensorRec System Diagram

Examples

The following examples show what user/item features and interactions would look like in a TensorRec system meant to recommend business consulting projects (items) to consultants (users).

User features:

user_features

Item features:

item_features

Interactions:

interactions

Images from Medium

Clone this wiki locally