Explore Courses Blog Tutorials Interview Questions
0 votes
in Machine Learning by (19k points)

I am developing a website, which will recommend recipes to the visitors based on their data. I am collecting data from their profile, website activity, and Facebook.

Currently, I have data like [username/userId, rating of recipes, age, gender, type(veg/Nonveg), cuisine(Italian/Chinese.. etc.)]. With respect to the above features, I want to recommend new recipes which they have not visited.

I have implemented ALS (alternating least squares) spark algorithm. In this we have to prepare csv which contains [userId,RecipesId,Rating] columns. Then we have to train this data and create the model by adjusting parameters like lamdas, Rank, iteration. This model generated a recommendation, using pyspark

model.recommendProducts(userId, numberOfRecommendations)

The ALS algorithm accepts only three features userId, RecipesId, Rating. I am unable to include more features (like type, cuisine, gender, etc.) apart from which I have mentioned above (userId, RecipesId, Rating). I want to include those features, then train the model and generate recommendations.

Is there any other algorithm in which I can include the above parameters and generate a recommendation.

Any help would be appreciated, Thanks.

1 Answer

0 votes
by (33.1k points)

There are many algorithms to solve your problem. You can use the Naive Bayes algorithm.

Naive Bayes Algorithm:

It is a classification algorithm based on Bayes’ Theorem with an assumption of independence among predictors. A Naive Bayes classifier is used to differentiate the presence of a particular feature in a class that is unrelated to the presence of any other feature.

Naive Bayes Classifier and Collaborative Filtering together used to builds a Recommendation System that uses machine learning and data mining techniques to filter unseen information and predict whether a user would like a given resource or not

You can learn more about the Naive Bayes algorithm here.

I hope this answer helps. Also, to learn more about machine learning algorithms and their working, you can enroll in Intellipaat's Machine learning course online.

Browse Categories