• No results found

An Efficient Method for Dynamic Recommendation

N/A
N/A
Protected

Academic year: 2020

Share "An Efficient Method for Dynamic Recommendation"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

2016 International Conference on Wireless Communication and Network Engineering (WCNE 2016) ISBN: 978-1-60595-403-5

An Efficient Method for Dynamic Recommendation

Ben-jie FAN

1

, Ling CHEN

1,2

and Chen XU

2

1Department of Computer Science, Yangzhou University, Yangzhou, 225009, China

2State Key Lab of Novel Software Tech, Nanjing University, Nanjing, 210093, China

Keywords: Recommendation algorithms, Collaborative filtering, Similarity between users.

Abstract. Most of the traditional collaborative filtering recommendation algorithms do not take into account the factor the time the users evaluate the items, they calculate the similarity between the users only using the static data. In many real world applications, the user's interest may change with the time. In this paper, we present an efficient method for such dynamic recommendation. The method calculates the similarity between the users based on their evaluation scores and times on the items. A fading factor is defined to emphasis of the recent ratings. The experimental results show

that the accuracy of the recommendation results by our method (UBCFT) is improved compared

with the existing collaborative filtering algorithms.

Introduction

It is the age of information deficiency. Everyday, people receive information from the newspapers, web sites, mobile applications and countless advertisements. Amidst all the noise, important and valuable information is being submerged. People need a valid information filter to help them find out the useful knowledge from enormous information networks such as social

networks [1], e-commerce[2], stream-media networks[3]. Recommender systems seek to provide the

information that may be interested by a particular user. The research of efficient recommendation methods has attracted much attention because of the abundance of practical applications that help

users to deal with information overload[4] and provide the personalized recommendations[5]. Many

recommend methods are proposed to model the user’s interest pattern and recommend the information user will be interested in based on his historical behavior. Examples of such applications include recommending products at Amazon.com, movies by MovieLens, and friends by Facebook, etc.

Based on how recommendations are made, recommend methods are usually classified into three

categories: Collaborative filtering[6], content-based method, graph based method[7]and hybrid

method[8]. In the collaborative filtering, the user will be recommended items that people with

similar preferences and tastes liked in the past. In the content-based method, the user will be recommended items similar to the ones she preferred in the past. The graph based method

constructs a bipartite graph based on the user-item matrix [10,11], and gets the recommendation

results by analyzing the bipartite graph. The hybrid method combines content-based and collaborative filtering methods to make recommendations.

Collaborative filtering is the most broadly adopted technique used to predict future item ratings

based on the user’s past behavior as well as ratings of other similar users[9]. It has been shown that

incorporating social network relationships and respective opinions/ratings improves the prediction, and consequently the recommendation process.

Although collaborative filtering is easy to implement, it cannot get high precision

recommendation results. To improve the quality of recommendation, Adomavicius et al.[12]

proposed a multidimensional recommend model integrating multidimensional information in

recommendation. Tso-Sutter et al.[13] presented a collaborative filtering method based on label

information of the items. Kukar [14] uses kernal based learning to detect the drifting concepts as

hidden factors of the users’ interests in recommendation.

(2)

directly be applied to dynamic recommendation. In many real world applications, the user's interest may change with the time. For instance, in a movie recommender system, a user may change her preference on certain genre of movies, or a user got a new point on an actor or a director. In addition, in many real-world systems, it is difficult to split different family members who use the same account. Different family members use the same account in different time, which leads to the apparent “interests drifting.”There were already some works devoted to temporal dynamic

recommender systems. Cao et al.[15] proposed four types of interest patterns and they use rating

graph and rating chain to detect those patterns. However, their work is limited by the specific

general interest patterns that are limited to only four types. Koren [16] proposed models tracking the

time changing behavior throughout the life span of data. It is proposed to revamp two leading CF approaches by introducing the time changing factors into neighborhood model and SVD, respectively. Koren’s model focuses on capturing both global time changing pattern and individual patterns. This ambition makes the model quite complicated. Many variables latent in the model represent specific meanings, and all those variables need to be tuned to get the best result when changing to another dataset. But the above framework is not able to deal with implicit data, and the explicit rating data is not always available.

In this paper, we present an efficient method for such dynamic recommendation. The method calculates the similarity between the users based on their evaluation scores and times on the items. The experimental results show that the accuracy of the recommendation results by our method is improved compared with the existing collaborative filtering algorithms.

Dynamic Recommendation Method

Problem Definition

Let U={u1, u2, …, un }be the set of n users, I={i1, i2, i3, …, im } be the set of m items. The users

evaluate the items by giving it a rating score. The input of a recommending problem can be treated

as a user-item matrix R=[rij] is an n*m matrix, where each element is a tuple rij=(pij,t). Here pij is the

rating score user ui assigns to item ij, t is the time ui assigns the score ,t=1,...T-1. The value of pij

reflects the preference of user ui on item ij at time t.

The value of pijcan be any real number, or integer as a rating score. If user ui has no rating on

item ij, then we set Pij=Ø,t=0, and call item ij is unknown for user ui. The task of recommendation is

