You are currently viewing a new version of our website. To view the old version click .
Applied Sciences
  • Article
  • Open Access

31 July 2020

Time-Aware Music Recommender Systems: Modeling the Evolution of Implicit User Preferences and User Listening Habits in A Collaborative Filtering Approach

,
and
1
Department of Computer Science and Automation, University of Salamanca, 37008 Salamanca, Spain
2
Department of Information Technology and Management, Illinois Institute of Technology, Chicago, IL 60616, USA
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Recommender Systems and Collaborative Filtering

Abstract

Online streaming services have become the most popular way of listening to music. The majority of these services are endowed with recommendation mechanisms that help users to discover songs and artists that may interest them from the vast amount of music available. However, many are not reliable as they may not take into account contextual aspects or the ever-evolving user behavior. Therefore, it is necessary to develop systems that consider these aspects. In the field of music, time is one of the most important factors influencing user preferences and managing its effects, and is the motivation behind the work presented in this paper. Here, the temporal information regarding when songs are played is examined. The purpose is to model both the evolution of user preferences in the form of evolving implicit ratings and user listening behavior. In the collaborative filtering method proposed in this work, daily listening habits are captured in order to characterize users and provide them with more reliable recommendations. The results of the validation prove that this approach outperforms other methods in generating both context-aware and context-free recommendations.

1. Introduction

The arrival of streaming services has changed the way users listen to music. Currently, music listeners do not need to store the songs they want to listen to but can access and play an almost unlimited number of songs online. This fact has given rise to the need for endowing these systems with personalized recommendation mechanisms that make it easier for users to find songs that suit their tastes. Most streaming music platforms have increasingly advanced personalization tools to offer music to users and even to show them ads. This is a key aspect of the platform’s positioning against their competitors and increases their revenues. To get an idea of the economic power of these platforms, Spotify, one of the most popular platforms, reached a revenue of 2 billion USD in the first quarter of 2020, 161 million USD of which was due to ads [1].
For several years, research on recommender systems has been very intense, and more recently the focus has been centered on context-aware systems, which aim to adapt recommendations according to the circumstances surrounding the user. To do so, different contextual factors, such as the location, time, weather, companions, and emotions, among others, are added as additional dimensions to the recommendation models. Moreover, time is an essential factor since it not only has an effect on the user context, but also influences the drift of user preferences.
In the music domain, dealing with the effect of time on recommendations is different from other fields, especially in the context of streaming services. Therefore, approaches used in some domains may be difficult to be reused or extended to this area. This is mainly due to the differences in the way music is consumed compared to other products. A music item is usually played many times by the same user, while a book is generally read only once. Another difference is the number of items that can be consumed in a given period, which can be high for music and lower for other items such as books. Likewise, the evolution of preferences may be different depending on the application domain since in some domains, interests evolve quickly, while in others these changes occur more slowly. Music, on the other hand, is found somewhere in the middle, where changes occur at a more even pace. In addition, when considering time as a contextual variable, its effects on the field of music are quite different from those generated in other areas. For instance, the time of day can have little influence when choosing a book but can have a significant influence when choosing a song.
The previously described issues may give rise to additional problems when explicit ratings are not available, and it becomes necessary to resort to implicit feedback. The common methods for obtaining implicit ratings, such as using the number of records purchased or the time spent examining items, are not suitable for the music domain. The reason for this is that music items are not individually purchased on streaming platforms, and that the same item can be listened to many times by the same user. This forces music preference evolution, managed from the perspective of implicit feedback, to be different from other areas. Quite often, the number of times a song is played is used to derive implicit ratings about a particular musical item. However, computing ratings over time, as a means to manage the drift in preference, requires establishing time windows to distribute timestamped plays and compute the evolving ratings for each interval. In other domains, the procedure is more straightforward, since only an observation per user and item is needed to apply a decay function or to discard old ratings. The observation can correspond to an action, such as a purchase. Nevertheless, timestamped ratings of music items require several observations in the form of plays for each time window. The same problem arises in context-aware recommender systems when setting time contexts.
The drawbacks inherent to music recommender systems with respect to time dynamics are addressed in this work. The proposed method manages the evolution of user preferences in a continuous way by using implicit ratings and avoiding time windows. Our proposal also exploits user listening behavior to improve recommendations. The validation of this approach has been performed through a case study, where a music dataset is used to recommend songs, both when the context is not considered and when the time of day context is taken into account. The research presented in this paper is an extension of previous work in which contextual aspects were not addressed [2].
The main contributions of this work are the following:
  • A method to induce music implicit ratings that addresses the evolution of user preferences.
  • A way of incorporating time-dependent user listening behavior in user-based collaborative filtering models.
  • An approach for providing context-aware recommendations that combine the evolution of user preferences, user listening behavior and the time of day as a contextual factor.
To conclude this section, we refer to other important aspects of streaming services that are worthy of consideration, although an in-depth analysis is beyond the scope of this work. The first is related to the security of cloud services used on-demand in the context of smart cities. Different security issues must be implemented for maintaining a trusted environment [3]. Privacy is the second aspect to be considered, which is also a crucial issue of trusted cloud services. The growing concern about preserving the privacy of users demands the implementation of mechanisms to prevent access to the identity of users and their personal information [4]. These two aspects are especially important in applications such as recommender systems that handle personal data and user behavior information, even though these are treated anonymously.
The rest of the paper is organized as follows. Section 2 is dedicated to introducing background information and describing related work. In Section 3, the proposed approach for addressing time-awareness in the area of music is presented. The experimental study and its results are reported in Section 4. Finally, the conclusions are given in Section 5.

3. Modeling the Time Effect on Music Recommendations

3.1. Problem Statement

Although the effects of time on recommender systems have been the focus of many studies, those addressing particular issues related to the music domain are very few. Most of these particularities are derived from the way users consume musical items, which is different from other products, as well as from the listening habits of users regarding the time context. In this work, both aspects are addressed by means of a recommendation approach incorporating time factors, which is specifically designed for the music area when explicit ratings are unavailable.
In this context, analyzing the evolution of user preferences requires new approaches, since methods defined for other domains are not applicable for music recommendation.
Let us consider a set of users U and a set of songs S where u i ϵ U ,   i = 1 , , n and s j ϵ   S ,   j = 1 , , m represent a user and a song, respectively. When explicit ratings are available, each user ui has a list of ratings that he/she has given to a subset of songs S u i , where S u i S. The ratings are stored in a m × n matrix called the rating matrix, where each element r i j is the rating that a user ui gives to a song s j .
In the context of this work, explicit ratings are not available, so the methods described in Section 2.2.1 cannot be applied. As seen in that section, both recency-based models and models using time as an independent variable require the use of timestamped ratings. For certain types of items, those typically consumed only once by the user (for instance, a book), these ratings can be obtained from the time spent by the user examining an item or from the item’s purchase record. This case corresponds to the one-class CF scenario where r i j can only take the binary values corresponding to the positive and unknown user–item feedback, respectively. However, for music items, which are consumed many times by the user (a song is usually listened to many times by a user), it is very difficult to derive timestamped ratings in an implicit way. Using the number of plays is a common way to obtain this information, which requires a specific time frame that is wide enough to get reliable ratings. Thus, ratings are not associated with a specific time point, but rather with a longer period of time. This situation does not allow, however, the previously described approaches, such as time-SVD++ or decay functions, to be applied. In order to overcome these problems, we propose that the evolution of user preferences be modeled in the same process employed to compute implicit ratings, which are inferred from the plays of songs by users. For this purpose, the concepts of decay play and implicit decay ratings are introduced. The definition of these concepts is given below.
Definition 1.
(decay play). Each user u i ϵ U has played a subset of songs where each song   s j ϵ   S is played at a known given time t . Each play p l a y i , j , t is assigned a weight, called decay play ( d P l a y ), which meets the following condition: d P l a y ( p l a y i , j , t ) < d P l a y ( p l a y i , j , t ), when t > t . This property allow us to establish a sequence of decay plays per user and song that is defined in the form: s e q u e n c e   { d P l a y   ( u i ,   s j ,   p ) }   |   p = 1 ,   ,   n p ( u i ,   s j ) and d P l a y   ( u i ,   s j ,   p ) < d P l a y   ( u i ,   s j ,   p + 1 ) , where n p ( u i ,   s j ) is the number of times that the user u i plays the song s j
Definition 2.
(implicit decay rating). A rating inferred from the frequency of decay plays ( d P l a y F ). This frequency is computed for each pair ( u i ,   s j ) :
d P l a y F ( u i ,   s j ) = p = 1 n p ( u i ,   s j ) d P l a y   ( u i ,   s j ,   p ) j p = 1 n p ( u i ,   s j ) d P l a y   ( u i ,   s j ,   p )
This information is represented in the decay play matrix D : = d i , j where D   ϵ   M n × m ( ) and d i , j : = d P l a y F ( u i ,   s j ) .
The songs played by each user u i are ordered by their d P l a y F values in a sequence defined as s e q u e n c e   { d P l a y F k ( u i ) }   |   d P l a y F k ´ ( u i )   d P l a y F k ´ + 1 ( u i ) , where d P l a y F k ´ ( u i ) denotes the decay frequency of a song s j with rank k ´ . k’ = 1 is assigned to the song having the highest frequency. Then, the decay rating r i , j for a song with rank k is computed as a linear function of the frequency percentile. These two definitions form the basis of the method proposed in this paper for dealing with the evolution of user preferences when no explicit ratings are available. Managing time context also presents some drawbacks in the music field, especially when the computation of implicit ratings is necessary. One of the main problems of context-aware methods is the sparsity, which is caused by the addition of contextual dimensions. Even in context-free scenarios, there is a certain degree of sparsity because many elements r i j of the rating matrix are null. This is caused by the fact that the number of songs rated by the user is much lower than the number of songs in the system.
When contextual pre-filtering is applied, the time dimension is restricted to a range of values S t and only the ratings associated to that specific time period are considered to make recommendations for that temporal context. This accentuates the sparsity problem. For instance, to recommend a song to be listened to in the morning, only the ratings corresponding to songs played in the morning can be used if contextual pre-filtering is used. The problem becomes worse when, besides the contextual periods, we have to establish additional periods to calculate the ratings from the number of plays. Moreover, user listening habits regarding the time context are not clearly defined and can vary considerably from one user to another. Therefore, user time-dependent behaviors would be managed in a different way to improve recommendations. In our work, the similarity between users is not only obtained from the ratings they give to songs, but also from the time the songs are played.

