Improved Movie Recommendations Based on a Hybrid Feature Combination Method

Recommender systems help users ¯nd relevant items e±ciently based on their interests and historical interactions with other users. They are bene¯cial to businesses by promoting the sale of products and to user by reducing the search burden. Recommender systems can be developed by employing di®erent approaches, including collaborative ¯ltering (CF), demographic ¯ltering (DF), content-based ¯ltering (CBF) and knowledge-based ¯ltering (KBF). However, large amounts of data can produce recommendations that are limited in accuracy because of diversity and sparsity issues. In this paper, we propose a novel hybrid method that combines user – user CF with the attributes of DF to indicate the nearest users, and compare four classi¯ers against each other. This method has been developed through an investigation of ways to reduce the errors in rating predictions based on users' past interactions, which leads to improved prediction accuracy in all four classi¯cation algorithms. We applied a feature combination method that improves the prediction accuracy and to test our approach, we ran an o®line evaluation using the 1M MovieLens dataset, well-known evaluation metrics and comparisons between methods with the results validating our proposed method.


Introduction
This paper extends our previous conference paper 1 by utilizing four di®erent recommendation methods whereas in the conference two were used. Furthermore, the evaluation section (Sec. 4) has been expanded by using two additional metrics and more experiments which further enhance the understanding of the results. Finally, a discussion section (Sec. 5) has been added which explains the results in more depth.
The amount of available information on the Internet has increased exponentially in the last decade and this has led to the problem of information overload. More speci¯cally, the E-commerce industry is presenting a wider range of options, which makes it more di±cult for users to shop and¯nd products. Hence, to help customers nd new items by means of suggestions, companies need to develop a recommender system. Such systems help their sales to grow by providing relevant options that meet users' requirements. For example, in regard to movie recommendation, the Net°ix Prize raised the importance of the recommender system in attracting more users, and the competition to produce highly developed algorithms led to more accurate results in recommendations. 2 A recommendation system is an information ltering method that is used to predict the items a certain user will like (the prediction problem) or to recommend a set of top items that meet the user's preferences. 3 Users have trouble handling large volumes of information, and problems with cognitive and data sparsity when attempting to¯nd appropriate information at the right time. 4 Based on pro¯le data, a recommender system can be categorized into four main stages: similarity computation, neighborhood selection, prediction and recommendation. The pro¯le can be modeled by content-based¯ltering (CBF), collaborative¯ltering (CF) or demographic¯ltering (DF). If the user pro¯le contains a set of attributes obtained from the item descriptions that the user has liked, this is CBF. DF is represented by a set of features in a user's pro¯le. CF can be described as when the pro¯le contains a list of items that have been rated. The CF technique is widely used as a recommender system-based method due to its capability and e±ciency for predicting similar neighbor users. However, extensive growth in the numbers of users and items may cause a sparsity issue in CF techniques when used on their own. Thus, we have made the following contributions: (1) We have developed a method that employs both ratings and demographic information, by combining demographic attributes with user-item rating CF to solve the problem of data sparsity. (2) This method allows us to e±ciently calculate similarities in a large dataset with no pre-calculation or pre-processing. (3) We have evaluated our method using a real dataset and well-known evaluation metrics and shown that it is both practical and e®ective.
The rest of the paper is organized as follows: Section 2 presents the related works, Sec. 3 delivers the proposed method, Sec. 4 explains the experimental evaluation, Sec. 5 contains the discussion and Sec. 6 contains the conclusions and future work.

Related Works
The idea of recommender systems¯rst appeared in the mid-1990s, relying on the idea that users share similar items or opinions, thereby helping to make recommendations to others. 5 The researchers established a collaborative¯ltering technique based on ratings structure. Hence, the most common formulation is to calculate ratings for items that have not been seen by a particular user. Recommender systems can be de¯ned as adaptable tools that help users search for,¯lter and classify information, and then recommend relevant items. 6 Recommendation systems use a number of di®erent techniques. These methods can be implemented based on the domain requirement and are able to identify and predict items that meet the users' interests. They also utilize di®erent recommendation algorithms to make suggestions and recommendations.