as follows: Given a user ui and an integer k, estimate the rating for ui on the unknown items at time

T, and output the k unknown items with the highest ratings.

If user ui assigns rating score to item ij at time t, we denote T(pij)=t as the latest time ui rates item

ij.

Similarity between Users

We adopt the collaborative filtering approach based on user’s similarity. First we define the set of

items on which user ui has assigned rating score

( ) { |i k ik , and ( ik) [1, ]}

I ui p   T pT . (1)

Then the set of items both users ui and uj have assigned rating score is denoted as

( ,i j) ( )i ( )j

I u uI u I u

(2)

Then similarity between users ui and uj at time T be defined as

, , 2

, ,

, , 1 | ( ) ( ) |

( , ) , ,

( ) [1, 1] ( ) [1, 1]

| |

1

( , , )

| ( , ) | max{ , }

i j ui k uj k

k i j i j

ui k uj k

u k u k T p T p

i j

i I u u

i j u k u k

T p T

T p T

p p

sim u u T e

I u u p p

  

   

  

(3)

Here, ( , ) ( , ) 2

i j

u k u k

T PT P   is the difference of the times when users ui and uj assign rating score

on item ik. Lager time difference may reduce the similarity between the users ui and uj.

, , 2

, ,

max ,

i j

i j

u k u k

u k u k

P P

P P

  

is the difference ratio of the rating scores users ui and uj assign to item ik.

Smaller difference ratio may increase the similarity between the users. Δ1 and Δ2 are two adjusting

parameters, we set their values as 0.1 in our experiments.

The Recommendation Score

Suppose user ui assigns rating score puk on item ik at time T(puk), we evaluate the rating score users

ui on item ik at current time T as:

( )

. T T puk

uk uk

rp   (4)

Here, δ∈(0, 1) is a fading factor, which is used to reduce the importance of the old rating scores. We

believe that the new rating scores are more reliable than the old ones, and shoul have larger influence on the recommendation results.

We use u(j)

u ui| iU and pij  

to denote the set of users who have assigned rating score

to itemij , and use rj to denote the average score of itemij at time T:

( )

1 ( )

j uj

u u j

r r

u j

(5)

We define the set of k users with the largest similarity with user ui as N(u). Then the final rating

score for recommending an unknown item ij to the target user ui at time T is:

, ( ) , ( ) ( , ) ( ) ( , ) k i k i j

i k kj

u N u j

ij

i k u N u

sim u u T r r

p r

sim u u T

 

 

(6)

The k unknown items with the highest ratings scores are output as the recommendation results for

target user ui .

Experiment Results and Analysis

Testing Data

Here we conduct several experiments to test our algorithm and compare the quality of recommending results with other similar methods. We adopt MovieLens data set as our testing data. MovieLens consists of 100,000 ratings on an integer scale from 1 to 5 given to 1682 movies by 943 users, where each user has rated at least 20 movies. Each rating has a time stamp indicating the time user rates the item.

Evaluation Metrics

In our experiments, we use MAE (mean absolute value) which is widely used as a metric for movie recommendation performance. The formula to calculate the MAE is as following:

1 | | N i i i p q MAE N   

(7)

Here, N is the total number of ratings over all the users, pi and qi are the actual and predicted ratings

respectively. Obviously, less MAE indicates higher recommendation quality.

(4)

Testing Results

We applied 5-fold cross validation in our experiments. In each fold we have 80% data as the training set and the remaining 20% as the test data. The unit we used for setting the time stamp is 10^9ms. As a preprocessing on the data, we sort the data according to their time stamps, and delete

the users which have less than 10 common ratings with the target user. We set k=5, which means the

5unknown items with the highest ratings scores are output as the recommendation results for target

[image:4.595.111.486.165.335.2]

user.

Figure 1. MAE values of the results by different values of δ.

Since fading factor δ is an important parameter in the method, we first test the method using

different values of δ to detect the influnce of δ on the recommendation results. Figure 1 shows the

MAE values of the results by different values of δ. From Figure 1, we can see that when δ<0.8, the

value of MEA decreases with larger value of δ. The MAE reaches its maximun value when δ=0.8,

therefore, we set value of δ as 0.8 in our experiment.

Table 1. MAE of the recommendation results by different algorithms.

Algorithm UBCF IBCFT UBCFT

MAE 0.82 0.80 0.76

We compare the proposed algorithm with some representative nd widely used dynamic recommendation algorithms. In the comparisons, all the competing algorithms were in online-updating forms and their parameters were set to their empirically best values. We compare our method with two similar algorithms: UBCF and IBCFT. Table 1 shows the MAE values of the results by the algorithm, where UBCF is the trditional user based collaborative filtering, and IBCFT

is the item based collaborative filtering algorithm on dynamic recommendation by Ren et al.[17], and

UBCFT is the user based collaborative filtering algorithm on dynamic recommendation predented by this paper. From the table we can infer that our algorithm UBCFT has the lowest MEA, which means it obtain the results with the highest accuracy among the algorithms.

Conclusion

