推荐系统总结
推荐系统实验报告小结

一、实验背景随着互联网的快速发展,用户在信息爆炸的时代面临着大量信息的选择困难。
为了解决这一问题,推荐系统应运而生。
推荐系统通过分析用户的历史行为、兴趣爱好等信息,为用户推荐其可能感兴趣的商品、文章、电影等。
本实验旨在通过实际操作,探究推荐系统的基本原理和实现方法。
二、实验目的1. 了解推荐系统的基本原理和常用算法;2. 掌握推荐系统的实现方法,包括数据预处理、特征工程、模型选择和评估;3. 分析实验结果,评估推荐系统的性能。
三、实验内容1. 数据预处理(1)数据清洗:去除重复数据、缺失值和异常值,确保数据质量。
(2)数据转换:将原始数据转换为适合模型处理的格式,如将评分数据转换为0-1之间的数值。
2. 特征工程(1)用户特征:包括用户年龄、性别、职业、兴趣爱好等。
(2)商品特征:包括商品类别、品牌、价格、描述等。
(3)评分特征:包括评分值、评分时间等。
3. 模型选择(1)协同过滤:包括基于用户和基于物品的协同过滤,通过计算用户或物品之间的相似度来实现推荐。
(2)内容推荐:通过分析用户的历史行为和商品特征,将用户可能感兴趣的商品推荐给用户。
(3)混合推荐:结合协同过滤和内容推荐,提高推荐系统的性能。
4. 模型评估(1)准确率:预测正确的推荐数量与总推荐数量的比值。
(2)召回率:预测正确的推荐数量与实际感兴趣的商品数量的比值。
(3)F1值:准确率和召回率的调和平均值。
四、实验结果与分析1. 数据预处理经过数据清洗和转换后,实验数据集包含3000个用户和5000个商品,每个用户对商品的评分数量约为10。
2. 特征工程根据用户和商品特征,构建了用户-商品评分矩阵。
同时,对用户和商品特征进行了编码处理,以便模型更好地理解数据。
3. 模型选择与评估(1)协同过滤模型:实验中选择了基于用户和基于物品的协同过滤模型。
通过计算用户或物品之间的相似度,实现了对用户的推荐。
(2)内容推荐模型:通过分析用户的历史行为和商品特征,实现了对用户的推荐。
人工智能推荐算法工程师个性化推荐系统工作总结

人工智能推荐算法工程师个性化推荐系统工作总结自20xx年起,我一直从事人工智能推荐算法工程师的工作。
在这期间,我负责开发和优化个性化推荐系统,以提供更好的用户体验。
通过不断学习和实践,我积累了丰富的经验并取得了很大的成就。
以下是我对个性化推荐系统工作的总结。
一、工作内容及目标在个性化推荐系统的开发过程中,我的主要工作内容包括数据收集与清洗、特征工程、算法选择与实现、模型训练与评估等环节。
我深入研究用户行为数据,构建用户画像,并针对不同用户需求设计不同的推荐策略。
我的目标是通过优化算法和模型,提高推荐的准确性和覆盖率,从而增加用户对平台的依赖度和黏性。
二、工作亮点与创新在个性化推荐算法的开发中,我尝试了多种经典算法,并进行了改进和优化。
其中,基于协同过滤的算法是我主要研究的方向。
通过深入理解用户行为和兴趣偏好,我提出了一种基于用户兴趣相似度和行为相似度的协同过滤算法。
该算法不仅考虑了用户之间的相似性,还结合了用户行为的变化趋势。
实验结果表明,该算法在准确性和实时性上都取得了显著的改进。
另外,我还尝试了一种基于深度学习的推荐算法。
通过搭建深度神经网络,我成功地提取了用户行为数据中的高阶特征,并将其应用于推荐模型中。
通过大规模的离线和在线实验,我证明了该算法在推荐准确性和用户满意度方面的优势。
三、工作中的挑战与解决方案在个性化推荐系统的开发和优化过程中,我遇到了一些挑战,如稀疏性问题、冷启动问题和时效性问题等。
针对这些问题,我采取了以下解决方案:1. 稀疏性问题:通过引入隐式反馈和加权策略,我提高了用户行为数据的稠密度,并减少了数据的稀疏性。
2. 冷启动问题:通过结合内容推荐和协同过滤算法,我解决了新用户和新物品的冷启动问题,并提供了个性化的推荐结果。
3. 时效性问题:通过引入实时更新的机制,我保证了推荐系统的时效性和实时性,让用户能够及时获得感兴趣的内容。
四、工作成果与评估指标在工作中,我主导了一个个性化推荐系统的开发项目,并取得了良好的成果。
个性化推荐算法总结

