北京2023年5月26日 /美通社/ -- 在亞馬遜,有這樣一支負責搜索的團隊正在利用深度學習技術(shù)幫助公司內(nèi)各個團隊從數(shù)據(jù)中獲取智能。它就是M5搜索團隊,正在構(gòu)建大模型以支持亞馬遜的機器學習(ML)應(yīng)用程序。借助亞馬遜云科技的服務(wù),M5搜索團隊能夠運行數(shù)百億參數(shù)模型的深度學習實驗。M5搜索團隊使用多種亞馬遜云科技服務(wù)構(gòu)建、訓(xùn)練和部署多模態(tài)的大型機器學習模型。如今,M5搜索團隊整合了數(shù)據(jù),簡化了創(chuàng)建大模型的過程,亞馬遜各個團隊都可以使用這些模型,為他們的機器學習應(yīng)用程序帶來深度學習的強大能力。
利用深度學習賦能亞馬遜各團隊
作為一家擁有超過160萬員工的跨國科技公司,亞馬遜由許多不同的團隊組成,各團隊的業(yè)務(wù)重點和優(yōu)先事項也都不盡相同。其中,亞馬遜搜索致力于開發(fā)產(chǎn)品和服務(wù)以提高亞馬遜網(wǎng)站上的終端用戶體驗。亞馬遜搜索應(yīng)用科學和工程負責人Belinda Zeng表示:"亞馬遜搜索是連接不同產(chǎn)品的橋梁,能在不同產(chǎn)品中建立協(xié)同,助力業(yè)務(wù)發(fā)展。為了解釋豐富的數(shù)據(jù)集信息,我們構(gòu)建了預(yù)訓(xùn)練模型,從而利用深度學習來增強亞馬遜的搜索功能。"
M5搜索團隊負責亞馬遜的發(fā)現(xiàn)式學習策略,并構(gòu)建多模態(tài)大模型,支持多語言、多實體和多任務(wù)。本質(zhì)上很多工作是實驗性的。團隊需要能夠快速擴展實驗,并迅速進入生產(chǎn)階段,同時訓(xùn)練數(shù)千個模型,每個模型都擁有超過2億參數(shù),以及在亞馬遜云科技上有效地擴展基礎(chǔ)設(shè)施。要實現(xiàn)這些并不容易,因此M5搜索團隊在基礎(chǔ)設(shè)施解決方案中使用了Amazon EC2,該服務(wù)能夠為幾乎全部工作負載提供安全且可調(diào)整的計算容量。亞馬遜搜索首席工程師Rejith Joseph表示:"我們選擇Amazon EC2是因為它提供了海量最新硬件資源,且資源可輕松獲取。"此外,M5搜索團隊需要存儲許多大型數(shù)據(jù)集,每個數(shù)據(jù)集都有數(shù)百TB。他們利用Amazon S3處理存儲需求。Amazon S3作為對象存儲服務(wù),具有行業(yè)領(lǐng)先的可擴展性、數(shù)據(jù)可用性、安全性和高性能。
每月擴展到數(shù)千個訓(xùn)練任務(wù)
在2020年第四季度,M5搜索團隊開始使用亞馬遜云科技服務(wù)構(gòu)建、訓(xùn)練和部署其機器學習模型。截至2022年,團隊使用各種亞馬遜云科技服務(wù),每月擴展至數(shù)千個訓(xùn)練任務(wù),涉及大量GPU集群上的PB級數(shù)據(jù)。除了使用Amazon S3進行數(shù)據(jù)存儲之外,M5搜索團隊還使用了Amazon FSx,在云中輕松啟動、運行和擴展功能豐富且性能優(yōu)越的文件系統(tǒng)。該團隊還使用了全托管的批處理服務(wù)Amazon Batch,可在任何規(guī)模下高效運行批處理計算作業(yè)。亞馬遜搜索工程經(jīng)理Roshan Makhijani表示:"通過廣泛使用Amazon FSx、Amazon EC2和Amazon Batch的服務(wù),我們提高了實驗速度。在亞馬遜云科技上進行構(gòu)建非常靈活,我們在不到3天的時間里就可以擴展到新區(qū)域,只要新區(qū)域有硬件可用。"
從一開始,M5搜索團隊就與亞馬遜云科技的產(chǎn)品團隊合作解決公司的棘手問題。例如,數(shù)據(jù)密集型訓(xùn)練作業(yè)需要海量計算資源,使用跨區(qū)域計算是訪問這些資源的必要手段,但以前沒有實際解決方案能靈活實現(xiàn)跨區(qū)域計算。Belinda Zeng表示:"我們與亞馬遜云科技緊密合作,開發(fā)了一些新功能,實現(xiàn)了跨區(qū)域計算,成功解決了這一難題。"此外,團隊不斷增長的數(shù)據(jù)需求日益挑戰(zhàn)Amazon FSx的極限。通過與亞馬遜云科技合作,M5搜索團隊解決了所有性能問題,并為持續(xù)擴展打下了基礎(chǔ)。正是由于這些增強功能,M5搜索團隊現(xiàn)在僅需1-2周就可以擴展機器學習基礎(chǔ)設(shè)施。
團隊還使用C++庫開發(fā)了一種自定義解決方案,以建立跨流媒體的Amazon S3 -- 即在一個區(qū)域存儲數(shù)據(jù)并在另一個區(qū)域進行流式數(shù)據(jù)傳輸 -- 而不影響訓(xùn)練作業(yè)的速度。Makhijani表示:"使用Amazon S3,我們實現(xiàn)了我們需要的高吞吐量流媒體解決方案。" 通過選擇最優(yōu)的GPU、CPU以及亞馬遜云科技自研設(shè)計的高性能機器學習推理芯片Amazon Inferentia,M5搜索團隊成功在機器學習推理過程中降低成本并優(yōu)化性能。Joseph表示:"不同模型在不同硬件上能提供的吞吐量有所不同,因此,硬件的選擇可以幫助我們擴展模型架構(gòu),并針對多種類型的硬件進行優(yōu)化,同時控制成本。"此外,團隊在EC2 UltraClusters中部署了Amazon EC2 P4d實例,這些實例由云端高性能計算、網(wǎng)絡(luò)和云存儲構(gòu)成,以獲得最佳的計算和通信吞吐量。亞馬遜云科技深度學習AMI和深度學習容器提供了優(yōu)化且安全的機器學習框架和工具,使機器學習從業(yè)者能夠在云上加速深度學習,從而簡化了EC2實例的配置和部署,并實現(xiàn)了擴展。在解決方案中,團隊還使用了Amazon EC2實例的網(wǎng)絡(luò)接口Elastic Fabric Adapter(EFA),客戶可以借此在亞馬遜云科技上大規(guī)模運行需要高度跨節(jié)點通信的應(yīng)用程序。
此外,M5搜索團隊在亞馬遜云科技上使用開源深度學習框架PyTorch,用以簡化機器學習模型開發(fā)并將模型部署到生產(chǎn)中。具體而言,團隊試驗了多種PyTorch庫,如分布式數(shù)據(jù)并行和Amazon S3插件,以及PyTorch Profiler和完全分片數(shù)據(jù)并行等工具進行分布式訓(xùn)練。如今,亞馬遜各部門都可以利用深度學習的強大功能,以上能力的運用幾乎無所不在。例如,M5搜索團隊開發(fā)了一種機器學習模型,能夠準確更正客戶在搜索過程中的拼寫錯誤,從而改善搜索體驗。Zeng表示:"機器學習應(yīng)用能夠幫助系統(tǒng)準確解讀客戶的真實意圖,并提供多樣化的相關(guān)推薦列表,這些功能都得益于我們預(yù)訓(xùn)練模型中豐富而細致的信息。"
持續(xù)提升效率
亞馬遜搜索現(xiàn)在已經(jīng)擁有了大規(guī)模構(gòu)建機器學習模型的技術(shù)。下一步,團隊計劃持續(xù)改進其全球集群以提高生產(chǎn)力和使用效率。團隊還將使用新的Amazon EC2實例匹配不同的模型,既用于訓(xùn)練,也用于推理。M5搜索團隊將繼續(xù)與亞馬遜云科技合作,優(yōu)化其基礎(chǔ)設(shè)施的彈性,提高生產(chǎn)力,并降低訓(xùn)練大型模型的前置成本。Joseph表示:"通過使用亞馬遜云科技持續(xù)提升效率,我們可以釋放深度學習和人工智能的無限潛能,最終讓我們的客戶從中受益。"