自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

騰訊廣告模型基于"太極"的訓練成本優(yōu)化實踐

大數(shù)據(jù) 機器學習
近年來, 隨著大模型在 NLP 領(lǐng)域橫掃各種大數(shù)據(jù)磅單取得巨大成功之后,大數(shù)據(jù)加大模型成為了 AI 領(lǐng)域建模的標準范式。搜索、廣告、推薦的建模也不例外,動輒千億參數(shù),上 T 大小的模型成為各大預估場景的標配,大模型能力也已經(jīng)成為各大科技公司軍備競賽的焦點。

近年來,大數(shù)據(jù)加大模型成為了 AI 領(lǐng)域建模的標準范式。在廣告場景,大模型由于使用了更多的模型參數(shù),利用更多的訓練數(shù)據(jù),模型具備了更強的記憶能力和泛化能力,為廣告效果向上提升打開了更大的空間。但是大模型在訓練過程中所需要的資源也是成倍的增長,存儲以及計算上的壓力對機器學習平臺都是巨大的挑戰(zhàn)。

騰訊太極機器學習平臺持續(xù)探索降本增效方案,在廣告離線訓練場景利用混合部署資源大大降低了資源成本,每天為騰訊廣告提供 50W 核心廉價混合部署資源,幫助騰訊廣告離線模型訓練資源成本降低 30%,同時通過一系列優(yōu)化手段使得混部資源穩(wěn)定性和正常資源持平。

1、引言

近年來, 隨著大模型在 NLP 領(lǐng)域橫掃各種大數(shù)據(jù)磅單取得巨大成功之后,大數(shù)據(jù)加大模型成為了 AI 領(lǐng)域建模的標準范式。搜索、廣告、推薦的建模也不例外,動輒千億參數(shù),上 T 大小的模型成為各大預估場景的標配,大模型能力也已經(jīng)成為各大科技公司軍備競賽的焦點。

在廣告場景,大模型由于使用了更多的模型參數(shù),利用更多的訓練數(shù)據(jù),模型具備了更強的記憶能力和泛化能力,為廣告效果向上提升打開了更大的空間。但是大模型在訓練過程中所需要的資源也是成倍的增長,存儲以及計算上的壓力對機器學習平臺都是巨大的挑戰(zhàn)。同時平臺能夠支撐的試驗數(shù)量直接影響算法迭代效率,如何用更小的成本,提供更多的試驗資源,是平臺努力的重點方向。

騰訊太極機器學習平臺持續(xù)探索降本增效方案,在廣告離線訓練場景利用混合部署資源大大降低了資源成本,每天為騰訊廣告提供 50W 核心廉價混合部署資源,幫助騰訊廣告離線模型訓練資源成本降低 30%,同時通過一系列優(yōu)化手段使得混部資源穩(wěn)定性和正常資源持平。

2、?太極機器學習平臺介紹

太極機器學習平臺,致力于讓用戶更加聚焦業(yè)務(wù)AI問題解決和應(yīng)用,一站式的解決算法工程師在 AI 應(yīng)用過程中特征處理,模型訓練,模型服務(wù)等工程問題。目前支持公司內(nèi)廣告,搜索,游戲,騰訊會議,騰訊云等重點業(yè)務(wù)。

太極廣告平臺是太極為廣告系統(tǒng)設(shè)計的集模型訓練和在線推理的高性能機器學習平臺,平臺具備萬億參數(shù)模型的訓練和推理能力。目前該平臺支持騰訊廣告召回,粗排,精排數(shù)十個模型訓練和在線推理;同時太極平臺提供一站式特征注冊,樣本補錄,模型訓練,模型評估以及上線試驗的能力,極大提升了開發(fā)者效率。

  • 訓練平臺:目前模型訓練支持 CPU 和 GPU 兩種訓練模式,利用自研高效算子,混合精度訓練,3D 并行等技術(shù),訓練速度和業(yè)界開源系統(tǒng)相比提升 1 個量級。
  • 推理框架:太極自研的 HCF(Heterogeneous Computing Framework) 異構(gòu)計算框架,通過硬件層,編譯層和軟件層聯(lián)合優(yōu)化,提供極致性能優(yōu)化。

