组合协同推荐系统的优化外文翻译资料

 2022-11-08 21:05:05

英语原文共 11 页,剩余内容已隐藏,支付完成后下载完整资料


组合协同推荐系统的优化

摘要

本文提出了一种新的协作用户建模方法。 我们开发了一个可以用于简单测试不同概念的框架。 我们还引入了三个不同的领域,即协同建模可以进一步改进。 对于第一阶段的测试,我们创建了基于三种不同协作推荐技术的混合系统。 由于该系统实施多种协作技术,因此我们决定将此方法称为组合协同推荐器。 虽然每种预测技术都可以产生足够的结果,但我们已经证明,这些技术结合在一个统一的系统中可以提供更加稳定的系统。 还应指出,这些分析是使用非常大的数据集完成的(超过200万个评级),提供可靠的结果。 这些优化的结果与进一步开发的指标一起呈现。

  1. 介绍

当使用互联网或其他信息来源搜索多媒体内容时,用户遇到的最常见的问题之一就是操纵一大堆可用信息。 例如,如果我们专注于视频分发领域,我们发现可用的视频内容项目的数量几乎是无限的,并且当用户必须在成千上万的项目中进行选择时,他们可能会很容易迷失,无聊甚至不愿意使用这样的系统 。

解决这个问题的方法是使用一个推荐系统,该系统能够自动生成对用户不那么重要的适当的信息和过滤项目。 但是,这样的系统提出了额外的要求,因为它必须能够“学习”用户的喜好或不喜欢并相应地采取行动。 这个过程被称为用户模型。用户建模的基本版本包括使用用户的反馈(用户对访问项目的评级),以便了解用户喜欢哪种类型的内容,并且更有可能接受,如果系统建议的话。

我们已经开发了一个框架,可用于测试用户模型的不同协作算法。 该框架运行在Java编程环境中。 该框架由模块组成,可实现简单的用户界面和现有SQL数据库的数据检索。 算法实现为集成到推荐器系统中的模块。 使用这种方法,我们能够通过简单地切换模块或将模块组合到混合推荐系统中来测试不同的算法。 使用数字设备公司提供的数据集[1],我们进行了几个不同的实验,目的是获得有关如何优化协同推荐系统的工作的信息。虽然我们使用了一些在用户建模领域(例如Pearson相关系数和真贝叶斯预测)中已知的算法,但是我们还引入了一些新的方法来补偿原始算法的缺点。 因为数据库足够大,我们能够对推荐效率进行相关分析。

我们还介绍了我们的一个组合推荐系统的想法,可以将所有的测试算法合并到一个推荐系统中。 我们研究了一些基于合作的方法,并描述了在这一领域进一步发展的一个弊端。

  1. 相关工作

用户建模领域是一个不断扩大的广泛探索领域。到目前为止,已经发表了一些用户建模方法。在处理内容过滤时,两种更为截然不同的方法是基于内容的推荐和协同建议。存在许多其他方法(人口学,实用程序等),但它们并不如上述两者那么广泛地使用。

当使用协同推荐时,主要优点之一是系统不需要使用任何内容描述符,因此是独立的描述。因此,也可以在包含不同内容类型的环境中使用该系统,例如电影,文档和图像。这使得系统更加灵活,并为用户提供了更广泛的推荐项目选择。将新项目集成到数据库中是该系统的问题之一,因为系统只处理那些已经从用户那里获得评级的项目,因此直到该项目被评为“系统”是不可见的。

另一方面,基于内容的推荐者不会与来自其他用户的数据进行交互,而是跟踪用户已评估的项目的元数据。如果用户喜欢某种类型的类型,那么这个类型的项目可能会显示出正面的评级。这种系统的优点在于它独立于其他用户,如果必要的元数据可用,则新项目的集成非常简单。使用这种类型的推荐器的缺点在于,它只能用于所选择的元数据标准,因此不包括没有必要元数据或不同类型的项目。

高级推荐系统将不同的基于实验和内容的技术组合到混合系统中,根据情况在不同模块之间切换,以获得更好的结果。 如何组合这些模块有很多不同的可能性[2]。 最有趣的例子是加权,交换或级联混合系统。

当使用加权混合系统时,每个模块的建议单独计算,然后组合以产生单个建议。

交换混合系统一次只能使用一个建议模块。 在该过程开始时,系统确定哪个模块最适合该任务,然后使用该模块生成建议。

最后一个混合系统 - 级联 - 依次顺序运行推荐模块,第一个混合系统的输出是下一个输入。这是非常有用的,如果第一个建议模块生成一个非常大的可能项目列表的建议。

许多这些方法来自视频和电视节目的个性化选择领域。大多数是基于内容的[3,4],协作[5]或两种方法的组合[6,7]。 [2,8]可以很好地了解其属性。关于协同推荐者的更多信息也可以在[9]中找到,而[10]提供了有关这一领域的替代方法的有趣信息。

