Statistical Implicative Similarity Measures for User-based Collaborative Filtering Recommender System

This paper proposes a new similarity measures for User-based collaborative filtering recommender system. The similarity measures for two users are based on the Implication intensity measures. It is called statistical implicative similarity measures (SIS). This similarity measures is applied to build the experimental framework for User-based collaborative filtering recommender model. The experiments on MovieLense dataset show that the model using our similarity measures has fairly accurate results compared with User-based collaborative filtering model using traditional similarity measures as Pearson correlation, Cosine similarity, and Jaccard. Keywords—Similarity measures; Implication intensity; Userbased collaborative filtering recommender system; statistical implicative similarity measures


INTRODUCTION
Currently, recommender system is considered as a useful tool for solving partial information overload of the Internet [3] [12].Its development is always associated with the development of web technologies and machine learning algorithms.Based on the method of collecting and processing the data, the recommender systems can divide into three generations.The first generation of recommender systems uses traditional websites to gather information from three sources: (1) content-based data from the purchase or the use of products and services; (2) demographic data selected from the customer profile; (3) memory-based data collected from the user's preferences.In this generation, the quality of recommendation results is improved based on data classification algorithms and the integration of the data classification algorithms [3][15] [27].The second generation of recommender systems is the increasing use of Web 2.0 by collecting information through social network like Facebook, Zalo and other social networking sites.To satisfy explosive information issue from social networking sites, this generation continues to develop and improve the existing integrated methods and enhance solutions to exploit information from social networks more efficiently such as trust-aware algorithms [20], social adaptive approaches [4], social networks analysis [12] [28] and other methods.The third generation of recommender systems is developed in parallel with the web 3.0 with information collected from integrated devices on the Internet such as cameras, sensors [22].This generation uses approaches to integrate location information into the available recommendation algorithms in order to broaden its application in various fields such as health, weather, environment, and universe [1].
User-based collaborative filtering recommender system is the first version of the recommender systems based on collaborative filtering.It was first introduced in the article "GroupLens: an open architecture for Collaborative filtering of Netnews" in 1994 for GroupLens Usenet recommender system [21].Subsequently, there are two other recommender systems also use this recommendation method: one for users to listen to music Ringo [25] and the other for users to watch movies Bellcore [26].User-based collaborative filtering recommender system is a simple algorithm to clarify the core premise of collaborative filtering methods.That is to find out users in the past who had the same behavior as current users.Then, the value rating of users for the items is used to predict the preferences of current users.Thus, in order to obtain a list of items to introduce to new users, User-based collaborative filtering recommender system requires a function to compute the similarity of two users and a method to calculate the average deviation of rating values of similar users based on a rating matrix of users for items [14][15] [17].
From the first appearance with the name "The information Lense system" in 1987 [13], recommender system has been developed greatly in technology and its application in the fields of life.In particular, recommender systems are used by many managers as an effective tool in order to support business activities in various fields such as Amazon, Netflix, and Pandora [2].However, the present generation of recommender systems has not fully met the requirements of users yet.Therefore, research on recommender systems continues to be concerned such as research to improve methods and algorithms to increase accuracy of the existing recommender model [11][18] [24], research to improve recommender systems to adapt to the information explosion and research to propose a new recommender model [8].In addition, some new research directions are also set out, such as research on proper combination of existing recommendation methods that use different types of available information; research on using the maximum capabilities of the sensors and devices on the Internet; research on collecting and integrating information on trends related to habits, consumption and individual tastes of users in the recommendation process; research on ensuring the security conditions and privacy in the entire process of recommendation system; research on proposing the measures for evaluating recommender systems and develop a standard for assessment measures and research on developing a framework for automated analysis on heterogeneous data.www.ijacsa.thesai.org In this paper, a new similarity measures between two users based on Implication intensity measures is proposed for Userbased collaborative filtering recommender system.We describe how to build measures and their application in User-based collaborative filtering recommender model.After building the model, the experiments of model was conducted on MovieLense dataset [5] and compared the results with the User-based collaborative filtering recommender model that uses the traditional similarity measures such as Pearson, Cosine, and Jaccard.This paper has six sections.Section 1 introduces general recommender systems, User-based collaborative filtering recommender system, relevant studies, and addressing the research issue.Section 2 shows how to build a similarity measures between two users based on the statistical implication intensity measures.Section 3 describes the required steps to build User-based collaborative filtering recommender model based on statistical implicative similarity measures.Section 4 presents the evaluation methods of recommender systems.Section 5 presents the experimental results of the model and compares the results with other models.The final section summarizes some importantly achieved results of model using similarity measures between two users based on Implication intensity measures

