REF:

原文

Recommender Systems: Issues, Challenges, and Research Opportunities

Shah Khusro, Zafar Ali and Irfan Ullah

Abstract A recommender system is an Information Retrieval technology that improves access and proactively recommends relevant items to users by consider-ing the users’ explicitly mentioned preferences and objective behaviors. A recommender system is one of the major techniques that handle information overload problem of Information Retrieval by suggesting users with appropriate and relevant items. Today, several recommender systems have been developed for different domains however, these are not precise enough to fulfil the information needs of users. Therefore, it is necessary to build high quality recommender systems. In designing such recommenders, designers face several issues and challenges that need proper attention. This paper investigates and reports the current trends, issues, challenges, and research opportunities in developing high-quality recommender systems. If properly followed, these issues and challenges will introduce new research avenues and the goal towards fine-tuned and high-quality recommender systems can be achieved.

Keywords Recommender system • Issues • Challenges • Content-based filtering • Collaborative filtering • Hybrid filtering

1 Introduction

The World Wide Web or simply the Web has brought numerous changes in the way we live and communicate with others. Today, we rely on the Web and its related technologies like web search engines that search and retrieve relevant information on almost any aspect of life. However, this change comes with the cost of information and cognitive overload on the user who is searching for relevant and reliable information on the Web. To cope with these issues, among other solutions, a recommender system works as a helper in finding relevant and related items by making relevant suggestions to the users. These systems navigate the Web to come up with relevant suggestions for users based either on their explicitly mention ed preferences or objective behaviors [1]. Recommender systems are used in various domains including products, videos, images, articles, news, and books. In spite of numerous research and development advances, interest in this area is still broader because of the growing user demands. It is therefore necessary to build high-quality recommender systems for providing fine-tuned recommendations to users in a wide range of daily-life applications. In this regard, researchers and industry practitioners need to come forward and work on some of the prominent issues and challenges in the area of recommender systems, which are being presented in this research paper. Therefore, the objectives of the paper can be summarized as: a) to present the general concepts and techniques associated with different types of recommender systems so that novice researchers can get an idea of how a recommender system approaches relevant item s in relation to the item being currently presented. b) To identify and present some of the prominent issues and challenges in the design and development of a fine-tuned recommender system. c) To present solutions, techniques, and research guid elines that might help in coping with some of these issues and in designing a fine-tuned recommender system.

Rest of the paper is organized as Section 2 presents general concepts and techniques related to recomm ender systems, Section 3 presents issues and challenges that recommender systems face, Section 4 presents some solutions and techniques to cope with these issues, and finally, Section 5 concludes our discussion.

2 General Concepts and Techniques

Recommender system recommends and suggest items to user by considering their objective behaviors and preferences [1]. A general model of a typical recommendation process is shown in Figure 1 highlighting the vital role of users and items in recommendation process.

Fig. 1 General Model of Recommender Process

Formally we can define recommender system with S as the collection of all those items that may be recommended to users, U as the collection of all users for which the system makes recommendations, and F as the utility function that can be used to measure the usefulness of a particular item s ∈ S, to specific user u ∈ U. Mathematically it can be shown as F : U × S → R, where R shows the total recommended set. For every user u ∈ U, the system recommends such an item s’ ∈ S that it maximizes F for the user, which is generally denoted by rating provided by user. Usually item ratings are represented on a rating scale e.g., 1-5, in which the greater number say 5 represents that the user likes the item very much. For each user, a user profile is developed and updated containing information like his personal information, items visited, rated, purchased and downloaded. Similarly, each item has its own features and properties which are implicitly or explicitly updated as the users interact with the system. It is not possible that user provides ratings for all items in the catalogue, and therefore, some items are not rated at all. Therefore, a recommender system must use appropriate filtering methods so that such items are eventually rated either implicitly or explicitly and consequently recommended [2]. These filtering methods can be broadly divided into three categories, discussed in the coming sections:

2.1 Content-Based Filtering

A content-based recommender system suggests those items that are similar in fea-tures to items user has already liked in past [3]. A typical CB recommender first creates user profile using user feedback and ratings about items. The user profile is then compared with item features and the matched items are recommended. An example is LIBRA [4] that recommends books using book descriptions extracted from Amazon.com webpages. It learns user profile and recommends books using user ratings as well as features extracted from these webpages.

