1 Introduction

A recommendation is a task in which user interests are identified and items of high relevance are recommended based on user preferences. There has been growing interest in recommender systems as a way to deal with information overload. Information overload is a situation in which a user cannot make a decision or search through all items in a system because the amount of data in the system is too large. The recommendation service in the sharing economy is helping users mitigate this situation by providing relevant items which utilizes an item’s content information and user ratings. By analyzing the user’s rating patterns and preferences, the recommender system searches for similar users, and recommends items rated highly by similar users.

Many researchers have recently investigated recommender systems and achieved significant results. Collaborative filtering is one of the most successful algorithms which provide recommendation service using ratings of users on items approaches such as Matrix Factorization. The Matrix Factorization based on collaborative filtering has a proved to be a highly accurate and scalable approach to recommender system [19] [25]. There are two approaches such as user-based and item-based collaborative filtering [18]. Additionally a unifying method for user-based and item-based collaborative filtering was proposed to improve the recommendation accuracy [5] [22]. However, all of the approaches focus on recommending take only one type, like items-based or users-based, and do not take into consideration additional contextual information, such as location, time, the rating of other people, and other factors affecting recommendation experiences.

Recent research works have focused on model-based techniques that integrate contextualization directly into the rating prediction models, which in the core component of a recommendation system [2, 11, 21, 23]. Applying contextual information, the recommendation system can generate predictions on the base of a collection of ratings. It may have influenced the user experience of the rated items that are specified by the contextual information. Recommendation system based on contextual information rating prediction relies on the information of how who rated what in which context.

In this paper, we propose a Multidimensional Trust model that offers a top-k of recommendation item for a particular user by giving consideration to both user-based and item-based filtering. The recommender system for Multidimensional Trust model is designed to learn the interest and need of each individual user by rating contextual information using matrix multidimensional cube. To provide the better prediction result for user, the Multidimensional Trust model consists of both the Tensor Factorization (a generalization of Matrix Factorization with contextual information) and Skyline (SFS: Soft-Filter-Skyline) algorithm. The Skyline constructs a query rated information as an index for prediction algorithm to extract top-k recommendations. The tensor factorization incorporates the contextual information into the recommendation model [23]. Through analyzing contextual information of users, the recommender system searches for similar items and suggests those relevant items to the user. That allows for a flexible and generic integration of contextual information by modeling the data as a User-Item-Context N-dimensional tensor instead of the classical two-dimensional (2D) User × Items matrix. A tensor is the generalization of a two-dimensional matrix for a larger number of dimensions. In a tensor, the usual user-item of two-dimensional matrix is converted into a multi-dimensional tensor. Tensor Factorization can be used in a right way to model any set of features that depend on the rating. So far, the best performing method for context-aware rating prediction in terms of predictive accuracy is Multiverse Recommendation based on the Tucker tensor factorization model [15]. However this method has a drawback as follows: its model complexity is exponential in the number of context variables and polynomial in the size of the factorization.

In this work we focus on the use of tensor factorization for adding and rating contextual information.

The remainder of this paper is organized as follows. The section 2 reviews the recent recommendation techniques and their limitations. Section 3 introduces the multidimensional trust model which measures the credibility of user-item rating matrix from the reliability of item recommendation. Section 4 and section 5 provides research methodology approach that incorporates multidimensional into collaborative filtering recommendation and prediction algorithm. Finally, in Section 6, we summarize our proposal and present directions for future work.

2 Related work

2.1 Recommendation system

The recommendation system is an active service technique, in which servers collect and analyze user information to learn about their behaviors and interests to build a model, provide services that meet their personal needs based on the personalized interest model. In recommender systems, the utility of an item is usually represented by a rating, which measures how much a specific user is interested in the item. Identifying those users who have similar taste to the active user in the past is crucial for successful application of collaborative filtering. The recommender systems based on collaboration filtering are particularly popular and used by large online sharing item. Collaboration filtering techniques are used for producing personalized recommendations by computing the similarity between the current user and other users with similar choices.

Since collaborative-filtering methods only require the information about user interactions and do not rely on the content information of items or user profiles, they have more broad applications [6, 8, 10], and more and more research studies on collaborative filtering have been reported [7, 16, 17]. These methods filter or evaluate items through the opinions of other users [20] [14]. They are usually based on the assumption that the given user will prefer the items which other users with similar preferences liked in the past [1, 13, 24]. The collaboration filtering algorithms can be divided into two categories: memory-based algorithms and model based algorithms.

2.1.1 Memory-based collaboration filtering

