没有合适的资源?快使用搜索试试~ 我知道了~
CEUR程序http://ceur-ws.orgCaMeLS:一种面向推荐系统的LukasWegmeth1,JoeranBeel11德国锡根Adolf-Reichwein-Straße 2 57076锡根大学智能系统研究组摘要我们提出了CaMeLS,一个概念证明的推荐系统的合作元学习服务CaMeLS通过将推荐系统用户的元数据和算法评估分数上传到集中式环境来利用推荐系统用户的计算能力。通过由此产生的数据库,CaMeLS然后为每个人提供元学习服务。此外,用户可以立即访问对公共数据集的评估,以了解这些数据集的最佳性能算法。元数据表还可以用于其他目的,例如,执行基准测试。 在本文讨论的初始版本中,CaMeLS通过两个推荐系统库的元学习实现自动算法选择。自动算法选择节省了用户的时间和计算能力,并且不需要专业知识,因为可以在多个库中自动找到最佳算法默认情况下,CaMeLS数据库包含20个元数据集。我们表明,自动算法选择服务已经与单一的最佳算法在这个默认的情况下。CaMeLS仅需要几秒钟来预测合适的算法,而不是如果手动执行则可能需要数小时或数天,这取决于数据集。代码可在我们的GitHubhttps://camels.recommender-systems.com上公开获取。关键词推荐系统,基准测试,模型选择,算法选择,元学习,自动机器学习1. 介绍模 型 选 择 是 机器学习的一 项基 本 技 术 , 具 有 许 多 优 点 ,并 通 过 扩 展 , 推 荐 系 统(RecSys)。它可以减少构建有意义的预测器所需的时间,降低用户专业知识要求并提高预测性能。 用于模型选择的标准方法,如随机搜索,需要用户的专业知识来设置搜索空间,并且需要额外的时间和处理能力,因为需要完成多轮验证。此外,根据任务,这些技术可能效率低下或产生次优结果[1]。随着自动机器学习(AutoML)的兴起,采用了贝叶斯超参数优化[2]等新方法,改进了结果,但仍然具有类似的要求[3]。当有多种算法可供选择时,这些要求变得更加复杂。还不可能通过其他手段快速且容易地实现与现有技术的超参数优化技术但是,可以热启动此Perspectives on the Evaluation of Recommender Systems Workshop(PERSPECTIVES 2022),2022年9月22日,与第16届ACM推荐系统会议在美国华盛顿州西雅图lukas. uni-siegen.de(L. Wegmeth); joeran.beel@ uni-siegen.de(J. Beel)0000-0001-8848-9434(L. Wegmeth);0000-0002-4537-5573(J. Beel)© 2022本文版权归作者所有。在知识共享许可署名4.0国际(CC BY 4.0)下允许使用讲习班ISSN 1613-0073 CEUR研讨会论文集(CEUR-WS.org)通过元学习进行优化[4]。一些最先进的AutoML工具为此目的和许多其他目的采用Meta学习,因为它具有将知识从一个任务转移到另一个任务的能力[5,6]。元学习和AutoML最近才在RecSys中出现,但已经被证明在不同的模型选择任务中很有价值[7,8,9,10,11]。元学习是机器学习的一种应用它被绑定到相同的约束,例如,需要足够的数据量像Auto-sklearn[4]这样的AutoML工具手动收集这些数据,并针对手头的任务制作一个多样化的元学习器然而,这些工具并不直接适用于RecSys,因为数据和任务与常规机器学习有很大稀疏性。由于元学习在一般机器学习中的成功,我们假设,如果在RecSys上下文中存在足够的数据,这些技术在RecSys领域也会表现出色。当然,获取大量不同的数据是具有挑战性的。RecSys的公共数据集并不丰富,并且该列表仅缓慢增长1。此外,可用数据集的质量可能不够。此外,私有数据集可能与公共数据集不同,这使得将元学习者推广到这些数据集更加困难。为了规避上述问题,我们提出了RecSys的协作Meta学习服务的概念和我们称之为CaMeLS的概念证明我们的团队介绍了用于一般机器学习的想法,并在以前的出版物中实现了概念证明。它表明,该系统在时间和计算能力方面提供了巨大的优势[12]。通过CaMeLS,我们在此基础上进行了扩展,特别是针对RecSys,并提供了第一个元学习性能评估。CaMeLS是一个自动算法选择服务,它解决了模型选择的一个子任务 我们对CaMeLS的评估表明,它与直接开箱即用的单一最佳算法不相上下。此外,使用CaMeLS获得正确或合适的算法仅需要几秒钟,而手动完成则可能需要几个小时。从概念上讲,我们设想一个环境,用户共享有关RecSys数据集的相关信息,而无需共享敏感,个人和私人数据。因此,CaMeLS仅收集输入数据集的元数据及其在一组算法上的性能度量用户在他们的机器上进行训练和评估,CaMeLS在一个向任何人开放的集中式环境中收集结果。 此过程通过将结果提供给每个人来利用贡献用户的计算能力。这种合作努力汇聚成一个元数据集和性能值的集合,从中可以构建并不断扩展强大的元学习者,社区可以完全访问。这样的集合具有许多额外的益处。它为每个人节省了时间,因为用户可以检索存储的结果,而不是重复计算常见任务的评估它还充当一个表格元数据集,用户可以检索它来开发和执行全面的基准测试。2. 骆驼虽然有多种方法来实现所介绍的概念,我们提出了一个原型实现的CaMeLS的概念证明。我们将CaMeLS作为传统的1https://cseweb.ucsd.edu/~jmcauley/datasets.html管理规定标准元学习者使服务器数据库选型服务验证评价程序元数据获取客户端RecSys Library 1RecSys Library 2RecSys Library 1RecSys Library 2RecSys Library 1RecSys Library 2RecSys Library 1RecSys Library 2捐赠用户捐赠用户捐赠用户消费用户消费用户消费用户使用服务提交数据客户端-服务器模型与开放的API。CaMeLS存储RecSys数据集的元数据及其在RecSys算法上的评价分数 如果已经存储了输入数据集的评估,则它立即返回最佳算法。否则,预测未知数据的最佳算法只需要几秒钟。使用CaMeLS很简单:上传评估和预测算法性能只需要一个函数调用。图1:概念验证的工作流程图从根本上讲,有两组用户,即捐赠者和消费者。 它们共享一个标准化的管道,其设置由数据库设置决定。CaMeLS中的工作流取决于用户是提交评估数据还是使用服务。如图1所示。我们分别称这些用户为捐赠者和消费者 如果用户自愿作为捐赠者,他们的输入数据集将通过服务器指定的预处理,以标准化元数据提取过程。如果数据散列已经存在于服务器上,则用户决定是否重复评估。接下来,计算元数据并将其存储在服务器上。然后,用户在其输入数据上训练所选择的算法并对其进行评估。通过共享的可配置功能,将数据集划分为训练集和测试集以及对训练模型的预测进行评估是标准化的。标准化的度量计算确保了每个算法的性能,无论来自哪个库,都是平等计算的,这使得不同库的性能得分具有可比性。最后,用户将评估分数上传到服务器。服务器最终验证上载并存储值。如果用户希望使用该服务,则他们必须将其输入数据集通过与捐赠者最初经历的相同的标准化预处理步骤因此,元数据被计算并上传到CaMeLS服务器。 如果服务器通过哈希知道数据,它将返回输入数据的推荐算法。否则,针对目标用户设置的经训练的元学习者必须存在于服务器上以继续。 如果不存在,则管理策略决定它是按需训练还是由控制管理员安排。用户选择元学习器,然后预测先前未知的输入元数据的算法性能,并将所有算法的预测性能返回给客户端。然后,客户端可以例如基于具有最高预测性能的算法自动构建具有默认参数的模型元学习器是一个多标签回归器,它预测每个算法的元数据集默认情况下,CaMeLS使用scikit-learn [13]的随机森林回归作为元学习者。或者,CaMeLS还允许集成其他元学习者。元学习器学习数据集的复杂性和算法性能之间的关系。元数据集包含每个可用数据集的一个训练实例元数据集的特征对应于附录A中列出的17个复杂性度量。元数据集的基础事实对应于每个算法的一个度量的评估分数因此,对于每个可用的度量,都有单独的元学习器和元数据集。因此,元学习者预测每个算法在看不见的数据上的相关联的度量的评估分数。目前,CaMeLS支持来自RecSys库Lenskit[14]和Surprise[15]的算法附录C列出了所有算法及其官方描述。此外,它使用了Lenskit提供的通用Movielens 2数据加载例程,并为一些常见的数据集和数据集家族(如Amazon3)扩展了更多例程。附录B包含数据集的组织列表 因此,CaMeLS立即支持30多个数据集。所实现的评估指标是运行时间、归一化平均绝对误差(NMAE)、平均绝对误差(MAE)、归一化均方根误差(NRMSE)和均方根误差(RMSE)。目前,CaMeLS支持预测显式评级的任务,并可以扩展到隐式排名预测和任何其他用户定义的任务。CaMeLS数据库具有简单且可扩展的结构以在将来存储更复杂的关系,例如,亚马逊提出的更复杂的元数据系统[16]。3. 评价为了评估CaMeLS,我们模拟了客户端捐赠元数据和20个支持的数据集的评估分数评价的数据集以及关于元数据和算法的其他信息列于附录中 我们收集了16种支持算法的性能指标。由于资源的限制,我们收集的数据与holdout验证和配置的数据修剪,每个用户在每个数据集中必须有至少5个和最多1000个评级。使用五个性能指标,这产生总共1600个评估。由于每个元学习者一次训练一个指标,并且因为我们将模型选择问题视为多标签回归问题,所以每个元数据集只有一个实例用于元学习者训练。因此,每个度量的元学习器在该过程中仅从20个实例中学习我们通过执行留一交叉验证来评估元学习器的预测性能。 由于随机性会影响评估,因为我们的元数据集很小,所以我们对50次评估重复的结果进行平均。我们在表1中示出了随机森林元学习器在MAE和RMSE度量上的评估结果。评估结果表明,RMSE元学习器的选择精度比单一最佳算法高4.2%,与其平均误差相当MAE元学习器比单一最佳算法更差,选择准确率低5.1%,平均错误率高0.01但2https://nijianmo.github.io/amazon/index.htmlhttps://grouplens.org/datasets/movielens/平均绝对误差均方根误差平均误差选择准确度选择方法平均误差选择准确度选择方法元学习者和单个最佳算法之间的差异对于两者来说都是边际的,特别是考虑到平均误差。在算法选择中,击败单个最佳算法是标准的最低要求。 我们可以用CaMeLS来超越RMSE元学习器,即使数据和基本复杂性度量都很稀缺。表1该表示出了随机森林元学习器在MAE和RMSE度量上的性能我们比较它的甲骨文和单一的最佳算法。先知知道基本事实,总是选择最好的算法。单一最佳算法是最经常在训练元数据集上执行得最好的算法它显示了使用留一法交叉验证的选择方法的选择准确度和平均误差,并平均超过50次验证重复。0.91百分百甲骨文1.26百分百甲骨文0.92百分之二十五唯一最佳1.28百分之三十唯一最佳0.93百分之十九点九元学习者1.2834.2%元学习者除了其预测能力,CaMeLS还节省了时间和计算能力。将数据集手动读取到两个不同的库中并对每个算法执行评估可能需要数小时或数天,这取决于输入数据集的大小相反,CaMeLS可以从读取数据在几秒钟内预测合适的算法。4. 讨论虽然元学习为RecSys中的模型选择提供了机会我们提出的概念仍有许多挑战需要克服在RecSys中通过元学习进行模型选择并不是一项容易的任务,需要进一步研究,例如:元数据获取必须收集足够的数据来启动和改进服务。然而,评估表明,即使是少量的数据也可能已经提供了直接的好处。当然,初始数据收集任务可以在流行的数据集上自动执行,类似于我们为CaMeLS所做的。这个想法是用户也自愿贡献数据一个简单的激励可以是隐含地假设用户的善意,以改善每个人的服务但我们可能会找到更切实的 根据使用情况,必须考虑上传应该是选择加入还是选择退出过程。同时,上传例程必须易于访问,因此用户在上传数据时不会感到负担此外,如果没有使用限制,服务器主机应该考虑搭便车问题。还有一系列其他研究问题需要回答,例如,考虑到他们的计算工作量,最好的复杂性度量是什么?元学习者的理想设置是什么目前,元数据获取和元学习者训练由于其简单性而相对高速。当涉及更复杂的元数据时,元数据计算将花费更长的时间,并且可能阻止用户捐赠数据。使用该系统执行的任何任务的收益成本比对客户来说都特别重要。引用[1] J. Bergstra,Y. Bengio,Random search for hyper-parameter optimization. Journalof Machine Learning Research 13(2012).[2] 大通吴X纽约Chen,H.张湖学位Xiang、H.Lei,S.-小时邓,基于贝叶斯优化的机器学 习 模 型 的 超 参 数 优 化b , 电 子 科 学 与 技 术 杂志17 ( 2019 ) 26-40 。 网址:https://www.sciencedirect.com/science/article/pii/S1674862X19300047 。doi:https://doi. 或g/10。11989/JEST. 1674-862年80904120。[3] 下午马图西克河没有Castillo,D.Kottke,M.Spiliopoulou,A comparative study onhyperparameteroptimizationforrecommendersystems , in : WorkshoponRecommender Systems and Big Data Analytics(RS-BDA[4] 先生Feurer,K. Eggensperger,S. Falkner,M. Lindauer,F. Hutter,Auto-sklearn2.0:下一代,CoRRabs/2007.04074(2020)。网址:https://arxiv.org/abs/2007.04074。arXiv:2007. 0407 4.[5] 先 生Grobelnik,J. Vanschoren,Warm-starting darts using meta-learning,2022。 网址:https://arxiv.org/abs/2205.06355网站。doi:10。48550/ARXIV. 2205 06355[6] 法律Zimmer,M. Lindauer,F. Hutter,Auto-pytorch:Multi-fidelity metalearning forefficient and robust autodl , IEEE Transactions on Pattern Analysis and MachineIntelligence 43(2021)3079-3090.[7] 先生Luo,F.Chen,P.Cheng,Z.Dong、黄毛菊X.他,J.Feng,Z.Li,Metaselector:Meta-learning for recommendation with user-level adaptive model selection , CoRRabs/2001.10378(2020)。网址:https://arxiv.org/abs/2001.10378。 arXiv:2001。10378[8] 上 午 Nechaev , V. Meltsov , N. Zhukova , Utilizing metadata to select arecommendation algorithm for a user or an item,在:CEUR研讨会论文集,2020年。[9] 小时Bharadhwaj,Meta-learning for user cold-start recommendation,in:2019InternationalJointConferenceonNeuralNet works(IJCNN),2019,pp. 一比八doi:10。1109/IJCNN。2019年。8852100。[10] 上午柯林斯D. Tkaczyk,J. Beel,一次一个:A meta-learning recommender-systemfor recommendation-algorithm selection on micro-level , arXiv preprint arXiv :1805.12118(2018).[11] 室Anand,J.Beel,Auto-surprise:一个自动推荐系统(autorecsys)库,具有parzens估计器树(tpe)优化,在:第十四届ACM推荐系统会议,2020年,第14页。585-587[12] 先生Arambakam,J. Beel,联邦元学习:跨学科和软件库民主化算法选择,在:第七届ICML自动化机器学习研讨会(AutoML),2020年。[13]楼佩德雷戈萨湾Varoquaux,A.格兰福河谷米歇尔湾Thirion,O.Grisel,M.布朗德尔下午普雷滕霍费尔河Weiss,V.Dubourg,J.Vanderplas,A.Passos,D.Cournapeau,M.布鲁彻先生Perrot,E.Duchesnay,Scikit-learn:Machine learning in Python,Journal ofMachine Learning Research 12(2011)2825[14] 先生学位Ekstrand,Lenskit for python:用于推荐系统实验的下一代软件,在:第29届ACM信息知识管理国际会议论文集&,2020年,页。2999-3006。[15] 国 Hug, Surprise : A python library for recommender systems , Journal of OpenSource软件研究5(2020)2174. 网址:https://doi.org/10.21105/joss.02174。doi:10。21105/joss.0217 4.[16] 美国Schelter,J.小时Boese,J. Kirschnick,T. Klein,S. Seufert,自动跟踪Meta数据和机器学习实验的起源,在:NIPS的机器学习27比29A. 复杂性测量CaMeLS计算并用作元数据的复杂性度量的列表1. 用户数量2. 的项目3. 最低评级4. 最大额定值5. 平均评分6. 归一化平均评级7. 实例数8. 单个用户的最高评分数9. 单个用户的最低评分数10. 单个项目的最高评分数11. 单个项目的最低评分数12. 单个用户的平均评分数13. 单项评分平均数14. 评级偏差15. 评级峰度16. 评级标准差17. 评级差异B. 数据集CaMeLS支持的数据集列表粗体文本表示在评价中使用了数据集Movielens资料来源:https://grouplens.org/datasets/movielens/1. Movielens 100K2. Movielens 1M3. Movielens 10M4. Movielens 20M5. Movielens最新小亚马逊来源:https://nijianmo.github.io/amazon/index.html1. 亚马逊全美2. 亚马逊电器3. 亚马逊工艺品和缝纫公司4. 亚马逊汽车5. 亚马逊图书6. amazon-cds-and-vinyl7. 亚马逊手机及配件8. 亚马逊-服装-鞋子-珠宝9. 亚马逊数字音乐10. 亚马逊电子公司11. 亚马逊时尚12. 亚马逊礼品卡13. 亚马逊杂货店和美食14. 亚马逊工业和科学15. 亚马逊家居厨房16. 亚马逊Kindle商店17. 亚马逊-豪华-美容18. 亚马逊杂志订阅19. 亚马逊影视20. 亚马逊乐器21. 亚马逊办公用品22. 亚马逊庭院草坪和花园23. 亚马逊宠物用品24. 亚马逊优质食品储藏室25. 亚马逊软件26. 亚马逊运动与户外27. 亚马逊工具和家装28. 亚马逊玩具和游戏29. 亚马逊电子游戏图书漂流 来源:https://grouplens.org/datasets/book-crossing/EachMovie来源:http://www.gatsby.ucl.ac.uk/~chuwei/data/EachMovie/eachmovie.htmlJester来源:http://eigentaste.berkeley.edu/dataset/1. Jester32. Jester4C. 算法CaMeLS支持的算法列表Lenskit [14]算法及其官方文档中的描述:1. UserUser:用户-用户最近邻协同过滤。2. ItemItem:项目-项目最近邻协同过滤。3. BiasedMF:使用交替最小二乘法训练的偏置矩阵分解。4. BiasedSVD:使用SciKit-Learn的SVD求解器对隐式反馈进行偏置矩阵分解5. FunkSVD:实现FunkSVD矩阵分解的算法类6. Bias:一种用户项偏差评级预测算法。Surprise [15]算法及其官方文档中的描述1. NormalPredictor:基于训练集的分布(假设为正态分布)预测随机评级的算法。2. 基线:预测给定用户和项目的基线估计值的算法。3. KNNBasic:一个基本的协同过滤算法。4. KNNWithMeans:一个基本的协同过滤算法,考虑到每个用户的平均评分。5. KNNWithZScore:一个基本的协同过滤算法,考虑到每个用户的z得分标准化。6. KNNBaseline:一种考虑基线评分的基本协同过滤算法7. SVD:著名的SVD算法,由Simon Funk在Netflix奖期间推广8. NMF:一种基于非负矩阵分解的协同过滤算法9. SlopeOne:一个简单而准确的协同过滤算法。10. 共聚类:一种基于协同聚类的协同过滤算法。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功