《推荐系统:技术、评估及高效算法》一1.3 数据和知识资源-阿里云开发者社区

开发者社区> 华章计算机> 正文

《推荐系统:技术、评估及高效算法》一1.3 数据和知识资源

简介:
+关注继续查看

本节书摘来自华章出版社《推荐系统:技术、评估及高效算法》一书中的第1章,第1.3节,作者 [ 美]弗朗西斯科·里奇(Francesco Ricci)利奥·罗卡奇(Lior Rokach)布拉哈·夏皮拉(Bracha Shapira)保罗 B.坎特(Paul B.Kantor),更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.3 数据和知识资源

推荐系统是信息处理系统,为了实现推荐,该系统会积极收集各种数据。数据主要是关于推荐的物品和收到这些推荐结果的用户,但是由于推荐系统获得的数据和知识来源可能区别很大,它们最终是否可以被利用取决于推荐技术(见1.4节)。这种推荐技术将在本手册的不同章节中有更加清晰的阐述(详见第11章)。

通常,有的推荐技术用的知识(领域)较少,如只用到用户评分或者对物品的评价等一些简单且基础的数据(第4、5章)。其他的技术则依赖于更多的知识,如利用用户或物品的本体性描述(第3章),或者约束性条件(第6章),或者用户的社交关系和行为活动(第19章)。在任何情况下,推荐系统使用的数据一般指的是三种对象:物品、用户和事务,也就是用户和物品的关系。

物品。物品是被推荐的对象集。物品具有复杂性和有价值或效用的特点。如果物品对于用户是有用的,那么物品的作用就是积极的;否则如果物品对于用户不适合,那物品的作用就是消极的,从而导致用户在选择时做出错误决定。我们注意到,当一个用户需要获得一个物品时,他总会付出代价,其中包括搜索物品的认知代价和最终为物品支付的费用。

例如,一个新闻推荐系统的设计师必须考虑新闻物品的复杂性,即新闻的结构、文本表述和任何新闻物品的时变重要性。但是推荐系统的设计者必须意识到,即使用户没有花钱阅读新闻,他们还是为搜索并阅读这些新闻物品付出了认知上的代价。如果选择的物品和用户相关,这个代价就被用户得到有用信息的收益覆盖了,可一旦不相关,推荐物品对用户的净价值就是负面的
在其他领域,如汽车或者金融投资,当选择最恰当的推荐方法时,物品真正的货币成本成为一个考虑的重要因素。

复杂度低且价值小的物品是:新闻、网页、书籍、光盘、电影。复杂度高且价值大的物品是:数码相机、手机、个人电脑等。我们通常认为最复杂的物品是保险政策、金融投资、旅游、工作[72]。
根据其核心技术,推荐系统可以使用物品集的一系列属性和特征。例如,在电影推荐系统中,我们可以使用电影种类(如喜剧、悲剧等)信息、导演信息和演员信息来描述电影,并用于弄清楚物品的效用是如何依赖其特征的。物品集可以用各种信息和表述方法来表示,如可以简约到单一的ID码,或者丰富到为一组属性,甚至是该领域本体表示中的一个概念(第3章)。

用户。正如前面提到的那样,推荐系统的用户可能有非常不同的目的和特点。为了使推荐结果和人机交互个性化,推荐系统使用用户的一系列信息。这种信息可以用不同的方式组织,而且同样的是,选择哪种信息建模取决于推荐技术。

例如,在协同过滤中,所有用户被建模为一个简单的列表,该列表包含每个用户对若干个物品的评分记录。在基于人口统计学的推荐系统中,会用到如年龄、性别、职业和受教育程度等社会统计学特征。用户数据用来构成用户
模型[21,32]。用户模型简明扼要地描述了用户的特征,即对用户偏好和需求进行编码。不同的建模方法已经在推荐系统中得到应用,在一定意义上,推荐系统可以被看作一个构建并使用用户模型来产生推荐的工具[19,20]。如果没有一个实用的用户模型,个性化推荐是不可能的(除非推荐系统本身就是像top10那样是非个性化的),因此用户模型起到非常重要的作用。例如,再次考虑协同过滤方法,要么用户被直接描述为他对物品的评价记录,要么系统根据该用户的评分记录构建一个因子向量,不同用户之间的
区别是这些因子权重在他们模型中的差别(第4、5章)。

