Use of Hybrid Methods in Making E-commerce Product Recommendation Systems to Overcome Cold Start Problems

ABSTRACT


INTRODUCTION
In this modern era, buying and selling transactions can be carried out without direct meetings between sellers and buyers, and this can be done in e-commerce.It is an online trading application for direct and indirect buying and selling transactions between sellers and buyers (Aan & Permana, 2019).The problem that occurs in e-commerce is that buyers will have difficulty in choosing products because the products offered in e-commerce are very many, while sellers have difficulty offering their products to the right buyers because of the large number of users on e-commerce (Prasetya, 2017).
These e-commerce problems can be overcome in several ways, for example by using a decision support system (Noviansyah et al., 2019).However, decision support systems require more specific data to provide recommendations and also do not look at user behavior or historical data.For that we need a system that can recommend the right product to the right buyer as well as from the many diverse products, the system is a recommendation system.The recommendation system in e-commerce can analyze data from a http://dx.doi.org/10.35671/telematika.v16i1.2080product and prospective buyers, and then provide a recommendation to the prospective buyer (Knijnenburg et al., 2012).The use of recommendation systems in e-commerce is said to increase product sales and build buyer loyalty (Mobasher, 2007).Making a recommendation system can use the method of decision support systems in general such as Simple Additive Weighting (SAW) and Weighted Product (WP) (Arvianti et al., 2019).This method is suitable when used on a set of similar items and has the same attributes.However, the most popular method for making a recommendation system is a method that can be used when the choice of items is not only 1 type, like the methods that create recommendations based on the similarity of user behavior and similarities between items, such as collaborative filtering to find similarities between user behavior and content-based filtering.to find similarities between items (Arvianti et al., 2019).In addition to these two methods, there is one more method, namely hybrid which combines several methods at once in making a recommendation system.
Several studies have been conducted to create a recommendation system.One of the studies was conducted using the collaborative filtering method.Collaborative filtering carried out in this study uses Pearson similarity which has been modified by adding weighting to the number of the same items that are rated, the more the number of the same items, the higher the weight.This modified Pearson similarity is then used to find the similarity value in KNN collaborative filtering.The K=40 test resulted in a Mean Absolute Error value of 0.821 on the use of cosine similarity, 0.838 on the use of Jaccard similarity, 0.821 on the Pearson similarity, and also 0.695 on the modified Pearson similarity (Zhou et al., 2020).From the test results, it can be seen that the weighting of Pearson similarity can reduce the error value that occurs in the recommendation system model.The collaborative filtering method that relies on interactions between users and items has a weakness, namely cold start, where recommendations will be inaccurate on data that has a lot of new users and items because it doesn't have much interaction (Guo, 2013).Another study was conducted using a hybrid method to build e-commerce recommendation systems.The hybrid method used is built by combining content-based filtering and collaborative filtering, both using the cosine similarity algorithm.In the test, the research resulted in an f-measure value at k = 10 with content-based filtering of 0.103, collaborative filtering of 0.036, and hybrid method of 0.093.The greater the value of K, the fmeasure in content-based filtering and hybrid will decrease but the decrease in the hybrid method is not too significant, while in collaborative filtering it will increase but the value remains the lowest compared to the other two methods.This is because the collaborative filtering used is not able to handle sparse data (Prasetya, 2017).
Based on previous research, the use of the hybrid method is believed to be able to handle problems such as cold-starts that occur in collaborative filtering (Thorat et al., 2015).So, in this study a hybrid method will be used by combining collaborative filtering using the K-Nearest Neighbor and Pearson Similarity algorithms with content-based filtering using the Tf-Idf and Cosine Similarity algorithms, and also the popularity-based method linearly, namely by combining the results of rating predictions on each method for creating e-commerce product recommendations.The use of a linear hybrid method is expected to overcome the cold-start problem that occurs in collaborative filtering.