3.2. Time-Aware Music Recommendation Method

This section is dedicated to presenting the approach proposed to address both the evolution of user preferences and time context in the music recommendation area.

3.2.1. Modeling the Evolution of Preferences

The recency models described in Section 2.2 assume that user preferences change over time in such a way that the more recent the rating is, the more important it is. Usually, an exponential function of time is used to reduce monotonically ratings’ importance, but, as previously stated, it requires ratings to be stamped with a date. In the context of this work, explicit ratings are not available; therefore, implicit ratings must be computed from the frequency of plays. Given that the information about the date and time of the plays is available, it can be used to calculate the degree of importance of the implicit ratings obtained from them. Therefore, our proposal can be considered a recency approach, as it involves changes in preferences over time. However, it differs from the models described in Section 2.2 in the fact that it does not require timestamped explicit ratings since the evolution of preferences is encompassed in the process for inducing implicit ratings. In this process, unlike other recency methods, the time function is applied to plays instead of ratings.
The first step of the proposal is the calculation of the decay plays defined in the previous section from the timestamped plays. In the same way that the weight of ratings decreases as their age increases, the importance of plays will also decrease. Thus, ratings can be calculated from the frequencies of weighted plays. We propose the use of an exponential function to weight the plays according to the moment in which they occur. As stated before, a decay play (dPlay) is defined as the weight that a play of a song s j by a user u i has according to its timestamp t i , j , p , as seen in Equation (12), with 1 being the maximum weight, which is assigned to the most recent play.
d P l a y ( u i ,   s j ,   p ) = e λ ( t m a x t i , j , p ) / T u .
The most recent time is designed as tmax. The parameter λ is used to adjust the decay rate. T u is used to convert the units in which t i , j , p and tmax are measured to the target units, which depend on the application domain. We have used years as the target unit since changes in musical trends are not usually very drastic.
Other functions can be used; however, several studies in which the evolution of ratings has been analyzed, have proved that exponential decay is more suitable. This occurs because the gradient of the curve reflects the change of their importance over time in a more realistic way.
Although this model is indicated for users who have been registered in the system for some time, it can also be applied in the cold-start scenario referring to new users who only have recent plays. In these cases, the value of the decay plays will be 1 or close to 1, so they will receive recommendations very similar to those received without considering the evolution of preferences.
The frequency of weighted plays will be used to obtain implicit ratings that incorporate time effects. The frequency of decay plays for a user   u i and a song s j within a given time window is computed as indicated in Equation (11).
Algorithm 1 Computation of decay plays, implicit ratings and the average time of day attribute.
Input : U = {u1, u2, . . ., un}
      S = {s1, s2, . . ., sm}
         t i , j , p     i , j , p   |   i = 1 , ,   n       j = 1 , , m     p = 1 , ,   n p ( u i ,   s j )
       λ , T u
O u t p u t :   R, DT // R: Rating matrix, DT: Vector of average time of day for every user u i
1.: R : = r i , j , ,     R   ϵ   M n × m ( )
2: D T : = d T a v g i ,     D T   ϵ   M n × 1 ( )
3: t m a x : = max ( t i , j , p )
4: for i = 1   t o   n do
5:    d P l a y F D e m ( u i )   0
6:   for j = 1   t o   m do
7:      d P l a y F N u m   ( u i , s j )   0
8:      N P ( u i ) = 0
9:      for p = 1   t o   n p ( u i ,   s j ) do
10:        d P l a y ( i , j ,   p ) : = e λ ( t m a x t i , j , p ) / T u
11:        d P l a y F N u m   ( u i , s j )     d P l a y F N u m   ( u i , s j ) + d P l a y ( i , j ,   p )
12:     end for
13:      d P l a y F D e m ( u i )   d P l a y F D e m ( u i ) + d P l a y F N u m   ( u i , s j )
14:      N P ( u i )     N P ( u i ) + n p ( u i ,   s j )
15:   end for
16: end for
17: for i = 1   t o   n do
18:   for j = 1   t o   m do
19:      d P l a y F ( u i ,   s j )     d P l a y F N u m   ( u i , s j ) /   d P l a y F D e m ( u i )
20:   end for
21: end for
22: for i = 1   t o   n do
23:    s e q u e n c e   { F r e q k ´ ( i ) } : = s e q u e n c e   {   d P l a y F ( u i ,   s j ) k ´ }     j   |   d P l a y F ( u i ,   s j ) 0                             d P l a y F ( u i ,   s j ) k ´ > d P l a y F ( u i ,   s j ) k ´ + 1
24:   for j = 1   t o   m do
25:     F ( u i ,   s j ) 0
26:     Set k value   |   F r e q k ( i ) = d P l a y F ( u i ,   s j )
27:    for k = 1   t o   k 1 do
28:      F ( u i ,   s j )     F ( u i ,   s j ) +   F r e q k ´ ( i )
29:    end for
30:      r i , j   4   ( 1 F ( u i ,   s j ) )
31:    end for
32: end for
33: for i = 1   t o   n do
34:    T ( u i )   0
35: for     j = 1   t o   m do
36:     for p = 1   t o   n p ( u i ,   s j ) do
37:          T ( u i )   T ( u i ) + t i , j , p
38:     end for
39:    end for
40:    d T a v g i   T ( u i ) /   N P ( u i )
41: end for
42: r e t u r n   R ,   D T
Once the decay play frequencies are computed, the next step is to obtain the implicit ratings from them. To do this, we recommend following the procedure by Pacula [74], since this method is appropriate for power-low distributions, like in this work, where a higher number of plays is concentrated on a few songs. A rating r i , j for the user u i and the song s i is obtained as a linear function of the frequency percentile by using Equation (13), where d P l a y F k denotes the decay play frequency of a song with the rank k ´ in the ranked list of the user u i , as introduced in Definition 2. Simple frequency functions [75] can also be used to transform plays into ratings but are less suitable for these types of situations.
r i , j = 4 ( 1 k ´ = 1 k 1 d P l a y F k ( u i ) )
The ratings calculated from the frequency of decay plays reflect the evolution over time of user preferences. For users who suffer from the cold-start problem because they have recently joined the system, this evolution will be reflected to a lesser extent and the decay ratings calculated for them will be similar to the ratings provided.

3.2.2. Modeling Time Context