In CB approach, different profile-item matching techniques are used to match features of new items with user profile and to decide whether a particular item is interesting to user or not. User profile are either implicitly or explicitly updated, whereas utilities are assigned to items on the basis of utilities previously assigned to observed items [2]. Item profile is represented by the features and descriptions of these items using either Boolean values or integer values representing term frequency (TF), or term frequency-inverse document frequency (TF-IDF) [2]. Items are automatically classified into relevant and non-relevant by comparing item representations with representations of user interest and preferences using keyword matching, finding nearest neighbour approach, cosine similarity and typical classification.

2.2 Collaborative Filtering

Collaborative filtering recommends items by matching users with other users having similar interests [2]. It collects user feedback in the form of ratings provided by user for specific item and finds match in rating behaviours among users in order to find group of users having similar preferences. Here, a user profile represents user preferences that the user has either explicitly or implicitly provided. An example is Amazon [5] uses CF approach, which suggests items based on the purchase patterns of its users as well as user ratings.

In a typical CF environment, there is a list of m users and n items represented by { u1, u2, u3 … . un} and { i1, i2, i3 … . in} respectively. Each user has a list of items that are rated either explicitly or implicitly. This way a user-item rating matrix ‘R” is generated, where user preferences about items are represented. For finding missing ratings, different techniques are used including finding “nearest neighbor” for new users in recommending items to them by considering ratings provided by their nearest-neighbors.

2.3 Hybrid Filtering

In hybrid approach, two or more filtering methods are combined to gain better performance over CB and CF approaches when they are applied separately. Several researchers combined CB and CF techniques for gaining better results and mitigating various shortcomings faced by these approaches. Burke [6] has categorized hybridization methods into seven different types including: (1) weighted, (2) switching, (3) mixed approach, (4) feature combination, (5) cascade, (6) feature , and (7) meta-level hybridization approach. According to Burke, combining different filtering methods results in peak performance and alleviates problems faced by different filtering techniques when used separately.

3 Issues and Challenges

This section investigates issues and challenges in recommender systems and presents different solutions provided by researchers to handle these issues.

3.1 Cold Start Problem

This problem occurs when new users enter the system or new items are added to the catalogue. In such cases, neither the taste of the new users can be predicted nor can the new items be rated or purchased by the users leading to less accurate recommendations. The cold-start problem can be solved in many ways including: a) asking the user at the beginning to rate some items b) asking the users explicitly to state their taste in aggregate; d) and suggesting items to the user based on the collected demographic information [7]. User demographic information can be used to know about the location, zip-code along with interactions of the new user with the system in order to recommend items on the basis of ratings provided by other similar users having similar demographic information. In some domains, there may “sleepers” which are items that are good but are left unrated. Sleepers can be handled using metadata or content-based methods [7], using item popularity, item entropy, and user personalization [3] as well as using Linked Open Data (LOD) by extracting data about items using LOD data sources without waiting for users to explicitly provide ratings [8].

3.2 Synonymy

Synonymy arises when an item is represented with two or more different names or entries having similar meanings [9]. In such cases, the recommender cannot identify whether the terms represent different items or the same item. For example, a memory-based CF approach will treat “comedy movie” and “comedy film” differently. The variation in using descriptive terms is greater than commonly thought and the excessive usage of synonym words decreases the performance of CF recommenders. Since item contents are thoroughly ignored, therefore, the recommender does not consider the latent association between items. This is the reason why new items are not recommended as long as these are rated by the users. To alleviate the problems of synonymy, different techniques including ontologies [10], the Single Value Decomposition (SVD) techniques [11], and Latent Seman-tic Indexing (LSI) could be used.

3.3 Shilling Attacks

What happens if a malicious user or competitor enters into a system and starts giving false ratings on some items either to increase the item popularity or to decrease its popularity [12]. Such attacks can break the trust on the recommender system as well as decrease the performance and quality of recommenders. This threat is of more concern in CF techniques but lesser threat to the item-based CF technique. There are different attack models like bandwagon, random, average, and reverse bandwagon attack. Attacks can be detected through different approaches like generic and model specific attributes, prediction shift, and hit ratio. These types of attacks can be categorized by dimensions like intent of attacking, size of attack, and the required knowledge to start the attack [13]. Other detection methods and metrics for shilling attacks can be found in [14].

