在线市场正在快速增长:Statista 估计电子商务收入将达到到 2021 年增长到 4.88 万亿美元,因此,如果您决定扩展您的商业活动并使您的业务数字化,那么您不要忽视任何互联网业务的关键部分:推荐系统。
这篇博文将研究三种主要类型的推荐系统,并探讨构建定制软件的好处,例如 Python 中的推荐系统。
什么是推荐系统?
推荐系统是机器学习为潜在买家提供最佳建议的技术。他们建议购买最相关的物品,从而增加公司的收入。这些建议基于用户的行为和历史,其中包含有关他们过去偏好的信息。
此类系统不仅用于数字商店,例如亚马逊上的推荐。它们还帮助我们选择 Netflix 上的电影、Pandora 上的音乐、YouTube 上的视频、Facebook 和 LinkedIn 上的联系人、TripAdvisor 上的访问地点以及 Google 地图上的咖啡馆和剧院。他们甚至定制我们在 CNN 上获得的新闻。
这些系统如何成功地处理这些不同的领域?这是可能的,因为他们对每个人都使用了特定的方法。让我们看看这些系统是如何工作的。
推荐系统的类型及其工作原理
最常见的推荐系统方法是:
协同过滤
基于内容的系统
基于知识的系统
协同过滤
协同过滤(也称为基于用户的方法)处理和分析用户过去的偏好历史,发现他们选择的相似性,并根据用户的偏好对用户进行分类。然后系统根据最佳匹配给出推荐。这个想法是,具有共同兴趣的用户将来更有可能选择相同的项目。
例如,如果 John 和 Mark 都给Thor: Ragnarok (Marvel)打了 5 星,而 John 也给了Avengers: Infinity War 5 星,那么系统也会向 Mark 推荐Avengers,前提是用户的偏好相似.
系统如何找到这些偏好?协同过滤主要有两大类:
显式评级 是一种直接民意调查,其中用户按比例评估项目。项目获得的积分越多,它在其他用户中就越受欢迎。
隐式评分 采用间接方法,其中用户的“反馈”(动作)使用点击、页面浏览、跳过不感兴趣的视频或音乐曲目以及其他用户动作来形成。
协同过滤的优点:
它不依赖于可能不完整或不准确的项目描述和类别。
它允许用户的口味和偏好更加灵活,依赖于用户反馈而不是固定的项目功能。
它可以利用相似用户的购买成功预测用户购买的不相关商品。
这种方法的缺点:
将系统投入运行需要大量数据,因为它取决于用户的反应。
由于他们的“空白”历史,它通常很少向新人推荐,这意味着该程序无法对他们进行分类。
通过将用户分成几类,该程序平均了非普通的选择,给出了微不足道的建议。
如果没有用户评估站点上的新项目,系统将简单地忽略该项目。这称为“冷启动”。为避免冷启动,该项目通常以有意调整的评级引入网站。
这种方法的最后一个缺点是计算的规模。考虑到用户的偏好,计算推荐需要大量的精力,尤其是当用户数量达到数十万时。
基于内容的方法
基于内容的方法依赖于项目的标准,不需要其用户进行交互或提供任何反馈。
每个项目都有自己的类别 - 流派、歌手、专辑、年份等 - 和描述,关于产品的文本信息。使用这些属性,系统将尝试根据用户的兴趣为他们找到最佳匹配,并提供最好的可用项目。
基于内容的方法有两种工作方式:
借助自然语言处理 (NLP) 的一部分,词频-逆文档频率 (TF-IDF)。它计算一个项目描述中重要的匹配词的数量,并使用它来计算它的值;影响词的频率越高,匹配越好。
通过创建用户和项目配置文件并利用用户评价的内容。例如,如果您对摇滚音乐曲目给予很高的评价,比如说Nirvana – Smells Like Teen Spirit on SoundCloud,该服务将为您提供更多摇滚曲目,例如System of a Down's Chop Suey和AC/DC 的 Highway to Hell,因为系统假定摇滚音乐是您的偏好。
基于内容的方法的优点:
有多少用户对您网站上的项目进行评分并不重要;该系统可以通过仅利用个人用户和项目的配置文件来形成体面的推荐。
系统可以解释为什么它使用一组类别推荐某个项目。
它避免了“冷启动”。系统不必汇总来自其他用户的特定数量的偏好来推荐新项目。
这种方法的缺点:
加速问题:在每个用户或项目有足够的数据之前,系统将无法充分发挥作用。
如果项目的配置文件缺少描述,或者如果信息没有有效地系统化以定义用户兴趣,则系统可能无法提出推荐。
由于所有的数据都建立在一个用户的好恶上,系统没有提供太多的选择,所以它推荐的内容在某种程度上是可以预测的。
当没有太多关于用户偏好的信息时,系统无法为新手提供太多信息。
由于协同过滤和基于内容的方法的核心不同,许多企业更喜欢混合使用这两者,从而使他们的推荐系统更有效。
基于内容的方法通常通过协同过滤来实现,以整理出后者的结果。例如,购买 R 级(受限)电影的成年人可能还会购买儿童玩具,因此向可能购买玩具的 18 岁以下用户推荐这些电影可能不是一个好主意。
基于知识的系统
另一种推荐方法是基于知识。这包括一系列产品、用户偏好和推荐指南。在以下情况下被广泛采用:
很少购买物品时,例如房地产或汽车
当用户想要选择项目的特定功能时,例如特定日期和地点的旅行或机票
当时间和功能很重要时,例如,对于需要从型号、年份、技术特征和其他参数中进行选择的各种电子设备
基于知识的方法中给出建议的过程可以分为两类:
基于约束的推荐, 当用户必须回答一组问题来定义所需项目的特征并过滤掉不必要的特征时。例如,如果客户想购买笔记本电脑,他或她可以设置以下约束:年份(2018、2019 等)和类型(Linux、Windows、Mac 等)。然后,系统将仅提供具有所述功能的笔记本电脑。
在 基于案例的推荐中,项目首先被推荐给用户。用户指定他或她的请求以找到最佳匹配。例如,如果用户在一个网站上检查几部手机,他或她可能已经选择了一个型号,但它有点贵,所以他们提出“我喜欢这样的手机,但价格更低。 ” 系统会找到请求的手机,尽管某些手机功能可能与原始型号不完全相同。
基于知识的方法的优点:
它在协同过滤和基于内容的方法无能为力的网站上很有效。
由于该方法不依赖于用户的个人口味,因此很容易避免“冷启动”和加速问题。
用户可以通过调整特定的项目功能来精确定义他们的偏好。
当谈到这个系统的缺点时,它们主要是由网站的具体情况引起的。例如,
当用户不专注于任何特定项目时,他或她不太可能对使用系统感兴趣
当涉及到文本和文章时,某些特征无法指定
当其他用户的反馈至关重要时
第四个选项:自定义
在为您的业务需求选择完美的推荐系统时,很明显上述解决方案并不适合您。它们可能满足您的一些需求,但不是全部。
面对这些情况,公司通常选择使用定制软件解决方案,例如用 Python 构建的推荐系统,它可以实现协作、基于内容和基于知识的系统的功能,以创建更合适的程序。
定制的优势:
它可以评估多个参数以创建满足业务需求的独特解决方案。
当所有其他方法都未能取得进展时,这是一个有效的系统。
它确保企业能够更好地为客户提供所需的产品和服务,从而提高业务和收入。
这种方法的缺点:
在开始开发推荐引擎之前,组织应该有一个明确的目标,即他们需要它如何工作。
使用定制软件意味着与内部或外部的软件工程师密切合作,并且需要为此充分分配资源。
推荐系统的最后一句话
为了成功地为您的数字平台选择正确的推荐系统,作为一家企业,您需要确定您想要发展在线形象的方向。
用户反馈重要吗?
您希望拥有多少用户?
你打算提供什么产品?
您的网站将如何推荐产品?
您将通过什么方式处理加速和“冷启动”问题?
产品选择将如何运作?
这样做,您将能够更好地决定三个系统中的哪一个最合适,或者您是否应该考虑使用定制软件方法来促进您的业务并确保其成功。
相关帖子DA内容精选
|