个性化推荐算法总结转⾃:对于推荐系统,本⽂总结内容,如下图所⽰:⼀、什么是推荐系统1. 为什么需要推荐系统为了解决互联⽹时代下的信息超载问题。
2. 搜索引擎与推荐系统分类⽬录,是将著名⽹站分门别类,从⽽⽅便⽤户根据类别查找公司。
搜索引擎,⽤户通过输⼊关键字,查找⾃⼰需要的信息。
推荐系统,和搜索引擎⼀样,是⼀种帮助⽤户快速发展有⽤信息的⼯具。
通过分析⽤户的历史⾏为,给⽤户的兴趣建模,从⽽主动给⽤户推荐能够满⾜他们兴趣和需求的信息。
并且,推荐系统能够很好的发掘物品的长尾,挑战传统的2/8原则(80%的销售额来⾃20%的热门品牌)。
从技术⾓度来看,搜索引擎和推荐系统的区别在于:1)搜索引擎,注重搜索结果之间的关系和排序;2)推荐系统,需要研究⽤户的兴趣模型,利⽤社交⽹络的信息进⾏个性化的计算;3)搜索引擎,由⽤户主导,需要输⼊关键词,⾃⾏选择结果。
如果结果不满意,需要修改关键词,再次搜索;4)推荐系统,由系统主导,根据⽤户的浏览顺序,引导⽤户发现⾃⼰感兴趣的信息;3. 推荐系统的定义推荐系统通过发掘⽤户的⾏为,找到⽤户的个性化需求,从⽽将长尾物品准确推荐给需要它的⽤户,帮助⽤户找到他们感兴趣但很难发现的物品。
⾼质量的推荐系统会使⽤户对系统产⽣依赖,因此,推荐系统不仅能为⽤户提供个性化服务,还能与⽤户建⽴长期稳定的关系,提⾼⽤户忠诚度,防⽌⽤户流失。
⼆、推荐系统评测如何判定什么是好的推荐系统?这是评测需要解决的⾸要问题。
⼀般推荐系统的参与⽅有3个:⽤户物品提供商推荐系统提供⽹站因此,评测⼀个推荐系统时,需要考虑3⽅的利益,⼀个好的推荐系统是能够令三⽅共赢的系统。
推荐系统评测,总结图如下:推荐系统评测.png1. 实验⽅法获得评测指标的实验⽅法,通常分3种:离线实验(offline experiment)⽤户调查(user study)在线实验(online experiment)我们分别介绍3种实验⽅法的优缺点。
人工智能营销师智能推荐系统总结

人工智能营销师智能推荐系统总结随着技术的快速发展,人工智能营销师智能推荐系统正在成为当今营销领域的热门话题。
这些系统使用人工智能技术来分析和预测消费者行为,为用户提供个性化的推荐。
本文将对人工智能营销师智能推荐系统进行总结,介绍其特点、应用以及存在的问题。
一、人工智能营销师智能推荐系统特点人工智能营销师智能推荐系统具有以下几个特点:1. 大数据分析能力:人工智能营销师智能推荐系统可以处理海量的用户数据,并从中提取出有价值的信息,为用户提供精确的个性化推荐。
2. 智能学习能力:系统能够通过对用户行为的分析和学习,不断优化推荐算法,提高推荐的准确性和用户体验。
3. 智能匹配能力:系统能够根据用户的偏好和行为特征,将用户与合适的产品或服务进行匹配,从而提高用户的满意度和购买率。
二、人工智能营销师智能推荐系统应用领域人工智能营销师智能推荐系统在各个行业都有广泛的应用。
以下是一些常见的应用领域:1. 电子商务:人工智能营销师智能推荐系统能够帮助电商平台理解用户需求,提供个性化推荐商品,增加购买转化率。
2. 音乐和视频流媒体:通过分析用户的音乐和视频偏好,智能推荐系统可以为用户推荐他们喜欢的歌曲、电影或电视剧,提高用户黏性。
3. 社交媒体:智能推荐系统可以根据用户的兴趣爱好和社交关系,为用户推荐合适的朋友、文章或活动,增加用户参与度。
4. 旅游和餐饮:系统可以根据用户的历史记录和行为,为用户提供个性化的旅游线路或餐饮推荐,提高用户的出行体验。
三、人工智能营销师智能推荐系统存在的问题尽管人工智能营销师智能推荐系统带来了许多优势,但还存在一些问题需要解决:1. 隐私问题:系统需要大量的用户数据来进行分析和预测,这可能引发隐私问题。
用户个人信息的安全和合规性是一个需要重视的问题。
2. 信息过滤问题:有时候,智能推荐系统可能会陷入“过滤泡泡”,只推荐用户已经喜欢的内容,而忽略了新颖和多样性的推荐。
3. 透明度和解释性问题:人工智能算法的复杂性导致推荐过程不透明,用户很难理解推荐背后的原因和逻辑,这可能会降低用户的信任度。
推荐系统综述

