Recommender systems
RECOMMENDER SYSTEMS
Recommender systems are the software agents that make recommends according to the individual customer preferences.
They are supporting each customers based on their online searching and selecting preferences.
when you are buying things in online you can see some recommendation in the bottom.
when you are applying for job you can receive some recommendation based on your qualification and job preferences.
Two basic approaches that recommender systems take which is
Collaborative filtering
Content-based filtering
other one such as hybrid
what is collaborative filtering ?
you get recommendation based on prior use
it constructed only based on
Single user's behavior or
more effective from behavior of other users
Content-based filtering
It uses machine algorithm to the users preferences
recommendations based on contents of items rather than on other users opinion
for example you get it based on historical browsing information, such as blogs and user reads.
Hybrid Approaches
It also based on combining content-based filtering also increasing the efficiency and complexity of recommender systems.
Using python programming in recommender systems
we have used Anaconda navigator compiler
we executed the python program to get the recommendation in the Internet.
for example: you will get the top selling books in online shopping based on your input
ratings.head(10)
#If we decide to see more than 5 rows from the top or bottom, we simply enter the number of rows in the bracket.
ratings.describe
It describes the rating and get the output
# loading movie dataset using the url
movies = pd.read_csv("https://s3-us-west-2.amazonaws.com/recommender-tutorial/movies.csv")
movies.head()
you will get movies title using the above function based on your input.
movies.tail()
Movie rating based on the inputs
n_ratings = len(ratings)
n_movies = len(ratings['movieId'].unique())
n_users = len(ratings['userId'].unique())
print(f"Number of ratings: {n_ratings}")
print(f"Number of unique movieId's: {n_movies}")
print(f"Number of unique users: {n_users}")
print(f"Average ratings per user: {round(n_ratings/n_users, 2)}")
print(f"Average ratings per movie: {round(n_ratings/n_movies, 2)}")
user_freq = ratings[['userId', 'movieId']].groupby(
'userId').count().reset_index()
user_freq.columns = ['userId', 'n_ratings']
user_freq.head(10)
#Now we display the first 5 rows of our newly created table "user_freq"
Comments
Post a Comment