A. Implication intensity measures
Statistical implicative analysis is the method of data analysis studying implicative relationships between variables or data attributes, allowing detecting the asymmetrical rules A → B in the form "if A then that almost B" or "consider to what extent that B will meet implication of A" [23].Every rule A → B is represented by a table based on the concept of probability called the probability distribution table 2x2 in order to store the counting frequency in the satisfaction of the established conditions.From this probability distribution table, the probability value is calculated based on the frequency of , , , , ̅ respectively as follows: Interestingness value of Implication intensity measures for rule A → B is determined by a formula based on the probability distribution table 2x2 under the following form [23]: Where ( )

B. Building the similarity measures between two users
In order to calculate the similarity between two users based on Implication intensity measures, the algorithm is proposed consisting of the following steps: Input: Rating data for items of two users u, v.
Output: Similarity values between two users u, v.

Begin
Step 1: Select the statistical implication rules for two users -Select the Items that user u rated (I u ); -Select the Items that user v did not rate (I v ); -For rule set to be generated from rating matrix of users: Begin At the first step, selecting statistical implication rules between user and user including: At the next step, count the parameters ̅ for each statistical implication rule and calculate implication intensity values based on the parameters: At the final step, the similarity between user and user is determined as follows: ( ) .

III. USER-BASED COLLABORATIVE FILTERING RECOMMENDER SYSTEM BASED ON SIS MEASURES
User-based collaborative filtering recommender model based on statistical implicative similarity measures is defined as follows: Suppose that * + is a set of m users, * + is a set of n items, { } is a rating matrix of m users for n items with each row representing a user ( ), each column represents an item ( ), is the rating value of user for item and is user who needs recommendation.
According to initial data, the model implemented through the following steps: Step 1: Measure the similarity between users and other users in the system by using function: ( ).
Step 2: Determine the list of k similarity users who are similar with : ( ) .
Step 3: Identify the item categories that user has not rated yet, determined by: { } and calculate predicted rating values for this item categories by the following formula: , where is the similarity value between user and user .
Step 4: Recommend N-items which obtained the highest predicted rating value to user : .
The model is presented by the following diagram: The evaluation of the accuracy of the recommender model is an important step in the recommender system design process [6][7] [9].It helps designers choose models, check the accuracy of the model before applying the model into practice.To evaluate User-based collaborative filtering recommender model, the recommender system designers can be conducted through two steps:

A. Preparing the data to evaluate the models
In order to evaluate the quality of a predictive model, experimental datasets have divided into two parts: one for modeling and the rest for testing.Therefore, the first step is to prepare the data; in this step the experimental dataset is divided into two subsets: training dataset and testing dataset [17].Currently, many methods are being used to split datasets for evaluating recommender models such as: Splitting: is the initial method to build a training set and test set by cutting experimental dataset into 2 parts [17].For this method, the model designer should decide the percentage for the training set and test set.For example, the training set accounts for 80 percent and the test set account for the remaining 20 percent.
Bootstrap sampling: is a method used to build a training set and test set by cutting the experimental dataset into 2 parts.However, this approach is done randomly and repeatedly in order that a user may be a member of the training set in this cutting time but is a member of test set in the next cutting time.This can overcome the disadvantages of heterogeneity of the experimental dataset and increase optimization for small-sized dataset.[17].K-fold cross-validation: is a method used to build a training set and test set by cutting the experimental dataset into www.ijacsa.thesai.orgk subsets with the same size (called k-fold).After that, the model is evaluated k times.Every evaluation uses one subset for the test set and the k-1 subsets are used as the training set.The evaluation results of this method are average value of k evaluations.This approach ensures that all users have appeared at least one time in the test set [17].Therefore, it is the most accurate of the three methods.However, it is costly for the calculation compared with the remaining two methods.

