Press "Enter" to skip to content

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本

在流媒体领域,每一次在Amazon Music上的搜索都蕴含着一个故事、一种情绪或一股等待被揭示的情感洪流。这些搜索不仅是发现新事物、珍藏经历和持久回忆的门户,而且更代表着数以百万计的活跃用户迈入了Amazon Music丰富多样的世界。

为了即时找到用户搜索的音乐并提供卓越的客户体验,需要一个智能而响应迅速的平台。Amazon Music使用人工智能的力量来实现这一目标。然而,在高峰时段管理用于搜索栏功能(如实时拼写检查和向量搜索)的AI模型的训练和推断成本,以优化客户体验是困难的。

Amazon SageMaker提供了一套端到端的服务,允许Amazon Music在AWS云上轻松构建、训练和部署,减少了不必要的繁重工作。SageMaker负责处理繁琐的任务,让您集中精力研究机器学习(ML)模型,而无需担心基础设施等方面的问题。作为共同责任模型的一部分,SageMaker确保他们提供的服务可靠、性能优越、可扩展,而您则要确保ML模型的应用充分发挥SageMaker的能力。

本文将介绍Amazon Music通过使用SageMaker和NVIDIA Triton Inference Server以及TensorRT来优化性能和成本的过程。我们将深入探讨看似简单但复杂的搜索栏如何工作,以确保在Amazon Music世界中的旅程不受令人沮丧的拼写错误和相关实时搜索结果的影响。

Amazon SageMaker和NVIDIA: 提供快速、准确的向量搜索和拼写检查功能

Amazon Music提供了超过1亿首歌曲和数百万个播客剧集的庞大音乐库。然而,找到合适的歌曲或播客可能是具有挑战性的,特别是当您不知道确切的标题、艺术家或专辑名称,或者搜索的查询非常宽泛,比如“新闻播客”。

Amazon Music采用了双管齐下的方法来改进搜索和检索过程。第一步是引入向量搜索(也称为基于嵌入的检索),这是一种机器学习技术,通过使用内容的语义帮助用户找到他们正在寻找的最相关内容。第二步涉及在搜索堆栈中引入基于Transformer的拼写更正模型。对于搜索音乐来说,这可能特别有帮助,因为用户可能并不总是知道歌曲标题或艺术家姓名的确切拼写。拼写更正可以帮助用户找到他们正在寻找的音乐,即使他们在搜索查询中拼写错误。

在搜索和检索流程中引入Transformer模型(用于向量搜索所需的查询嵌入生成和Spell Correction中的生成Seq2Seq Transformer模型)可能会显著增加总体延迟,对客户体验产生负面影响。因此,我们优化向量搜索和拼写更正模型的实时推断延迟成为重中之重。

Amazon Music与NVIDIA合作,通过使用SageMaker实现了拼写检查和基于向量搜索技术的搜索栏,为用户带来最佳的客户体验。解决方案包括使用由NVIDIA A10G Tensor Core GPU提供支持的SageMaker托管,SageMaker支持的NVIDIA Triton Inference Server容器和NVIDIA TensorRT模型格式。通过将拼写检查模型的推断延迟在高峰时刻降低到25毫秒,并将搜索查询嵌入生成延迟平均降低63%,成本降低73%,与基于CPU的推断相比,Amazon Music提升了搜索栏的性能。

此外,在训练AI模型以提供准确结果时,Amazon Music将其BART序列到序列拼写更正Transformer模型的训练时间增加了12倍,通过优化GPU利用率节省了时间和金钱。

Amazon Music与NVIDIA合作,优先考虑客户搜索体验,打造了一个具有优化的拼写检查和向量搜索功能的搜索栏。在接下来的几节中,我们将分享更多关于如何进行这些优化的信息。

优化使用NVIDIA Tensor Core GPU进行训练

仅仅获得一台NVIDIA Tensor Core GPU用于大型语言模型训练是不够的,必须在训练过程中进行关键的优化步骤,以充分发挥GPU的利用率。然而,未充分利用的GPU无疑会导致资源的低效使用、训练时间延长和运营成本增加。

在Amazon Music的SageMaker ml.p3.24xlarge实例(8个NVIDIA V100 Tensor Core GPU)上进行拼写校正BART(bart-base)转换器模型的初始训练阶段,GPU利用率约为35%。为了最大化NVIDIA GPU加速训练的效益,AWS和NVIDIA解决方案架构师支持Amazon Music在优化方面进行了识别,特别是批量大小和精度参数。这两个关键参数影响深度学习模型的效率、速度和准确性。