推荐系统综述【摘要】“信息超载”问题日趋明显,简单的信息检索已经不能满足用户搜索准确信息的需求,推荐系统应运而生。
尽管推荐系统被广泛应用于电子商务中,但是推荐算法还面临较多难题。
文章首先介绍了推荐系统相关概念、算法,然后分析了这些算法的优劣,最后总结了推荐系统需要解决的一些主要问题和研究方向。
【关键词】推荐系统;信息检索;信息超载1.序言网络和计算机技术的高速发展,使信息资源呈几何级速度增长,“信息超载”[1][2]已越趋明显,而且信息资源的存储方式已发生了质的变化,由结构化文本数据到非结构化图片、音频、视频等数据的转变,增加了信息检索的难度,因此如何寻找到准确信息资源的方法显得尤为重要。
当前,信息检索是解决这一问题的主要方法,其能够满足简单的用户需求,没有个性化的服务,有两种检索方式:分类检索、关键词检索。
分类检索是通过对信息的特征分类,让用户寻找需求的目录类别,从而实现信息查询,但是分类检索暴露出较多的问题:(1)交叉学科不断出现增加了项目分类的难度,无法确定项目的类别;(2)项目分类的规则无法统一,使得分类规则差异较大;(3)用户需要反复查找项目分类,耗时耗力[3]。
关键词检索是目前搜索引擎的主流,通过校对预存储信息和关键词,将匹配度高的信息返回给用户界面,查询速度较快,但是关键词检索的查准率低,用户个性化程度低,任何用户搜索的关键词相同,检索出的结果也是相同的,这不能满足用户需求[4]。
但是推荐系统[5][6][7]能够提供这一个性化服务,能够根据用户的特征,推荐满足用户需求的对象,其主要优点是能够主动收集用户的特征资料,通过对用户个性、习惯、偏好的分析,定制的向用户提供其感兴趣的信息,同时能够及时跟踪用户的需求变化,根据变化自动调整信息服务的方式和内容。
2.推荐系统的概念从1990年代开始,推荐系统逐渐被大家进行研究,其内容涉及认知科学、近似理论、信息检索、管理科学等领域。
很多学者对推荐系统进行了广泛的研究,美国学者ReSnick等人率先提出“推荐系统”一词,并通过对一个典型推荐系统的简单描述给出了推荐系统的定义:推荐系统以所有用户的意见作为输入,对用户的意见进行综合,将有价值的意见提供给某一适合的用户,系统的好坏取决于所提供意见与用户需求之间的匹配程度;GroupLens研究小组从电子商务网站的角度对推荐系统进行了定义:推荐系统采用数据分析技术预测用户对项目的偏好值或为用户产生一个top-N推荐列表,帮助用户搜寻出他们愿意购买的电子商务网站的项目;明尼苏达大学Konstan把推荐系统定义为:推荐系统利用群体意见,帮助群体中每名成员识别其最感兴趣或最能满足其需求的产品或信息。
推荐系统简介