3、成本優(yōu)化具體實現(xiàn)

(1)整體方案介紹 

隨著太極平臺的不斷發(fā)展,任務(wù)數(shù)和任務(wù)類型日益增多,資源需求也隨之增多。為了降本增效,太極平臺一方面提升平臺性能,提升訓練速度;另一方面,我們也尋找更加廉價的資源,以滿足不斷增長的資源需求。

峰巒——騰訊公司內(nèi)部云原生大數(shù)據(jù)平臺,利用云原生技術(shù),對公司整個大數(shù)據(jù)架構(gòu)進行升級。為滿足大數(shù)據(jù)業(yè)務(wù)持續(xù)增長的資源需求,峰巒引入混部資源,在滿足資源需求的同時,又可極大降低資源成本。峰巒針對不同場景下的混部資源,提供了一系列的解決方案,把不穩(wěn)定的混部資源變成對業(yè)務(wù)透明的穩(wěn)定資源。峰巒混部能力支持3類混部資源:

  • 復用在線空閑資源。在線資源因波峰波谷現(xiàn)象、資源使用預估過高和集群資源碎片等原因,導致集群資源利用率不高,有大量的空閑資源。峰巒挖掘這部分臨時空閑資源,來運行大數(shù)據(jù)任務(wù),目前已在在線廣告、存儲、社交娛樂和游戲等場景混部。
  • 離線資源彈性借出。大數(shù)據(jù)平臺有些任務(wù)也具有潮汐現(xiàn)象,在白天大數(shù)據(jù)集群資源使用率低的時候,峰巒支持把部分資源臨時彈性借出,待大數(shù)據(jù)集群高峰到來之前,再拿回這部分資源。這種場景非常適合解決節(jié)假日和大促期間在線任務(wù)臨時需要大量資源問題,峰巒當前已支持春節(jié)和 618 等重大節(jié)假日。
  • 復用算力資源。算力資源是以低優(yōu) CVM 方式挖掘云母機的空閑資源,所謂低優(yōu) CVM 是指在云母機上啟動具有更低 CPU 優(yōu)先級的 CVM 虛擬機,該虛擬機可實時被其他的虛擬機搶占資源。峰巒基于底層算力提供的資源信息,在調(diào)度、過載保護、算力遷移等方面做了大量的優(yōu)化,目前已有百萬核的大數(shù)據(jù)任務(wù)在算力資源上穩(wěn)定運行。

同時,峰巒引入云原生虛擬集群技術(shù),屏蔽底層混部資源來自不同的城市和地域?qū)е碌姆稚⑿蕴攸c。太極平臺直接對接峰巒租戶集群,該租戶集群對應(yīng)底層多種混部資源,而且租戶集群擁有獨立和完整的集群視角,太極平臺也可無縫對接。

圖片

(2)資源混部方案

在線空閑資源

峰巒自研了 Caelus 全場景在離線混部方案,通過將在線作業(yè)和離線作業(yè)混部的方式,充分挖掘在線機器的空閑資源,提升在線機器資源利用率,同時降低離線作業(yè)的資源成本。

如下圖所示,是 Caelus 的基本架構(gòu),各個組件和模塊相互配合,從多方面保證了混部的質(zhì)量。

首先,Caelus 全方位保證了在線作業(yè)的服務(wù)質(zhì)量,這也是混部的重要前提之一,比如:通過快速的干擾檢測與處理機制,主動感知在線服務(wù)質(zhì)量,及時進行處理,并且支持插件化的擴展方式支持業(yè)務(wù)的特定干擾檢測需求;通過全維度的資源隔離、靈活的資源管理策略等,保證在線服務(wù)的高優(yōu)先級。