The memory-based collaboration filtering exploits the entire item-user database. A set of similar users are identified for the current user, and rating predictions are generated based on ratings in the neighborhood of the current user [9]. Memory-based collaboration filtering is easy to implement and new data addition is easy to add incrementally. In the memory-based category, the most popular non-probabilistic approach is the K-Nearest Neighbor algorithm (K-NN). Memory-based approaches can be further classified into user-based and item-based. In the user-based approach, the recommendation algorithm searches for users similar to the user that requires a recommendation (called the active user) in terms of ratings for the previously seen items. Then, the rating for the unknown item is predicted based on what ratings were assigned to this item by other, similar users. The item-based collaboration filtering proposed by [5] is as an alternative style of collaboration filtering where the item–item similarity is utilized to make the prediction. It avoids the scalability bottleneck associated with the traditional user-based algorithm. The bottleneck arises from the search for neighbors in a population of users that is continuously growing.

2.1.2 Model-based filtering

In contrast to the heuristics that are based mostly on information retrieval methods, model-based approaches use mathematical models to reduce the dimensionality of the data [22]. In addition, model-based methods adopt an eager learning strategy such as Higher-Order Singular Value Decomposition (HOSVD) [19], matrix factorization [18], the graph-based approaches [6] and Kernel-mapping recommender for predicting or recommending content, where a model of the data, i.e. the users, items and their ratings for those items, is pre-computed. The common procedure of memory-based approaches is first to select a set of neighbor users for a given user based on the entire collection of previously rated items by the users. Then, the recommendations are made based on the items that neighbor users like. Indeed, these methods are referred to as user-oriented memory-based approaches. In addition, an analogous procedure, which builds item similarity groups using user’s history, is known as item-oriented memory-based collaborative filtering [18].

However, existing collaborative-filtering methods often directly exploit the information about the users’ interaction with the systems. In other words, they make recommendations by learning a “user–item” dualistic relationship. Therefore, existing methods often neglect an important fact that there are many latent user interests which influence user behaviors. To that end, in this paper, we propose a three-layer, user–interests–item, representation scheme. Specifically, we interpret an interest as a requirement from the user to items, while for the corresponding item, the interest can be considered as one of its characteristics. Indeed, it is necessary to leverage this three-layer representation for enhancing collaborative filtering, since this representation leads to better explanation of why recommended items are chosen and helps the understanding of the interactions among users, items, and user interests.

2.2 Multidimensional recommendation

Tensor Factorization is an existing N-dimensional extension of Matrix Factorization. In the current section we introduce the model of Matrix and Tensor Factorization and explain the details of how we have adapted this model for multidimensional filtering. The main idea behind the use of Tensor Factorization is that we can take advantage of the same principles behind Matrix Factorization to deal with multidimensional information. However, before we dive into the details of the Tensor Factorization model, we shall briefly summarize the two-dimensional Matrix Factorization approach.

Collaboration filtering techniques based on matrix-factorization by assuming that rating provided by users on items can be represented in a sparse matrix Y ∈ Y n × m, where n is the number of users and m the number of item. The observed values in Y are thus formed by the rating information provided by the users on the items User × Item.

The Tensor Factorization, which generalizes Matrix Factorization that supports a flexible and generic integration of contextual information. It models the data as a Y ∈ Y n × m × c : User × Item × Context 1 × … × Context k N-dimensional tensor instead of the traditional 2D user-item matrix. N-dimensional tensor factorization is a generic model framework for recommendations that is able to handle N-dimensional rating data, i.e. each rating can be associated with n features such as contextual dimensions, user and item. The tensor factorization provides more information about user’s preferences than a single-rating system. It can be configured to push new items to users in two ways, either by producing a Top-N list of recommendations for a given target, or by predicting the target user’s likely utility (or rating) for a particular unseen item. This paper is referring to these as the recommendation task and the rating prediction task in tensor factorization collaboration filtering.

3 Multidimensional model

The Multidimensional Trust model (MT for next) collects various types of information about user action, product, and item through the interactions between users and products to generate a behavior list of items that fit user’s current needs. The MT model takes awareness for a flexible and generic integration of the contextual information. According to the different types of context, the MT model builds an additional dimension in the representation of the data as a tensor. Next, the MT generates the rating information through the collecting user’s behavior based on identification of users’ historical activity and viewing patterns. As shown in “Fig. 1”, the processing of MT consists of three components: Context-Awareness, Rating and Prediction. The prediction component transfers the recommendation information to user for useful service on the user-device.

Fig. 1
figure 1

Multidimensional trust model

The “Fig. 1” shows the overall process of the MT model process. The sensing information from the user includes the information about the user preference and the user’s action, received by context-awareness. The context-awareness module is monitored the user request and action type to indicate currently user behavior [20]. The result of the monitored contexts is stored in a multidimensional cube (see “Fig. 2”). The context-awareness contains the detail information about user’s preference including user’s action, interest item (product), location and user’s devices.

Fig. 2
figure 2

