亚马逊AWS官方博客

通过 Amazon Personalize 扩展科学产品组合并适应不断变化的世界

这是赛默飞世尔的大卫·史密斯写的的客座文章。用他们自己的话说,赛默飞世尔(Thermo Fisher 是科学服务领域的世界领导者。我们的使命是帮助客户使世界更健康、更清洁、更安全。我们帮助客户加速生命科学领域的研究、解决在分析领域所遇到的复杂问题与挑战、促进医疗诊断和治疗的发展、提高实验室生产力。 生命科学的研究人员在一个正在快速变化的行业里从事着越来越复杂的工作。随着最近对COVID-19大流行的关注,世界各地的科学家都在显微镜下努力工作以便提供有效的治疗方案。在赛默飞世尔(Thermo Fisher,我们的驱动原则是,向这些研究人员以及像他们一样的人,向他们提供研究世界最紧迫问题所需的工具和材料。 我们销售的专业产品始终需要个性化的客户体验。我们销售几乎所有与科学工作相关的产品,从实验室用具和化学试剂等日常必需品到基因测序的专门仪器。我们的目标是让我们的客户知道他们可以在赛默飞世尔(Thermo Fisher获得他们所需要的一切。基于传统的处理方式,我们由专门的商业销售团队通过培训,然后让销售人员针对特定产品采用特定的营销方式。在当今世界中,客户数据来源于许多不同的地方,这使得我们的销售团队越来越难以了解客户需要哪些产品用于他们的研究工作。 在过去的三年中,我的团队为这些销售团队维护了一个自定义门户,他们可以在其中查看客户的全面的数据信息。这种快速变化的环境为我们提供了一个独特的机会,让我们利用数据科学,在正确的时间为正确的客户提供个性化的产品推荐。 在这篇文章中,下来我将讨论我们为什么决定使用 Amazon Personalize,以及我们是如何使用的,并如何将决策授权给我们的团队,以及如何在不断发展的生态系统中提供高度个性化的多渠道内容。

第一代推荐系统

我们的团队最初开发了基于规则的推荐系统,该系统基于内部科学家领域知识构建的内容,并在 Amazon Redshift集群中使用 SQL 进行查询。 我们这个系统已经构建并使用了一年,而且运行良好,但随着数据量的增长,我们的团队花费了越来越多的时间来维护这个系统。我们觉得目前的基础架构无法跟不上趋势,因此我们希望迁移到完全无服务器(Serverless)的基础架构,以提高可扩展性和容错性。下图说明了我们的推荐系统架构。 我们发现的另一个风险是,为了理解产品与客户的适配关系,我们的推荐必须依赖于内部的内容创建流程。虽然这个工具很强大,但是我们一直在努力提高新产品或最近推出的产品的推荐效果。对于推荐系统来说,这是一个典型的”冷启动”问题,我们对任何新系统的要求之一就是,它可以在不增加维护成本的情况下能够实现新产品的推荐。

自定义推荐系统

我们的团队最初是找的第三方供应商来帮助我们改进推荐系统。但是,我们发现购买解决方案实施成本高昂,而且我们还需要牺牲在商业组织中运营所需的一些灵活性。我们最终决定不购买现成的解决方案。 最终得出的结论是,我们将从头开始构建一个基于自定义机器学习 (ML) 的系统。我们尝试了几个不同的选项,包括分层循环神经网络 (HRNN) 模型。最终,我们确定了一个 factorization machine 模型,它可以作为性能、易于实现和可扩展性的最佳组合。

个性化推荐

大约 8 周后,我们结束了模型开发和验证的初始阶段,新系统运行良好。新系统大大改进了我们的预测,并且我们从我们发送的一些示例建议中收到了良好的反馈。 当我们的团队了解 Amazon Personalize 时,我们正准备用新解决方案升级我们的推荐系统。两个月前我们评估了现成的解决方案,在了解Amazon Personalize 之后我们立即发现 Amazon Personalize 在灵活性、可扩展性和可度量性之间拥有理想的平衡。 后来我们决定使用 Amazon Personalize 测试运行一些初始测试,以查看它在真实数据上的表现,并了解实现它需要付出多少努力。我们花了2 天时间准备数据、训练模型并开始生成高质量的推荐。

无服务器基础架构

在为科学产品建议设计基础架构时,可扩展性和容错性是我们的首要任务。我们还想要一个系统,使我们能够直观地监控进度和跟踪错误。 我们选择使用 AWS Step Function构建我们的推荐推理流程的主干,使用定制的 AWS Lambda 函数从我们的 Amazon Redshift 集群中提取数据,为 Amazon Personalize引入数据集做好准备,并触发和监控 Amazon Personalize作业。下图说明了此推理流程。

不断变化的世界中的灵活性

与许多公司一样,当 COVID-19 大流行袭来,世界各地的企业转向在家工作政策时,我们的客户的习惯也发生了明显的改变。他们对使用电子邮件广告活动,实现多渠道营销的需求明显增加。 我们的团队收到使用我们基于 AmazonPersonalize 构建的推荐系统以实现特定产品电子邮件推荐的需求。尽管我们从未为此计划过,但我们只用了一周时间就将现有的无服务器推理流程进行了修改,以构建、测试和验证一个专门为电子邮件推荐而构建的全新推理流程。需求的快速变化总是具有挑战性的,但我们致力于构建可扩展且灵活的基础架构,这使我们能够克服团队在管理 ML 部署和基础架构时所面临的许多传统挑战。下图说明了电子邮件推理流程的体系结构。 尽管需求的开发时间短,但我们根据这些推荐发送的电子邮件所产生的效果明显要好于之前的基线标准。 让我们再回头看下,这是显而易见的,如果我们选择部署自定义的分理化机器( factorization machine )模型而不是使用 Amazon Personalize,那么满足此次需求的的难度会大大增加。

总结

赛默飞世尔(Thermo Fisher)一直努力帮助世界各地的科学家解决我们面临的一些最大挑战。借助 Amazon Personalize,我们极大地提高了我们了解客户工作的能力,并通过多种渠道为他们提供个性化体验。使用 Amazon Personalize 使我们能够专注于解决难题,而不是管理 ML 基础架构。

 

本篇作者

David A. Smith

大卫·史密斯(David A. Smith )是加利福尼亚州卡尔斯巴德的赛默飞世尔(Thermo Fisher)科学公司的数据科学家。他与跨组织团队合作,设计、构建和部署自动化模型,以驱动客户智能并创造业务价值。他的兴趣包括 NLP、无服务器 ML 和区块链技术。工作之多,大卫喜欢攀岩,打网球,或游泳。