其次,Caelus 從多方面保證了離線作業(yè)的 SLO,比如:通過混部資源與離線作業(yè)畫像,為作業(yè)匹配合適的資源,避免資源競爭;優(yōu)化離線作業(yè)驅(qū)逐策略,優(yōu)先排序驅(qū)逐,支持優(yōu)雅退出,策略靈活可控。與大數(shù)據(jù)離線作業(yè)大多是短作業(yè)(分鐘級甚至秒級)的特點不同的是,太極作業(yè)的運行時間大多較長(小時級甚至天級)。通過長周期的資源預測與作業(yè)畫像更好地指導調(diào)度,為不同運行時長、不同資源需求的作業(yè)找到合適的資源,避免作業(yè)運行幾小時甚至幾天后被驅(qū)逐,導致作業(yè)狀態(tài)丟失,浪費資源與時間。當出現(xiàn)需要驅(qū)逐離線作業(yè)的情況時,會優(yōu)先通過運行時熱遷移,將作業(yè)實例從一個機器遷移到另一個機器,并且保持內(nèi)存狀態(tài)和IP等不變,作業(yè)幾乎無影響,極大地提升了作業(yè)的 SLO。為了更好地把混部資源利用好,Caelus 還具備其他更多的能力,詳見 Caelus 全場景在離線混部方案??https://zhuanlan.zhihu.com/p/384606554??。

圖片

潮汐資源

大數(shù)據(jù)任務(wù)一般是白天任務(wù)量相對少,晚上任務(wù)量多,峰巒把白天部分空閑的大數(shù)據(jù)資源出讓給太極平臺,夜間再回收這部分資源,我們把這種資源稱為潮汐資源。潮汐資源的特點是節(jié)點上的大數(shù)據(jù)任務(wù)幾乎是完全退出的,但節(jié)點上還保留著大數(shù)據(jù)的存儲服務(wù) HDFS,運行太極作業(yè)時不能影響到 HDFS 服務(wù)。太極平臺使用潮汐資源時需要和峰巒平臺協(xié)商一致,峰巒平臺在固定時間點提前根據(jù)歷史數(shù)據(jù)篩選一批節(jié)點,待大數(shù)據(jù)任務(wù)優(yōu)雅退出后,通知太極平臺有新的節(jié)點加入,太極平臺開始在峰巒租戶集群提交更多的任務(wù)。借用時間到達前,峰巒通知太極平臺部分節(jié)點要回收,太極平臺有序歸還節(jié)點。

如下圖所示,潮汐資源的挖掘、管理和使用涉及到多個系統(tǒng)的分工配合:

圖片

  • 大數(shù)據(jù)資源出讓系統(tǒng):該系統(tǒng)會根據(jù)各個機器上不同的作業(yè)運行情況以及集群過去一段時間的運行數(shù)據(jù),基于機器學習算法,找到最合適的待下線的機器節(jié)點,以滿足特定的資源需求并且對正在運行的作業(yè)影響最小,然后禁止調(diào)度新的作業(yè)到這些節(jié)點上,等待節(jié)點上正在運行的作業(yè)運行完畢,最大限度地降低對大數(shù)據(jù)作業(yè)的影響。
  • Caelus 混部系統(tǒng):雖然出讓系統(tǒng)騰挪出來的機器資源上沒有運行大數(shù)據(jù)作業(yè)了,但上面還運行著 HDFS 服務(wù),還提供著數(shù)據(jù)讀寫服務(wù)。為了保護 HDFS 服務(wù),引入Caelus混部系統(tǒng),將 HDFS 作為在線服務(wù),通過 Caelus 一系列的在線服務(wù)保證手段(如:通過 HDFS 關(guān)鍵指標檢測其是否受到影響)保證 HDFS 服務(wù)質(zhì)量不受影響。
  • 通過虛擬集群的方式使用潮汐資源:這些出讓的機器資源會由峰巒統(tǒng)一管理和調(diào)度,并以虛擬集群的方式提供給太極平臺使用,提供 K8S 原生接口,這樣做到了對上層平臺屏蔽底層資源的差異性,保證應(yīng)用使通過相同的使用方式使用資源。
  • 與應(yīng)用層斷點續(xù)訓打通:潮汐資源在晚上會被回收以用于運行大數(shù)據(jù)作業(yè),為了減少回收的影響,峰巒和應(yīng)用層的斷點續(xù)訓功能進行了打通,實現(xiàn)資源切換不中斷訓練,切換后不影響業(yè)務(wù)的繼續(xù)運行。

