BxD Primer Series: Knowledge-based Recommendation Models
Hey there ??
Welcome to BxD Primer Series where we are covering topics such as Machine learning models, Neural Nets, GPT, Ensemble models, Hyper-automation in ‘one-post-one-topic’ format. Today’s post is on?Knowledge-based Recommendation Models. Let’s get started:
The What:
Knowledge-based recommendation models utilize explicit knowledge about the user's preferences and the characteristics of the items being recommended to generate personalized recommendations. In contrast to other recommendation systems, such as collaborative filtering or content-based systems, knowledge-based models rely on?explicit information about the user and the items?to make recommendations.
The basic process of a knowledge-based recommendation model involves collecting information about the user's preferences and the attributes of the items being recommended. This information is typically represented in a knowledge base, which can take the form of a database, ontology, or other structured representation of knowledge. The model then uses this information to make recommendations by matching user's preferences with attributes of items being recommended.
Although any structured knowledge database can be used to make recommendations using similar technique as content-based filtering recommendation model (check?here), we will primarily focus on knowledge graphs, which is a new concept in our series.
Introduction to Knowledge Graphs:
In a knowledge graph, data is represented as nodes (entities) and edges (relationships) between these entities. Each entity is assigned a unique identifier, and each relationship is defined by a predicate, which specifies the type of relationship between the entities.
A knowledge graph can be used to represent domain knowledge of items and their relationships. For example, in an e-commerce setting, knowledge graph can represent the relationships between products, such as "is similar to", "is a substitute for", and "is frequently bought together with" etc.
It can represent relationship between users and items. For example, “liked”, “clicked”, “added to wishlist”, “bought”, “pending in cart” etc.
It can represent relationship between items and features. For example, “black”, “26 inch waist”, “on discount”, “authored by”, “handwritten” etc.
Similarly, user-features, user-user and other relationship graphs can be created.
The How:
Knowledge-based Recommendation Models use all available explicit information about items and users to generate recommendations. This process has four general steps:
Represent Data as a Knowledge Graph:
The Why:
Reasons to use knowledge-based recommendation models:
The Why-Not:
Reasons to not use knowledge-based recommendation models:
Time for you to support:
In next coming posts, we will cover two more recommendation models - Matrix Factorization, Hybrid Recommender Systems.
Let us know your feedback!
Until then,
Have a great time! ??