用户也可以通过他们的行为模式数据来描述,如网站浏览模式(在基于Web的推荐系统中)[107]或旅游搜索模式(在旅游推荐系统中)[60]。此外,用户数据包括用户间的关系,如用户间的信任级别(第20章)。推荐系统能利用这些信息给用户推荐物品集,而这些物品集也是相似用户或可信任用户所喜欢的。

事务(transaction)。我们一般将一个事务看作用户和推荐系统进行交互的一条记录。人机交互过程中产生的这种类似日志的数据存储着重要的信息,并且这些数据对系统中推荐生成算法是有用的。比如,事务日志可能会涉及用户选择物品,以及特定推荐所处上下文描述信息(如用户的目的和查询词)。如果可能,事务也会包括用户提供的显式反馈,如对选择物品的评分。

实际上,评分是推荐系统收集交易数据最流行的方式。这些评分可能是用显式或者隐式的方式收集的。收集显式评分时,用户需要在某个评级尺度内给出自己对物品的看法。根据[93],评级可以采用各种方式:

数字评分,就像Amazon.com的书籍推荐系统中的1到5星的评价。

序数评价,例如,“强烈同意,同意,一般,不同意,强烈反对”,用户在
其中选择最能代表自己观点的术语(一般是通过问卷调查)。

二元制评价,用户仅仅被要求确定一个物品的好或者不好。

一元制评价,用来表示用户已经看到或者买了一个物品,或由此对物品进行明确的评价。在这种情况下,评分值的缺失意味着关联用户和物品的信息是未知的(也许用户在其他地方买了这个物品)。
另一种评价的形式就是关联用户和物品的标签。例如,在Movielens推荐系统(http://movielens.umn.edu)中,标签表示Movielens用户对电影的感觉,例如,“太长”或“表演不错”。第19章侧重讲解这类交互行为。
从事务中隐式收集用户评级,系统的目标是根据用户的行为推断用户的意图。例如,如果用户在亚马逊网站输入“瑜伽”进行搜索,那么她将得到关于
书的一个很长的列表。作为回报,用户为了获得额外信息会单击列表中的书。从这点上看,系统可以推断用户对那本书有一定的兴趣了。

在会话(conversational)系统中,即支持交互过程的系统中,交易模型更加精确。在这些系统中,用户请求和系统行为交替出现(见第13章)。更准确地说,用户请求一个推荐,系统就产生一个推荐列表。但是系统仍然需要额外的用户偏好信息,以期产生更好的结果。在这个交易模型中,系统收集各种请求—响应信息,并且最终通过观察推荐过程的结果来修改系统的交互策略[60]。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
新浪明星日志推荐系统——爬虫爬取数据(2)
由于之前的改造,现在将爬虫的功能做了一些改变,具体实现的功能是将推荐的日志全部抓取下来,并存放在以文章标题命名的文件中,代码如下: import urllib import os,re import sys from bs4 import BeautifulSoup reload(sys) sys.
676 0
在ASP.NET MVC3 中利用JSONP跨域登“.NET技术”录WEB系统
  在信息系统开发的时,根据相关业务逻辑难免会多系统之间互相登录。一般情况下我们需要在多系统之间使用多个用户名和密码。这样客户就需要在多个系统之间重复登陆。每次登录都需要输入用户名和密码。最近比较流行的就是OAuth。
711 0
推荐系统-基于矩阵分解的LFM模型
  这里我想给大家介绍另外一种推荐系统,这种算法叫做潜在因子(Latent Factor)算法。这种算法是在NetFlix(没错,就是用大数据捧火《纸牌屋》的那家公司)的推荐算法竞赛中获奖的算法,最早被应用于电影推荐中。
8261 0
获得数据库连接池中数据连接资源的两种方式
相比于从数据库中直接获取数据库连接,使用数据库连接池的方式可以很大程度的提高数据库连接的效率。因此我们在实际开发中通常会采用数据库连接池的方式获取数据库的连接,在使用完成后这些资源再返还给数据库连接池。
851 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载