RESEARCH METHODS
The research method used in this study is a quantitative method where there are quantitative calculations at several stages such as pre-processing the data and making models.The quantitative method http://dx.doi.org/10.35671/telematika.v16i1.2080 in this study consists of the stages of problem identification, literature study, data collection, data preprocessing, modeling for the system, implementation and testing of the system, and finally conclusions and suggestions.

Data Collecting
Data collection is a process to find information used in this research.The information or data needed for this research is about user data, products, and also activities carried out by users on products in ecommerce.The data is obtained by downloading the data that is already available on Jianmo Ni's website (Ni et al., 2020).The data is secondary because it is obtained from existing sources, sourced from the Amazon website.
The data obtained contains the details of a product along with the assessment given by the user to the product which was taken from 1996 to 2018 as much as 233.1 million data.Due to the large amount of data available when taking all categories, this study only takes data from several categories, including: fashion, all beauty, appliances, luxury beauty, and prime pantry.From several categories taken, data obtained as many as 271844 rows and 16 columns for product detail data.As for the product review data obtained as many as 2819478 rows and 14 columns.The overview of the data that has been obtained can be seen in Figure 1.

Data Preprocessing
The data obtained is stored in separate tables for each category and also between product details and product reviews, so it requires a merging process first.The first table merging is done by combining all product details into 1 table and also all product reviews into 1 table.The two separate tables are then combined into 1 table based on the productId column contained in both tables.The resulting table will then go through the process of deleting duplicate data.

Table Merging
The data obtained is stored in separate tables for each category and between product details and product reviews, so it requires a merging process first.The first table merging is done by combining all product details into 1 table and all product reviews into 1 table.The two separate tables are then combined into 1 table based on the productId column contained in both tables.The resulting table will then go through the process of deleting duplicate data.http://dx.doi.org/10.35671/telematika.v16i1.2080

Column Modification
The column modifications carried out include the process of filling in null data, deleting columns that will not be used, deleting duplicate data, filtering data to be used in each column, changing column names according to those that will be used, and creating new columns from column values that have been used.there is.The new column created is the popularity column which contains the popularity value of a product and is used for recommendations using popularity-based filtering.Popularity value is obtained from the number of interactions made by the user as a whole on an item (Wang et al., 2019).In the data used in this study, the popularity value is sought by calculating the total reviews on a product multiplied by the percentage of users who review the total number of users.The equation to find the popularity value of a product can be seen in the following equation.

Pi = (∑ (𝑟 + 𝑟 𝑛 ) ) × 𝑛 𝑛 𝑖=1
(1) From the above equation, Pi is the popularity value obtained from item i.Meanwhile, for n is the number of ratings given to item i, and r is the rating value given to item i.

Data Filtering
The data obtained still has a cold start problem where there are users who have not given a rating or the rating is still small.To see the difference in the results of the system made using data that has a coldstart problem or data that has gone through the filtering stage to overcome cold-start, then from the data obtained previously, new data will be created which each user or product already has at least 3 rating, 5 rating, and 7 rating.Filtering is done by deleting data that does not meet the rating limit.

Data Splitting
The final step for data pre-processing is data splitting.Splitting data is done by dividing the data into train data and test data.This process produces 80% of the data as training data and 20% of the data as test data.Both types of data will be used in the process of making the KNN Collaborative Filtering model and measuring the error rate of the model.