In many real world applications, the user's interest may change with the time. Traditional collaborative filtering recommendation algorithms do not consider the time users rate the items. An efficient method for such dynamic recommendation is proposed. The method caculates the similarity between the users based on their evaluation scores and times on the items. A fading factor is difined to emphasis of the recent ratings. The experimental results show that the accuracy of the recommendation results by our method is improved compared with the existing similar methods.

Acknowledgments

This research was supported in part by the Chinese National Natural Science Foundation under grant Nos. 61379066, 61070047, 61379064, 61472344, 61402395, Natural Science Foundation of

0 0.5 1 1.5 2 2.5

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

MA

E

(5)

Jiangsu Province under contracts BK20130452, BK2012672, BK2012128, BK20140492 and Natural Science Foundation of Education Department of Jiangsu Province under contract 12KJB520019, 13KJB520026, 09KJB20013.

References

[1] Hooper E, Holloway R. Intelligent techniques for effective network protocol security monitoring, measurement and prediction[J]. International Journal of Security and Its Applications, 2008, 2(4): 1-10.

[2] Zhu J, Guo C, Wu Q. Conformance checking method for Web service interaction behaviors based on Petri nets[J]. Computer Engineering and Science, 2013, 35( 1) : 24 - 25.

[3] Pan F, Wu L, Du Y, et al. Overviews on protocol reverse engineering[J]. Application Research of Computers, 2011, 28( 8) : 2801- 2806.

[4 ] Resnick P, Iacovou N, et al. GroupLens: an open architecture for collaborative filtering of netnews[C]/ /Proceedings of the 1994 ACM conference on computer supported cooperative work, Chapel Hill, North Carolina, United States, October 22-26, 1994.

[5] Adomavicius G, Tuzhilin A. Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions[J]. IEEE Trans. on Knowl. and Data Eng, 2005, 17: 734-749.

[6] Zhang Z, Wen Q, Tang W. Survey of mining protocol specifications[J]. Computer Engineering and Applications, 2013, 49( 9) : 1- 9.

[7] Sarwar B, Karyp Is G, Konstan J, et al. Item-based collaborative filtering recommendation algorithms [C] Proc. Tenth International WorldW ideW eb Conference, 2001: 285-295.

[8] Deshpande M, Karypis G. Item-based top-N recommendation algorithms.[J] ACM Trans on Info Systems, 2004, 22(1): 143-177.

[9] Wang Y, Yun X, Shafiq M Z, et al. A semantics aware approachto automated reverse engineering unknown protocols[C] Proceedings of the 20th IEEE International Conference on Network Protocols. Piscataway: IEEE, 2012: 1 - 10.

[10] Zhang Z, Wen Q, Tang W. Survey of mining protocol specifications[J]. Computer Engineering and Applications, 2013, 49( 9) : 1- 9.

[11] Huang X, Chen X, Zhu N, et al. Protocol state machine reverse method based on labeling state[J]. Journal of Computer Applications, 2013, 33( 12) : 3486 - 3489.

[12] Adomavicius G, Tuzhilin A. Multidimensional recommender systems: a data warehousing approach[C] Proc of the 2nd International Workshop on Electronic Commerce. 2001: 180-192. [13] Tso-Sutter K H L, Marinho L B, Schmidt-Thieme L S. Tagaware recommender systems by fusion of collaborative filtering algorithms[C] Proc of ACM Symposium on Applied Computing. New York: ACM Press, 2008: 1995-1999.

[14] Kukar M. Drifting concepts as hidden factors in clinical studies [ C] Proc 9th Conf. on Artificial Intelligence in Medicine. Europe, Protaras, Cyprus, 2003.

[15] Y. Koren, Collaborative filtering with temporal dynamics, [J] Communicationsof the ACM, vol. 53, no. 4, pp. 89-97, 2010.

[16] H. Cao, E. Chen, J. Yang, and H. Xiong, Enhancing recommender systems under volatile user interest drifts, [C] in Proceedings of the 18th ACM Conference on Information and Knowledge Management. ACM, 2009, pp. 1257-1266.

Figure

Figure 1. MAE values of the results by different values of δ.

References

Related documents

The three basic approaches of collaborative filtering, content-based filtering, and knowledge-based recommendation exploit different sources of recommendation knowledge and

In traditional collaborative filtering - The process of the recommendation system can be divided into three steps: data initialization; find the nearest neighbors;

Collaborative filtering (CF) uses given rating data by many users for many items as the basis for predicting missing ratings and/or for creating a top-N recommendation list for a

Efficient Prediction of Difficult Keyword Queries using Collaborative Filtering Recommendation Framework2. 1 SK.Asif ali &amp; 2

recommendation was significantly poorer than that of the basic matrix collaborative filtering algorithm and the probability matrix decomposition collaborative filtering

For collaborative filtering based movie recommendation, a “database of ratings” given to different movies by the users is maintained .To generate recommendations for the

This model bases on tourism domain ontology, integrates traditional collaborative filtering algorithms, can provide tourists with more accurate tourism

As the prediction accuracy of a recommendation system, especially in collaborative filtering systems, in many cases grows with the amount of data, some algorithms may