B. Evaluate recommender model
There are two methods for evaluating recommender model: evaluation based on the ratings and evaluation based on the recommendations.The first method evaluates the ratings generated by the model.The remaining method evaluates directly on the recommendations of the model.
Evaluation based on the ratings: a method evaluates the accuracy of the model by comparing the predicted rating value with the real value.More precisely, this method is to find out the average error value based on three indicators RMSE, MSE and MAE.A model is evaluated good if these indicators show low value [7][9].

Root mean square error (RMSE):
This is the standard deviation between the real and predicted ratings.

Mean squared error (MSE):
This is the mean of the squared difference between the real and predicted ratings.It's the square of RMSE, so it contains the same information.

Mean absolute error (MAE):
This is the mean of the absolute difference between the real and predicted ratings.
where is the set of all user ratings for items; real rating value of user i for item j; ̂ is predicted rating value of user i for item j.
Evaluation based on the recommendations: a method evaluates the accuracy of the model by comparing the model's recommendations to purchase choice of the users.This approach uses confusion matrix to calculate the value of three indicators: Precision, Recall and F-measure.The model is evaluated good if three indices gain high value [7] [9].Let's explains the confusion matrix: True Positives (TP): These are recommended items that have been purchased.

False Positives (FP):
These are recommended items that haven't been purchased.

False Negatives (FN):
These are not recommended items that have been purchased.

True Negatives (TN):
These are not recommended items that haven't been purchased.
The formula of three indicators is used to evaluate: V. EXPERIMENT

A. Data description
The experimental dataset is MovieLense [5] of GroupLens research project at the University of Minnesota in 1997.This dataset is collected from the rating results of 943 users for 1.664 movies (99.392 rating results from 0 to 5) through the MovieLense website (movielens.umn.edu)during 7 months (from 09/19/1997 to 22/04/1998).This dataset is organized in a matrix format consisting of 943 rows, 1.664 columns and 1.569.152cells containing rated values.However, each user is able to watches her/his favourite movies.Thus, the rating matrix has only 99.392 rating values of users for movie categories.

B. Implementation tools
In order to conduct experiment, we use ARQAT tool which is developed on language R by our team.This is a tool package to be developed from engine platform ARQAT on language Java [10].This tool includes the following functions: processing data, generating statistical implication rules, counting parameters ̅ , calculating value of objective interestingness measures based on 4 statistical implication parameters, calculating similarity of two users based on statistical implicative similarity measures, and designing and evaluation recommender models [16].

C. Select and process data
The MovieLense dataset is stored under a real rating matrix.It consists of 943 rows, 1.664 columns and 1.569.152cells containing rated value.In particular, more than 93 percent cells have rating values equal 0 and nearly 7 percent remaining cells have rating values from 1 to 5 (value 0 is 1.469.760;value 1 is 6.059 ; value 2 is 11.307; value 3 is 27.002; value 4 is 33.947; value 5 is 21.077).Therefore, the entire MovieLense dataset has only truly 99.392 rating value from users for movies.In particular, the majority of rating values range from 3 to 5 and 4 is rating value with the highest amount.In order to find out the number of users rating for each movie and the number of movies that each user rated, statistical calculations are performed on each movie and each user and illustrate the results in Figure 3. www.ijacsa.thesai.org Figure 3 reflects that some movies have only been rated by a few users and some users have only been rated for a few movies.If this case is used for training model, it is likely to lead to bias due to lack of data.Thus, users rate at least for 50 movies and movies rated by at least 100 users are selected to build experimental datasets for model.From there, rating matrix has only 560 rows, 332 columns and 55.298 rating value.In particular, the dataset is split into two subsets: Training set accounting for 80 percent and Test set does the remaining 20 percent.

D. The result of the model
From the result of data processing steps, the model trains on training set with 445 users and tests on test set with 115 users.The result of the model is exported in matrix format with structure 6 x 115 (each column is a user; each cell is a selected movie to recommend for the user in the corresponding column).Figure 4 presents the results of recommender model to the first 4 users; each of them selects the 6 highest rated movies.Based on the recommendation result matrix, we calculate the number of times that each movie is recommended and build a histogram for the distribution of movies in Figure 5.The chart shows that the number of movies is recommended from 5 times or less accounting for relatively large numbers.In particular, up to 38 movies are only recommended 1 time and 24 movies are recommended twice.In contrast, the number of movies is recommended from 5 to 40 times accounting for a very small number.Most of them have the number from 1 to 2 movies.