KNN User Based Collaborative Filtering
Collaborative filtering is divided into two types of algorithms, namely model-based and memorybased (Cacheda et al., 2011).The model-based algorithm uses a latent factor model with a high generalization capacity to predict rating of an item that have not been assigned by the user, the most frequently used example is matrix factorization as in the Singular Value Decomposition algorithm (Veras De Sena Rosa et al., 2020).While the memory-based algorithm uses the similarity function to find similar users or items according to the rating, the similarity between users or items is then the basis for predicting the rating (Zarei & Moosavi, 2019).The most common example of using memory-based is with K-Nearest Neighbors.
This study uses the K Nearest Neighbor (KNN) algorithm as a collaborative filtering algorithm to develop a hybrid model.The KNN algorithm which is a memory based collaborative filtering is used because it has calculations that are not too complex when compared to models based on collaborative filtering such as matrix factorization.K Nearest Neighbor (KNN) is a classification algorithm that works by looking at the K closest neighbors of a sample to determine what category the sample belongs to, if the majority of K of its closest neighbors are in a category, then the sample will be assumed to fall into that category (Bilge et al., 2013).In collaborative filtering that gives recommendations by the similarity of points of interest, the KNN algorithm is suitable to be used to find users or items that have similarities with http://dx.doi.org/10.35671/telematika.v16i1.2080each other.KNN Collaborative Filtering combines collaborative filtering algorithms by using the KNN algorithm to find neighbors that have similarities, with the steps taken including: calculating user similarity values, selecting K Nearest Neighbors, and finally predicting scores or ratings based on user similarity (Cui, 2017).These three steps can be summarized into 2 stages as follows: 1) User Similarity Calculation Stage: Similarity calculations between users are carried out to determine the closest neighbors of a user for further use in the rating prediction stage.This stage begins by creating a user-item matrix that is created by using the user as the index and the item as the column whose value is filled with the rating of an item from user.The example of the user-item matrix can be seen in table 1 below where U is the user, I is the item or product and rui is the rating of the user U on item I.The matrix that has been created is then used to count the similarity between users based on the rating given to the products.Search similarity between users in this study using Pearson similarity.Pearson Similarity or commonly called Pearson Correlation Coefficient is also an algorithm for finding similarity values of items or users.This algorithm calculates the similarity value based on how well the data or items match on a straight line (Geetha et al., 2018).In Pearson similarity, ratings that will be used as a reference only on the same group of items are rated by the reference user (u) and the target user (v), other items that are only rated by one user will be ignored (B.Guo et al., 2017).The workings of this algorithm begin with finding groups of items that have been assessed by both users, then the rating groups will be the reference for finding similarities between users for user-based collaborative filtering or items for item-based collaborative filtering.This study uses user-based collaborative filtering with the following Pearson similarity equation (Bourkoukou & Achbarou, 2018).
From the equation above,  (,) is the similarity score of user u and user v.  , is the rating from user u to item I, and r̅ u is the average rating from every item that has been rated by user u.While for  , and r̅ v , same like the  , and r̅ u but for user v.

2) Rating Prediction Stage
The similarity values between users that have been obtained are then used to predict product ratings that have never been rated by users before.The Pearson similarity value that has been obtained previously is then used to create a user-user matrix that shows who a user can be said to be similar which will later be used to find the closest k users (Bourkoukou & Achbarou, 2018).The matrix will contain a value between -1 to 1 which is the Pearson value between users obtained in the previous process.A value of 1 means that the user has a high similarity, -1 means that the user is contradictory to each other, and 0 means that the user has no resemblance or relationship at all (Theodorus & Budiyanto Setyohadi, 2016) The matrix that has been created will make it easier for the system to find K nearest neighbors from a user that will be used for rating prediction.Predicted product ratings that have never been rated by a user will refer to other similar users or to the nearest neighbors of that user.The equation for predicting ratings on KNN User-Based Collaborative Filtering can be seen in the following equation (Zhou et al., 2020). (3) From the equation above, Predict(u,i) is the predicted value of user u rating for item i. r̅ u is the average rating from every item that has been rated by user u.Sim(u,j) is the similarity value of user u and user v. Then rv,I and r̅ v sequentially are user v rating for item I and the average rating from every item that has been rated by user v.