还应该提到的是,这些方法向个人用户提出建议,而最近出现的另一种方法则是为用户组(观众)推荐电视节目[11]。电视观看被视为一个群体活动,一组用户选择内容项目并不是一件小事。作者采用了一些策略,将个别群体成员的项目偏好评级结合起来,以向整个群体提出建议。尽管有相同的目标,为用户创建建议,但是现有的方法在许多方面有所不同。这也是我们决定测试其中的一些原因,以便在相同的环境中看到它们的性能。

虽然许多其他现有方法也适用于其他领域的建议,不仅仅是电视节目和电影,我们已经指出了这些方法,因为用于预测生成和评估的数据库包含这些项目的电影项目和用户评分。因此,我们以这些方法为基础。

  1. 综合协作方式

我们的研究目标是通过使用多种协同推荐算法来开发组合推荐系统,并引入一些可用于提高生成预测的可靠性和准确性的可行性。

我们已经决定测试一些已经发布的方法,并根据这些结果创建了一个新的推荐系统。 初步测试是基于协作推荐技术。 下一阶段是通过创建更多基于内容的推荐模块并将其集成到混合推荐系统中来进一步开发新系统。 由于我们正在创建一个实现多种协作技术的系统,所以我们决定把这种方法称为“组合式协作推荐器”。

3.1系统设计

图1.系统设计

使用协作方法推荐内容项目是两个阶段的过程。 首先,使用距离计算确定了一些最近邻居,其次是对内容项目的评级的预测。 我们的系统设计如图1所示。

我们选择了两种不同的距离计算/邻居识别技术。 第一个是Pearson的合作[12],它经常用于现有的研究。 另一个是欧氏距离,我们选择的是由于Pearson的模块证明的缺点。

在我们的工作中使用的预测技术是基于两种现有技术,在我们研究的第一阶段开发的我们自己的原始技术的添加。 我们使用真贝叶斯估计预测[13],皮尔森加权和我们的修正加权和预测技术。

我们的分析集中在三个不同的领域。第一个区域是系统正常工作所需的最近邻居的最佳数量。第二个领域是根据用户的信息决定使用哪个距离度量。第三个方面是对预测技术结果的评估,以确定在给定的情况下哪一个效果最好。

我们的系统旨在轻松更新,以便将来添加新模块。该系统在Java环境中运行,以实现移动设备的互操作性和访问。这些模块经过优化,可以在特定的环境中轻松实现。然后将这些模块集成到一个可以容易地集成其他模块的框架中,也可以简单地将它们连接到混合系统中。还需要具有切换模块(功能)功能的模块。这些交换模块负责在不同的距离度量之间切换邻居标识以及不同推荐技术之间的切换,从而创建混合环境。

该系统旨在包括一个用于从数据库(我们的例子中是MySQL)收集信息的模块,用于最近邻选择的两个不同模块,用于推荐生成的三个模块和用于生成输出数据和系统效率计算的最终模块。我们的工作阶段是优化这一制度,以提供高度的信心。

系统在第一阶段检索活跃的用户信息(他/她的身份,评级和他/她的平均评分)。然后,第一个交换模块根据用户评级的统计特性选择最佳距离度量(详见第3.2节)。一旦选择了距离度量,相应的模块就会识别活跃用户的最近邻居的预设数量。然后将这些邻居排列在将要用于预测生成的列表中。下一个切换模块选择可用的预测技术之一。该模块处理邻居的信息,并创建一个预先列出的项目列表以及每个这些项目的预测评级。为了评估新系统,将生成的建议列表与测试数据库中的评级进行比较。

3.2最近的邻居选择

正如我们在第2节中已经指出的那样,协作推荐者的主要优点之一是它们独立于内容类型。 在这种系统中使用的主要机制是搜索最近的邻居。用于实现此目标的最常用技术之一是计算主用户和每个可能的邻居之间的相关性。 该相关性使用等式 (1)其中w(a,i)表示Pearson系数,vi,j是用户i对项目j的评级,v代表用户i的平均评级。 这种相关性也称为Pearson相关系数。 系数越小,用户越相似[12]。 距离被表示为相关系数的绝对值

(1)

虽然这种距离度量返回非常准确的结果,但我们早期的研究表明,在某些情况下,它显着失败。

Pearson系数的问题发生在用户的评级没有偏离他/她的平均评级的情况下。在这种情况下,所产生的系数总是非常大的数量。这是计算这种相关性所需操作的数值性质的结果。我们打算通过在这种情况下实施一种计算相关性的替代方法,在后期版本中尝试和解决这个问题。

