Today’s world is a small, deeply interconnected web. The internet has seemingly infinite potential, and in the post COVID world, the effect of the internet on our lives will just increase. Businesses are developing advanced solutions in e-commerce space to win over clients and one common focus area is personalized recommendations. Recommendation systems enable businesses to maximize their ROI based on the information they can gather on each customer’s preferences and purchases.
While building the recommendation system it is very common to use a traditional collaborative filtering algorithm such as item-item and user-item filtering. Basically, these algorithms are item-based in the sense that they analyse item-item relations to produce item similarities and focused on learning similarities between users and items simultaneously to provide recommendations. What if the user or item information is not available, how to build a more robust recommendation system? This led us to try to discover techniques from deep learning that can be used to overcome this limitation.
We want to focus on an extension of the Word2Vec model, called Item2Vec for item-based Collaborative Filtering that produces embedding for items in a latent space. The method is capable of inferring item to item (items might refer to sequences or words) relations even when user/item information is not available, which basically means it learns the item similarities by embedding items in a low dimensional space regardless of the users.
Problem statement: Create a system that automatically recommends a certain number of products to the consumers on an E-commerce website based on the past purchase behavior of the consumers.
A person involved in sports-related activities might have an online buying pattern similar to this:
If we can represent each of these products by a vector, then we can easily find similar products. So, if a user is checking out a product online, then we can easily recommend him/her similar products by using the vector similarity score between the products.
So… What is Word2vec?
Word2vec is a class of neural network models that were initially introduced for learning word embeddings that are highly useful for Natural Language Processing tasks. In recent years, the technique has also been applied to more general machine learning problems including product recommendations. The neural network takes in a large corpus of text, analyzes it, and for each word in the vocabulary, generates a vector of numbers that represent that word. Those vectors of numbers are what we are after, because as we’ll see, they encode important information about the meaning of the word in relation to the context in which it appears.
There are two main models defined: the Continuous Bag-of-Words model and the Skip-gram model.
References
- https://www.analyticsvidhya.com/blog/2019/07/how-to-build-recommendation-system-word2vec-python/
- https://mccormickml.com/2018/06/15/applying-word2vec-to-recommenders-and-advertising/
- https://www.analyticsinsight.net/building-recommendation-system-using-item2vec/
- https://towardsdatascience.com/using-word2vec-for-music-recommendations-bb9649ac2484
- https://capablemachine.com/2020/06/23/word-embedding/