Content Based Filtering
Content-based filtering is a method that uses descriptions of items and/or user profiles such as gender, occupation, age, or other descriptions from users to generate a list of recommendations (Geetha et al., 2018).Because the data that is mostly used is text, it is generally necessary to pre-process it first to extract the required digest.Common pre-processing such as keyword extraction, tokenization, stopword removal, stemming, and weighting (Suka Parwita et al., 2018).After pre-processing this data, then the data from the target item will be searched for its similarity value to other items using the similarity function.
Recommendations are made based on the similarity value.This study uses the TF-IDF algorithm to preprocess the text into vectors, then the similarity value between the item vectors is calculated using cosine similarity.Content-based filtering in this study includes 2 main stages as follows.

1) Text Vector Creation Stage
The description of the item is created by combining the title, main_cat, and brand fields.The product description that has been obtained will be used to create a vector that represents the product.TF IDF algorithm will be used to create the vector.This algorithm works by calculating the Term Frequency (TF) and Inverse Document Frequency (IDF) values for each word in each document in the corpus (Larasati & Februariyanti, 2021).Term frequency itself is the total frequency of a term appearing in a document, while Inverse Document Frequency is a value to see how often a term appears in a corpus, the more often a term appears, the term will be considered a less important term and the value will be smaller (Kusuma & Musdholifah, 2021).The TF-IDF value of a term in a document is obtained using equation below.The TF IDF value of that has been obtained from each term will then be used as a vector component to calculate the similarity value between products using cosine similarity algorithm.This algorithm calculates the similarity between items by representing each item as a vector in an N-dimensional space, then the similarity value between the items is measured based on two angles between the vectors, this angle is called the cosine value (Badriyah et al., 2017).Based on arithmetic principles, two vectors are said to be equal if they form an angle of 0 or the cosine value is 1.The item vector that has been formed from the document vectorization process using TF IDF in the previous process can be seen for example in equations ( 5) and ( 6) below.where each vector component is the value of the TF IDF of each term, while the equation for knowing the value of cosine similarity between items can be seen in equation below (Parwita, 2019).
⃗ = ( 1 ,  2 ,  3 , . . .,   ) ⃗ and  ⃗ is the representation of vector a and vector b, while ai dan bi is the component of the vector (the weight of the i-th term of each document).Sim(a,b) in the equation above is the similarity value between item a and item b, and n is the dimension of the vector (the total number of terms in the document).

Generating Hybrid Recommendations
The two models that have been built before, namely the collaborative filtering model and contentbased filtering, as well as the popularity column that has been created in data pre-processing, will be used to make recommendations by using the userId as a parameter to make recommendations for the user.The making of hybrid recommendations in this study uses switching and mixed methods, namely by dividing the recommendations into 2 processes based on the user who will be the target of providing recommendations.If the user is an old user who already exists on the system, recommendations will be executed by combining collaborative filtering, content-based filtering, and also popularity based.However, if the user is not registered in the system, the recommendations that will be given by combining popularitybased and content-based filtering only.The flow of making hybrid recommendations in this study described by Figure 2. Making recommendations begins with checking first whether the user is registered in the database or not.If not, a recommendation will be made for new users, while if it is registered, a recommendation will be made for old users.