算力資源

算力資源的特點是給業(yè)務(wù)呈現(xiàn)的是一個獨占的 CVM,對業(yè)務(wù)方使用來說比較友好。然而,使用算力資源的挑戰(zhàn)在于云母機層面低優(yōu) CVM 的 CPU 資源會隨時被在線 CVM 壓制,導致算力資源非常不穩(wěn)定:

  • 算力機器不穩(wěn)定:算力機器會因為碎片資源盤整、機房電力不足等原因下線。
  • 算力資源優(yōu)先級低:為了保證正常 CVM 機器的服務(wù)質(zhì)量不受影響,算力資源上的作業(yè)優(yōu)先級最低,會無條件為高優(yōu)資源上的作業(yè)讓步,導致性能極不穩(wěn)定。
  • 驅(qū)逐頻率高:多種原因(算力資源性能不足、磁盤空間不足、磁盤卡住等)會觸發(fā)主動驅(qū)逐 pod,增加了 pod 的失敗概率。

為了解決算力資源的不穩(wěn)定性問題,通過峰巒主控層擴展各項能力,從多方面對算力資源優(yōu)化,提升算力穩(wěn)定性:

圖片

① 資源畫像與預測:探索和搜集各種機器性能指標,生成聚合指標,預測低優(yōu) CVM 未來一段時間的可用資源情況,這些信息用于調(diào)度器調(diào)度 pod 和驅(qū)逐組件驅(qū)逐 pod,滿足 pod 的資源要求。

② 調(diào)度優(yōu)化:為保證太極作業(yè)的服務(wù)質(zhì)量,針對作業(yè)的需求和資源的特點,在調(diào)度策略上有較多的優(yōu)化,將作業(yè)性能提升了 2 倍以上。

  • 同城調(diào)度:將 PST 和訓練作業(yè)調(diào)度到同城同機房,將作業(yè)實例之間的網(wǎng)絡(luò)延時降到最低,并且同城內(nèi)的網(wǎng)絡(luò)帶寬成本也更低,起到了降低成本的作用。
  • 單機調(diào)度優(yōu)化:結(jié)合資源預測的結(jié)果以及 CPU stealtime 等指標,為作業(yè)選擇性能更佳的 CPU 進行綁核,更好地提升作業(yè)性能。
  • 分級調(diào)度:對所有管理的資源做自動打標和分級,把 Job Manager 等對容災要求比較高的作業(yè)自動調(diào)度到相對穩(wěn)定的資源上。
  • 調(diào)優(yōu)調(diào)度參數(shù):根據(jù)資源資源畫像和預測數(shù)據(jù),調(diào)度器為作業(yè)優(yōu)先挑選性能更優(yōu)和更穩(wěn)定的節(jié)點。另外為了解決步調(diào)不一致導致的梯隊過期問題,將同一個作業(yè)的實例調(diào)度到性能接近的機器

③ 運行時服務(wù)質(zhì)量保證

  • 主動驅(qū)逐階段引入運行時熱遷移,做到業(yè)務(wù)基本無感知:為了應(yīng)對資源不穩(wěn)定以及 pod 被驅(qū)逐導致應(yīng)用被 kill 的問題,實現(xiàn)了運行時熱遷移,并且提供了多種熱遷移策略滿足不同場景的需求。目前從線上數(shù)據(jù)看,使用遷移優(yōu)先策略時,對于大內(nèi)存的容器來說,熱遷移的中斷時間是 10 多秒。我們還實現(xiàn)了與內(nèi)存大小無關(guān)的常數(shù)中斷時間(恢復優(yōu)先的策略)。當前每天成功主動遷移 pod 數(shù) 2 萬多次,且支持跨集群熱遷移,極大地降低了驅(qū)逐的影響。
  • 優(yōu)化驅(qū)逐策略,將驅(qū)逐造成的影響降到最低:每臺機器每次驅(qū)逐時,優(yōu)先驅(qū)逐后啟動的 pod,避免影響已啟動任;每個任務(wù)每次只驅(qū)逐一個節(jié)點,避免單任務(wù)上下游一起被驅(qū)逐,造成任務(wù)級重啟;pod 被驅(qū)逐時,和上層 Flink 框架聯(lián)動,主動告知 Flink,快速單點恢復。