3.4 Privacy

Feeding personal information to the recommender systems results in better recommendation services but may lead to issues of data privacy and security. Users are reluctant to feed data into recommender systems that suffer from data privacy issues. Therefore, a recommender system, whether CB or CF, should build trust among their users, however CF recommenders are more prone to such priva-cy issues [9]. In CF technique, user data including ratings are stored in a centralized repository which can be compromised resulting in data misuse. For this purpose, cryptographic mechanisms can be used by providing personalized recommendations without involving third parties and peer users. Other techniques include using randomized perturbation techniques [15], allowing users to publish their private data without exposing their identities, and using Semantic Web tech-nologies especially ontologies in combination with NLP techniques to mitigate the unwanted exposure of information [16].

3.5 Limited Content Analysis and Overspecialization

Content-based recommenders rely on content about items and users to be processed by information retrieval techniques. The limited availability of content leads to problems including overspecialization [3]. Here, items are represented by their subjective attributes, where selecting an item is based mostly on their subjective attributes. Features that represent user preferences in a better way, are not taken into account. For many domains, content is either scarce such as books or it is challenging to obtain and represent the content such as movies. In such cases relevant items cannot be recommended unless the analyzed content contains enough information to be used in distinguishing items liked/disliked by the user[17]. This also leads to representation of two different items with same set of features, where, e.g., well-written research articles can be difficult to distinguish from bad ones if both are represented with same set of keywords.

Limited content analysis leads to overspecialization in which CB recommenders recommend items that are closely related to user profile and do not suggest novel items. In order to recommend novel and serendipitous items along with familiar items, we need to introduce additional hacks and note of randomness [2], which can be achieved by using genetic algorithms that brings diversity to recommendations being made. The problem is relatively small in CF recommenders where unexpected and novel items may get recommended.

3.6 Grey Sheep

Grey sheep occurs in pure CF systems where opinions of a user do not match with any group and therefore, is unable to get benefit of recommendations [9]. Pure CB filtering can resolve this issue where items are suggested by exploiting user personal profile and contents of items being recommended. Similarly, sparse rating and first rater in CF filtering can also be resolved by CB filtering [2]. Integrating CB with CF techniques may also yield more serendipitous and novel suggestions [18]. Grey sheep users can be identified and separated from other users by applying offline clustering techniques including k-mean clustering This way performance gets better and recommendation error is minimal [19].

3.7 Sparsity

The availability of huge size of data about items the catalogue and the disinclination of users to rate items make a dispersed profile matrix leading to less accurate recommendations [9, 20]. The sparse rating in CF systems makes it difficult to make accurate predictions about items. CF uses nearest neighbours to recommend items, and less ratings make it computationally hard to calculate neighbours. The problem can be severe in context-aware recommenders as they use multidimensional vectors, where it becomes very difficult to provide accurate recommendations for very few rated items [21]. To cope with this situation, several approaches can be used including multidimensional recommendation model [22], SVD techniques [11], demographic filtering [3], and using content-boosted CF algorithm [23].

3.8 Scalability

The rate of growth of nearest-neighbour algorithms shows a linear relation with number of items and number of users. It becomes difficult for a typical recommender to process such large-scale data. For example, Amazon.com recommends more that 18 million items to more than 20 million customers. Different techniques have been proposed including clustering, reducing dimensionality, and Bayesian Network [20]. The problem can be addressed by using clustering CF algorithms that search users in small clusters instead of searching the entire database [9]; by reducing dimensionality through SVD [11], by pre-processing that combines clustering and content-analysis with CF algorithms [24], and by using item classification with weighted slope one scheme in determining vacant ratings in the sparse dataset of CF systems [25].

3.9 Latency Problem

CF recommenders face latency problem when new items are added more frequently to the database, where the recommender suggests only the already rated items as the newly added items are not yet rated. Using CB filtering can reduce waiting times but it may introduce overspecialization. To cope with this situation, the category based approach in combination with the user stereotype can be used [26]. To further increase performance, several clustering techniques [27] can be applied and calculations can be made offline. Model-based CF approaches can also enhance the scalability and performance.