推荐系统简介一、什么是推荐系统在如今的信息爆炸时代,人们面临的信息过载问题日益突出。
推荐系统应运而生,帮助用户从海量的信息中找到个性化的、感兴趣的内容。
简单来说,推荐系统就是通过分析用户的历史行为和偏好,给出个性化的推荐,提高用户体验。
二、推荐系统的应用领域推荐系统的应用广泛,涉及电子商务、社交媒体、新闻资讯等各个领域。
在电子商务中,推荐系统可以根据用户的购买记录和浏览行为,给出个性化的商品推荐,提高购物体验。
在社交媒体中,推荐系统可以根据用户的好友关系和兴趣爱好,推荐适合的内容和用户。
在新闻资讯领域,推荐系统可以根据用户的阅读习惯和兴趣,推荐相关的新闻文章。
三、推荐系统的基本原理推荐系统的基本原理是通过收集和分析用户的行为数据,建立用户模型和物品模型,然后通过匹配用户模型和物品模型,给出个性化的推荐。
具体来说,推荐系统可以采用基于内容的推荐、协同过滤推荐和混合推荐等方法。
基于内容的推荐方法主要是根据物品的特征和用户的偏好,将物品和用户进行匹配。
例如,在电子商务中,根据商品的属性和用户的购买历史,推荐相关的商品。
协同过滤推荐方法是利用用户的历史行为和其他用户的反馈信息,将用户和物品进行匹配。
基于用户的协同过滤是找出和目标用户兴趣相似的其他用户,根据这些用户的行为给出推荐;而基于物品的协同过滤是找出和目标物品相似的其他物品,然后将这些物品推荐给用户。
混合推荐则是将多种推荐方法结合起来,通过加权或者组合的方式给出最终的推荐结果。
四、推荐系统的挑战和发展方向推荐系统虽然已经在各个领域得到广泛应用,但仍然面临一些挑战。
首先,数据稀疏性是推荐系统的一个难题,因为用户的行为数据往往是不完整和不准确的。
其次,推荐系统还需要考虑用户的隐私和安全问题,以保护用户的个人信息不被滥用。
此外,推荐系统还需要解决推荐的多样性和长尾问题,即如何给用户推荐新颖的、多样化的内容。
未来,推荐系统会朝着更加个性化、精准化的方向发展。
人工智能推荐算法工程师推荐系统优化工作总结

人工智能推荐算法工程师推荐系统优化工作总结随着科技的不断进步和互联网的快速发展,人工智能技术在各行各业得到了广泛的应用。
而在电子商务领域,推荐系统的使用越来越普遍。
作为一名人工智能推荐算法工程师,我在推荐系统优化工作中积累了一定的经验和心得。
本文将对我所从事的工作进行总结,并提出一些建议,希望能够对推荐系统的优化有所帮助。
一、工作总结1. 算法模型选择与设计在推荐系统优化工作中,首要任务是选择合适的算法模型。
我主要使用了协同过滤、内容过滤和深度学习等多种算法。
通过分析不同算法的特点和应用场景,并根据实际情况进行模型组合,我成功提升了推荐系统的准确性和用户满意度。
2. 数据预处理与特征工程推荐系统的核心是对海量的用户行为数据进行分析,因此数据预处理和特征工程是至关重要的环节。
我通过数据清洗、归一化、特征选择等手段,有效提高了数据的质量和可用性。
同时,我结合业务需求,对用户行为进行了合理的特征构建,并对特征进行了适当的编码处理,从而提高了模型的预测能力。
3. 算法参数调优与模型评估在推荐系统优化的过程中,我注重算法参数的调优和模型的评估。
我通过交叉验证和网格搜索等方法,寻找最优的参数组合,提高了算法的性能。
同时,我还使用了多种评估指标,如准确率、召回率和F1值等,对模型进行全面评估,确保了优化效果的可靠性和稳定性。
4. 系统性能优化与扩展为了提高推荐系统的运行效率和性能,我进行了系统性能优化和扩展工作。
我通过优化算法的计算复杂度、减少存储空间的占用以及分布式计算等方式,有效提高了推荐系统的响应速度和处理能力。
同时,我还进行了系统架构的调整和扩展,使其能够更好地应对大规模的用户和数据量。
二、优化建议1. 持续学习和研究作为一名人工智能推荐算法工程师,我们要时刻保持对新技术的学习和探索。
只有不断跟进最新的领域发展,才能保证推荐系统的竞争力。
建议通过参加行业会议、阅读最新的研究论文等方式,不断积累新的算法和技术,并及时应用于实际工作中。
推荐系统实践知识点总结

