Item Based Collaborative Filtering Based on Highest Item Similarity
Malim Muhammada,1,*, Sigit Sugiyanto b,2
a Department of Mathematics Education, Faculty of Teacher Training and Education, Muhammadiyah Purwokerto University, 53182, Indonesia
b Department of Informatics Engineering, Faculty of Engineering and Science, Universitas Muhammadiyah Purwokerto, 53182, Indonesia
1 [email protected]*; 2 [email protected]
* corresponding author
I. Introduction
A. Recommendation System
Today, the Internet has become a source of information and a place to sell goods online (e- commerce) [1]. The abundance of information on the Internet causes users to have difficulty choosing the information obtained to suit their needs. The increasing number of e-commerce sites increases product information on the Internet, where users need more time to search for the desired item [2]. Verma (2022) mentioned that recommendation systems could analyze user data, filter web page content, and recommend information [3]. The recommendation system analyzes existing data
ARTICLE INFO A B S T R A C T
Article history:
Received 15 Jan 2022 Revised 20 March 2022 Accepted 30 May 2022
The popularity of movies has increased in recent years. There are thousands of films produced each year. These films make it challenging for movie lovers to pick the ideal film to see. We propose a recommendation system that strives to offer guidance in selecting films. Depending on the method employed, recommendation systems can be categorized into three groups:
collaborative filtering, content-based filtering, and hybrid filtering.
In this work, collaborative filtering, one of the methods frequently used in recommendation systems was used. There are two ways to the Collaborative Filtering approach: User-Based Collaborative Filtering (UBCF) and Item-Based Collaborative Filtering (IBCF).
There are two methods for finding similar items or users: Cosine and Pearson similarities. The Cosine similarity approach is one way to determine how similar two items are. Additionally, the Pearson Correlation Coefficient approach, which determines similarities between objects by calculating linear correlations between two sets, is the most widely employed. This study aims to determine which system produces the highest item similarity in IBCF and predicted ratings to actual ratings using 90% training and 10% testing data.
The data set taken from MovieLens.org consists of 943 users from 1664 movies with 99392 ratings. The MovieLens data collection will be analyzed with the RStudio and the R package recommenderlab.
The results reveal that the IBCF with Cosine similarities shows the number of items recommended n top-rated movies to each user for 10 movies. The IBCF can identify the most recommended films and creates a frequency distribution of items.
Copyright © 2017 International Journal of Artificial Intelegence Research.
All rights reserved.
Keywords:
Recommendation System Collaborative Filtering
Item-Based Collaborative Filtering Recommenderlab
MovieLens
to find the relationship between the product and the user. The results will be displayed as recommendations to help users find the desired item faster [4].
A recommendation system is a system that can provide a recommendation for an item through filtering, selection of information using preferences from users in the form of profiles, ratings, and behaviors to help an individual or community find content or items of interest that are most likely to be selected, used, or purchased [5]. The recommendation engine is a structured algorithm of mathematical calculations to identify and study user patterns, item patterns, and the relationship between the two to predict items that will then be recommended [6]. The recommendation system can handle the problem of excess information for users by providing recommendation services in the form of content or items according to user personalization [7].
There are numerous recommendation systems that are often used, including Content-Based Filtering (CBF), Collaborative Filtering (CF), Demographic Filtering (DF), Knowledge-Based (KBF), Hybrid Filtering (HF), and others. However, content-based filtering, collaborative filtering, and hybrid filtering are three techniques that are frequently employed in recommendation systems [8]. Item Collaborative Based Filtering, often known as CF, was the technique employed in this study (ICBF).
B. Collaborative Filtering (CF)
Collaborative filtering is the most commonly used method in recommender systems. CF is one of the recommendation techniques whose predictions and recommendations are based on the rating value or behavior of other users in the system [9]. The CF method performs calculations; the user expresses preferences by rating an item (such as books, movies, clothes, laptops, and others); then, the system will provide recommendations to the user [10]. The fundamental assumption of this method is that the opinions of other users can be selected and aggregated to provide predictions of the preferences of active users. It is assumed that if several users have the same interest in one item, they are likely to have the same interest in another [11]. The essence of CF is to find user recommendations by filtering data based on the behavior characteristics of other users so that they can provide new information. If two users have the same or almost identical items, they have the same tastes [2]. Such users build groups or environments called neighbors. Then an active user gets recommendations for items he had not valued before but had been positively assessed by his neighbors [12].
By creating predicted eligibility scores or Top-N lists of suggested things for a specific user, the recommendation system of this method uses data analysis techniques to assist consumers in finding the products they want to purchase on e-commerce sites [13]. Various techniques can be used to make product recommendations. Recommendations may be based on user demographics, best- selling products, or users' previous purchasing patterns as indicators of likely future purchases [14].
The quality of the recommendations using this method is highly dependent on the opinions of other users (neighbors) on an item. Therefore, the user later discovered that reducing neighbors could improve the quality of the recommendations [15].
C. Item Collaborative Based Filtering (ICBF)
There are two main approaches to collaborative filtering (CF) recommendation systems, namely item-based and user-based, called User Collaborative Filtering (UCF) and Item Collaborative Based Filtering (ICBF) [16]. The CF recommendation system with an item approach uses similarities among items to determine whether the user likes it or not. In contrast, with the user approach, CF provides recommendations by finding user similarities (neighbors) based on the behavior found [17].
The UCF model assumes that a good way to find items of interest to a particular user is to look for other users who share similar interests [18]. So, at first, UCF tries to find user neighbors based on user similarity, and each rating value of user neighbors will be used as recommendation material for active users [19]. The fundamental difference between UCF and ICBF is whether the correlation is based on user or item. The ICBF model has almost the same scheme as UCF. If previously the UCF sought was a correlation between users, then in ICBF, the correlation sought was between items preferred by the user. The items were correlated and recommended against several other users [14].
D. Cosine Similarity
There are two methods for finding similar items or users, Cosine and Pearson's correlation similarities [4]. The Cosine similarity approach is one way to determine how similar two items are.
In general, this method's calculation is based on the similarity of vector spaces. This Cosine similarity method uses keywords from a document to determine how similar two items expressed in two vectors are to one another [20].
In this case, two items are considered to be two pieces of objects expressed in two vectors. The similarity between these 2 items is measured by calculating the cosine of the angle between the 2 item vectors [21]. It can be calculated as in equation (1) below.
( ) ( ) ( ) ( )
, ,
2 2
, ,
( , ) cosij u U u i u j
u i u j
u U u U
R R
sim i j
R R
= =
()where:
cosij = Cosine similarity value between item-i and item-j uU
= All sets user-u that rate item-i and item-j,
Ru i = User-u rating value for item-i
,
Ru j = User-u rating value for item-j
The similarity range of Cosine Similarity is 0 to 1. A zero value indicates that the item is completely different (has no resemblance at all) to the item for which the resemblance is searched.
In contrast, the value of one indicates that the two items have the same resemblance [22].
E. Pearson Correlation Similarity
The Pearson correlation similarity method is the most frequently used to calculate similarities between objects based on calculating linear correlations between two sets [23]. The results of Pearson correlation measurements are in the form of a classification of similarity criteria with a range of values of -1 (very unequal) to 1 (very similar) and 0 as the middle value (neutral). It can be calculated as in equation (2) of the following: [24]
( )( )
( ) ( )
, ,
2 2
, u, j
( , ) ij u U u i i u j j
u i i j
u U u U
R R R R
sim i j pearson
R R R R
− −
= =
− −
()Where:
pearsonij= The Pearson similarity value between item-i and item-j uU
= All sets user-u that rate item-i and item-j,
Ru i = User-u rating value for item-i
,
Ru j = User-u rating value for item-j Ri = Average rating value from user-i Rj = Average rating value from user-j
We require a group of users who score each thing in order to determine the similarity value between two items. The Pearson similarity equation's calculated value falls between -1.0 and +1.0. If
the similarity value between two items is close to +1.0, they are thought to be mutually correlated;
conversely, if it is close to -1.0, they are thought to be uncorrelated [26].
F. K-Nearest Neighbors (k-NN)
Using the Cosine and Pearson similarity formula, a set of items that are extremely similar to one another are obtained, and then predictions are calculated to determine the user's rating value [27].
The value of the user's rating for a certain item is predicted using prediction calculation [28].. The K-Nearest Neighbor approach is one of the techniques used in the collaborative filtering process that can produce precise and customized recommendations. In this approach, the system directly stores the user's rating and uses it to anticipate the rating for new items [30]. When predicting the rating of a piece of content, the predicted rating value is calculated after calculating the item similarity between two pieces of content (sim(i,j)) and selecting a number of items (k) from the closest neighbor [31]. This study uses the equations of Cosine and Pearson correlation to measure the item similarity. The form of the k-NN equation (3) is as follows:
( )
( )
( , ) * ,
, ( , )
sim i j R
i I u i
Pu i i I sim i j
=
()
Where:
,
Pu i = Prediction rating of user-u to item-i iI
= All sets of items similar to item-i,
Si u = User-u similarity value with item-i
,
Ru i = Rating value of user-u to item-i
II. Methods
MovieLens data are used in this study's quantitative methodology. A website called MovieLens provides customers with personalized movie recommendations based on how they rated a particular movie [25].. The information was gathered by Grouplens research from the Movie-Lens website (https://grouplens.org/datasets/movielens/). With 1664 films and 99392 ratings, MovieLens has 943 users from those 1664 films (on a scale of 1-5 stars). Six hundred ten users created these data between September 19, 1997, to April 22, 1998 [32].
Data processing is raped using the Item Collaborative Based Filtering (ICBF) method with software RStudio through the following steps.
• Installing the recommenderlab package on the R platform, if you use Rstudio, you can directly install the package through the Repository (CRAN) via the Packages -> install menu.
Then, to view the documentation, use the library command ("recommenderlab"),
• The data analyzed is MovieLens data. The film's data includes the realratingMatrix class. The class of this rating matrix is defined specifically in the recommenderlab package.
• Users who have rated at least 50 films and have seen them at least 70 times are the requirements for analyzing and determining film data. The data is also named ratings movies,
• The movie recommendation model is built using a portion of movielens data (training data) and applies it to the rest of the data (test data). Training data is determined with the probability of data being selected as training data at 90 percent and testing 10 at percent.
• Build a film recommendation model with parameter input functions,
• The final step is applied the movie recommendation model to the testing data will reveal how many items were each user's recommendations. Afterward, list the movies that are frequently cited.
III. Result and Discussion
Based on the background that the researcher has explained in the introduction, it is known that along with the increase in internet users, the number of e-commerce has increased rapidly, so data and information related to goods traded in e-commerce also increased. It takes more time for users to find items they like and want to buy if, in the e-commerce system, no feature recommends items that match the user's interests.
One solution that the system can be to overcome this problem is to implement a method that can recommend goods to users. The recommendation system can predict users' preferred items by analyzing the similarity of active users to other users who have purchased and rated an item. This item similarity was obtained from the closest users (neighbors) who have similarities with active users. After being obtained by neighbors, any items purchased and rated by neighbors but never purchased by active users are then calculated by the predicted rating given by active users to be displayed as recommended items to active users. The goods' results are sorted based on the goods with the highest rating prediction.
A. MovieLens Data Setup
This study applied the Item Collaborative Based Filtering (ICBF) methods to the MovieLens data set using the R program. Use the library command ("recommenderlab") to call the data set and view the documentation. Six MovieLens data sets can be used as tabel 1 below.
data_movie<-data (package ="recommenderlab") data_movie$results[, "Item"]
Table 1. Data SetbMovieLens
Number Data Set
[1] "Jester5k"
[2] "JesterJokes (Jester5k)"
[3] "MSWeb"
[4] "MovieLense"
[5] "MovieLenseMeta (MovieLense)"
[6] "MovieLenseUser (MovieLense)"
The data set used in this study is MovieLense, which contains about 100,000 ratings on a scale of 1-5 from 943 users in 1664 films. Next, from the six MovieLens data sets above, [4]
"MovieLense" is selected and defined in R as the MovieLense variable, and the output is obtained.
MovieLense
## 943 x 1664 rating matrix of class 'realRatingMatrix' with 99392 ratings
The data consists of 943 users from 1664 movies with 99392 ratings. The movie data belongs to the realRatingMatrix class. The class of this rating matrix is defined specifically in the recommenderlab package.
B. Selecting Relavan Fim Rating Data
In this study, we determined the user criteria to avoid bias in the film, where the data be selected with the following criteria:
• Users who have rated at least 50 movies.
• A movie that has been watched at least 70 times.
subsequently, the data is named ratings_movies, as shown in the following output.
ratings_movies
## 565 x 463 rating matrix of class ‘realRatingMatrix’ with 65581 ratings.
The variable ratings_movies is the data to be analyzed, which consists of 565 users from 463 movies with 65581 ratings
C. Film Recommendation Model
The data rating movies contains MovieLens users who have rated at least 50 movies and movies that have been viewed at least 70 times, as previously mentioned. As a result, the training data is chosen with a probability of 90% and the testing data with 10%.
train_which <- sample (x = c(TRUE, FALSE), size = nrow(ratings_movies), replace = TRUE, prob = c(0.90,0.10))
data_train <- ratings_movies [train_which, ] data_train
## 508 x 463 rating matrix of class ‘realRatingMatrix’ with 59093 ratings.
This data means that there are 508 training data users with a rating of 59093.
D. Calculating the Similarity Matrix
Recommenderlab provides three methods for calculating similarities, namely Cosine and Pearson. In this study, the author used the highest similarity value of the two methods by calculating the similarity of the first five items output was obtained in table 2 and 3 as follows.
cosine_similarity <- similarity(MovieLense[, 1:5], method = "cosine", which = "items")
as.matrix (cosine_similarity)
pearson_similarity <- similarity(MovieLense[, 1:5], method = "pearson", which = "items")
as.matrix (pearson_similarity)
Table 2. Cosine Similarity Values between Items
Movies
First Top 5 Movies Toy Story
(1995)
GoldenEye (1995)
Four Rooms (1995)
Get Shorty (1995)
Copycat (1995) Toy Story
(1995) 0 0.9743687 0.9566499 0.9714534 0.9806819
GoldenEye
(1995) 0.9743687 0 0.9544399 0.9697463 0.9713438
Four Rooms
(1995) 0.9566499 0.9544399 0 0.949597 0.971236
Get Shorty
(1995) 0.9714534 0.9697463 0.949597 0 0.9459968
Copycat
(1995) 0.9806819 0.9713438 0.971236 0.9459968 0
Table 3. Pearson Similarity Value between Items
Movies
First Top 5 Movies Toy Story
(1995)
GoldenEye (1995)
Four Rooms (1995)
Get Shorty (1995)
Copycat (1995) Toy Story
(1995) 0 0.6108921 0.5878971 0.5515676 0.6932376
GoldenEye
(1995) 0.6108921 0 0.6152678 0.6222779 0.6087797
Four Rooms
(1995) 0.5878971 0.6152678 0 0.3990156 0.5923061
Get Shorty
(1995) 0.5515676 0.6222779 0.3990156 0 0.3813249
Movies
First Top 5 Movies Toy Story
(1995)
GoldenEye (1995)
Four Rooms (1995)
Get Shorty (1995)
Copycat (1995) Copycat
(1995) 0.6932376 0.6087797 0.5923061 0.3813249 0
E. Building the k-NN Recommendation Model
Building a recommendation model requires input parameters with the following specifications in table 4 below.
Table 4. Input Parameter
Parameter Default
k 30
method cosine
normalize center
normalize_sim_matrix FALSE
alpha 0.5
na_as_zero FALSE
verbose FALSE
henceforth the data is named recc_model as shown in the following output
model_recom <- Recommender (data = data_train, method = "IBCF", parameter
= list (k = 50, method = "cosine", normalize = "center", normalize_sim_matrix = FALSE, alpha = 0.5, na_as_zero = FALSE, verbose = FALSE))
model_recom
## Recommender of type 'IBCF' for 'realRatingMatrix' learned using 508 users.
class(model_recom)
## [1] "Recommender"
## attr(,"package")
## [1] "recommenderlab"
F. Implement the k-NN Recommendation Model
The command recom_number <- 10, shows the number of items recommended to each user, namely as many as 10 movies. The following command gives recommendations n top-rated movies.
Pay attention to the structure of the prediction results above:
recom_number <- 10
predic_recom <- predict (object = model_recom, newdata = data_train, n = recom_number)
predic_recom
## Recommendations as ‘topNList’ with n = 10 for 508 users.
class(predic_recom)
## [1] "topNList"
## attr(,"package")
## [1] "recommenderlab"
slotNames(predic_recom)
## [1] "items" "ratings" "itemLabels" "n"
Description:
• items contain a list with an index of recommended items for each user.
• ratings contain a list of recommended item ratings for each user.
• itemLabels contains the item name
• n contains the number of recommendations
In this case, the researcher wants to see the results of the recommendations for the first user, so that the following output is obtained.
predic_recom@items[[1]]
## 290 367 241 343 229 383 238 387 291 214
Next, we can extract the 10 movies recommended for the first user and named user_movie_first, as seen in the following output.
predic_recom_1 <- predic_recom@items[[1]]
user_movie_first <-predic_recom@itemLabels[recc_user_1]
user_movie_first
[1] "Manchurian Candidate, The (1962)"
[2] "High Noon (1952)"
[3] "Vertigo (1958)"
[4] "Casablanca (1942)"
[5] "Harold and Maude (1971)"
[6] "Maltese Falcon, The (1941)"
[7] "Treasure of the Sierra Madre, The (1948)"
[8] "Some Like It Hot (1959)"
[9] "In the Name of the Father (1993)"
[10] "To Kill a Mockingbird (1962)
The ten films are the number of films that have been ratified the most with a certain number of indices, presented in the following table 5 below.
Table 5. The Most Number of Movies That Have Been Ratted
Index Default
383 "Manchurian Candidate, The (1962)"
387 "High Noon (1952)"
318 "Vertigo (1958)"
321 "Casablanca (1942)"
290 "Harold and Maude (1971)"
322 "Maltese Falcon, The (1941)"
339 "Treasure of the Sierra Madre, The (1948)"
320 "Some Like It Hot (1959)"
240 "In the Name of the Father (1993)"
289 "To Kill a Mockingbird (1962)
To be able to identify the most recommended films, a vector is defined that contains all the recommendations and then creates the number items. Most of the recommended movies are only a few views and some movies are recommended many times using syntax in Rstudio.
items_number <- factor(table(matrix_recom))
title_movies <- "Distribution of the number of items for IBCF"
items_sorted_number <- sort(items_number, decreasing = TRUE) items_top_number <- head (items_sorted_number, n = 10)
top_table <- data.frame(names(items_top_number), items_top_number) top_table
The following is a list of recommendations for the most popular films presented in the following table 6.
Table 6. The Most Number of Movies That Have Been Ratted names.items_top_number. items_top_number
Mr. Smith Goes to Washington (1939) 74
12 Angry Men (1957) 59
As Good As It Gets (1997) 56
Maltese Falcon, The (1941) 55
Manchurian Candidate, The (1962) 54
Vertigo (1958) 53
Citizen Kane (1941) 49
Close Shave, A (1995) 49
Babe (1995) 47
Bridge on the River Kwai, The (1957) 47
IV. Conclusion
In recent years, movies have become more and more well-liked. Each year, thousands of films are made. These movies make it difficult for movie fans to decide which movie to see. We suggest a recommendation system that aims to provide assistance when picking movies. Depending on the methodology employed, recommendation systems can be categorized into three groups:
collaborative filtering, content-based filtering, and hybrid filtering. In this work, collaborative filtering one of the techniques frequently used in recommendation systems was used. User-Based Collaborative Filtering (UBCF) and Item-Based Collaborative Filtering are two variations on the collaborative filtering approach (IBCF). Cosine and Pearson similarities are two techniques for locating similar users or items.
An approach to determine how similar two things are is to utilize the Cosine similarity method.
Additionally, when comparing two sets of data, the Pearson Correlation Coefficient approach is the one that is most usually used to determine how comparable two sets of data are. Through the use of 90% training data and 10% testing data, this study seeks to identify which method yields the maximum item similarity in IBCF and projected ratings to actual ratings. 943 people from 1664 films and 99392 ratings make up the data set that was extracted from MovieLens.org. Utilizing RStudio and the R package recommenderlab, the MovieLens data collection will be examined. The findings demonstrate that the IBCF with Cosine similarity displays the number of items recommended n top-rated movies to each user for 10 films.
Acknowledgment
The author would thank you to the Mathematics Education Department, Universitas Muhammadiyah Purwokerto, for financing and facilitating this research to completion.
References
[1] J. Lourenco, “Item-Based Collaborative Filtering and Association Rules for a Baseline Recommender in E-Commerce,” Proceedings - 2020 IEEE International Conference on Big Data, Big Data 2020.
pp. 4636–4645, 2020. doi: 10.1109/BigData50022.2020.9377807.
[2] A. Putra, “Two-steps graph-based collaborative filtering using user and item similarities: Case study of E-commerce recommender systems,” Proceedings of 2017 International Conference on Data and Software Engineering, ICoDSE 2017, vol. 2018. pp. 1–6, 2018. doi:
10.1109/ICODSE.2017.8285891.
[3] M. Verma, “An Enhanced Item-based Collaborative Filtering Approach for Book Recommender System Design,” ECS Transactions, vol. 107, no. 1. pp. 15439–15449, 2022. doi:
10.1149/10701.15439ecst.
[4] C. S. V. V. S. N. Murty, “Content-Based Collaborative Filtering with Hierarchical Agglomerative Clustering Using User/Item based Ratings,” J. Interconnect. Networks, 2022, doi:
10.1142/S0219265921410267.
[5] J. Guo, “An efficient and accurate recommendation strategy using degree classification criteria for item-based collaborative filtering,” Expert Syst. Appl., vol. 164, 2021, doi:
10.1016/j.eswa.2020.113756.
[6] S. Xiao, “Study on collaborative filtering recommendation algorithm based on prediction for item rating,” Proceedings - 2020 International Conference on Information Science, Parallel and Distributed Systems, ISPDS 2020. pp. 352–355, 2020. doi: 10.1109/ISPDS51347.2020.00081.
[7] W. Zhao, “A New Item-Based Collaborative Filtering Algorithm to Improve the Accuracy of Prediction in Sparse Data,” Int. J. Comput. Intell. Syst., vol. 15, no. 1, 2022, doi: 10.1007/s44196- 022-00068-7.
[8] F. Ricci , Rokach, Lior,, Shapira, Bracha,, “Recommender systems handbook.” 2015. [Online].
Available:
https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=109902 3
[9] P. K. Singh, “An improved item-based collaborative filtering using a modified Bhattacharyya coefficient and user–user similarity as weight,” Knowl. Inf. Syst., vol. 64, no. 3, pp. 665–701, 2022, doi: 10.1007/s10115-021-01651-8.
[10] C. Iwendi, “Pointer-Based Item-to-Item Collaborative Filtering Recommendation System Using a Machine Learning Model,” Int. J. Inf. Technol. Decis. Mak., vol. 21, no. 1, pp. 463–484, 2022, doi:
10.1142/S0219622021500619.
[11] S. K. Padhy, N. Shrivastava, J. M. Musa, V. Arulalan, M. K. Kharita, and Shristi, “An Item Based Collaborative Filtering for Similar Movie Search,” Communications in Computer and Information Science, vol. 906. pp. 949–955, 2018. doi: 10.1109/ICEECCOT52851.2021.9707955.
[12] B. Liu, “Item-Based Collaborative Filtering Algorithm Based on Co-occurrence Matrix,” Advances in Intelligent Systems and Computing, vol. 1017. pp. 617–623, 2020. doi: 10.1007/978-3-030-25128- 4_76.
[13] L. Ponnam, “Movie recommender system using item based collaborative filtering technique,” 1st International Conference on Emerging Trends in Engineering, Technology and Science, ICETETS 2016 - Proceedings. 2016. doi: 10.1109/ICETETS.2016.7602983.
[14] P. Pirasteh, “Item-based collaborative filtering with attribute correlation: A case study on movie recommendation,” Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 8398. pp. 245–252, 2014. doi:
10.1007/978-3-319-05458-2_26.
[15] W. Wei, “Intelligent recommendation of related items based on naive bayes and collaborative filtering combination model,” Journal of Physics: Conference Series, vol. 1682, no. 1. 2020. doi:
10.1088/1742-6596/1682/1/012043.
[16] H. Zheng, “UIAE: Collaborative Filtering for User and Item based on Auto-Encoder,” Proceedings - 2021 7th Annual International Conference on Network and Information Systems for Computers, ICNISC 2021. pp. 1–6, 2021. doi: 10.1109/ICNISC54316.2021.00008.
[17] A. S. Tewari, “Generating Items Recommendations by Fusing Content and User-Item based Collaborative Filtering,” Procedia Computer Science, vol. 167. pp. 1934–1940, 2020. doi:
10.1016/j.procs.2020.03.215.
[18] B. Ujkani, “A recommender system for WordPress themes using item-based collaborative filtering technique,” 2020 29th International Scientific Conference Electronics, ET 2020 - Proceedings. 2020.
doi: 10.1109/ET50336.2020.9238305.
[19] Y. Zhang, R. Liu, and A. Li, “A Novel Approach to Recommender System Based on Aspect-level Sentiment Analysis,” no. Nceece 2015, pp. 1453–1458, 2016, doi: 10.2991/nceece-15.2016.259.
[20] S. Zubair, “Development of an Improved Collaborative Filtering-based Similarity Model for User- item Matrix,” Math. Eng. Sci. Aerosp., vol. 12, no. 2, pp. 421–433, 2021, [Online]. Available:
https://api.elsevier.com/content/abstract/scopus_id/85108188747
[21] J. Bobadilla, F. Ortega, A. Hernando, and ..., “Recommender systems survey,” Knowledge-based Syst., 2013, [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S0950705113001044
[22] P. K. Singh, P. K. Dutta Pramanik, A. K. Dey, and P. Choudhury, “Recommender systems: An overview, research trends, and future directions,” Int. J. Bus. Syst. Res., vol. 15, no. 1, pp. 14–52, 2021, doi: 10.1504/IJBSR.2021.111753.
[23] L. C. Jiang, “User-location distribution serves as a useful feature in item-based collaborative filtering,” Phys. A Stat. Mech. its Appl., vol. 586, 2022, doi: 10.1016/j.physa.2021.126491.
[24] F. O. Isinkaye, Y. O. Folajimi, and B. A. Ojokoh, “Recommendation systems: Principles, methods and evaluation,” Egyptian informatics journal. Elsevier, 2015. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S1110866515000341
[25] F. Ricci, L. Rokach, B. Shapira, P. B. Kantor, and F. Ricci, Recommender Systems Handbook, 1st ed.
Springer US, 2011. doi: 10.1007/978-0-387-85820-3.
[26] L. Berkani, “Recommendation of items using a social-based collaborative filtering approach and classification techniques,” International Journal of Data Mining, Modelling and Management, vol.
13, no. 1. pp. 137–159, 2021. doi: 10.1504/IJDMMM.2021.112919.
[27] S. N. Gunjal, “A distributed item based similarity approach for collaborative filtering on hadoop framework,” Adv. Parallel Comput., vol. 37, pp. 407–415, 2020, doi: 10.3233/APC200176.
[28] X. Gao, “Similarity measure based on punishing popular items for collaborative filtering,” CITS 2018 - 2018 International Conference on Computer, Information and Telecommunication Systems. 2018.
doi: 10.1109/CITS.2018.8440147.
[29] B. M. Marlin, R. S. Zemel, S. T. Roweis, and M. Slaney, “Recommender systems: Missing data and statistical model estimation,” IJCAI Int. Jt. Conf. Artif. Intell., pp. 2686–2691, 2011, doi:
10.5591/978-1-57735-516-8/IJCAI11-447.
[30] A. Laishram, “Analysis of similarity measures in user-item subgroup based collaborative filtering via genetic algorithm,” Int. J. Inf. Technol., vol. 10, no. 4, pp. 523–527, 2018, doi: 10.1007/s41870-018- 0195-z.
[31] Y. Wang, “A new item similarity based on α-divergence for collaborative filtering in sparse data,”
Expert Syst. Appl., vol. 166, 2021, doi: 10.1016/j.eswa.2020.114074.
[32] V. L. Jaja, B. Susanto, and L. R. Sasongko, “Penerapan Metode Item-Based Collaborative Filtering Untuk Sistem Rekomendasi Data MovieLens,” d’CARTESIAN, vol. 9, no. 2, p. 78, 2020, doi:
10.35799/dc.9.2.2020.28274.