3.10 Evaluation and the Availability of Online Datasets

Evaluating a recommender system determines among the other things, its quality. The design of evaluation criteria and selection of suitable evaluation metrics is a key problem in recommender systems. Most traditional recommender systems evaluate system results and algorithms by considering dataset divided into a test set and apply metrics like MAE, Precision, and F-Measure for evaluation [28, 29]. The available evaluation metrics are for general-purpose recommenders and are not applicable in different domains especially in evaluating context-aware recommenders. To evaluate context-aware recommenders, contextual precision and contextual ROC can be used [30]. Other evaluation methods include questionnaires, interviews, and user studies. However, these approaches are costly and time-consuming.

Another issue related to RS, is the non-availability of benchmark dataset that can be used in evaluating a recommender system in a particular domain. Such datasets are important as their availability encourages research and development of recommenders. Most of the available datasets are proprietary and therefore, cannot be used as benchmark datasets especially in evaluating context-aware recommenders. Fortunately, some datasets have been released for evaluating context-aware recommenders that include Food, Movie and LDOS-CoMoDa1[30].

3.11 Context-Awareness

From an operational point of view, context-awareness aggregates all categories that represent the setting in which recommender is deployed, e.g., the current location, the current activity, and the time. It is envisioned that the upcoming recommender systems will use contextual information obtained through mobile services infrastructure and will include the user’s short and long term history, location, entries in the calendar, and the information that the user provides to social networks. This can greatly affect the performance of recommenders [31]. Finding out user preferences and context-related information is the key to come up with relevant recommendations for the user. Moreover, the performance can be improved if user context-related information can be found out in an unnoticeable way. For obtaining this unobtrusive preference elicitation, three basic methods can be used including detecting facial expressions [32], recording speech interpretation, and physiological signals analysis [33].

4 Research Opportunities in Alleviating Issues and Challenges

By carefully analyzing the issues and challenges presented in Section 3, we present some design guidelines that can be helpful designing a fine-tuned recommenders that will perform better in mitigating issues like latency, cold-start, scalability, context-awareness, grey-sheep, and sparsity. These guidelines include: Using demographic filtering and clustering, a recommender system may cluster users having similar preferences and demographic features that the system can only look into the appropriate user group rather than the entire dataset. This will minimize latency, increase performance, handle sparsity, and grey sheep problem. The personal information of newly registered users can be obtained through registration. Contextual information such as location, time etc. can be obtained through their IP address and those items are recommended that have been mostly viewed, downloaded and purchased by other users having similar contextual information. This can easily avoid cold-start problem. For a user with frequently changing preferences, two recommendations list should be maintained. The first one should be maintained according to the current preferences of the user, while the second one should keep track of user’s long-term preferences so that the system should recommend items that match user previous transaction history. The recommender system should filter out obsolete and older items. A time threshold should be used to find out such items, and consequently newer items should be presented to users along with accurate suggestions.

5 Conclusion

In the last few decades, recommender systems have been used, among the many available solutions, in order to mitigate information and cognitive overload problem by suggesting related and relevant items to the users. In this regards, numerous advances have been made to get a high-quality and fine-tuned recommender system. Nevertheless, designers face several prominent issues and challenges. Although, researchers have been working to cope with these issues and have devised solutions that somehow and up to some extent try to resolve these issues, however we need much to do in order to get to the desired goal. In this research article, we focused on these prominent issues and challenges, discussed what has been done to mitigate these issues, and what needs to be done in the form of different research opportunities and guidelines that can be followed in coping with at least problems like latency, sparsity, context-awareness, grey sheep and cold-start problem.