优化的结果使得V100 GPU的利用率大幅提高,保持在89%左右,将Amazon Music的训练时间从3天缩短到了5-6小时。通过将批量大小从32增加到256,并使用自动混合精度训练等优化技术,而不仅仅使用FP32精度,Amazon Music能够节省时间和金钱。

下图显示了优化后GPU利用率提高了54%。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第1张

下图显示了加速训练时间。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第2张

批次大小增加使NVIDIA GPU能够在多个Tensor Core上同时处理大量数据,从而加快了训练时间。然而,需要注意在内存方面保持平衡,因为较大的批次大小会需要更多的内存。增加批量大小并使用混合精度可能对释放NVIDIA Tensor Core GPU的能力至关重要。

模型训练达到收敛后,就是优化以在Amazon Music的搜索栏上进行推断部署的时候了。

拼写校正:BART模型推断

借助SageMaker G5实例和NVIDIA Triton推理服务器(一款开源的推理服务软件),以及NVIDIA TensorRT(一款用于高性能深度学习推断的SDK,包含推理优化器和运行时),Amazon Music将其拼写检查BART(bart-base)模型服务器推断延迟限制在高峰时段仅25毫秒。这包括负载均衡、预处理、模型推断和后处理时间等开销。

NVIDIA Triton推理服务器提供两种不同的后端:一种是用于在GPU上托管模型,另一种是Python后端,在其中可以使用自定义代码用于预处理和后处理步骤。下图说明了模型集成方案。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第3张

Amazon Music通过在CPU上运行预处理(文本标记化)和后处理(标记转文本)步骤来构建其BART 推断流水线,而模型执行步骤则在NVIDIA A10G Tensor Core GPU上运行。Python后端位于预处理和后处理步骤之间,并负责与转换为TensorRT的BART模型以及编码器/解码器网络进行通信。TensorRT通过精度校准、层和张量融合、内核自动调优、动态张量内存、多流执行和时间融合提升推断性能。

下图说明了组成拼写纠正器BART模型推理管道的关键模块的高级设计。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第4张

向量搜索:查询嵌入生成句子BERT模型推理

以下图表显示,与基于CPU的基准相比,使用NVIDIA AI推理平台时延(p90 800-900 TPS)提高了60%。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第5张

以下图表显示,与基于CPU的基准相比,使用NVIDIA AI推理平台成本降低了70%。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第6张

下图说明了用于高性能深度学习推理的SDK。它包括一个深度学习推理优化器和运行时,为推理应用程序提供低延迟和高吞吐量。

亚马逊音乐如何利用SageMaker与NVIDIA优化机器学习训练和推理性能及成本 四海 第7张

为了实现这些结果,亚马逊音乐尝试了几种不同的Triton部署参数,使用了Triton Model Analyzer,这是一个帮助找到最佳NVIDIA Triton模型配置以部署高效推理的工具。为了优化模型推理,Triton提供了动态批处理和并发模型执行等功能,并具有对其他灵活性能力的框架支持。动态批处理将推理请求收集起来,无缝地将它们组合成群,以最大化吞吐量,同时确保对亚马逊音乐用户作出实时响应。并发模型执行能力通过在同一GPU上托管模型的多个副本进一步提高推理性能。最后,通过利用Triton Model Analyzer,亚马逊音乐能够仔细调整动态批处理和模型并发推理托管参数,找到最佳设置,以最大化使用模拟流量的推理性能。

结论

通过在SageMaker上使用Triton推理服务器和TensorRT进行优化配置,亚马逊音乐在训练和推理管道中取得了出色的结果。SageMaker平台是端到端开放平台,用于生产AI,提供快速的投入产出和支持硬件和软件的主要AI用例的多样性。通过优化V100 GPU在训练中的利用率,并切换从CPU到使用NVIDIA A10G Tensor Core GPU的G5实例,以及使用优化的NVIDIA软件,如Triton推理服务器和TensorRT,像亚马逊音乐这样的公司可以节省时间和金钱,同时提高训练和推理的性能,直接转化为更好的客户体验和更低的运营成本。

SageMaker可以处理机器学习训练和托管的不可区分的繁重工作,使亚马逊音乐能够在硬件和软件上提供可靠、可扩展的机器学习操作。

我们鼓励您通过始终评估硬件和软件选择以查看是否有办法在降低成本的同时实现更好的性能,来检查您的工作负载在SageMaker上是否进行了优化。

要了解有关AWS中的NVIDIA AI的更多信息,请参阅以下内容:

Leave a Reply

Your email address will not be published. Required fields are marked *