Collaborative¯ltering
Collaborative¯ltering is considered to be the most popular technique for recommender systems. It has been widely implemented in di®erent domains to make recommendations. It is a method of information¯ltering that seeks to predict the rating that a user would give to a particular item based on a similarity matrix. Collaborative¯ltering provided the foundation for the¯rst recommender systems, which were used to help people make choices based on the opinions of other people. 7 It helps users to¯nd relevant items and makes suggestions based on similar users' tastes. It has been applied in a variety of areas, such as in movies, books and research articles. In this approach the similarity calculation is based on the user's peers. Userbased CF: This method looks for similarity between users based on the same rating pattern. 8 It makes a recommendation based on the similarity between the target user and other users. The idea is that, for a given user, the preferences of similar users (neighbors) can serve as recommendations. A user-user approach was proposed as an appropriate method for recommending items based on expert opinions. 9 In addition, another example is provided by Ref. 10, where mobile activities were recommended to users based on their locations. Item-based CF: This method recommends items based on similarities between items shared with similar users. 8 In Ref. 11, an item-toitem collaborative¯ltering approach was designed that matched items rated or purchased by the user with other similar items.

Demographic¯ltering
It is possible to identify the type of person who likes a particular item by referencing their demographic details. 12 User attributes are incorporated into demographic Improved Movie Recommendations Based on a Hybrid Feature Combination Method 3 recommender systems and this demographic data is used as a basis for arriving at suitable recommendations, sometimes relying on pregenerated demographic clusters. 13 This information is gathered either explicitly through user registrations or implicitly via navigation of the system they use. 14 Subsequently, demographically similar users are identi¯ed by means of the recommendation algorithm. Recommendations are based on how similar people (in terms of their demographics) rated a particular item. 15 In Ref. 13, a hybrid algorithm was presented that keeps the core ideas of two existing recommender systems and enhances them with relevant information extracted from demographic data. The authors in Ref. 12 presented an approach that considers user pro¯les as vectors constructed from demographic attributes such as age, gender or postcode to¯nd the relationships with other users and calculate similarities between users, in order to generate the¯nal prediction. Demographic-based¯lters are similar to collaborative¯lters in the sense that both are able to identify similarities between users. In this case, demographic features are used to determine similarity rather than the users' previous ratings of items. 15 Demographic attributes are added as meta-data to help the neighborhood algorithm nd similar users. The author in Ref. 16, presented the importance of these meta-data in producing signi¯cant results and providing better recommendations.
In Ref. 17, the author stated that demographic information helps to address the cold-start problem. This is because this approach does not require a detailed history of user ratings before making recommendations, unlike the content-based and collaborative approaches. 18 The importance of demographic information (age, gender) was studied in a research paper on recommender system. 19 The authors showed that demographic information had a signi¯cant impact on recommendations. The combination of collaborative¯ltering and the demographic base can enrich user preferences and more accurately identify their interests.

Hybrid recommendation approaches
More recently, the hybrid recommendation approach has become a widely debated issue. A possible way to combine the recommendation methods was introduced in Ref. 20. Authors in Ref. 21 also introduced a hybrid approach for solving the problem of¯nding the rating of unrated items in a user-item matrix through a weighted combination of user-based CF and item-based CF. These methods addressed the two major challenges of recommender systems, the accuracy of recommendations and sparsity of data, by simultaneously incorporating the correlation of users and items.
Because of data sparsity,¯nding the nearest neighbors is becoming more of a challenge, with the fast growth in users and items. In Ref. 22, a switching hybrid approach was proposed to solve the long tail problem in recommendations. A hybrid approach was applied that utilized clustering and genetic algorithms to reduce data sparsity in movie recommendations. The results showed that this approach improves recommendation accuracy. 23 In Ref. 24, a hybrid framework was proposed that utilized collaborative¯ltering relying on user/item meta-data and demographic data. The framework bene¯ts from the similarity between users via correlation in terms of demographic attributes. This improves prediction and is able to solve the cold-start problem compared with the baseline. The authors point out the importance of item meta-data in overcoming the challenge in which user and item have little information. In Ref. 13, the discussion explored the usefulness of demographic data as an enhancing factor, by employing a hybrid algorithm to improve collabo-rative¯ltering in terms of both algorithms, user-based and item-based. In Ref. 25, a combination algorithm was proposed using demographic attributes based on a clustering approach in a weighted scheme. It solved the cold-start problem by assigning a new user to the nearest cluster based on demographic similarity. In contrast to the aforementioned methods, our proposed method is bene¯cial for exploring the e®ect of demographic data.