Generating the context

The user preference in user situation specifies user actions and required services. A user action indicates preference on user’s request about sharing item (services). The required service should help users acquire knowledge in the area of interest, share experience, and collaborate each other in service. Each user’s personal information such as personal context is secured by some security setting such as user’s schedule and location. The user’s device aware includes each terminal’s GPS, MAC address, capability, software interface status, and types of software applications. Able to provide current location and time (a smart phone equipped with clock and GPS reader, IP address and AP (Access Point). The terminal capability describes the process speed, memory, screen size, resolution, and interface types. The terminal application type describes software applications installed in the terminal. The application type is based on quality of service (QoS) parameters, such as response time, delay, jitters and bandwidth. It can be categorized into four types, namely (i) conversational service, such as VoIP; (ii) real-time (RT) service such as Internet Protocol Television (IPTV) and mobile TV; (iii) non-real-time (NRT) services such as email or ftp; (iv) interactive services such as web browsing. The context model has user situation such as user’s request and the device they are using. Using this information, the behavior sharing economy can provide user-aware smart recommendation service.

The Rating concept is functioning as an information filter that extracts only the intended information from sensing data and storage in the user-behavior context DB. For better recommendations based on various settings it is crucial to extend “standard” approach of two-dimensional matrix of user-item relations. This framework proposes to extend a two-dimensional matrix with the multi-dimensional of context relation and this result into a tensor. This means the multi-dimensional provides more information about user’s preferences than a single-rating system.

The prediction recommendation is the process of rating user needs service for extract information to obtain a correct set of values of the requested service. The recommendation system is needs to employ efficient prediction algorithms to provide an accurate recommendation sharing item to users. If a prediction is defined as a value that expresses the predicted likelihood that a user will ‘like’ an item, then a recommendation is defined as the list of n items with respect to the trust-n predictions from the set of items available. Improved prediction algorithms indicate better recommendations.

4 Multidimensional rating

To extract a user’s topics of interest item, this paper suggests a multidimensional rating method. The multidimensional rating method for both user and items makes the decision for the prediction of recommendation. Interestingly, the rating makes available/supplies the required data or information about the quality and the requisite preference in respect of a user that provides the rating of the item. The multidimensional rating uses primarily the single-valued ratings. This means that, for each user, there is a single rating indicating barely how much the user liked the item.

The traditional rating method for recommendation considers only two-dimension represented as

$$ R: User \times Item\ \to Rating $$

It means that the rating is determined by user and item. The r(u, i) values of two-dimensional “U × I” matrix is the inferring purpose of the recommendation and uses the dimensions user and items as its foundation. Based on Tensor Factorization, the rating function R has got the form

$$ R: User \times Item \times Contex{t}_i \dots \times Contex{t}_n\to Rating $$

A Tensor Factorization is the generalization of two-dimensional matrix to a large number of dimensions. In a tensor, the usual user-item two-dimensional matrix is converted into a multi-dimensional tensor. This means that, the multi-dimensional rating provides more information about user’s preferences than a single-rating system. The rating process is defined with the tensor function as:

$$ R:\ {U}_a\times {U}_i\times T\times L\times D\to Rating, $$
(1)

where U a is user action, U i is user interest, L is location, T is time, D is device are the information of user situation and user environment sensing respectively, Rating is the information of rating. The U a dimension is defined as UserU actionU requestLearning object\title and consist of set of user situation. Similarly, the U i dimensions are defined as UserU interestU needsU expertise\experience. The L is defined as LocationHomeStreetCompany. The T is defined as TimeMonthDayMorningLunchAfternoonEvening. Finally, the D dimension can be defined as DeviceTerminal MAC IDApplication type.

For instance, continuing U a  × U i  × T × L × D example considered above, we can define a rating function R on the filtered process U a  × U i  × T × L × D specifying what a user’s request U a  ∈ User action and how much user interested item U i  ∈ User interest at the time TTime in user’s location LLocation and used application type of device DDevice, R(U a , U i T, L, D). Visually, ratings R on the filtered process is can be stored in a multidimensional cube, such as the one shown in “Fig. 3”.

Fig. 3
figure 3

Rating for the A x I x T x L x D in filtering process

The cube in “Fig. 3” is stored rating R(A,T,L) for the filtered process A × L × T, where the three tables define the sets of action, times and location associated with Action, Time, Location dimensions respectively. For example, the rating R(303,2,1) = 7 in Fig. 3 is means that for the action with Action ID 303 and the Time ID 2, rating 7 was specified during when user stay in the home. In other words, the user every morning is using application (ID YIY03) at the home. So that filtered data is basis for creating scenarios for providing smart service.

5 Prediction algorithm

For the recommendation service to suggest a new item, multidimensional trust model predicts the utility of a certain item for a particular user based on the user’s interest item and the opinions of other like-minded users. The prediction algorithm takes the data of ratings and of content associated with users and items. The decision rule in prediction algorithm takes the sum of the active user’s average rating, regarding the whole set of items that the active user has rated, and an adjustment. The adjustment is a weighted sum of the other users’ ratings concerning the active item and their similarity with the active user.

A top-k query processing can be applied to facilitate the predicting algorithm. The baseline of top-k query processing in the prediction algorithm uses both user-based collaborative filtering and item-based filtering. The user-based collaborative filtering calculates linear combination of other user's ratings to predict target rating. Similarly, the item-based collaborative filtering calculates linear combination of other item’s rating to predict target rating. Therefore, the linear combination between rating prediction based on user-based and item-based collaborative filtering is key point of rating prediction.

The prediction algorithm has a new notion that represents a relative value ‘Trust-k’ to unifying both user-based and item-based collaborative filtering by Skyline (the details of the algorithm, called SFS (Soft-Filter-Skyline) in [3] [4]). The Skyline is representative methods for answering the Trust-\( k \) queries by constructing skyline as an index. The prediction of the unifying method using Skyline is computed by weighted sum of rating predictions from both user-based and item-based collaborative filtering as follows:

Considered the prediction algorithm shown in the Table 1, the “Fig. 4” indicates the predication progress based on Trust-k sharing item. The ‘active user’ stands for neighbors with user, the ‘item’ is an active item sorted by item R(rating) similarity. Each point shows the scores from 0 to 50, with 50 as the best. Ideally, the prediction would like the choice to be the best-neighbors for user and like(interest)-item and be the highest scores

Table 1 Trust-k sharing item

.

Fig. 4
figure 4

Prediction trust-k sharing item

6 Experiments

In order to analyze the effectiveness of the proposed method, several experiments on public dataset MovieLens (http://grouplens.org/datasets/movielens/) were conducted that has been provided by the GroupLens Research Project at the University of Minnesot. This dataset provides 100,000 rating for 1,682 movies from 943 users. Users rating of movies were recorded on a discrete scale from 1 to 5, and each user rated over 100 movies.

The Multidimensional Trust model could rate movies in 5 dimensions (Action, Interest, Location, Time and Device) and also assign an overall rating. As shown in Table 2, all users’ ratings are measured in a value between 1 and 5 in the quantitative scale. The description of dataset presents in Table 3.

Table 2 A sample of the multidimensional rating of movie lens dataset
Table 3 Information of movie lens dataset

As shown in Table 2, we pre-processed the datasets. Also as shown in Table 3, we created the test datasets with different density and quality levels. The datasets are applied the proposed methods on UR-TOP-20 (each movie has at least 20 ratings), UR-TOP-10 (each movie has at least 10 ratings), UR-TOP-5 (each movie has at least 5 ratings).

We use the above evaluation metric to evaluate the performance of our proposed algorithm and compare with other two (user-based CF and item-based CF) recommendation algorithms. The number of rated items provide to the target user according to the Top-rating. And we analyze how precision evolves with different numbers of dimensional. The “Fig. 5” shows the obtained testing results. Likewise, we have selected representatively 5, 10, 15, 20, 25, 30, 35, 40, 45 and 50 values to represent different density degrees for the rating matrix. As shown in “Fig. 5”, the diversity of our algorithm is significantly better than the other two algorithms for different top-rating scales.

Fig. 5
figure 5

Diversity of recommendations rating

After rating analysis, the MT model applies on the prediction algorithm to generate “Trust-k”. In this study, we developed the prediction algorithm for “Trust-k” using Skyline algorithm. The computation of top-k skyline objects is very useful in many other applications where ranking uncertain objects in a multi-dimensional space is involved. We evaluate the efficiency of skyline for computing “trust-k” item on contextual rating data. Our experiment results (shown in “Fig. 4”) demonstrate the efficiency of skyline algorithms and also show that the randomized algorithm is highly accurate in practice.

7 Conclusion

In this paper, we proposed a Multidimensional Trust (MT) model based on tensor factorization and proposed a predictive algorithm using Skyline algorithm. The matrix factorization is one of the most favored approaches to collaborative filtering but the model is not flexible enough to add contextual dimensions in a good manner. For solving the limitation, we presented an extension of the model to N-dimensions through the use of tensors. The result data of rating holds the N-dimensional relationship between user’s contextual information, users and items. We have adapted the generic tensor factorization approach to the collaborative filtering case by adding regularization. We have shown how this can be used to embed multiple contextual dimensions into a Multidimensional Trust model. The Multidimensional Trust model can provide better recommendations in these situations by taking into the consideration additional contextual information.

In future research, we have a plan to study the detail conditions and concrete service domain information, method and analysis.