RESULTS AND DISCUSSION
Mean Absolute Error (MAE) will be used to test hybrid recommendation system.The mean absolute error value is sought to find out how many percentage errors are made by the system in predicting the rating.This test was conducted on the ability of collaborative filtering in predicting ratings because the order of recommendations is based on rating predictions.This test is also a test to see how well the system handles cold start problems.
The mean absolute error test is carried out through several scenarios with the aim of comparing the values generated in each scenario.The scenarios are divided based on the filtering performed on the data used to create a collaborative filtering model that will be used in the hybrid recommendation system.The first scenario is carried out using data that has gone through filtering ratings at least 3 times, the second scenario uses data that has passed filtering ratings at least 5 times, and the last scenario uses data that has passed filtering ratings at least 7 times.Each scenario also has a sub-scenario which is divided based on the use of the min_k and K parameters.This is done to see the best parameter that produces the smallest value.comparison of the error rates between the collaborative filtering models used in the hybrid method which also shows the effect of the hybrid method to overcome cold start problem.
Cold start problem can be overcome by using a collaborative filtering model that has gone through the filtering process for the number of ratings first.This is proven by means of testing the mean absolute error where the collaborative filtering model used is the model with the lowest error rate of the three collaborative filtering models that have been made using 3 different datasets before.The model with the http://dx.doi.org/10.35671/telematika.v16i1.2080least mean absolute error is the model that is trained using data that has been filtered at least 7 times by rating it compared to data that only goes through filtering 3 and 5 times rating.
The less user-product interaction in the dataset, the higher the error rate of the collaborative filtering model for providing recommendations.Vice versa, the more user-product interactions, the lower the error rate.This is because the collaborative filtering model is made based on giving a rating from a user for a product and then looking for other users who have similarities in giving ratings.If the user has not provided an interaction/rating, it will be difficult to find other users who are similar to the user, so that many recommendations will be invalid judging from the level of system error in predicting product ratings that have never been rated by the user.This is shown through the graph in Figure 3.
Figure 3 Mean Absolute Error Line Chart The figure 3 shows, that the model created using the rated3 dataset or at least a user gives a rating for the product as much as 3x, the error rate or MAE value will be greater than the model created using the rated5 and rated7 dataset, where the frequency of users giving more ratings.The graph above also shows that the most optimal min_K parameter is 3, because after trying to use a value of 5 the result does not change, whereas when changing from 1 to 3 there is a change.It is also known that the K parameter does not have much effect on the modeling because the values of 10, 15, and 25 do not change anything in the graph above.
In addition to using filtering on the dataset, cold start in this study was also overcome by using popularity based for new users.New users will receive recommendations generated from the content-based filtering and popularity-based models.This aims to avoid rating prediction errors made to new users due to the lack of interaction made by new users.Because the collaborative filtering model provides recommendations based on rating predictions for products that have never been rated by a user.
Based on the research that has been done and the discussion that has been described, the results of the research can be seen from the testing of models and systems that have been discussed previously in the implementation and results section.The results of these tests and discussions indicate that the use of the hybrid method is able to overcome the cold-start problem that occurs in collaborative filtering

CONCLUSIONS AND RECOMMENDATIONS
Based on the analysis and testing conducted in this study, the use of the hybrid method in the recommendation system is able to overcome the cold start problem that occurs in collaborative filtering.
This can be seen from the value of the Mean Absolute Error (MAE) model, where the filtering rating of at least 3 times obtained an MAE value of 0.566883, a minimum of 5 times of 0.506603, and a minimum of http://dx.doi.org/10.35671/telematika.v16i1.20807 times obtaining the smallest MAE value of 0.487553.This value is obtained in the min_k parameter of 5 and K of 25.The less user-item interaction, the higher the prediction error rate, which means there is a cold start problem.The hybrid method in this study is able to overcome this by using switching and mixed methods, namely by not using the collaborative filtering model on new user recommendations or users who have small interactions.New users will get recommendations from a combination of popularity-based and content-based filtering models.
Further research is recommended to use model-based methods such as matrix factorization and neural networks which will make it easier to update the model and also consume less memory compared to the model used in this study to develop hybrid recommendations.

Figure 1 .
Figure 1.Product's Detail Data

Figure 2 .
Figure 2. Making of Hybrid Recommendation Flowchart

Table 1 .
User -Item Matrix

Table 3
below displayed the result of the mean absolute value.Table 3 below shows the MAE values of the model created using a combination of the parameters as well as the datasets listed above.The greater the mean absolute error, the more invalid the recommendation because the rating prediction is less accurate.The values in the table of test results that have been shown previously, show the effect of the hybrid method in dealing with the cold start problem.Mean absolute error test results shown in table 3, shows the