User time-dependent behavior in the music domain is another aspect that can influence recommendations. Users have different habits depending on the time of day when they are listening to music, which can be taken into account to improve recommender models. Context-aware recommendation methods are based on these general patterns of user behavior. They are used to manage situations in which time is a contextual variable, since user preferences may depend on this. Subsequently, the day is divided into time intervals and different recommendations are generated for each of these time windows. As previously mentioned, this can cause the problem of sparsity, which is even worse in the music domain, where implicit ratings are computed from the number of plays due to the need for additional intervals. In the experimental study carried out in this work, in which the previously described method is tested, only two contextual time intervals, morning and evening, are considered as a way to minimize this problem. Additionally, the pre-filtering approach has been applied to generate recommendations for every period.
Considering a tridimensional data space D where the ratings in set D depend on users, items and time context, the contextual pre-filtering reduces the space from three to two dimensions by setting the time to a value t , as seen in Equation (14), or a range of values S t , as seen in Equation (15).
R U × I × T D     R U × I D   [ T = t ]
R U × I × T D     R U × I D   [ T S t ]
where U is the set of users, I is the set of items and T is the set of time values when ratings are given to the items. When the context of time is introduced, T is usually restricted to a specific interval S t , called the contextual segment. After reducing the space to two dimensions, traditional CF methods can be applied to every contextual segment. For instance, the recommendation of songs to be played in the morning only use data belonging to the morning contextual segment.

3.2.3. Modeling User Listening Behavior

In addition to establishing contextual time intervals, we also analyze the listening habits of users throughout the day. In this case, we focus on the individual behavior patterns of each user to achieve a greater customization of the recommendations. This data analysis reveals very different behaviors among users. Nevertheless, certain likenesses among users who play songs at similar times of day can be found. Moreover, in order to introduce listening habits in the recommender models, it is necessary to define a variable that represents this behavior. The average time of day for every user u i can be a suitable factor, which is defined below.
d T A v g i = j p t i , j , p N P i
where t i , j , p is the time of day for the play p of the song s j by the user u i and N P i is the total number of plays of the user u i .
This allows us to use the contextual variable of the time of day as an additional attribute for computing the similarity between users, which may ultimately improve the recommendation reliability. Once this new similarity s i m ( u a , u i ) between the active user u a and the other users u i is computed, Equation (3) can be used to predict the rating that the active user would give to a song s j . We use the cosine function to compute the user similarity by taking ratings and d T A v g as attributes. In general, for any number of attributes, if d is the number of dimensions corresponding to the considered attributes, X a = ( x a , 1 ,   x a , 2 x a , d ) a vector containing the values of the attributes for the active user u a , and X i = ( x i , 1 ,   x i , 2 x i , d ) a vector containing the values of the attributes for the user u i , then the cosine similarity between u a and u i is defined as follows:
c o s S i m   ( u a , u i   ) = z = 1 d x a , z   x i , z z = 1 d x a j 2   z = 1 d x i j 2  
The procedure for computing the implicit ratings from decay play frequencies, as well as the time of day variable, is described by Algorithm 1. This algorithm provides all the variables necessary as an output to apply collaborative filtering methods according to our proposal. In the experimental study detailed in the following section, the procedure is applied to the context-free dataset, as well as to the subsets corresponding to different contextual intervals regarding the time of the day.

4. Experimental Study and Validation