推荐系统实践知识点总结引言随着互联网的快速发展,人们的信息获取渠道也变得更加多样化。
作为一种个性化的信息服务工具,推荐系统已经成为了广大互联网用户日常生活中不可或缺的一部分。
而随着大数据和人工智能技术的不断发展,推荐系统的应用场景也愈发广泛,从电商平台、视频网站到社交网络都能看到推荐系统的身影。
因此,掌握推荐系统的实践知识成为了互联网从业者不可忽视的重要技能。
本文将从推荐系统的基本概念入手,逐步介绍推荐系统的实践知识点,包括数据收集与预处理、特征工程、推荐算法、评估指标、在线实验等内容,旨在帮助读者全面了解推荐系统的实践技能,并能够在实际项目中应用这些知识来构建高效的推荐系统。
第一部分:推荐系统概述1.1 推荐系统的定义和分类推荐系统是指根据用户的个性化需求,利用算法技术将用户感兴趣的信息推荐给他们的一种信息检索系统。
根据不同的推荐对象和应用场景,推荐系统可以分为基于内容的推荐系统、协同过滤推荐系统、混合推荐系统等多种类型。
1.2 推荐系统的应用场景推荐系统在电商、视频网站、社交网络等各种互联网应用中都有着广泛的应用。
通过推荐系统,用户可以更便捷地发现自己感兴趣的产品、视频、社交内容等,提高了用户的满意度和参与度。
第二部分:推荐系统的实践知识点2.1 数据收集与预处理在构建推荐系统时,首先要从数据角度入手,收集和预处理数据是非常关键的一步。
常见的数据收集方式包括用户行为日志、用户画像数据、商品信息数据等,而数据预处理则包括数据清洗、数据特征提取、数据标准化等工作。
2.2 特征工程在推荐系统中,特征工程是指将原始的用户、商品等信息抽取为特征,以便推荐算法能够更好地理解用户和商品的关系。
常见的特征包括用户特征、商品特征、上下文特征等。
2.3 推荐算法推荐算法是推荐系统的核心部分,是决定推荐效果好坏的关键因素。
常见的推荐算法包括协同过滤算法、基于内容的推荐算法、矩阵分解算法、深度学习算法等。
2.4 评估指标推荐系统的评估指标能够反映推荐系统的性能,包括准确率、召回率、覆盖率、多样性等多个方面。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Xiaol v2009-Relevance is more significant than correlation: Information filtering on sparse data本文提出了在针对数据稀疏时,使用相关性信息比关联性信息效果更好,因为在关联性信息中,会用到更多的数据,Recommendation System推荐系统存在的主要挑战:1.Data sparsity.2.Scalability解决该问题的一般方法(28-30)a)有必要考虑计算成本问题和需找推荐算法,这些算法要么是小点的要求或易于并行化(或两者)b)使用基于增量的算法,随着数据的增加,不重新计算所有的数据,而是微调的进行3.Cold start解决该问题的方法一般有a)使用混合推荐技术,结合content和collaborative数据,或者需要基础信息的使用比如用户年龄、位置、喜好genres(31、32)b)识别不同web服务上的单独用户。
比如Baifendian开发了一个可以跟踪到单独用户在几个电子商务网站上的活动,所以对于在网站A的一个冷启动用户,我们可以根据他在B,C,D网站上的记录来解决其冷启动问题。
4.Diversity vs. Accuracy(多样性和精确性)将一些很受欢迎的且高评分的商品推荐给一个用户时,推荐非常高效,但是这种推荐不起多少作用,因为这些商品可以很容易的找到。
因此一个好的推荐商品的列表应该包含一些不明显的不容易被该用户自己搜索到的商品。
解决该问题的方法主要是提高推荐列表的多样性,以及使用混合推荐方法。
(34-37)5.Vulnerability to attacks6.The value of time.7.Evaluation of recommendations8.er interface.除了这些问题外,还有其他的。
随着相关学科分支的出现,特别是网络分析工具,科学家考虑网络结构对推荐的效果影响,以及如何有效使用已知的结构属性来提高推荐。
比如,(45)分析了消费者-商品网络并提出了一个基于喜好边(preferring edges)改进的推荐算法,该算法提高了局部聚类属性。
(46)设计并提高了算法,该算法充分利用了社区结构(community structure)。
随之而来的挑战主要有:带有GPS移动手机成为主流,并且可以访问网络,因此,基于位置的推荐更需要精确的推荐,其需要对人的移动有一个高效预测能力(47、48)并且高质量的定义位置和人之间的相似性的方法。
(49、50)。
智能推荐系统需考虑不同人的不同行为模式。
比如新用户比较喜欢访问popular商品并且选择相似的商品,而老的用户有更不同的喜好(51,52)用户行为在低风险商品和高风险商品之间更加的不同。
(53,54)推荐系统的一些概念网络网络分析对于复杂系统的组织原则的发现是一个万能的工具(5-9)。
网络是由一些元素点和连接点的边组成的。
点即为个人或者组织,边为他们之间的交互。
网络G可用(V,E)表示,V(vertice)为节点的集合,E为边(edge)的集合。
在无向网络中,边无方向。
在有向网络中,边有向。
我们假设网络中不存在回路以及两个节点之间不存在多条边。
G(V,E)图中,一些参数表示是指与节点x连接的节点(即x的邻居)的集合。
即为x节点的度。
即为度为k的所有节点被随机选中的概率,假设度为k的节点有x个,总节点为N,则=x/N。
即网络中的节点个数。
即为网络直径,指在所有节点间最大的距离。
为平均距离,计算公式为:,为x节点到y 节点的距离。
,即给定节点x的聚集系数,即x节点的邻居之间存在的边数/x的邻居对的个数。
,为x节点的个邻居之间的边数网络聚集系数,即为所有节点x(>1)的聚集参数的和的平均。
Bipartite network(由两部分构成的网络)即一个网络G(V;E),如果存在一个分割(V1; V2),使得,并且V1集合的节点与V2集合的节点都有一个边连接。
Web-based user-object networks即为该类网络。
(51、76-78)以下为对分网络的信息来源:/note/19702921//content/10/0601/21/11586_30745105.shtml对分网络即bipartite network,是一个属于复杂网络研究的对象。
在这篇文章里,作者第一次把它引入到推荐系统的应用当中。
依我来看,这是一种非正统的推荐方法,又是去年新发表的文章,兼且我对作者的思路也有一些了解,所以想拿出来介绍一下。
所谓正统的推荐方法,可以参考这里的概述。
发展到现在,比较成熟常用的推荐方法主要可分类为:1、contented-based;2、collaborative filtering;3、hybrid method。
又有以:基于个人历史的推荐、基于社会化的推荐、基于产品的推荐这样的分法。
无一例外地,以描述用户的兴趣为出发点,通过不同的搜索策略,最后落脚于对用户未来兴趣的预测。
与以往不同的是,这篇文章从开始就以网络模型为研究的基本对象,而非网络中的节点,出发点在于网络特性的研究,在解决了对分网络加权映射的问题之后,有点生产副产品意味地把方法应用在推荐系统上。
作者是我的校友,在学期间我也曾经听过他的几次报告,他属于典型的具有理科思维的人。
其物理背景加上一个研究复杂系统、复杂网络的团队,造就了作者喜欢从模型的高度,而非从具体某个问题出发思考的习惯。
所以我觉得这篇文章对于冲淡以往已成定势的推荐系统思维方式,是有好处的。
什么是对分网络如果我们把网络理解为描述现实世界对象间某种关系的数学模型,对分网络就是描述这样的一种特殊的关系:对象可以分为两个集合,如X与Y,关系(即网络的边)仅仅存在于不同集合的节点之间,同一个集合内的节点不存在直接连接,而是通过另一个集合而产生间接关联。
这是一种具有广泛意义的模型,如不同作者通过共同撰写的文章所形成的合作关系;化学物质与化学反应所组成的新陈代谢网络;豆瓣上不同的读者因看一样的书而形成的阅读同好网络;amazon上不同用户因购买共同的商品所构成的购买兴趣网络等等。
对分网络的单模态映射与赋权要使得对分网络具有应用价值,通常要得到同一个集合内元素之间存在的关系,研究上这叫作对X(或Y)的单模态映射(one-mode projection)。
这种映射的结果不单可以实现数据的压缩,并可同时得到极具意义的同一集合内各节点之间的关系。
例如,得到“阅读同好网络”中各个用户之间的兴趣相似度或是书籍之间的相似度,自然要比原始的对分网络更有价值。
怎样给节点的连接边加权是单模态映射及其应用中关键的问题,因为边的权值意味着两个节点关系的密切程度。
比较常见的映射方法可参看图1:对于集合X中的节点x(i)与x(j),如果它们共同地连接了n个Y集中的节点,则x(i)与x(j)的连接权值为n。
但这种方法存在着很多的问题,例如:x(i)与x(j)的连接权值随着n的增加而呈线性增长的趋势,但这并非一种符合现实的描述方式,其实我们可以设想两个作者共同合作的文章数从1增长到2,其意义当然是比从100增长到101要更大,所以有人提出要采用双曲正切函数而非线性函数来对n进行映射。
这些方法我在这里都不再赘述,只介绍作者在文中提出的比较好的一个解决方案:资源-分配过程,来处理这个赋权的问题。
图1,对分网络的单模态映射资源-分配过程(resource-allocation process)见图2,(a)是一个对分网络,上面的三个节点构成一个集合,下面的四个节点构成另一个集合。
设上面三个节点的初始资源值为x, y, z,第一步这些资源根据连接关系流动到另一个集合中(b),流动过程中某节点的资源根据它的“出度”(即从该节点出发的边)而被稀释,如x 有三个“出边”,则每一个终点都得到了x/3。
在资源分配到下面四个节点后,第二步,把资源再流回原来的集合,遵循的原则与第一步是一致的。
这样就得到了原集合最终的资源分配,这个分配是通过两个集合之间的共同连接关系所实现的再分配,携带了这个网络的拓扑结构信息。
对比原资源与最终的资源值,我们可以得到一个矩阵的映射关系,见图3。
这就是资源-分配过程的结果,得到一个从原始资源到最终资源的映射结果。
矩阵中w(i, j)所代表的意义为:对于i来说,j有多大的价值。
这实质上实现了给节点i与节点j的连接赋权这么一个任务。
图2,资源-分配过程图3,资源-分配过程后的映射矩阵个性化推荐到目前为止,我们都只是解决了对分网络中权值分配这么一个问题,最后我们关注的是这么一个问题的解决对于推荐系统有些什么帮助。
(b)根据上面介绍的模型与流程,可以开始把数学抽象与实际问题结合起来了。
现在我们考虑用户看电影这么一个网络,以用户作为一个集合U{u(1), u(2), u(3), …, u(m)},电影条目作为一个集合O{o(1), o(2), o(3), …, o(n)},根据某个用户看过某部电影的关系,我们可以连接两个集合中的对应节点(如果系统记录的是打分关系而非看过关系,可以对打分的分值进行分段处理,较大的分值有连接,较小的无连接),这样就形成了一个用户~电影的对分网络。
下一步,要通过单模态映射来实现对用户的推荐。
假设现在要对用户u(i)进行推荐,该用户看过电影的集合为Oi{o(j), o(j+1), o(j+2), …},如果不考虑电影之间的差别,可以给每一个Oi中的电影都赋予一个初始的资源值1,不在Oi中的电影则资源值为0。
接下来根据上一节介绍的资源-分配过程,让O中的资源从O流向U,再从U流回O。
这样我们可以得到一个从原始O的资源值到最终O的资源值的一个映射矩阵,就像图3那个矩阵一样。
不同的是,现在每一个O都有一个初始的资源值,而不是一个抽象的符号,所以我们可以计算得到每一个O节点的资源值。
最后把所有O节点根据资源值的大小进行排序,把资源值高的并且未为U(i)所看过的电影推荐给他。
即完成对一个用户的推荐。
讨论这种方法来自于复杂网络的研究(用于推荐时作者称该方法为Network-Based Inference, NBI),在某些方面却与协同过滤(CF)有着异曲同工之妙,都是利用一个同好网络进行社会化的推荐。
相比而言,CF的原理更为直接,从矢量计算的角度来理解显得很简单明了。
NBI本质上也利用用户之间的共同兴趣对条目进行划分,但其基础是网络的动力学,看起来并不那么地直观(但喜欢动态变化的人会觉得这个很优美)。
据作者对一个标准数据集的测试结果声称,NBI 在预测性能上相比于CF存在着优势。
推荐系统参数说明:M为用户数;N为对象(object,item)数;i,j代表用户表示方式;、为商品的表示方式;即为用户i对的评价推荐系统分类:基于内容的推荐:推荐的商品是那些与目标用户以前喜欢的商品在内容上相似。