用大数据构建推荐引擎背后的艺术作品
我们生活在一个“长尾”的世界。这意味着大众市场的产品不再能够满足要求定制解决方案的消费者。这种趋势已经从网上零售中出现,特别是杰夫·贝佐斯(Jeff Bezos)的想法,即为一百万不同的消费者开设一百万家不同的商店本质上,这一切归结为建立完善的推荐引擎。创建这样一个工具有多种方法,我们将在稍后讨论,但它们都有一个共同点:大数据。
亨利·福特(HenryFord)和“你想要的任何颜色只要是黑色”的时代早已一去不复返了。其他正在迅速过时的东西是网站过滤器和问问题来缩小选择范围。现代客户希望一旦他们打开一个网站,就能得到他们梦寐以求的东西。在主页滑块上,如果可能的话。
这一趋势在家庭娱乐部门也很明显。试想一下,如果在找到你喜欢的电影之前,你必须先整理上千部电影。不是最成功的商业模式,不是吗?然而,像Netflix和其他类似的流媒体服务这样的电影推荐引擎,可以从你之前选择的内容中获得提示,并建议你下一步可能想看什么。
建立一个伟大的推荐引擎有三种方法,每个引擎都有不同的方法来解决相同的问题。
要了解集群推荐引擎的工作方式,您应该考虑产品包或货架上的产品布局。集群考虑到了它们的功能,并推荐了相辅相成的项。例如,如果您已经在购物车中添加了牙刷,集群引擎将向您展示牙膏。
这些引擎不考虑客户的特定偏好或其他用户购买的东西,所以即使没有大数据的帮助,您也可以构建这样的引擎,除了简单的开箱即用工具之外,还可以使用逻辑和常识。以这种方式构建推荐引擎的唯一问题是,如果您有数百或数千种产品,那么它几乎是无法管理的。
在这些数以千计的产品中,对它们进行聚类将是太费力的,所以算法应该很方便。大数据可以通过自动进行必要的关联来帮助。
获得主动推荐引擎的下一个方法是以客户已经喜欢的方式开始。回到Netflix的例子,如果他们已经观看了两部《魔戒》的主电影,他们最可能会对第三人感兴趣。
在这里,大数据更有用,因为该算法收集了大量的数据点并计算它们之间的相关性。例如,它看电影类型,演员,导演,配乐,甚至拍摄地点。接下来,它扫描数据库以查找与发现的信息相似的项。这种类型的推荐引擎考虑到了客户与服务交互的个人历史,并提出了真正的上下文建议。
如果你刚刚安装了Netflix或者是第一次出现在亚马逊的页面上呢?您的推荐提要不是空的。事实上,你可能从一开始就看到一些好的想法。这些都是根据现有用户的喜好提供的。
开始使用平台并且算法了解更多关于您的信息后,建议将变得更好,因为您将自动分配给具有相似客户的群集。
协同引擎的优势在于它可以用于基于客户现实生活偏好的预测。缺点是,如果类似的用户过去喜欢类似的东西,他们将来也会继续这样做,这是有点不现实的。
在选择前面讨论过的任何方法之前,您需要数据来输入算法。因为任何大的数据努力都是‘垃圾中的垃圾’问题,你也需要确保你拥有的数据是高质量和真实的。
第一步是收集正确的数据。这里的挑战是,最有用的信息是隐含的,来自用户的行为。虽然在联机日志中收集数据很简单,但是过滤正确的信息几乎是一门艺术。这里的困难在于对每个项目给予适当的重视。例如,在电影推荐引擎的情况下,类型还是主要角色更重要?根据观众的不同,答案可能会有很大的不同。
接下来,您需要确保以一种允许您快速访问该数据的方式存储数据,并且该算法可以连续地从该数据中学习。NOSQL数据库为这些项目提供了必要的灵活性和可扩展性,这些项目通常呈指数增长。通过将数据散布在云中的数百个分布式服务器上,这样的存储方式是可能的。
NoSQL数据库的优点在于它提供了存储任何数据的机会,包括诸如评论、评论和意见的非结构化数据。大多数时候,这些都比对数字的评级更有价值,因为您可以深入了解更微妙的偏好。
要创建一个伟大的推荐引擎,最关键的一步是分析数据和识别模式。一些性能最好的系统实时或几乎实时工作,每隔几秒刷新一次。性能最差但仍然可用的解决方案是批处理分析,它主要用于零售,以查看每日或每周的销售情况。
我们可以预期,推荐引擎将变得如此高性能,它们将完全消除搜索的需要。这种方法的危险和缺点是,每个客户都将生活在一个舒适的泡沫中,享受着同样的内容,除此之外几乎没有机会发现其他的东西。我们已经在社交媒体上看到了这种现象--这对我们个人和集体的危险都很大--我们也在YouTube上自动生成的播放列表中看到了我们自己的泡沫。
索菲亚·布鲁克是一名项目经理,拥有10年以上的经验,并在零售、软件、建筑、教育和金融服务等多个行业的项目管理和交付方面取得了良好的记录。