Proposed Method
In this section, the proposed method is de¯ned that combines CF and DF. The main idea of the method, which is not found in other works in the literature, is to have a hybrid recommendation approach that can be easily used for the evaluation of different classi¯ers in order to identify which classi¯er performs better when demographic data are integrated into the recommendation process.
The sparsity issue is a major challenge for recommender systems in terms of producing the right recommendations for the right users. This issue has been further expanded due to the growth of items available and of users with few ratings and little user information. This leads to di±culty in¯nding similarity between two users. In this section, we propose how a feature combination hybrid approach solves the sparsity problem and reduces the error rate through using two classi¯ers. It combines matching user demographic attributes with the user rating CF method as shown in Fig. 1.
In order to evaluate the proposed method we conducted an experiment on a real dataset that is publicly available from MovieLens. 26 In this paper we used the 1M dataset which contains 1,000,209 ratings that were assigned by 6,040 users on around 3,900 movies. We utilized demographic information that includes age, gender and occupation. We combined the demographic information for each user with the user-item ratings. Hence, each user was de¯ned as a vector with those features. The attributes used in this¯ltering system are age, gender and occupation. Those attributes are de¯ned as categorical, and represent each user in a group. They can help in¯nding similar users, in order to improve the rating prediction accuracy. The pro¯le vector is represented at the attribute level to compute the similarity.
Then, we calculated the similarity between the active user and the nearest one. Next is the¯nal step of calculating the predicted rating. We ran this experiment using Orange 3.7.0, which is a data mining and machine learning tool. We conducted a cross-validation with number of folds of 10. In summary, the steps of the proposed method are: (1) CF is combined with demographic attributes such as age, gender and occupation to¯nd more similar users. The combination was made through matching the user ID from user-item ratings data with user demographics data as detailed in

Experimental Evaluation
Evaluation metrics play an important role in measuring the quality and the performance of a recommender system. Since 1994, 5 the accuracy of the recommender system has been evaluated in the literature in di®erent ways. Furthermore, as there is no standard for evaluation, it is hard to compare the results with other published articles. However, there are main evaluation metrics that are widely applied to benchmark the results and compare them with the proposed algorithms. Most of the empirical studies examining recommender systems have focused on appraising the accuracy of these systems. 27 This insight is useful for evaluating the quality of the system and its ability to forecast the rating for a particular item.

Predictive accuracy metrics
This measures the similarity between true user ratings and the predicted ratings. This research applies accuracy metrics to measure the performance of the proposed methods. Both the mean absolute error (MAE) in Eq. (1) and the root-mean-squared error (RMSE) in Eq. (2) are used to evaluate the prediction accuracy of the di®erent recommendation techniques, where p i is the predicted rating and r i is the actual rating. Prediction accuracy is enhanced when MAE and RMSE are lower. Here we detail those similarity measures

Mean absolute error
It takes the mean of absolute di®erence between the predicted rating and the actual rating for all the ratings as de¯ned in Eq. (1). In MAE, p i is the absolute value of the predicted rating, and r i is the absolute value of the actual rating. It should be considered that lower values provide better results:

Root-mean-squared error
It represents the sample standard deviation of the di®erences between predicted values and the actual values and is de¯ned in Eq. (2). In RMSE, p i is the predicted rating and r i is the actual rating. It should be considered that lower values provide better results:

Improvement rate
Additionally, we have used the improvement rates (IRs) based on MAE and RMSE, respectively. Equation (3) de¯nes the improvement rate for MAE and Eq. (4) de¯nes the improvement rate for RMSE. The values derived from the use of these two equations show the improvement in terms of percentages:

Classi¯cation algorithms
In order to¯nd out which classi¯er is the most appropriate one to use for this dataset and to make a good prediction for the movie domain, we ran an experiment on those Improved Movie Recommendations Based on a Hybrid Feature Combination Method 7 two that are widely applied in movie recommendation for evaluating the results. Next, we describe in detail each classi¯er.

k-Nearest neighbor
The k-nearest neighbor (kNN) is a classi¯er that¯nds the k-nearest neighbors. The given user is assigned a number based on similar users who share the most common features of its k nearest neighbor users. Certain factors need to be considered, such as the similarity measurement, which calculates the distance between two vectors p i and r i for i ¼ 1; 2; . . . ; k representing the neighborhood, which needs to be positive number. For the purpose of experiments, we have used Euclidean distance which is de¯ned in Eq. (5). In this equation, p and q are two points (users) and the Euclidean distance between them is to be measured based on the sum of the predicted, p, and actual, r, ratings:

Random forest
This is an ensemble learning classi¯er that builds a set of decision trees. Each tree is developed from a bootstrap sample from training data. It is more robust with respect to noise. This method has been successfully approved as an accurate machine learning classi¯er. [28][29][30] We set the numbers of trees to be 10, 20, 50 and 100, which are the most likely changes in this range.

Neural network
This is a feed-forward neural network (NN). This method has been successfully approved as an accurate machine learning classi¯er and for the experiments 100 layers have been used.

AdaBoost
This is another well-known classi¯er that can be used in machine learning applications. It is a well-known boosting classi¯er that improves the accuracy through adapting multiple weak classi¯ers into a more satis¯ed classi¯er with better accuracy. 31 For the experiments, a learning rate of 1 has been used with 10 estimators.

Results
In Fig. 2, it is shown that the MAE accuracy metrics are made through applying di®erent kNN classi¯ers with k ¼ 3, 10, 30, 50 and 100. We then performed the experiment with the random forest classi¯er using a di®erent set of trees and the results are shown in Fig. 3. It is clear that performance is improved when we combined the demographic attributes (CF þ DF). However, it is noticeable that the improvement in random forest is much higher than in kNN. For example, in Fig. 3, when T = 10 the improvement is 5%. Whereas in Fig. 2, when k ¼ 3 the improvement is only 1%. Additionally, Fig. 4 shows the results for the neural network and AdaBoost classi¯ers. It is shown that a small improvement exists for the neural network but a signi¯cant improvement exists for the AdaBoost method. Figures 5-7 show the results based on the RMSE metrics. It can be seen that there is an improvement in the random forest classi¯er compared to kNN in the all cases and improvement for the neural network and AdaBoost classi¯ers as well. Figures 8 and 9 show the improvement rates based on the results obtained from the MAE and RMSE experiments. It is shown that in both MAE and RMSE cases AdaBoost is the most improved method, followed by random forest, neural network and kNN.
Overall, we ran the experiment with four di®erent classi¯ers. The experiment demonstrates that demographic attributes have a signi¯cant impact on predictive accuracy results. Additionally, we also compare the results between kNN, random      The results also indicate that the AdaBoost classi¯er outperforms all the others which raise high attention to be utilized in the real applications or software using recommendation techniques. More precisely, demographic¯ltering with the userbased collaborative¯ltering. This method will be more applicable in a domain where user characteristics play an important role such as Facebook.

Discussion
Recommender systems are decision-support systems found on the Web to solve the information overload problem. Users rely on recommender systems to receive good recommendations in Web environments, thus resulting in a reduced search burden for them, and businesses rely on the possibility of better user experience and improved sales by utilizing recommendation technologies.
In this paper, we proposed a method that can complement a business in its recommendation algorithm selection process. This particular method can be applied in domains where demographic information about the user is available such as movie recommendation domains. Collaborative¯ltering is combined with demographic information using a simple series of steps, thus resulting in improved recommendations for all evaluated classi¯ers. Such a method is particularly useful for business in scenarios where a new method might be time-consuming or costly to develop and an existing approach needs to be used.
By using the proposed method within a recommendation library and changing only the name of the recommendation algorithm and evaluating each, it can be easily identi¯ed which one performs better for the given settings. For example, when the kNN algorithm is applied there is a small but noticeable increase in terms of improvement, neural network is second with a higher improvement rate, random forest is the third with an even higher improvement rate from neural network and Ada-Boost is the one with the highest improvement rate. Thus, by noticing the MAE and RMSE improvement rates in Figs. 8 and 9, respectively, it can be easily identi¯ed that the preferred choice for a business would be AdaBoost.

Conclusions and Future Work
In this paper, we proposed a novel hybrid method for recommender systems based on a simultaneous combination of user-based collaborative¯ltering and demographic attributes. The results suggest that demographic¯ltering can e®ectively improve the overall recommendation. Moreover, the proposed method addresses two common challenges of recommendation systems, namely sparsity of data and improved accuracy of recommender systems, by combining the hidden relations between users and comparing two di®erent classi¯ers with a large dataset. The proposed method is a comparison between the kNN, the random forest, the neural network and