E. Evaluation the model 1) Evaluation based on the ratings
In this section, the error parameters (RMSE, MSE, MAE) are calculated for each user and for the model based on the data which is built by k-fold method (with k = 4).For the error parameters of each user, the distribution of each error parameter is performed by a chart and compared them with the error parameters of the model using similarity Pearson measures (Figure 6).The chart shows that the number of users distributed on the error parameters of the model using SIS measures has a higher value than that of the model using similarity Pearson measures.For the error parameters of the model, the value of error parameters is compared with the error parameters of the model using Pearson similarity measures in table 3. The results of comparison found that the values of error parameters of our model are lower than the model using similarity Pearson measures on MovieLense dataset.

2) Evaluation based on the recommendations
In this evaluation method, we also calculate the indicators: TP, FP, FN, TN, Precision, Recall and F-measure based on kfold data that has been built above.In order to examine the accuracy of the model, the model is tested with the number of movies to be recommended to users which gradually increase (1 to 15).The average rating result of 4 k-fold on models that uses statistical implicative similarity measures and the model using similarity Pearson measures is presented in Figure 7.This figure shows that the indicators Precision, Recall and Fmeasure on both models are of relatively equal value.This shows that the model that uses statistical implicative similarity measures has the same accuracy as the model that uses similarity Pearson measures on MovieLense dataset.filtering recommender models, our model follows the main steps such as process data, build the rating matrix, compute the similarity between two users, identify the item list that the similarity users rated highly in order to the recommendation results and evaluate accuracy of the model.However, the new point of this model is to identify the similarity user list, using statistical implicative similarity measures instead of using the familiar measures such as Pearson correlation, Cosine similarity, Jaccard to determine the similarity between two users.The experiments show that our model results are relatively accurate on MovieLense dataset.In particular, the error parameters (RMSE, MSE, MAE) have a lower value than the model using the similarity Pearson measure; Indicators of Precision, Recall and F-measure have the equivalent values compared to the model using Pearson similarity measures.This result shows that the User-based collaborative filtering recommender model using the statistical implicative similarity measures is capable to practice.

Fig. 1 .
Fig. 1.The model represents a statistical implication rule A → B Select the rules of the form * + * + where ; and ; End; Step 2: Count the parameters ̅ -For each rule in the selected rule set: Begin Count the parameters , , , ̅ ; End; Step 3: Calculate Implication intensity value for rule set -For each rule in the selected rule set: Begin Calculate the value of Implication intensity measures: Implicationintensity( .ijacsa.thesai.orgExample:Let us a rating matrix of two users who rated for 4 items as follows:

Fig. 2 .
Fig. 2. User-based collaborative filtering recommender model based on statistical implicative similarity measures IV.EVALUATING THE RECOMMENDER MODEL

Fig. 3 .
Fig. 3.The chart presents statistical results for each movie and each user on MovieLense dataset

Fig. 4 .
Fig. 4. Presenting recommendation results of the first 4 users

Fig. 5 .
Fig. 5. Presentation distribution of the number of movies for model

Fig. 6 .
Fig. 6.Comparison of error parameters of each user on two models

Fig. 7 .
Fig. 7. Comparison of indicators based on the recommendations of two models VI.CONCLUSIONIn this paper, we built User-based collaborative filtering recommender model by suggesting a new similarity measures based on Implications intensity measures in order to determine the similarity of two users.Like other User-based collaborative filtering recommender models, our model follows the main steps such as process data, build the rating matrix, compute the similarity between two users, identify the item list that the similarity users rated highly in order to the recommendation results and evaluate accuracy of the model.However, the new point of this model is to identify the similarity user list, using statistical implicative similarity measures instead of using the familiar measures such as Pearson correlation, Cosine similarity, Jaccard to determine the similarity between two users.The experiments show that our model results are relatively accurate on MovieLense dataset.In particular, the error parameters (RMSE, MSE, MAE) have a lower value than the model using the similarity Pearson measure; Indicators of Precision, Recall and F-measure have the equivalent values compared to the model using Pearson similarity measures.This result shows that the User-based collaborative filtering recommender model using the statistical implicative similarity measures is capable to practice.

TABLE III .
PRESENT COMPARISON ERROR PARAMETERS OF TWO MODELS

Model using SIS measures Model using similarity Pearson measures
www.ijacsa.thesai.org