译文 - Recommender Systems: Issues, Challenges, and Research Opportunities的更多相关文章

  1. 【RS】A review on deep learning for recommender systems: challenges and remedies- 推荐系统深度学习研究综述:挑战和补救措施

    [论文标题]A review on deep learning for recommender systems: challenges and remedies  (Artificial Intell ...

  2. 【RS】Matrix Factorization Techniques for Recommender Systems - 推荐系统的矩阵分解技术

    [论文标题]Matrix Factorization Techniques for Recommender Systems(2009,Published by the IEEE Computer So ...

  3. 【RS】Improving Implicit Recommender Systems with View Data - 使用浏览数据提升隐式推荐系统

    [论文标题]Improving Implicit Recommender Systems with View Data(IJCAI 18) [论文作者]Jingtao Ding  , Guanghui ...

  4. Recommender Systems中Yehuda Koren 和 Ma Hao的paper

    以前读了Yehuda Koren和Ma Hao的论文,感觉非常不错,这里分享一下.如果想着具体了解他们近期发的论文,可以去DBLP去看看. Yehuda Koren也是Netflix Prize的冠军 ...

  5. [转]-[携程]-A Hybrid Collaborative Filtering Model with Deep Structure for Recommender Systems

    原文链接:推荐系统中基于深度学习的混合协同过滤模型 近些年,深度学习在语音识别.图像处理.自然语言处理等领域都取得了很大的突破与成就.相对来说,深度学习在推荐系统领域的研究与应用还处于早期阶段. 携程 ...

  6. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 16—Recommender Systems 推荐系统

    Lecture 16 Recommender Systems 推荐系统 16.1 问题形式化 Problem Formulation 在机器学习领域,对于一些问题存在一些算法, 能试图自动地替你学习到 ...

  7. (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly Detection&Recommender Systems

    这部分内容来源于Andrew NG老师讲解的 machine learning课程,包括异常检测算法以及推荐系统设计.异常检测是一个非监督学习算法,用于发现系统中的异常数据.推荐系统在生活中也是随处可 ...

  8. [C11] 推荐系统(Recommender Systems)

    推荐系统(Recommender Systems) 问题阐述(Problem Formulation) 将 推荐系统 纳入这门课程来讲有以下两个原因: 第一.仅仅因为它是机器学习中的一个重要的应用.在 ...

  9. 【RS】Wide & Deep Learning for Recommender Systems - 广泛和深度学习的推荐系统

    [论文标题]Wide & Deep Learning for Recommender Systems (DLRS'16) [论文作者] Heng-Tze Cheng, Levent Koc, ...

随机推荐

  1. posgreSQL安装失败解决方案

    选择适合自己电脑版本的postgreSQL进行安装,显示安装失败,错误信息:problem running post-install step.installation may not complet ...

  2. 第一篇-生成可运行得exe文件

    1. 项目 --> 属性 2. 配置 -->Release 3. 如果可以在其他电脑运行可以不进行下面的,如果不能运行,选择代码生成-->运行库-->MT 4. 完成上述步骤后 ...

  3. python第九天

    复习内容: 文件处理 1. 操作文件的三步骤: ---打开文件:硬盘的空间被操作系统持有  |  文件对象被应用程序持有 ---操作文件:读写操作 ---释放文件:释放操作系统对硬盘空间的持有 2. ...

  4. Qt: 执行cmd命令;

    QProcess p(NULL); p.setWorkingDirectory(szAppPath+"/database"); //指定工作路径,这个地方一定要设置: p.star ...

  5. Lending Club贷款数据分析

    python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...

  6. luasocket编译安装遇到的坑

    由于需要获得本机的IP地址,所以需要 : local socket = require('socket') local server_hostname = socket.dns.gethostname ...

  7. Aras简单报表

    1.编辑Report对象类的窗体Report_Tab_Report,将xsl_stylesheet放到窗体上 2.新建报表 3.将编辑好的XSLT复制到xsl_stylesheet中. <xsl ...

  8. FPGA

    FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL.GAL.CPLD等可编程器件的基础上进一步发展的产物.它是作为专用集成电路(ASIC)领域中的 ...

  9. http 状态码大全

    状态码大全 1**(信息类):表示接收到请求并且继续处理    100——客户必须继续发出请求    101——客户要求服务器根据请求转换HTTP协议版本  2**(响应成功):表示动作被成功接收.理 ...

  10. HDU - 1062

    格式错误2遍:没考虑到连续两个空格的情况,遇到空格最后要输出这个空格,因为题目只需要转换单词. 另外,开cin,cout加速要注意读入不能用scanf,printf,puts,getchar这些.ge ...