An experimental study using data collected by Oscar Celma (https://www.upf.edu/web/mtg/lastfm360k) from Last.fm was conducted to validate the proposed method. The dataset used in this study consists of more than 80,000 songs listened to by 50 users over a 2-year period, creating a collection of more than 420,000 timestamped plays. The validation metrics used in the study are described in Section 4.1 and the baseline methods are described in Section 4.2.
The first part of the study, presented in Section 4.3, is dedicated to validating the method for obtaining the implicit ratings considering the evolution of user preferences. In this part, two types of experiments are reported. First, the proposed method was applied without taking into account any contextual information. Then subsequently, the context of the time of day was considered and the results were compared.
The second part, included in Section 4.4, is dedicated to introducing a time variable related to the listening habits of users, in an attempt to characterize their behavior. This variable was incorporated into collaborative filtering as an additional attribute for improving the recommendations. The work in this part is carried out in the same manner as mentioned above, and the results obtained are also compared in this section.
Given that it is assumed that user preferences change over time, the validation was performed by splitting the entire dataset into a training set containing the data corresponding to the first 15 months and a test set including data from the last 2 months. The implicit ratings were computed. The data were divided before carrying out the rating computation, so that the ratings and the decay ratings could be computed, respectively, from the number of plays and decay plays in each subset separately by means of Equation (13). Their values were in the range (0, 4). The same procedure was used when contextual periods were considered, computing both types of ratings separately for each training and test set for each contextual period. This is the most suitable way of validating recency-based models [33]. Each record in the datasets consists of the user ID, song ID and either the calculated rating or decay rating for the pair user-song, depending on the approach being evaluated. Therefore, the ground truth used to calculate the error metrics for ratings and decay ratings only varies in these implicit ratings, while the user-song pairs were the same. In addition, the test set records containing user-song pairs, which were also contained in the training set records, were removed. This is done because the recommendation list cannot contain songs that have been previously played by the user, as stated in CF. We used the same datasets for both the rating prediction and top-N recommendations.
The validation strategy followed for top-N recommendation is AllItems [76], in which the entire set of items except those rated by the user in the training set, is used to make the recommendation list. This is considered a suitable strategy to compare the performance of the algorithms. TestRatings is an alternative method that only considers the items in the test set that have ratings of the target user to generate the top-N list for that user. Therefore, the evaluation is only performed over a reduced number of items of known relevance, which in practice is not a realistic scenario. AllItems adds some items to the list which were non-relevant since they have no rating for a given user in the test set. Thus, it can give lower precision values than TestRatings but it is expected that this fact will similarly affect all recommendation algorithms. Consequently, this procedure is more suitable for comparing algorithms since it reflects a more realistic scenario [76].

4.1. Validation Metrics

The proposed method is validated for both rating predictions and top-N recommendations. The metrics used to evaluate the rating prediction reliability were the MAE (mean absolute error), RMSE (root-mean-square error) and NMAE (normalized mean absolute error) [77]. For top-N recommendations, the following ranking specific metrics were used: AUC (area under the receiver operating characteristics (ROC) curve), NDCG (normalized discounted cumulative gain), MAP (mean average precision), and precision for the first 5, 10 and 15 items of the top-N list (prec@5, prec@10 and prec@15). Most of these measures are defined in the information retrieval area [78]. The metrics used in the validation are defined below:
MAE is the average of the absolute error or difference between the actual rating (r) and the predicted rating (pr).
MAE = 1 n   i = 1 n | r i p r i |
where n is the number of predictions, r i , is the actual rating and p r i is the predicted rating.
The NMAE is obtained by normalizing the MAE with respect to the range of rating values. Thus, it is independent of the evaluation range.
NMAE = MAE r m a x r m i n
The RMSE is a good measure to compare the errors of different predictive models. It represents the sample standard deviation of the differences between the predicted values and observed values.
RMSE = 1 n   i = 1 n ( r i p r i ) 2
The metrics used in the validation of the top-N recommendations are described below.
The AUC is a metric obtained from the representation of correct and incorrect prediction rates, in particular, the true positive rate (TPR) and false positive rate (FPR). To compute them, it is necessary to define other variables: true positives (TPs) are positive instances correctly classified; false positives (FPs) are negative instances classified as positive; true negatives (TNs) are negative instances correctly classified; false negatives (FNs) are positive instances classified as negative.
T P R = T P / ( T P + F N )
F P R = F P / ( T N + F P )
The ROC (receiver operating characteristics) curve is the representation of the T P R against the F P R of classifiers induced by the same algorithm and from the same data but with different probability threshold settings. Point (0,0) of the ROC graph corresponds to a classifier that classifies all examples as negatives, and point (1,1) corresponds to a classifier that classifies all examples as positive. The best learning system will be the one that provides a set of classifiers with a greater area under the ROC curve (AUC). The larger the area, the more distant the ROC curve is from the line joining the two points, which represents the random classification.
The NDCG is a measure based on the assumption that the lower the ranked position of a relevant item, the less useful it is for the user. When applying this metric, the gain is accumulated starting at the top of the ranking. The graded relevance value of items in lower positions is reduced in a quantity logarithmically proportional to the position of the result. DCG is the discounted cumulative gain accumulated at a particular rank k.
DCG k = i = 1 k r i l o g 2 ( i + 1 )
IDCG k = i = 1 | R E L | r i l o g 2 ( i + 1 )
where | R E L | is the number of the best ratings up to position k .
NDCG k = DCG k IDCG k
The MAP is the average of the precision value obtained from all users and items in the top-N lists, where prec@K is the proportion of recommended items in the top-k set that are relevant. Since the rank-based metrics for validating top-N recommendations are referred to a list with a given size (N), the relevant items are the N items with the highest implicit rating values in the test set. The top-N lists generated from the predicted ratings will contain a proportion of such relevant items and that value constitutes the precision of each list.

4.2. Baseline Methods

The baseline methods used in the comparative study belong to the two most used categories in the field of recommender systems: memory-based methods and matrix factorization. The former usually give very good results when there are no sparsity problems while matrix factorization methods, although they are also affected by the dispersion, usually perform better with sparser data. High degrees of dispersion generally occur when users have to explicitly express their preferences, as in such cases the number of ratings for the products to be recommended is usually small. In this work, the proposal to calculate the ratings from the plays of songs allows for a greater number of ratings and minimizes the sparsity problem. In this scenario, it is difficult to predict which approach will provide better results. In any case, our aim is not to compare these methods but to prove that, on the one hand, they perform better with decay ratings than with ratings, and, on the other hand, that our proposal of incorporating user listening behaviors outperforms all the baseline models.
The specific methods tested for rating predictions were the user-based K-nearest neighbor (K-NN), matrix factorization (MF), biased matrix factorization (BMF) [79] and factor wise matrix factorization (FWMF) [80]. K-NN was tested using both the cosine similarity and Pearson correlation coefficient. The implementation of those algorithms provided by the RapidMiner tool (https://rapidminer.com) were used. The number of k neighbors was set to 15, since higher values do not improve the results. Other methods for modeling the evolution of user preferences cannot be applied since they need timestamped ratings, as explained in detail in Section 3.
The methods applied for providing top-N recommendations were the user K-NN, weighted regularized matrix factorization (WRMF) [32,81] and Bayesian personalized ranking matrix factorization (BPRMF) [31].

4.3. Modeling Temporal Evolution of Preferences

4.3.1. Rating Prediction

The first experiments were carried out without considering the context of time. Thus, the entire dataset of song listening information taken within a 24-h period was used. We compared the outcome of several recommender methods using implicit ratings, computed following the method proposed by Pacula, in two ways, without considering temporal effects (ratings), and considering those effects by applying our proposed method (decay ratings).
The decay ratings were computed using Equations (11–13). The optimal value of λ in Equation (11) was set to 0.4 after some preliminary tests proved that this value yields the lowest error rates.
The first results shown in Table 1 correspond to the rating prediction for the complete day when the time effect was not considered in the generation of implicit ratings (ratings) and when it was taken into account according to our proposal (decay ratings). We can observe that a significant reduction in the rate of errors (columns “improv.”) was achieved when using decay ratings against the ratings of all recommendation methods. The MAE was reduced by 8.1–22.5%.
Table 1. The root-mean-square error (RMSE), mean absolute error (MAE) and normalized mean absolute error (NMAE) values obtained for the rating prediction when contextual information is not considered (day) and when contextual pre-filtering is carried out (morning and evening).
The next step was to validate the method when considering the context of the time of day. To do so, the dataset was divided into time intervals according to the proposal of [61], where time intervals were established for the morning and evening hours. Morning was defined as the hours between 5 am and 6 pm and evening as the remaining hours of the day. Baltrunas and Amatriain [61] study the time partition that provides the lowest error rates using a Last.fm dataset for artist recommendations. However, our aim is not to prove that the context of time can improve recommendations, but to prove that the improvements of our approach (using decay ratings instead of ratings), achieved without considering the time context, are extensible to contextual time intervals.
Baltrunas and Amatriain report an improvement of 2.4% in the MAE associated with recommendations for the morning and evening time frames as opposed to the complete 24-h period. The dataset was extracted from Last.fm and used to recommend artists to users by means of the CF method. A five-fold cross validation was applied in the experiments. In a preliminary study, we applied the same method and the same validation procedure to our dataset, in this case for recommending songs. However, instead of decreasing, the values for the MAE for the morning and evening periods slightly increased, when compared to the complete 24-h period. Following on, we proceeded to check the behavior when using the previously described training and test set partition, in which examples of the test set correspond to the dates subsequent to those of the training set examples.
Table 1 also presents the results obtained in the experiments involving the two time periods (morning and evening). An analysis of the values showed that the most significant result is that the error rates for the morning and evening periods were substantially lower than those of the complete time period (day) when traditional ratings were used. However, this reduction was less obvious when the decay ratings were used. For the ratings, the MAE decreases between 16.3% and 18.8% when comparing the morning period with the complete day, and between 6.5% and 17.1% when comparing the evening with the complete day. For the decay ratings, the reduction in the MAE varied between 0.6% and 14.6% when comparing the morning period with the complete day and between 0.6% and 6.7% when comparing the evening with the complete day. In the latter case, an increment of 2.1% was produced for K-NN with the cosine similarity, which was the method that yielded the worst results in all the experiments.
Another conclusion that can be drawn from this analysis is that the decay ratings provided the best results for all methods tested in this study. Although, for the morning and evening periods, the improvement was not as great as the one achieved for the complete day, where the reduction in the MAE varied between 1.1% and 11.3%.
Figure 1 shows a comparison of the results obtained in these experiments, where it can be seen that the error rates (MAE and RMSE) are lower for the decay ratings as compared to the ratings, obtaining the longest distance for the complete day. The best values for each method and the percentages of improvement are highlighted in bold.
Figure 1. The MAE and RMSE values given by some recommendation methods using ratings and decay ratings for different time periods.
Finally, to confirm that the method can be applied in the col-start scenario, as stated in the description of the proposal, we have conducted some additional experiments. From the entire dataset, the five most recent users have been selected since they have a much shorter play history than the oldest users. To perform this validation, records for all except the five selected users were removed from the test set. The objective was to prove that the use of the decay ratings with the recommendation methods is better or at least equal to the use of the ratings for new users. The study has been carried out only for a 24-h period because when doing the contextual pre-filtering for short periods with only five users, the test set would have been a very small size. The results are shown in Table 2. The best values for each method in the comparison of ratings and decay ratings and the percentages of improvement are highlighted in bold.
Table 2. The RMSE, MAE and NMAE values obtained for the rating prediction in the cold-start scenario.
We can observe that the results obtained with decay ratings are better than those obtained with ratings for all recommendation methods, although the percentage of improvement was lower than when using the complete data set. These results were predictable since the evolution of preferences of users who have been registered in the system for a shorter period of time, is reflected to a lesser extent. Therefore, decay ratings and ratings have similar values for these users.

4.3.2. Top-N Recommendation

After analyzing the rating prediction results, the reliability of the top-N recommendations was studied. This kind of recommendation consists of a ranked list containing the N songs with the highest values of predicted ratings. The evaluation of these lists was usually performed by means of rank-based metrics. We used N=100 for obtaining the results.
The results of the tests performed using ratings and decay ratings are presented in Table 3 and Figure 2. The table shows the values of the AUC, NDCG and MAP for the experiments corresponding to the complete day, morning and evening (the best results are shown in bold). The figure illustrates the comparison of the two types of evaluation (ratings and decay ratings) according to these metrics and others such as prec@5, prec@10, prec@15.
Table 3. The area under the receiver operating characteristics (ROC) curve (AUC), normalized discounted cumulative gain (NDCG), and mean average precision (MAP) values obtained for the rating prediction when contextual information is not considered (day) and when contextual pre-filtering is performed (morning and evening).
Figure 2. Values of the top-N metrics given by user K-nearest neighbor (K-NN), weighted matrix factorization (WRMF) and Bayesian personalized ranking matrix factorization (BPRMF) using rating and decay ratings.
When the K-NN was applied, the values of the AUC, NDCG and MAP were the same for the decay ratings and ratings in spite of the prediction that the preferences would be better when using decay ratings against ratings, as shown in Table 1. After a detailed examination of the predictions and the top-N lists generated for some users, we verified that the predictions of decay ratings were closer to the actual values than the prediction of ratings, but the ordered list of songs provided by the algorithm is very similar. This indicates that, despite obtaining better results in the prediction when using decay ratings, these do not translate into a great change in the order of the songs in terms of their relevance. Thus, all rank-based metrics (those used for top-N recommendations) give the same results for K-NN. This behavior may be produced by the characteristics of the cosine similarity metric involved in this method. Since the similarity is based on the angle between two vectors, this measure is more sensitive to the fact that two users have ratings on the same items than to the magnitude of those ratings. This is especially important in problems such as the one addressed in this paper, where there are no negative ratings, since it is assumed that users play the songs they like.
When WRMF and BPRMF were used, the values of the AUC and NDCG were higher for the decay ratings than for the ratings (except the AUC in the evening periods with BPRMF), although the improvements were not as good as those of preference predictions reported in Table 1. The MAP for the decay ratings was higher or equal than for the ratings. The behavior for prec@5, prec@10 and prec@15 was similar for both kinds of evaluations when using the K-NN. However, for WRMF and BPRMF, the decay ratings performed better than the ratings, except for prec@5 and prec@10 for the complete day and prec@5 for the evening period. We can also find an explanation for this performance of the rank-based metrics through the detailed analysis of the individual results. We have verified that some of the most relevant songs for users have very similar ratings and/or decay ratings. Hence, small fluctuations in the predicted values can cause a change in the order of the songs in the top-N list and make an item go out or into the top-5, top-10 or top-15 lists from which these metrics are computed. In some cases, this fact leads to some of the rank-based metrics being worse for the decay ratings than for the ratings, even though the predictions of the decay ratings are better than the predictions of the ratings. Additionally, the greatest differences between the lists produced with the ratings and decay ratings occur for ranks higher than 15, so these changes are not reflected in these metrics. The behaviors described above may be aggravated by the high number of songs available for recommendation, which makes it difficult to obtain a rank close to the actual rank, since little changes in the values of ratings may change the position of the songs in the list.
In Figure 3, the results obtained for the complete day and the morning and evening periods are compared. Only the outcome of the WRMF method with ratings and decay ratings is presented, since the user K-NN produced worse results and did not give appreciable differences between the ratings and decay ratings. The results of the metrics the AUC, NDCG and MAP do not reveal a clear improved performance when the morning and evening time periods are considered, compared to the complete day. The NDCG value is always lower for the morning and evening time periods, while the AUC and MAP values are higher for the evening period when using both the ratings and decay ratings. However, for the morning period, the AUC was higher only when using ratings, and the MAP was lower for ratings and decay ratings when compared to the complete day. Regarding prec@5, prec@10, prec@15, the behavior is irregular, similar to what is observed for the rating prediction.
Figure 3. Values of the top-N metrics given by WRMF using the ratings and decay ratings for different day time periods.
In general, it can be seen that all the precision values are low, regardless of the time period, the type of ratings and the recommendation method. This fact is compatible with the reasoning given at the beginning of Section 4 regarding the method used to generate the top-N lists, which is suitable for comparison between methods but not for evaluating the performance in absolute terms. The high number of songs in the dataset aggravates this problem.

4.4. Modeling Listening Habits of Users

In the second part of the work, we studied the frequency of plays throughout the day to detect the listening behavior of users in relation to time. We analyzed the play frequencies for all users as a complete group (Figure 4), as well as for each individual user (Figure 5 and Figure 6).
Figure 4. Day time frequencies of plays during the morning intervals and the evening intervals.
Figure 5. Individual day time frequencies of plays for different users during the evening intervals.
Figure 6. Individual day time frequencies of plays for different users during the morning intervals.
Figure 4 shows the distribution of the frequency values during the morning intervals and the distribution of values during the evening intervals, according to the partition mentioned in the previous section. Therefore, this figure shows the listening pattern of all users in the dataset over the day, from 0 to 24 h. We can observe that the maximum frequency was reached around 6 p.m. The figure also shows that morning frequencies present some fluctuations, while the evening frequencies gradually decay during 6 pm to 5 am. When time intervals are established to make context-aware recommendations, this overall pattern is exploited. However, in order to achieve a greater degree of personalization, it is necessary to take into account the individual patterns of each user.
When the play frequencies were analyzed individually, different distributions could be found for the various users, since their listening habits were not the same. Figure 5 and Figure 6 present a sample of users exhibiting different behaviors for both the evening and morning intervals. We can see there was greater variability during the morning period than in the evening, at which time the distributions were more similar.
Based on this analysis, we propose to use the time listening behavior to characterize the users and to incorporate this behavior in the recommender models as a means to improve the reliability of the recommendations.
The average time of day for each user u i was used to introduce the listening habits in the recommendation model, which was managed as an additional attribute that allows the similarity to be detected between users in collaborative filtering. The incorporation of this variable into collaborative filtering was tested for both the rating prediction and top-N recommendations. The method used was the K-nearest neighbor (K-NN) user-based collaborative filtering, which is called “user attribute K-NN” and is when other attributes besides the ratings are used to compute the similarity between users. In this case, the metric used is the cosine-similarity. Since the additional attribute used in the K-NN captures the time-dependent user listening behavior, the proposed method was named “user-time K-NN”.

4.4.1. Rating Prediction

The user-time K-NN method, which incorporates the time variable, was tested for the complete day and the morning and evening intervals using classical ratings, as well as the decay ratings defined in this work, where λ was set to 0.4. Table 4 shows the RMSE, MAE and NMAE values obtained in the tests. As in the tables above, the values in bold represent the best results. Figure 7 presents a comparison of the error rates, the MAE and RMSE, of all methods tested in this study applied to the complete day dataset, as well as to the morning and evening intervals. The last bars of each group represent the results obtained using the user-time K-NN proposal. In all the time periods studied, the introduction of the new attribute, which captures the users’ listening habits throughout the day, lead to lower error rates, as can be seen in the graphs. By comparing the results of the user-time K-NN with BMF, the second-best method, the reduction in the MAE is 2.2%, 1.8% and 0.3% for the complete day, morning and evening, respectively, when using ratings. In the case of the decay ratings, the reduction is 4.5%, 4.4% and 3.0%.
Table 4. Values of the RMSE, MAE and NMAE obtained for the rating prediction in different time periods using the user-time K-NN method.
Figure 7. The MAE and RMSE values obtained using the time of day as an additional attribute in collaborative filtering (CF (user-time K-NN)) versus the simple use of ratings or decay ratings.
Another important observation is the fact that the user-time K-NN method using the decay ratings produced significantly lower error values compared to the ratings. The decay ratings reduced the MAE by 24.4% for the complete day, 11.2% for the morning interval and 11.0% for the evening interval.
The MAE and RMSE are represented in a different way in Figure 8 in order to analyze the effects of introducing contextual information regarding the time of the day versus the complete day. It can be seen that the error rates were significantly lower when information about the morning and evening periods was introduced, as compared to complete day, when using the ratings. Nevertheless, this reduction was not detected during the evening period using K-NN cosine and user-time K-NN methods and when using the decay ratings. In addition, the reduction generated with the decay ratings for the rest of the cases (all methods for the morning period and K-NN Pearson, MF and BMF for the evening period) was smaller. However, all methods using decay ratings give lower error rates than the same method using ratings. Moreover, our proposal of using decay ratings and the time of day as an additional attribute (user-time K-NN method), was the approach that produced the lowest values of the MAE and RMSE. Specifically, the improvement in the MAE, compared to the BMF with ratings, was 26.0% for the complete day, 11.2% for the morning interval and 12.8% for the evening interval.
Figure 8. Comparison of the MAE and RMSE values obtained for the three periods studied using different methods.

4.4.2. Top-N Recommendations

The effect of introducing the time of day attribute using the user-time K-NN method on top-N recommendations is analyzed in this section. Table 5 shows the AUC, NDCG and MAP obtained by applying that method for the three periods studied, both with the ratings and decay ratings since in both cases the results were the same. Figure 9 shows the values of these evaluation metrics, as well as prec@5, prec@10, prec@15 and MAP, obtained after applying the proposed user-time K-NN method and other top-N recommendation approaches, with both the ratings and decay ratings and considering the context of time of day.
Table 5. The AUC, NDCG and MAP values obtained for top-N recommendation considering the context of time of day.
Figure 9. Comparison of the top-N metrics obtained using the proposed user-time K-NN method versus the other recommendation methods for the different time periods studied. Comparison using ratings and decay ratings.
In the same way as applying the K-NN method without attributes, applying the user-time K-NN method produced the same results of the rank-based metrics for the ratings and decays ratings. This occurs even though the MAE and RMSE error rates were lower with the ratings than with the decay ratings. This was possible because the MAE and RMSE are based on the difference between predicted values and actual values, while the metrics used for top-N recommendations are based on the items included in the ranked lists and their ranks. After analyzing the top-N lists in detail we found few changes in their position, especially in the first elements. The NDCG is a metric not very sensitive to changes that do not affect the first items on the list. These small differences also mean that the proportion of relevant items in the lists, as well as in the top-5, top-10 and top-15 positions, remain almost unchanged. As a result, the differences in the values of all rank-based metrics for ratings and decay ratings are in non-significant digits, even though the overall error rate was lower for the decay ratings.
Figure 9 shows that most of the metrics were significantly improved by introducing the time of day attribute when using the proposed user-time K-NN method for both the complete day and the morning and evening intervals. The AUC and NDCG values are significantly higher in all cases for both the ratings and decay ratings. The metrics, prec@5, prec@10, prec@15 and MAP, also present much higher values during the evening intervals, which is not always the case for the complete day and the morning intervals. The results are therefore not as good for the top-N lists as they are for the rating prediction. This can also be explained by the reasons given before, which are related to the effect on the rank-based metrics of the closeness of the implicit evaluation values for the relevant songs, as well as the large number of songs contained within the dataset.

5. Conclusions

One of the most influential factors in music recommendation is time. Moreover, its influence can depend on various aspects such as the evolution of user preferences and the time when users listen to songs. These aspects have been studied in-depth, but as far as we know, the evolution of preferences has never been modeled directly from implicit feedback. In addition, time has also been considered as a contextual variable in other studies in order to make recommendations based on the time of day, but it is not used to characterize users according to their listening habits.
In this paper, an approach is proposed to address the effects of time on music recommendations. The method is designed to deal with problems characteristic of the music field which are absent in other application domains. The study also attempts to manage implicit feedback, since explicit ratings are not usually available. Thus, the evolution of user preferences over time is included in the proposed method for obtaining the implicit ratings of songs from the frequency of plays. Other commonly used methods for incorporating time dynamics, such as decay functions, cannot be used here because they require timestamped explicit ratings. Likewise, the traditional way of computing implicit ratings, such as using the time users spend on examining an item or the purchase information, are not applicable in the music domain. This occurs because users tend to listen to a song more than once and the songs are not bought one by one on the streaming platforms. Furthermore, the proposed recommender model incorporates information from the listening behavior of users in order to improve recommendations.
The results of the validation performed using a dataset from Last.fm proved that the proposed method for recommending songs outperforms other collaborative filtering approaches, when the context of time is or is not taken into account.

Author Contributions

Conceptualization, M.N.M.-G. and Y.Z.; methodology, D.S.-M., M.N.M.-G. and Y.Z.; software, D.S.-M.; validation, D.S.-M. and M.N.M.-G.; data curation, D.S.-M.; supervision, Y.Z. and M.N.M.-G.; funding acquisition, M.N.M.-G. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Junta de Castilla y León, Spain, grant number: SA064G19.

Conflicts of Interest

The authors declare no conflict of interest

References

  1. Iqbal, M. Spotify Usage and Revenue Statistics. 2020. Available online: https://www.businessofapps.com/data/spotify-statistics (accessed on 24 July 2020).
  2. Sánchez-Moreno, D.; Zheng, Y.; Moreno-García, M.N. Incorporating Time Dynamics and Implicit Feedback into Music Recommender Systems. In Proceedings of the 2018 IEEE/WIC/ACM International Conference on Web Intelligence (WI), Santiago, Chile, 3–6 December 2018; pp. 580–585. [Google Scholar]
  3. Sarkar, M.; Banerjee, S.; Badr, Y.; Sangaiah, A.K. Configuring a trusted cloud service model for smart city exploration using hybrid intelligence. Int. J. Ambient Comput. Intell. 2017, 8, 21. [Google Scholar] [CrossRef]
  4. Yamin, M.; Abi Sen, A.A. Improving privacy and security of user data in location based services. Int. J. Ambient Comput. Intell. 2018, 9, 19–42. [Google Scholar] [CrossRef]
  5. Desrosiers, C.; Karypis, G. A Comprehensive Survey of Neighborhood-based Recommendation Methods. In Recommender Systems Handbook; Springer US: Boston, MA, USA, 2011; pp. 107–144. [Google Scholar]
  6. Sarwar, B.; Karypis, G.; Konstan, J.A.; Riedl, J. Incremental Singular Value Decomposition Algorithms for Highly Scalable Recommender Systems. In Proceedings of the 5th International Conference in Computers and Information Technology, Rousse, Bulgaria, 27 December 2002; ACM: New York, NY, USA, 2002. [Google Scholar]
  7. Shardanand, U.; Maes, P. Social Information Filtering: Algorithms for Automating ‘Word of Mouth’. In Proceedings of the CHI, Denver, CO, USA, 7–11 May 1995; ACM Press: New York, NY, USA, 1995; pp. 210–217. [Google Scholar]
  8. Breese, J.S.; Heckerman, D.; Kadie, C. Empirical Analysis of Predictive Algorithms for Collaborative Filtering. In Technical Report Microsoft Research; Morgan Kaufmann Publishers: Burlington, MA, USA, 1998. [Google Scholar]
  9. Cremonesi, P.; Koren, Y.; Turrin, R. Performance of Recommender Algorithms on Top-N Recommendation Tasks. In Proceedings of the Fourth ACM conference on Recommender Systems, Barcelona, Spain, 26–30 September 2010; ACM: New York, NY, USA, 2010; pp. 39–46. [Google Scholar]
  10. Valcarce, D.; Parapar, J.; Barreiro, Á. Language Models for Collaborative Filtering Neighbourhoods. In European Conference on Information Retrieval; Springer: Berlin/Heidelberg, Germany, 2016; pp. 614–625. [Google Scholar]
  11. Howe, A.; Forbes, R. Re-considering neighborhood-based collaborative filtering parameters in the context of new data. In Proceedings of the 17th ACM Conference on Information and Knowledge Management, Napa Valley, CA, USA, 26–30 October 2008; pp. 1481–1482. [Google Scholar]
  12. Burke, R. Hybrid Web recommender systems. In The Adaptive Web; Springer: Berlin/Heidelberg, Germany, 2007; pp. 377–406. [Google Scholar]
  13. Basilico, J.; Hofmann, T. Unifying collaborative and content-based filtering. In Proceedings of the Twenty-First International Conference on Machine Learning, Alberta, Canada, 4–8 July 2004. [Google Scholar]
  14. Tso, K.; Schmidt-Thieme, L. Attribute-aware Collaborative Filtering. In From Data and Information Analysis to Knowledge Engineering. Studies in Classification, Data Analysis, and Knowledge Organization; Spiliopoulou, M., Kruse, R., Borgelt, C., Nürnberger, A., Gaul, W., Eds.; Springer: Berlin/Heidelberg, Germany, 2006. [Google Scholar]
  15. Sánchez-Moreno, D.; Pérez-Marcos, J.; Gil, A.B.; López, V.F.; Moreno-García, M.N. Social influence-based similarity measures for user-user collaborative filtering applied to music recommendation. In Distributed Computing and Artificial Intelligence, Special Sessions, 15th International Conference, 2018; Rodríguez, S., Prieto, J., Faria, P., Kłos, S., Fernández, A., Mazuelas, S., Jiménez-López, M.D., Moreno, M.N., Navarro, E., Eds.; Advances in Intelligent Systems and Computing; Springer: Berlin/Heidelberg, Germany, 2019; Volume 801, pp. 1–8. [Google Scholar]
  16. Pérez-Marcos, J.; Martín-Gómez, L.; Jimenez-Bravo, D.M.; López, V.F.; Moreno-García, M.N. Hybrid system for video game recommendation based on implicit ratings and social networks. J. Ambient Intell. Human. Comput. 2020. [Google Scholar] [CrossRef]
  17. Sánchez-Moreno, D.; Muñoz, M.D.; López, V.F.; Gil, A.B.; Moreno, M.N. A session-based song recommendation approach involving user characterization along the play power-law distribution. Complexity 2020, 7309453. [Google Scholar] [CrossRef]
  18. Aggarwal, C.C. Recommender Systems. The Testbook; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar]
  19. Moreno, M.N.; García, F.J.; Polo, M.J.; López, V. Using Association Analysis of Web Data in Recommender Systems. Lect. Notes Comput. Sci. 2004, LNCS 3182, 11–20. [Google Scholar]
  20. Sarwar, B.; Karypis, G.; Konstan, J.; Riedl, J. Item-based collaborative filtering recommendation algorithms. In Proceedings of the 10th International Conference on World Wide Web, Hong Kong, 1–5 May 2001; pp. 285–295. [Google Scholar]
  21. Shyu, M.L.; Haruechaiyasak, C.; Chen, S.C.; Zhao, N. Collaborative filtering by mining association rules from user access sequences. In Proceedings of the International Workshop on Challenges in Web Information Retrieval and Integration, Tokyo, Japan, 8–9 April 2005; pp. 128–135. [Google Scholar]
  22. Miyahara, K.; Pazzani, M.J. Collaborative filtering with the simple Bayesian classifier. In Pacific Rim International Conference on Artificial Intelligence; Springer: Berlin/Heidelberg, Germany, 2000. [Google Scholar]
  23. Xia, Z.; Dong, Y.; Xing, G. Support vector machines for collaborative filtering. In Proceedings of the 44th Annual Southeast Regional Conference, Melbourne, FL, USA, 10–12 March 2006; pp. 169–174. [Google Scholar]
  24. Salakhutdinov, R.; Mnih, A.; Hinton, G. Restricted Boltzmann machines for collaborative filtering. In Proceedings of the 24th International Conference on Machine Learning, Corvalis, ORE, USA, 20–24 June 2007; pp. 791–798. [Google Scholar]
  25. Aggarwal, C.; Parthasarathy, S. Mining massively incomplete data sets by conceptual reconstruction. In Proceedings of the Seventh ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Francisco, CA, USA, 26–29 August 2001; pp. 227–232. [Google Scholar]
  26. Baltrunas, L.; Ludwig, B.; Ricci, F. Matrix factorization techniques for context aware recommendation. In Proceedings of the Fifth ACM Conference on Recommender Systems, Chicago, IL, USA, 23–27 October 2011; pp. 301–304. [Google Scholar]
  27. Billsus, D.; Pazzani, M. Learning collaborative information filters. In Proceedings of the International Conference on Machine Learning, San Francisco, CA, USA, 24–27 July 1998; Morgan Kaufmann: Burlington, MA, USA, 1998; pp. 46–54. [Google Scholar]
  28. Su, X.; Khoshgoftaar, T.M. A survey of collaborative filtering techniques. Adv. Artif. Intell. 2009, 2009, 421425. [Google Scholar] [CrossRef]
  29. Hofmann, T. Latent semantic models for collaborative filtering. ACM Trans. Inf. Syst. 2004, 22, 89–115. [Google Scholar] [CrossRef]
  30. Hu, Y.; Koren, Y.; Volinsky, C. Collaborative filtering for implicit feedback datasets. In Proceedings of the 2008 Eighth IEEE ICDM, Pisa, Italy, 15–19 December 2008; pp. 263–272. [Google Scholar]
  31. Rendle, S.; Freudenthaler, C.; Gantner, Z.; Schmidt-Thieme, L. BPR: Bayesian Personalized Ranking from Implicit Feedback. In Proceedings of the Twenty-Fifth Conference on Uncertainty in Artificial Intelligence, Montreal, QC, Canada, 18–21 June 2009; pp. 452–461. [Google Scholar]
  32. Koren, Y. Factor in the neighbors: Scalable and accurate collaborative filtering. ACM Trans. Knowl. Discov. Data 2010, 4, 1. [Google Scholar] [CrossRef]
  33. Campos, P.G.; Díez, F.; Cantador, I. Time-aware recommender systems: A comprehensive survey and analysis of existing evaluation protocols. User Model. User-Adapt. Interact. 2014, 24, 67–119. [Google Scholar] [CrossRef]
  34. Chen, J.; Wang, C.; Wang, J. Will you reconsume the near past? Fast prediction on short-term reconsumption behaviors. In Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence, Austin, TX, USA, 25–30 January 2015; pp. 23–29. [Google Scholar]
  35. Chen, J.; Wang, C.; Wang, J.; Yu, P.S. Recommendation for Repeat Consumption from User Implicit Feedback. IEEE Trans. Knowl. Data Eng. 2016, 28, 3083–3097. [Google Scholar] [CrossRef]
  36. Wang, Y.; Han, L. Personalized recommendation via network-based inference with time. Phys. A 2020, 550, 123917. [Google Scholar] [CrossRef]
  37. Tuan, C.-C.; Hung, C.-F.; Wu, Z.-H. Collaborative location recommendations with dynamic time Periods. Pervasive Mob. Comput. 2017, 35, 1–14. [Google Scholar] [CrossRef]
  38. Ding, Y.; Li, X. Time weight collaborative filtering. In Proceedings of the 14th ACM International Conference on Information and Knowledge Management, Bremen, Germany, 31 October–5 November 2005; ACM: New York, NY, USA, 2005; pp. 485–492. [Google Scholar]
  39. Campos, P.; Bellogin, A.; Diez, F.; Chavarriaga, J. Simple time-biased KNN-based recommendations. In Proceedings of the Workshop on Context-Aware Movie Recommendation, Barcelona, Spain, 30 September 2010; pp. 20–23. [Google Scholar]
  40. Gordea, S.; Zanker, M. Time filtering for better recommendations with small and sparse rating matrices. In Proc. WISE; Springer: Berlin/Heidelberg, Germany, 2007; pp. 171–183. [Google Scholar]
  41. Zhang, Y.; Liu, Y. A collaborative filtering algorithm based on time period partition. In Proceedings of the IEEE 2010 Third IITSI, Jinggangshan, China, 2–4 April 2010; pp. 777–780. [Google Scholar]
  42. Wang, C.; Zhang, M.; Ma, W.; Liu, Y.; Ma, S. Modeling Item-Specific Temporal Dynamics of Repeat Consumption for Recommender Systems. In Proceedings of the World Wide Web Conference, San Francisco, CA, USA, 13–17 May 2019; pp. 1977–1987. [Google Scholar]
  43. Hermann, C. Time-Based Recommendations for Lecture Materials. In Proceedings of the ED-MEDIA, Toronto, ON, Canada, 29 June 2010; pp. 1028–1033. [Google Scholar]
  44. Zhang, H.; Zhang, X.; Tian, Z.; Li, Z.; Yu, J.; Li, F. Incorporating temporal dynamics into LDA for one-class collaborative filtering. Knowl.-Based Syst. 2018, 150, 49–56. [Google Scholar] [CrossRef]
  45. Rezaeimehr, F.; Moradi, P.; Ahmadian, S.; Qader, N.N.; Jalili, M. TCARS: Time- and Community-Aware Recommendation System. Future Gener. Comp. Syst. 2018, 78, 419–429. [Google Scholar] [CrossRef]
  46. Koren, Y. Collaborative Filtering with Temporal Dynamics. In Proceedings of the 15th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Paris, France, 28 June–1 July 2009; pp. 447–456. [Google Scholar]
  47. Xiong, L.; Chen, X.; Huang, T.; Schneider, J.; Carbonell, J.G. Temporal collaborative filtering with bayesian probabilistic tensor factorization. In Proceedings of the 2010 SIAM International Conference on Data Mining, Columbus, OH, USA, 29 April–1 May 2010; pp. 211–222. [Google Scholar]
  48. Li, X.; Xu, G.; Chen, E.; Zong, Y. Learning recency based comparative choice towards point-of-interest recommendation. Expert Syst. Appl. 2015, 42, 4274–4283. [Google Scholar] [CrossRef]
  49. Zafari, F.; Moser, I.; Baarslag, T. Modelling and analysis of temporal preference drifts using a component-based factorised latent approach. Expert Syst. Appl. 2019, 116, 186–208. [Google Scholar] [CrossRef]
  50. Tong, C.; Qi, J.; Lian, Y.; Niu, J.; Rodrigues, J.J.P.C. TimeTrustSVD: A collaborative filtering model integrating time, trust and rating information. Future Gener. Comp. Syst. 2019, 93, 933–941. [Google Scholar] [CrossRef]
  51. Koenigstein, N.; Dror, G.; Koren, Y. Yahoo! Music Recommendations: Modeling Music Ratings with Temporal Dynamics and Item Taxonomy. In Proceedings of the Fifth ACM Conference on Recommender Systems, Chicago, IL, USA, 23–27 October 2011; pp. 165–172. [Google Scholar]
  52. Chen, J.; Wang, C.; Wang, J. Modeling the Interest-Forgetting Curve for Music Recommendation. In Proceedings of the 22nd ACM International Conference on Multimedia, Orlando, FL, USA, 3–7 November 2014; ACM: New York, NY, USA, 2014; pp. 921–924. [Google Scholar]
  53. Larrain, S.; Trattner, C.; Parra, D.; Graells-Garrido, E.; Nørvåg, K. Good times bad times: A study on recency effects in collaborative filtering for social tagging. In Proceedings of the 9th ACM Conference on Recommender Systems, Vienna, Austria, 16–20 September 2015; ACM: New York, NY, USA, 2015; pp. 269–272. [Google Scholar]
  54. Yan, C.; Zhang, Q. Merging visual features and temporal dynamics in sequential recommendation. Neurocomputing 2019, 362, 11–18. [Google Scholar] [CrossRef]
  55. Khosravy, M.; Gupta, N.; Patel, N.; Senjyu, T. (Eds.) Frontier Applications of Nature Inspired Computation; Springer: Singapore, 2020. [Google Scholar]
  56. Khosravy, M.; Gupta, N.; Patel, N.; Senjyu, T.; Duque, C.A. Particle Swarm Optimization of Morphological Filters for Electrocardiogram Baseline Drift Estimation. In Applied Nature-Inspired Computing: Algorithms and Case Studies; Dey, N., Ashour, A., Bhattacharyya, S., Eds.; Springer Tracts in Nature-Inspired Computing; Springer: Singapore, 2020. [Google Scholar]
  57. Sedaaghi, M.H.; Daj, R.; Khosravi, M. Mediated morphological filters. In Proceedings of the IEEE 2001 International Conference on Image Processing, Thessaloniki, Greece, 7–10 October 2001; pp. 692–695. [Google Scholar]
  58. Panniello, U.; Tuzhilin, A.; Gorgoglione, M.; Palmisano, C.; Pedone, A. Experimental comparison of pre- vs. post-filtering approaches in context-aware recommender systems. In Proceedings of the Third ACM Conference on Recommender Systems, New York, NY, USA, 23–25 October 2009; ACM: New York, NY, USA, 2009; pp. 265–268. [Google Scholar]
  59. Qi, L.; Wang, R.; Hu, C.; Li, S.; He, Q.; Xu, X. Time-aware distributed service recommendation with privacy-preservation. Inf. Sci. 2019, 480, 354–364. [Google Scholar] [CrossRef]
  60. Adomavicius, G.; Sankaranarayanan, R.; Sen, S.; Tuzhilin, A. Incorporating contextual information in recommender systems using a multidimensional approach. ACM Trans. Inf. Syst. 2005, 23, 103–145. [Google Scholar] [CrossRef]
  61. Adomavicius, G.; Mobasher, B.; Ricci, F.; Tuzhilin, A. Context-aware recommender systems. Ai Mag. 2011, 32, 67–80. [Google Scholar] [CrossRef]
  62. Baltrunas, L.; Ludwig, B.; Peer, S.; Ricci, F. Context-aware places of interest recommendations for mobile users. In Proceedings of the International Conference on Human-Computer Interaction, Orlando, FL, USA, 9–14 July 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 531–540. [Google Scholar]
  63. Lu, J.; Indeche, M.A. Multi-Context-Aware Location Recommendation Using Tensor Decomposition. IEEE Access 2020, 8, 61327–61339. [Google Scholar] [CrossRef]
  64. Zhao, S.; King, I.; Lyu, M.R. Aggregated temporal tensor factorization model for point-of-interest recommendation. Neural Process. Lett. 2018, 47, 975–992. [Google Scholar] [CrossRef]
  65. Hosseini, S.; Yin, H.; Zhou, X.; Sadiq, S.; Kangavari, M.R.; Cheung, N.M. Leveraging multi-aspect time-related influence in location recommendation. World Wide Web 2019, 22, 1001–1028. [Google Scholar] [CrossRef]
  66. Reddy, S.; Mascia, J. Lifetrak: Music in tune with your life. In Proceedings of the 1st ACM International Workshop on Human-centered Multimedia, Santa Barbara, CA, USA, 23–27 October 2006; pp. 25–34. [Google Scholar]
  67. Baltrunas, L.; Amatriain, X. Towards time-dependant recommendation based on implicit feedback. In Proceedings of the Workshop on Context-Aware Recommender Systems, New York, NY, USA, 25 October 2009. [Google Scholar]
  68. Tkalcic, M.; Kosir, A.; Tasic, J. Affective recommender systems: The role of emotions in recommender systems. Proc. Ceur Workshop 2011, 811, 9–13. [Google Scholar]
  69. Liu, C.L.; Chen, Y.C. Background music recommendation based on latent factors and moods. Knowl.-Based Syst. 2018, 159, 158–170. [Google Scholar] [CrossRef]
  70. Hariri, N.; Mobasher, B.; Burke, R. Context-aware Music Recommendation Based on Latent Topic Sequential Patterns. In Proceedings of the Sixth ACM Conference on Recommender Systems, Dublin, Ireland, 9–13 September 2012; pp. 131–138. [Google Scholar]
  71. Aghdam, M.H.; Hariri, N.; Mobasher, B.; Burke, R. Adapting Recommendations to Contextual Changes Using Hierarchical Hidden Markov Models. In Proceedings of the 9th ACM Conference on Recommender Systems, Vienna, Austria, 16–20 September 2015; pp. 241–244. [Google Scholar]
  72. Wang, D.; Deng, S.; Xu, G. Sequence-based context-aware music recommendation. Inf. Retr. 2018, 21, 230–252. [Google Scholar] [CrossRef]
  73. Yang, D.; Zhang, J.; Wang, S.; Zhang, X. A Time-Aware CNN-Based Personalized Recommender System. Complexity 2019, 2019, 9476981. [Google Scholar] [CrossRef]
  74. Pacula, M. A Matrix Factorization Algorithm for Music Recommendation Using Implicit User Feedback. Available online: http://www.mpacula.com/publications/lastfm.pdf (accessed on 2 July 2020).
  75. Vargas, S.; Castells, P. Rank and relevance in novelty and diversity metrics for recommender systems. In Proceedings of the Fifth ACM Conference on Recommender Systems, Chicago, IL, USA, 23–27 October 2011; pp. 109–116. [Google Scholar]
  76. Bellogin, A.; Castells, P.; Cantador, I. Precision-oriented evaluation of recommender systems: An algorithmic comparison. In Proceedings of the Fifth ACM Conference on Recommender Systems, Chicago, IL, USA, 23–27 October 2011; ACM: New York, NY, USA, 2011; pp. 333–336. [Google Scholar]
  77. Herlocker, J.L.; Konstan, J.A.; Terveen, L.G.; Riedl, J.T. Evaluating collaborative filtering recommender systems. ACM Trans. Inf. Syst. 2004, 22, 5–53. [Google Scholar] [CrossRef]
  78. Jarvelin, K.; Kekalainen, J. Cumulated gain-based evaluation of IR techniques. ACM Trans. Inf. Syst. 2002, 20, 422–446. [Google Scholar] [CrossRef]
  79. Gemulla, R.; Haas, P.J.; Nijkamp, E.; Sismanis, Y. Large-scale matrix factorization with distributed stochastic gradient descent. In Proceedings of the 17th ACM SIGKDD International Conference on Knowledge Discovery and Data mining, San Diego, CA, USA, 21–24 August 2011; ACM: New York, NY, USA, 2011; pp. 69–77. [Google Scholar]
  80. Bell, R.; Koren, Y.; Volinsky, C. Modeling Relationships at Multiple Scales to Improve Accuracy of Large Recommender Systems. In Proceedings of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Jose, CA, USA, 12–15 August 2007; ACM: New York, NY, USA, 2007; pp. 95–104. [Google Scholar]
  81. Pan, R.; Zhou, Y.; Cao, B.; Liu, N.N.; Lukose, R.M.; Scholz, M.; Yang, Q. One-class collaborative filtering. In Proceedings of the 2008 Eighth IEEE ICDM, Pisa, Italy, 15–19 December 2008; pp. 502–511. [Google Scholar]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.