1 Introduction
The Collaborative Filtering (CF) based recommendation system is developed for filtering out irrelevant resources [1]. In the recommender systems, collaborative Filtering Recommender System (CFRS) is considered as a popular and productive technique. CFRS work on the principle that identical users have identical tastes.
For recommender frameworks CF has been the source of vulnerability, due to its open and interactive nature. Usually a user-based CF algorithm makes recommendation by searching out similar user patterns, which are obtained from the preferences of numerous totally non-identical people [1]. If profiles contain biased information, they may be thought as real users and eventually lead to biased recommendations. Therefore, relevant data is buried under a good deal of irrelevant information. The filtering procedure of CF depends on the profiles of different clients, so the usage of Collaborative Filtering in recommender framework is vulnerable to Shilling Attacks (SAs). For their own benefits attackers use biased rating profiles [2]. SA can be classified as, Push Attack (PA) and Nuke Attack (NA). The PA has been used for promoting someone’s own items by giving maximum ratings and the NA has been used for demoting product of someone’s rivals by giving minimum ratings [3].
The increasingly prevalent shilling attackers apply biased rating profiles to the frameworks to control items recommendation. It not only brings down the recommending accuracy but also harms the reliability of intermediated exchange stages and members. For example, in any online site if any retailer and customer both give high positive ratings for the product then that customer can be recognized as genuine purchaser.
Otherwise, if some purchaser only gives low negative ratings to every item then he or she can be recognized as fake user or an attacker who is performing SAs. But in some cases, the genuine purchaser also gives moderate ratings, then it become difficult to recognize without proper investigation. Thus, in RS detection of SAs is a major challenge. SA detection has drawn the attention of lot of researchers. Many techniques have been proposed by different researchers for SA detection. A brief study on different existing SA detection techniques has been presented in section 2. Out of these, UD-HMM [4] is a promising SA detection technique. In detecting most types of SAs UD-HMM performed very well. But in case of UD-HMM, the detection performance is not well when obfuscated attack takes place. The obfuscated attack uses Standard Average Attack (SAA). Every filter item is selected from top x% of most popular items with equal probability. For addressing this problem, an unsupervised SA detection method named WardpHMM has been proposed in this paper. It uses Wardp [5] method and Hidden Markov Model (HMM).
Proposed method concentrates on detecting the genuine users and the attack users.
Contributions of the paper are:
A shilling attack detection technique, namely WardpHMM, has been proposed. Here, HMM is used to calculate the User’s Preference Sequence (UPS).
The proposed technique uses Wardp clustering method for obtaining the group of attack users. This is because Wardp method uses feature weights, which produces results that are superior to those produced by Ward method.
To analyze performance of WardpHMM technique, extensive experiments have been carried out and compared with UD-HMM technique.
The paper is arranged as follows. Section 2 discusses background and related work. Proposed Shilling Attack (SA) detection technique is presented in section 3. Section 4 discusses performance analysis and comparison of both UD-HMM and WardpHMM. Finally, in section 5 conclusions and future work has been discussed.
2 Background and Related Work
The section discussed profile injection attack in brief. It also presents the existing profile injection attack detection techniques.
2.1 Profile Injection Attack
An attack against a CFRS requires a group of Attack Profiles (APs) which attacker injects. Attackers may inject shilling profiles with highest or lowest rating to the target items to be promoted or demoted respectively [6]. An AP contains lot of biased ratings [7].
Figure 1 illustrates an attack profile’s generalized form [3]. iS represents the selected item which is mainly used for characterizing the attack and 𝜑(𝑖𝑆) represents the selected item’s rating. iF represents the filler item which normally rate items randomly to be looked like normal profile.
It is difficult to detect. 𝜑(𝑖𝐹) represents the ratings of filler item. iφ represents the unrated items and 𝜑(𝑖∅) represents the ratings of unrated item. iT represents the target items, which gets highest ratings for promotion or lowest ratings for demotion by the attackers. 𝛾(𝑖𝑇) represents the ratings of target item.
2.2 Shilling or Profile Injection Attack Detection techniques
The detection of profile injection attacks in CFRSs has attracted huge attention from research community [6, 7]. Over past few decades, many shilling attack detection techniques were proposed. There are three types of detection techniques: (i) unsupervised detection method, (ii) supervised detection method and (iii) semi-supervised detection method.
The supervised classification techniques need labeled training classifiers and sample information. They can appropriately detect attacks of known kind. Example of supervised classification technique is RAdaBoost [8]. Yang et al. proposed this detection technique. It detects different types of attacks based on 18 statistical features of malicious users.
However, due to huge amount of features this method is computationally intensive. Burke et al. [9] proposed a length variance (lengthVar), which is a generic attribute. For a user the number of ratings is represented by length. This attribute measures the variation in length for some provided user from average length. For finding fake profiles that are correlated with items' subset, a variance-adjusted HV value was proposed by Bryan et al. [10], whose objective is that fake profiles will have a maximum Hv value.
Previous knowledge of attacks is normally not required in unsupervised clustering techniques. This include candidate attack users to be labeled and range of attack profiles injected. Utilizing multidimensional scaling a hybrid two phase detection method was proposed by Lee et al. [11]. It is an unsupervised clustering technique. The detection performance of this method is very good with high filler size while detecting the Average Attack (AA). With small filler size, the detection performance is not well when detecting Random Attack (RA).
Zhang et al. proposed a HMM and Hierarchical Clustering (HC) based technique named UD-HMM [4] to identify the profile injection attacks in CFRSs. This method first calculates the User’s Suspicious Degree (USD) by utilizing the HMM and then uses the HC to detect the group of attack users.
The method outperforms the baseline methods in detecting different kinds of profile injection attack. However, when detecting the obfuscated attack based on standard average attack the detection performance is not good. To detect attackers based on beta distribution Yang et al. [12] used a novel Beta-Protection (βP) method. This method does not require previous information about the rating distribution of each product. Beta-Protection (βP) is used to immune the missing values.
In most of the semi-supervised detection techniques, there is little quantity of users who are labeled but massive quantity of users are unlabeled. So some existing works emphasize on modeling of both unlabeled and labeled consumer profiles. Zhang et al. [13] developed one Semi-Supervised SA detection method. From the product reviews, the method detects the malicious users. Performance of this method is good when known types of attacks are detected.
However, it requires some labeled profiles to create the training classifiers. Wu et al. [14] proposed hPSD (semi-supervised hybrid learning) model for detecting SA. This model uses both user-item relations and user features to gain maximum rate of SA detection. Cao et al. [15] and Wu et al. [16] proposed a Semi-SAD (Semi-supervised learning based SA Detection) method. This method takes advantage from both unlabeled and labeled user profiles for detecting SA.
3 Proposed Technique
In this section, the proposed technique named WardpHMM has been presented. WardpHMM is an unsupervised SA detection technique, which uses HMM and Wardp method. Here the Wardp [5] method creates feature weights by utilizing Lp norm, which can be seen as feature rescaling factor. The clusters formed by Wardp depend on p. The proposed scheme has two parts.
The first part is measurement of difference in rating behaviors of user and second part is the detection of attack profiles.
3.1 Prerequisite
In this section, prerequisites for working of the WardpHMM method have been presented.
3.1.1 User Preference Sequences (UPS)
In CFRS, authentic clients ordinarily rate objects according to their real preference. Whereas, Attack Clients (ACs) rate objects to bias framework's output according to their specific requirements. The rankings based on the rating given by ACs do not reflect the genuine preferences. In this way, a large difference exists between attack and genuine clients with respect to rating patterns. Such difference can be analyzed based on User Rating Item Sequence (URIS). URIS is given as:
where,
The process of obtaining User Preference Sequences (UPS) is:
Based on rating information of user, observation sequence is constructed. Observation sequence represents item’s rating sequence of every consumer.
For getting the Hidden Markov Model λ0, firstly parameters of HMM λ ={ M, A, B } are set to small arbitrary values. Here, M represents initial probability distribution, A is matrix of transition probability, and B is matrix of emission probability. The observation sequence OB = {OB1, OB2, … , OBS} is used to train the HMM. Here, s denotes the length of the number of items rated by user v (i.e., observation sequence). Then for re-estimating HMM parameters Baum-Welch algorithm [17] is used.
Finally from the re-estimated HMM parameters, UPS and State Transition Sequence of each user is obtained using Viterbi algorithm [17].
3.1.2 User Matching Degree
For a user v ∈ V, let the observation sequence be OBv = {OB1, OB2, …, OBS} and preference sequence (i.e., the equivalent hidden state sequence of user v) be Qv = {q1,q2,…,qS}. Then the User v’s Matching Degree (UMDv) can be calculated as:
where, the initial State Probability (SP) matrix is represented by
3.1.3 User Suspicious Degree (USD)
The ACs injects some specific number of APs into the CFRS to create the supported attack impact. Since the ACs must rate the similar target object, so ratings for the target object is very important.
3.1.3.1 Item Rating Sequence
Let i be an item and J be the set of all items in the dataset. Rating sequence of item i ∈ J is known as Item Rating Sequence (IRS). It refers to series of item i’s ratings
3.1.3.2 Item Entropy
Uncertainty of arbitrary variables is often measured by entropy. Let in the CFRS the set of different user provided ratings be G. 𝑃𝑖,𝑒 represents the probability for item i ∈ J, that the users have given e points. Then, the Item Entropy of i (IEi) can be calculated as:
where,
The more standardized item’s rating distribution is, the lesser item’s entropy will be. If the probability of that item is greater, it suggests that the ACs have rated on that item and also that item is a target object.
3.1.3.3 Item Suspicious Degree (ISD)
Let, ζi given in eq. 6 represents the normalized value of item i’s reciprocal entropy, φv given in eq. 7 represents the normalized value of user v’s reciprocal matching degree. For item i ∈ J the Item Suspicious Degree (ISDi) is given in eq. 8:
where, the group of users who gave item i high ratings has been represented by VG. If the value of rating is more than 3, it is referred as high rating for the dataset. The lowest value of User Matching Degree (UMD) is UMDmin. Highest value of UMD is UMDmax. The user v’s matching degree is UMDv. IEmin and IEmax be the lowest and highest value of item entropy respectively. Item i’s entropy is IEi.
Here, φv indicates that the user is more suspicious if the variation of UMD is higher. ζi indicates that the user is more suspicious if the item ratings distribution is more dispersed.
3.1.3.4 Suspicious Degree Range of Items
Suspicious Degree Range of Items (SDRI) rated by user v ∈ V, SDRIv, can be calculated as:
where,
3.1.3.5 User Suspicious Degree
For user v ∈ V, let USDv is user v’s User Suspicious Degree (USD). φv is given in eq. 7. It represents the normalized value of user v’s reciprocal matching degree. ϕv given in eq. 10 represents the normalize value of ISD rated by v. So using the linear weighted combination of ϕv and φv, in eq. 11 USDv can be calculated as:
where, Weight Factor is represented by f, SDRIv represents the Suspicious Degree Range of Items (SDRI) rated by user v, SDRImax and SDRImin represent highest value and lowest value of SDRI rated by users, respectively.
3.1.4 Wardp Method
Wardp [5] is an agglomerative hierarchical clustering technique. This method creates feature weights by utilizing Lp norm [18, 19]. For transforming the weights into feature rescaling factor Lp norm is used. The clusters created by Wardp are reliant on p. The Wardp technique given in eq. 12 can be calculated as:
where,
3.3 Proposed WardpHMM Algorithm
For detecting shilling attackers, the proposed algorithm mainly needs three tasks, (i) calculation of User Preference Sequences (UPS), (ii) generation of User Suspicious Degree (USD) and (iii) shilling attacker detection based on Wardp method. Algorithm 1 presents the proposed WardpHMM technique.
For calculating UPS firstly, this model generates test set from rating database and attack profiles (Line 2). Secondly, for each user URIS is constructed using eq. 1 (Lines 4-13). Thirdly, the Hidden Markov Model parameters are initialized (Line 14) and the HMM is trained (Lines 15-17). Finally, to generate UPS the trained HMM is used (Lines 18-21).
For generating USD at first, each item’s entropy is calculated using eq. 4 (Lines 22-24). Then, using eq. 2 each user’s UMD is calculated from UPS (Lines 25-27). Secondly, each item’s ISD (Lines 28-30) and SDRI (Lines 31-33) is calculated using eq. 8 and eq. 9 respectively.
Finally, each user’s USD is generated using eq. 10 to obtain the set of USD (Lines 34-37).
For detecting shilling attackers based on Wardp method firstly, the L and 𝑤𝑡𝑙𝑟 are set (Line 38). Then the Wardp method is used for grouping set of USD in two clusters using eq. 12 (Lines 39-44). Finally, the group of Attack Users (AUs) (Lines 45-52) is generated. The cluster with higher mean value of USD is denoted as the group of AUs. The workflow of the proposed WardpHMM technique is shown in figure 2.
4 Performance Analysis and Comparison
In this section, performance of the proposed WardpHMM technique has been analyzed.
It also presents a comparison between the performance of WardpHMM and UD-HMM. For this experiment Amazon-ratings dataset [20] is used. This Amazon-ratings dataset contains 1210271 User-Ids, 249274 Product-Ids, 2023070 Ratings and 4231 Timestamps.
Ratings vary from 1 to 5. Where 5 indicate most liked and 1 indicates disliked. Here, Amazon-ratings dataset is sampled randomly containing 5000 User-Ids, 757 Product-Ids, 5255 Ratings and 1613 Timestamps. Shilling Profile (SP) has been constructed based on the obfuscated attack model [21] with different filler size and attack size, which is injected in dataset. Here, UD-HMM parameters α and N are set to 0.7 and 5 respectively.
4.1 Performance metrics used
To analyze performance of proposed WardpHMM technique, here it has been compared with UDHMM with respect to precision, recall and F1-score. The precision, recall, and F1-score are defined as:
where, number of APs correctly detected is defined by True Positive (TP). Number of authentic users correctly detected is defined by True Negative (TN). Number of authentic users misclassified as attack ones is defined as False Positive (FP). Number of APs misclassified as authentic users is defined as False Negative (FN).
4.2 Performance Comparison
To compare the precision, recall and f1-score values of WardpHMM and UD-HMM methods, experiments have been performed on the Amazon-ratings sampled dataset with different attack size and filler size.
Figure 3 and figure 4 present effect of attack size on precision when the filer size is 3% and 5% respectively. The precision values are captured for different Filler Size (FS) and Attack Size (AS) under obfuscated attack based on standard average attack. When filler size is set to 3%, precision value of WardpHMM ranges from 0.8 to 0.9. In case of UD-HMM it ranges from 0.34 to 0.41. On the other hand, when filler size is set to 5% precision value of WardpHMM is between 0.85 to 0.91. In case of UD-HMM, it ranges between 0.19 and 0.29. So, this indicates that the proposed method detects the attack users more correctly compared to the UDHMM method.
Figure 5 and figure 6 present the effect of attack size on recall value when the filler size is 3% and 5% respectively. The recall values are recorded for various filler size and attack size under obfuscated attack on the Amazon-ratings sampled dataset. When filter size is set to 3% recall value of WardpHMM ranges from 0.88 to 0.93. In case of UD-HMM it ranges from 0.37 to 0.95. However, the highest value of UD-HMM is slightly more than that of WardpHMM but in most of the cases WardpHMM performs better than UD-HMM. On the other hand, when filter size is set to 5% recall value of WardpHMM is between 0.86 and 0.94.
In case of UD-HMM, it ranges between 0.55 and 0.94. Overall, recall value of WardpHMM method is higher than the existing UD-HMM method.
This signifies that proposed method's detection performance is better than the UDHMM method.
Figure 7 and 8 presents the effect of attack size on F1-score when the filter size is 3% and 5% respectively. When the filter size is 3%, F1-score of the proposed WardpHMM method is in the range of 0.84 and 0.91.
In case of UD-HMM it is from 0.35 to 0.52. On the other hand, when the filter size is 5% F1-score of WardpHMM method varies between 0.85 and 0.92. In case of UD-HMM it varies from 0.35 to 0.43. The WardpHMM method has higher F1-score value than the existing UD-HMM method. So, WardpHMM method detects the genuine users and attack users more accurately than the existing UD-HMM method. This signifies that with respect to detection performance proposed method outperforms UD-HMM method
5 Conclusions and Future Work
CFRS is a very efficient way for handling the problem of information overloading. However, CFRSs are very much vulnerable to numerous shilling attacks due to insertion of variety of malicious user profiles in the system.
These malicious user profiles affect the user recommendations. For addressing this issue in this paper, a shilling attack detection technique named WardpHMM has been proposed. For overcoming the problem of Ward method during clustering, the proposed scheme uses Wardp method. Performance of the WardpHMM method has been analyzed using the Amazon-ratings sample dataset.
It has been observed that WardpHMM method outperforms UD-HMM method with respect to precision, recall and F1-score. Wardp method has still some scope for improvement. The Wardp method requires the calculation of centroids which make the proposed technique considerably computation intensive. Therefore, development of light weight shilling attack detection technique remains as future work.