Fetch 如何构建世界级机器学习模型,支持其业务

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 Fetch 是一款领先的购物忠诚度应用程序,它从购买[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型转向构建自己的模型。在 18 个月的时间里,他们建立了8个模型,用于扫描、处理、消除欺诈、个性化和预测。在本论坛中,学习 Fetch 如何构建他们的团队,如何将 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 作为[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)平台,以及如何训练和部署关键模型。自从将 SageMaker 用于[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工作以来,Fetch将其文档理解模型的准确性从 30%提高到 90%,并将用户的延迟减少了 50%。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共1200字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 萨姆·科齐恩(Sam Corzine)担任消费奖励应用Fetch Rewards公司的首席[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工程师,他经常谈论该公司如何构建世界一流的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型以推动业务发展。他强调,Fetch每天处理高达1100万张收据,每秒新增100张收据进入其系统。这些大量的数据流是Fetch产品的基础——用户通过扫描商店收据来赚取积分。为了处理如此庞大的数据量,Fetch必须构建定制化的ML管道以满足其特定需求。 直到三年前,Fetch尚未具备内部[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)能力。他们曾依赖第三方服务来完成收据扫描等核心功能。然而,随着用户数量每年翻一番,Fetch意识到这些解决方案已不再可持续。这不仅导致高昂的成本,而且使Fetch无法控制关键过程的优化。更糟糕的是,当算法出现错误时,Fetch无法进行任何改进,只能向用户道歉。 因此,Fetch的领导层决定亲自解决这个问题。尽管他们没有足够的知识来从头开始构建收据扫描管道,但他们意识到[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)可能参与其中。在相对较短的时间内,Fetch从仅有几名数据分析师扩展到了拥有超过30名[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)和数据科学团队的成员。 Fetch的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工程师和数据科学家直接融入项目团队,而不是在一个集中接收模型请求的数据科学小组中。萨姆解释道,这种结构对Fetch的收据扫描项目非常有效。随着模型开发者与负责后台系统和移动应用的工程师紧密合作,它可以最大限度地减少可能影响实际部署的脱节。 当萨姆刚开始参与收据扫描项目时,他们没有任何可投入使用的模型。渴望开始自动化,他的初始想法是建立管道。然而,回顾过去,这个想法最终被证明是错误的。几个月后,随着建模策略的发展,他最终删除了无用的Airflow管道。基于这一经验,萨姆强烈建议在开始任何[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)项目之前先进行端到端的演示。 在Fetch公司,一个小型团队正在开发一个用作原型的Streamlit应用程序。该应用程序无需追求高速或高性能,只需展示如何使用[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)解决业务问题的可行途径。在建立这一基本概念验证之前,Sam提醒道,在该项目的关键阶段,不要安排超过1到2个人的工作。 一旦Streamlit演示验证了发展方向,下一步便是将后端组件进行拆分。这将为实现项目的最终目标奠定基础——将Streamlit应用作为一个调用在新的后端服务上的瘦客户端集成。Sam非常喜欢这种从快速原型到简化生产系统的逐步推进。 在后端架构模式方面,Fetch公司主要依赖于通过Go服务调用包含Python模型实现的SageMaker终端。这种方式实现了关注点的分离,使得业务逻辑能够独立于[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型代码而存在。 Sam分享了一个关于将过多逻辑直接放入SageMaker终端的危险故事。在一次部署过程中,他们在一个终端中构建了一个大型库。然而,当他们想在该管道中添加一个新的模型时,他们发现需要将库拆分为自己的服务。由于有5%的实时流量流经这个复杂的终端,这导致了性能问题,并在正在进行的启动过程中需要进行紧急重新设计。 在[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)项目开始时,Sam建议将其视为两个并行的轨道——以部署和扩展为重点的工程学方面,以及以提高准确性为重点的建模方面。 在工程方面,Sam非常推崇影子流水线。因为Fetch公司的ML模型总是在替换某些已经在生产的现有启发式系统。尽管一个新模型在测试数据上可能表现良好,但其实际性能往往令人惊讶。因此,Fetch会对新模型的预测结果进行记录,以便与旧系统进行比较。 这项技术在推出Fetch的扫描流水线时证明了自己的价值。在处理100%的实时流量一个月后,他们终于有信心地转向了新的系统。Sam称这是他职业生涯中最平静、最受控的启动之一。 在调整模型服务器方面,据Sam表示,相较于典型的后端服务,[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工作负载具有更高的延迟性。Fetch公司的服务响应时间目标为10毫秒,但大多数深度学习模型都难以达到这一标准。因此,需要对架构进行调整,以应对更多的开放连接和类似的需求。 Sam提出了一种具体的解决方案,即根据每秒请求数而非CPU使用率进行自动扩展。由于模型服务器的吞吐量存在上限,一旦流量超过此限制,队列将迅速堆积,导致延迟高峰,进而使整个系统陷入停滞状态。因此,与仅关注CPU使用情况相比,每秒请求数是衡量扩展需求的更合适指标。 在数据科学领域,Sam强调,高质量的训练数据反映了真实领域的实际情况,这对于任何[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)项目都非常关键。尽管这是常识性的建议,但收集正确的数据能够释放其他所有功能的潜力。随着预训练模型的不断优化,针对特定领域进行微调的模型随着时间的推移将变得越来越出色。 在项目初期,Sam建议在收集足够好的数据来训练初始模型方面寻求创新方法,以便验证概念,然后再投入更多的人力资源。 For instance," as Sam explained, "partners can now run targeted promotions based on users' purchase preferences and behaviors. Therefore, if a company wants to reach customers who have purchased certain products, Fetch's intelligent targeting function can achieve this. Through deep insights into receipts and products, real-time processing of rewards becomes possible when users make qualified purchases." Looking to the future, Fetch is heavily investing in personalized, recommendation, and generative AI. The vast amount of purchase data they possess offers immense opportunities for advanced targeting and insights. Despite significant challenges in terms of throughput and infrastructure, Sam seems optimistically convinced that the foundation for Fetch's machine learning journey is in place and will continue to accelerate. **下面是一些演讲现场的精彩瞬间:** 费奇(Fetch)作为一家领先的数字原生企业,同时也是Amazon Web Services的客户,这标志着公司成长和创新的一个重大时刻。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_0.png) Amazon Web Services致力于帮助企业像数字原生企业一样发展和创新其数字战略。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_1.png) 演讲者详细介绍了费奇的工程架构,包括配备有嵌入式数据科学家的跨职能、独立项目团队,这有助于在开发和部署[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型过程中减少脱节现象。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_2.png) 费奇奖励(Fetch Rewards)最初部署的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型主要关注欺诈检测,以便在不良行为者兑换礼品卡之前将其揪出。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_3.png) 费奇的文档理解功能使得用户能够扫描任何商店的任何收据以获得个性化的财务洞察。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_4.png) 领导者强调,Amazon Web Services认识到在SageMaker端点内拥有庞大库可能导致效率低下,从而激发了一种将模型分离到管道中的变革方法。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_5.png) Amazon Web Services支持通过异步数据流为核心ML管道增加一次性任务。 ![](https://d1trpeugzwbig5.cloudfront.net/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business/images/rebranded/SEG301-How_Fetch_built_world_class_ML_models_to_power_their_business_6.png) ## 总结 萨姆·科齐恩(Sam Corzine)是Fetch Rewards公司的首席[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)工程师,他在该公司如何构建世界一流的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型以支持其业务的演讲中提供了深刻的见解。 他首先介绍了Fetch的背景,这是一个每日扫描超过1100万张收据的消费者奖励应用。他们产品的核心在于快速、准确地提取结构化收据数据,以便用户可以获得积分。由于规模庞大,Fetch意识到他们需要建立自己的内部文档扫描流程,该流程由[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)驱动,而不是依赖第三方解决方案。 多年来,Fetch的数据科学和ML工程团队已经从寥寥无几发展到了超过30人。萨姆随后详细介绍了Fetch在开发[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型时采用的关键模式:在完全投资一个项目之前,使用Streamlit构建端到端演示来证明可行性;将模型作为微服务部署在后端领域驱动的服务后面;使用影子管道在生产系统旁边运行模型以捕捉错误;关注收集高质量的训练数据并在早期迭代注释需求;不断进行实验并用MLflow之类的工具跟踪模型实验。 他强调了他们的成功,即Fetch现在已经在生产中运行多个[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模型,每周扫描数百万张收据。这使Fetch能够快速改进其产品。萨姆最后展望了未来,分享了Fetch如何利用其在[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)方面的进展来实现个性化推荐,从而更好地为用户提供服务。 ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站! [2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站") [点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯! [点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯! ## 即刻注册亚马逊云科技账户,开启云端之旅! [【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“") [【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