0 votes
1 view
in Machine Learning by (17.3k 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.2k 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.

Welcome to Intellipaat Community. Get your technical queries answered by top developers !