④ 自反饋優(yōu)化:通過資源畫像,周期性的替換掉性能差的機器,并且與底層平臺打通,實現(xiàn)對 CVM 的平滑抽離,讓峰巒有機會以對業(yè)務(wù)無影響的方式逐個遷移應(yīng)用實例,降低對實例的影響。

⑤ 提升 Flink 層的容災能力,支持單點重啟和層級式調(diào)度

TM(Task Manager)單點重啟能力避免 Task 失敗導致整個 DAG 失敗,可以更好適配算力搶占式特性;分層調(diào)度避免 gang scheduling 造成過長的作業(yè)等待,并且可以避免 TM Pod 過度申請的浪費。

(3)應(yīng)用層優(yōu)化方案

業(yè)務(wù)容錯

離線訓練任務(wù)要使用廉價資源一個大前提就是不能影響資源上原有任務(wù)的正常運行,所以混部資源有以下幾個關(guān)鍵挑戰(zhàn):

  • 混部資源大多是臨時資源,會頻繁下線;
  • 混部資源會無條件為高優(yōu)資源讓步,導致機器性能極不穩(wěn)定;
  • 混部資源的自動驅(qū)逐機制也極大加大了節(jié)點和 pod 的失敗概率。

圖片

為了保證在混部資源上任務(wù)可以穩(wěn)定運行,平臺使用三級容錯策略,具體解決方案如下:

  • 熱遷移技術(shù):在 Task Manager 將要發(fā)生驅(qū)逐前,提前感知,把相應(yīng)的 Task Manager 遷移到另外一個 pod 上;同時利用內(nèi)存壓縮,流式并發(fā),跨集群熱遷移等能力持續(xù)優(yōu)化熱遷移成功率。
  • Task Manager 重啟:當任務(wù)當中一個 Task Manager 由于異?;蛘唑?qū)逐等原因?qū)е逻\行失敗之后,整個任務(wù)不會直接失敗退出,而是先保存該 Task Manager 的狀態(tài),然后重新啟動該 Task Manager,從而降低整個任務(wù)失敗的概率。
  • 任務(wù) Full Recovery: 當一個任務(wù)的由于 Flink 狀態(tài)異常,處于無法恢復狀態(tài)時,會觸發(fā) Job Manager 的重啟,為了保證 Job Manager 的穩(wěn)定性,平臺把 Job Manager 部署在穩(wěn)定性較好的獨立資源上,保證任務(wù)狀態(tài)正常。
  • 斷點續(xù)訓:如果前面幾個容錯策略都失敗了,平臺會基于歷史的某一個 ckpt 重新啟動任務(wù)。

通過業(yè)務(wù)層的容錯,運行在混部資源上的任務(wù)穩(wěn)定性從最初的不到 90% 提升到最終的 99.5%,基本和普通獨占資源上任務(wù)穩(wěn)定性持平。

任務(wù)潮汐調(diào)度

針對潮汐資源要求離線訓練任務(wù)只能白天使用,晚上需要提供給在線業(yè)務(wù)使用,所以太極平臺需要在白天時根據(jù)資源到位情況,自動啟動訓練任務(wù);在晚上對任務(wù)做冷備,同時停止對應(yīng)的訓練任務(wù)。同時通過任務(wù)管理隊列來管理每個任務(wù)調(diào)度的優(yōu)先級,對于晚上新啟動的任務(wù)會自動進入排隊狀態(tài),等第二天早上再啟動新的任務(wù)。

圖片

