机器学习

关于数据挖掘方面的机器学习——初步简介:

1.信息检索模型

(1)布尔检索模型

布尔模型是历史上首个被提出并且得到成功应用的检索模型,即使在目前仍然被广泛的用于各种查询系统中,它根据若干个查询分量的逻辑表达式的组合来进行检索,每个查询分量或者出现,或者不出现在查询对象中,对应查询分量的权值就相应的为1或0,最后返回使得所有逻辑组合最后结果为“真”的对象集合。由于实际上计算的是逻辑条件表达式的真伪,因此在实际查询前系统都需要对用户输入的查询条件进行逻辑转换,然后才能在整个文档集合中进行操作。

(2)向量空间模型

向量空间检索模型是由康奈尔大学的Salton等人于上世纪六七十年代提出的另一种广泛使用的信息检索模型,在该模型中不论是具体的查询条件还是目标文档都用由关键字组成的特征向量来表示,向量之间的相似度代表着查询与文档之间的相关程度,模型通过相似度大小产生检索结果和对结果进行排序。

(3)概率检索模型

概率检索模型是Roberson等人于1976年提出的经典模型,该模型建立在概率理论的基础上,其思想是通过统计每个查询分量在相关目标对象中出现的概率来表示它们之间的相关程度,从而建立起一个目标对象与查询之间的概率模型。

(4)统计语言检索模型

统计语言模型是用数学知识来表示自然语言的一种模型,它主要用于描述自然语言在统计和结构方面的规律,通过建立的概率模型来对词序列进行预测,使得该序列的正确概率最大化。早在20世纪初,Andrei Markov就将统计语言模型应用到了俄国文献的字母序列建模中,然而直到上世纪末该模型才被应用到IR领域,如今具有代表性的有文档语言模型、查询语言模型等。

2.排序学习模型

排序学习是运用各种机器学习方法来解决排序问题的一种技术,从整体处理流程上可以将排序学习划分为训练和测试两大阶段:在训练阶段,每个查询与经过人工标注的排序结果作为一个训练实例,系统通过对给定的若干训练实例的学习来建立一个最优的排序模型,使得运用该模型进行分类或评分预测所造成的损失达到最小;测试阶段就是根据训练阶段所建立起的排序模型对给定查询和目标对象进行分类或排序。

(1)基于单文档的排序学习

在单文档的排序算法中,每个文档都被看作是一个单独的训练实例,其思想是先将每个文档转换为对应的特征向量,对于查询,系统依次计算这些特征分量值,分量加权之和就是每个文档的最后排名得分。目前比较有影响力的单文档排序方法包括RankProp算法、基于支持向量机的排序学习算法、Prank算法以及基于提升树的排序算法等。

(2)基于文档对的排序学习

基于单文档的排序学习算法以单个文档作为训练实例来建立排序模型,并没有考虑文档之间的前后顺序关系,基于阀值来划分相关性标注在某些情况下也不尽合理,因为用户关心的通常不是绝对的相关与否,例如在搜索一个很不常见的信息时,不是太高的相关性也许比搜索一个常见信息的高相关性更能满足用户的需要。

基于文档对的排序学习算法正是对文档对之间的顺序关系进行合理性判断的排序方法,一些比较经典的算法先后被提出,包括排序支持向量机(RankSVM)、排序神经网络(RankNet)和排序提升树(RankBoost)等,其中Ranks VM是一种基于SVM的排序学习算法,其思想是把排序问题转化为文档对的分类问题,将每两个训练数据看作一个实例,通过实例与它们的相对位置关系来建立起一个排序模型。

(3)基于文档列表的排序学习

研究人员提出了基于文档列表的排序算法,该方法将整个文档序列当作一个整体来看待,每个查询对应的全体返回列表代表一个样本,其思想是:模型根据训练样本得到一个最佳预测函数f,之后用f对每个查询进行评分预测,并将该值作为最后的排序依据。