忽略对所有项目进行相同评估的用户是可以忽略的。这种异常的一个很好的例子是一种情况,其中一个新的用户被引入到系统中并希望通过输入所有的项目来帮助系统,他/她非常喜欢,给予他们所有相同(最高)的评价。这样的用户提供了足够的信息供系统使用,但是由于他/她仅注册了最佳评级,他/她没有偏离他/她的平均评分,使系统使用Pearson的相关系数工作。

因此,我们已经开始通过引入额外的指标来纠正这个问题,并根据情况配置系统切换到适当的模块。我们提出的这种情况的解决方案是一个额外的指标,可以在用户偏离平均等级下降到设定阈值的情况下替代Pearson系数。我们建议的度量是使用公式计算的欧氏距离(2)。虽然这一指标产生了质量稍差的整体结果,但它的好处是独立于用户的平均评级,因此在任何情况下都可以工作,

(2)

使用该度量的另一个好处是它产生的结果在相同的范围内,即最低的是最好的,因此预测步骤不需要转换。

这些距离措施被实现为两个不同的模块。 引入特殊的切换模块来检测当前用户的哪个度量是正确的,并根据需要切换到适当的模块。

3.3预测生成

一旦确定了最近的邻居,就开始了预测步骤。 基本上,这意味着检查哪些项目被主用户还没有访问的邻居给予高评级。 通过使用几个不同的方程,可以计算这些项目的主要用户的预测评级。 一旦预测的等级被计算,它们将根据其预测的投票被排序。 如果系统提出建议,那么预测级别最高的用户最有可能被用户积极接受。

用于计算预测等级的最常提出的方法之一是加权和法[12],使用公式 (3)其中pa,j表示对于用户a计算的项目i的预计投票,v表示活跃用户和ka常数用户对于总共与平均值相关联的平均评级, 对于这个项目:

(3)

虽然这种方法产生了良好的效果,但我们的研究表明,在某些情况下,这种方法很短,无法产生一系列可能的建议。最明显的情况是用户在系统中只有非常高或非常低的等级。他/她的平均评级是非常高或非常低。在任一情况下,问题是来自最近邻居的权重之和。系统依靠这个总和来表示该项目是否适当。这两种情况的问题是这个总和将远远小于用户的平均评级。这意味着最终的预测评级将与用户的平均评级几乎相同。在平均评级较高的情况下,这意味着邻近建议的所有项目将被自动推荐,而在平均评级较低的情况下,由于没有对象被认为是合适的,因此不会建议。

为了纠正这种情况,我们提出了一种计算预测评级的附加方法

(4)

这本质上只是一个修改的方程式(3)。背后的逻辑是,在上述情况下,预测投票的价值不如确定内容是否适当。因此,我们集中在从最近的邻居获得的权重之和。如果邻居喜欢内容,他/她的权重将是积极的(他们评价的内容评级高于他们的平均评级),否则如果他们不喜欢它。如果所有权重的总和为正,这意味着大多数邻居喜欢内容,因此应该被推荐。如果总和是负数,这意味着他们根本不喜欢,也不认为它很有趣。因此,它可以被丢弃。我们的实验表明,这种措施最适合于用户平均评级非常高或低的情况,而在其他情况下,产生的结果比正常情况略差。

在我们的框架中实现的最终预测方法是真正的贝叶斯预测估计[13]

(5)

在这个方程式中,我们计算每个可能项目的加权等级,然后提出排名最高的那些。 在该等式中,R表示由最近邻居评级计算的项目的平均评级,而C表示从所有注册评级计算的项目的平均评级。 评价项目的邻居数量由v表示,而m表示设定的阈值。 这种方法在电影导向的网站上也很受欢迎,所以我们决定在我们的推荐系统上使用它可以获得什么结果。

3.4框架优化

在创建了我们的框架模块后,我们发现了可以进一步优化的三个不同方面。

3.4.1距离度量切换

第一种是用于在最近邻选择的两个不同距离度量模块之间切换的模块。 如第3.2节所述,主要参数是用户偏离他/她的平均评级。 系统的性能取决于阈值,该阈值决定了使用Pearson系数的偏差仍然足够好。 因此,我们进行了一系列测试来衡量最佳阈值。

3.4.2最近邻居数

第二个方面是系统要选择的邻居的数量。 这个数字对预测的质量有很大的影响。 如果数字太小,所选择的邻居将是最佳匹配,但系统考虑的新项目可能会很少,因为可能的建议。 如果数量太高,所有邻居都不会很好地匹配用户的口味,并且系统将超载可能的建议项目。 此外,如果需要更多的邻居,处理时间将会大大增加。 为了找到最佳值,我们进行了一系列测试,每次测试中我们每次使用不同数量的邻居。 这些测试的结果应该指出什么范围可以被认为是最佳的。

3.4.3预测方法切换

第三个方面是在不同的预测方法之间切换。 如果系统每次用户登录时需要计算三个不同的预测值

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[138481],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版