核心挑戰(zhàn):

  • 潮汐現(xiàn)象:資源白天的時候可以提供給離線任務(wù)使用,晚上的時候需要回收。
  • 資源動態(tài)變化:在白天時,資源也是不穩(wěn)定的,資源會隨時發(fā)生變化,一般是早上的時候資源比較少,然后資源逐漸增加,到晚上的時候資源到達高峰值。

解決方案:

  • 資源感知的調(diào)度策略:早上在資源逐步增加的過程中,潮汐調(diào)度服務(wù)需要感知資源變化,同時跟進資源情況來啟動待繼續(xù)訓練的任務(wù)。
  • 模型自動備份能力:在晚上資源回收前,需要把當前平臺上運行的所有任務(wù)逐步做備份,這對于平臺的存儲和帶寬壓力非常大,因為平臺上有幾百個任務(wù),每個任務(wù)冷備大小從幾百 G 到數(shù) T 大小不等,如果在同一時間做冷備的話需要在短時間傳輸和存儲數(shù)百 T的數(shù)據(jù),對于存儲和網(wǎng)絡(luò) 都是巨大的挑戰(zhàn);所以我們需要有一套合理的調(diào)度策略,逐步做模型的存儲。
  • 智能資源調(diào)度能力:潮汐調(diào)度和傳統(tǒng)訓練相比,每個任務(wù)在晚上資源回收時的模型備份和每天早上任務(wù)新啟動的時候的開銷是額外開銷,為了降低這部分額外開銷,我們調(diào)度時需要評估哪些任務(wù)在當天就能跑完,哪些任務(wù)需要跑多天,對于當天能跑完的任務(wù),我們優(yōu)先給它分配更多資源,保證當天任務(wù)運行完成。

通過這些優(yōu)化能夠保證任務(wù)能穩(wěn)定在潮汐資源上運行,對于業(yè)務(wù)層基本無感知。同時任務(wù)的運行速度不會受太大影響,由于任務(wù)啟停調(diào)度帶來的額外開銷控制在 10% 以內(nèi)。

4、在線效果和未來展望

太極在離線混布優(yōu)化方案在騰訊廣告場景落地,每天為騰訊廣告離線模型調(diào)研訓練提供30W 核全天候的混合部署資源,20W 核潮汐資源,支持廣告召回,粗排,精排多場景模型訓練。在資源成本上,相同計算量任務(wù)上,混合部署資源成本是普通資源的 70%。經(jīng)過優(yōu)化系統(tǒng)穩(wěn)定性和物理集群任務(wù)成功率基本持平。

后續(xù)一方面我們會繼續(xù)加大混合算力資源的使用,尤其會加大混合算力資源的應(yīng)用;另一方面,公司在線業(yè)務(wù)在 GPU 化,所以在混合資源應(yīng)用上,除了傳統(tǒng)的 CPU 資源之外,也會嘗試對在線 GPU 資源在離線訓練時使用。

今天的分享就到這里,謝謝大家。

責任編輯:姜華 來源: DataFunTalk
相關(guān)推薦

2023-01-05 21:25:06

毫末

2024-09-26 00:11:01

2023-10-18 12:50:12

數(shù)據(jù)模型

2024-07-08 13:11:40

2023-07-12 10:04:20

模型訓練

2023-07-11 15:30:08

GPT-4架構(gòu)

2019-04-23 11:55:26

FinOps成本優(yōu)化云計算

2024-11-11 08:50:24

2025-03-13 12:39:22

2023-11-23 18:19:15

騰訊騰訊混元Angel

2020-12-14 09:00:00

云計算公有云工具

2023-02-16 08:00:00

數(shù)據(jù)流客戶端開發(fā)數(shù)據(jù)集

2024-04-16 12:15:42

AI模型

2025-03-12 12:10:13

2023-06-15 09:58:48

2021-03-25 15:19:33

深度學習Pytorch技巧

2022-06-26 23:13:13

云計算IT云成本優(yōu)化

2022-04-08 14:40:59

框架訓練模型

2024-12-11 08:28:15

2025-01-02 13:15:00

點贊
收藏

51CTO技術(shù)棧公眾號