理论上来说,基于文档列表的排序算法相对于其它算法能够获得最优的排序性能,因为以整个文档列表作为考察对象的思想符合现实中人们对于检索结果优劣的判断,然而在实际应用中却存在着诸多限制。首先训练数据比较难以获得,对于给定的查询,标注者需要对所有文档进行一个相关度排序,这本身就很费时费力,所以无法获得大量的训练数据。其次,模型的复杂度以及训练时间的长短在很大程度上受损失函数影响,如何来定义损失函数还是一个需要解决的问题。因此,基于文档列表的排序算法目前基本上还停留在理论研究阶段,只有某些特定的应用场景才适合采用该方法。

3.推荐算法

根据关注对象的不同,当前的个性化推荐算法大致可分为以下几类:基于内容(Content-based)的推荐、协同过滤(Collaborative
filtering)推荐、基于关联规则(Association rule-based)的推荐、基于效用(Utility-based)的推荐、基于知识(Knowledge-based)的推荐以及混合(Hybrid)推荐等.

(1)推荐算法的评价标准

对于一种推荐算法来说,产生推荐结果的好坏直接关系到用户对于推荐系统的评价,面对如此多的推荐算法,如何客观有效的进行评价是一个重要而又困难的问题,一般可以从以下几个方面来对一个推荐系统的推荐质量进行考察。

·准确度表示用户对系统产生的全部推荐感兴趣的程度,推荐的目的就是要让用户对推荐的内容产生兴趣,这是最为直接也是最重要的衡量指标;

·劝说度指系统对产生推荐的解释能在多大程度上帮助用户理解并接受推荐内容;

·信任度即用户对系统的依赖和信任感;

·决策速度能在多大程度上帮助用户更快的做出决策;

·透明度指用户是否理解产生推荐的原因;

·用户满意度。

(2)面向注册用户的推荐算法

基于内容推荐:

基于内容的推荐算法是目前常用的推荐算法之一,它根据用户的历史信息来构造个人偏好文档,然后分别计算待推荐项目与个人偏好文档之间的相似度,最后将最相似的前若干项目向用户进行推荐。

基于内容的推荐算法主要有两种实现方法,分别为基于关键词的空间向量模型和基于用户反馈的Rocchio算法。在基于关键词的空间向量模型中,首先需要构造用户个人偏好信息与目标文档的特征向量,它应该能在很大程度上代表一个文档的特点。

协同过滤推荐:

协同过滤推荐是另一种常用推荐方法,它又分基于用户的推荐和基于项目的推荐。基于用户的协同过滤推荐算法(User-based CF)从用户的角度进行分析,它采用最近邻技术,通过对相同项目进行的评价来计算与某个用户喜好最为接近的k个用户,然后综合这些用户对某一内容的评价来估计该用户的喜好程度,从而决定是否推荐。该算法基于这样的假设:与自己有相同历史喜好的用户对于将来的内容也有着同样的喜好程度。这一假设很容易理解,日常生活中也经常用到,例如人们往往倾向于具有共同爱好的朋友推荐的东西,并且历史推荐效果越好就越容易得到重视。

基于内容和协同过滤的混合推荐:

上面两小节中详细说明了基于内容和基于协同过滤的推荐算法以及它们各自的优缺点,从中不难看出,这两种方法在一定程度上是互补的:一种算法的优点是另一种算法的缺点,反之亦然。由于单一推荐方法本身的缺陷,很多研究者将目光转向了它们的组合方式,并据此提出了多种组合模式:加权(Weight):将多种推荐算法各自的结果进行加权以作为最后的结果;混合(Mixed):几种推荐算法各自产生的结果同时向用户进行展示,具体采用哪种由用户自己决定;特征组合(Feature combination):把来自不同数据源的特征组合起来提供给另一种推荐算法;层叠(Cascade):以第一种算法产生的结果作为中间数据,在此基础上再用另一种算法进行精确处理;特征扩充(Feature augmentation):与层叠模式类似,用第一个算法产生的特征信息对另一种算法的特征输入进行扩充。

(3)面向未注册用户的推荐算法

有两种面向未注册用户的推荐算法,它们分别是在传统的基于内容和基于空间关联规则推荐的基础上扩展改进而来的。

基于内容推荐:

注册用户推荐中基于内容的推荐算法是根据用户的历史记录获得个人偏好信息,然后将与该偏好有最大相似度的内容向用户进行推荐,但对于未注册用户来说,由于没有可用的历史信息,此方法不再适用。然而,对于某些应用领域而言,历史偏好并非必要,正在访问的内容也许更能反映用户当前的兴趣点,本小节将要介绍的推荐算法正是在这一背景下提出来的一种新的算法,其思想是将前一个和当前访问页面文档特征向量的组合作为查询条件,然后根据所有目标文档与该查询条件的相似度大小排名进行推荐。该算法基于这样一个假设:如果用户对上一个网页和当前网页感兴趣,那么也会对这两者之间共有的内容感兴趣。

基于关联规则推荐:

基于关联规则的推荐如今广泛应用于电子商务领域并取得了巨大的成功,它通过发掘商品之间隐含的相关性来做出推荐决策,典型的例子就是啤酒与尿布的销售关系。关联规则算法主要由两部分组成一一频繁项集的产生和关联规则挖掘,其中第一步是最为关键也是耗时最多的一步,是算法的瓶颈,一般作为离线处理;第二步中,当产生的频繁项集数目较大时,想要寻找出感兴趣的关联规则也是一个不小的挑战,需要考虑多种指标,如支持度、置信度、提升度(也称作兴趣因子)、相关分析、IS度量、相关性等。

4.有效性反馈推荐系统

(1)有效性反馈概述

受到上面的启发,本文提出有效性反馈概念,它是指用户将所访问网页的包括点击率、浏览效果、内容评价等在内的各种信息向系统进行反馈。将这一思想应用于目前的推荐系统称为反馈推荐系统,与传统推荐系统的不同之处在于,该系统不仅根据用户当前浏览内容与历史访问记录预测个人偏好,还可以将网页PageRank值、内容新鲜度、时效性、单位时间访问量、历史总访问量甚至上一个网页内容等因素综合考虑在内,同时用户的浏览行为也会及时的反馈给系统以便在向其他用户推荐时做出及时的调整。除了提供更加准确的推荐之外,该模型的另一个优点是未注册用户也能享受到相应的推荐服务,由于用户个人信息的影响被大大弱化,反馈推荐模型将使得面向未注册用户的推荐系统成为可能。

(2)反馈推荐系统模型

一个好的推荐系统不仅能够推荐精彩的、广受大家欢迎的内容,而且还应该能及时的发现不受欢迎的内容。以视频网站为例,当一段新视频出现时,由于系统推荐的作用大量用户点击观看,短时间内该视频访问量将急速上升,高的点击率又将吸引更多人的关注,这就是所谓的“马太效应”。如果该视频内容足够精彩还好,然而情况并非总是如此,由于点击率上升率等各种排名的影响,即使毫无吸引力的内容在短时间内都有可能引起大量用户的注意,这显然会影响用户对推荐系统的信任度和好感度。

仔细分析不难发现,造成这种情况的一个最根本原因在于,在内容出现的开始,没有一个良好的机制对它的内容质量与浏览效果进行监控,为了避免类似的情况出现,对于每一个新推出的内容,在推荐排序时除了新鲜度之外,还需要考虑该内容在近期的受欢迎程度,也就是将全体用户的访问效果进行反馈以便推荐系统在接下来的预测中做出调整,这就是有效性反馈思想在推荐系统中的应用。

反馈推荐系统是在传统的推荐系统基础上增加数据更新模块构成的,其作用是保证能够将待推荐内容的动态情况实时的反映至排序模型,以便总是能够产生出当前最优的推荐结果。

(3)有效性反馈思想在推荐系统中的应用

在传统的基于内容的推荐算法中,系统根据用户的历史访问记录来构造个人偏好文档,然后分别计算目标文档与个人偏好文档之间的相似度,将最相似的top-N个项目排序后向用户进行推荐。然而,这种只将文档相似度作为推荐排名唯一指标的做法并不合理,因为还有众多因素能够对推荐排名产生影响,将反馈思想加入排序学习模型后建立起来的评分函数。

你可能感兴趣的:(纯属爱好,专业知识)