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

使用共享神經(jīng)網(wǎng)絡擴展機器學習模型

譯文 精選
人工智能 機器學習
本文通過介紹共享編碼器架構,將微調模型與共享編碼器分離,從而實現(xiàn)規(guī)模部署。

譯者 | 崔皓

審校 | 重樓

隨著機器學習模型的復雜性和規(guī)模不斷增長,任何企業(yè)或者組織在部署、擴展模型上都面臨著巨大的挑戰(zhàn)。迫在眉睫的挑戰(zhàn)是如何在內存限制與模型規(guī)模之間取得平衡,并保持高性能和成本效益。本文探討了一種創(chuàng)新的架構解決方案,通過將共享神經(jīng)編碼器與專門的預測頭結合的混合方法來應對這些挑戰(zhàn)。

挑戰(zhàn):ML 模型部署中的內存限制

傳統(tǒng)機器學習模型的部署通常需要將完整模型加載到內存中,以供用例或客戶應用程序使用。例如,在自然語言理解(NLU)應用中使用基于 BERT 的模型,每個模型通常消耗大約 210-450MB 的內存。在為眾多客戶提供服務時,這會面臨內存容量不足需要擴展的挑戰(zhàn)。擁有 72GB CPU 內存的經(jīng)典服務器只能支持大約 100 個模型,如此這般就會為服務能力設定上限。

一種新穎的解決方案:解耦架構

解決模型服務量增大而內存不足的問題,我們采用了解耦架構,將模型分為兩個關鍵組件。第一個是共享神經(jīng)編碼器(SNE),一個預訓練的神經(jīng)網(wǎng)絡組件,處理輸入數(shù)據(jù)的基本編碼。在實踐應用過程中,基于 BERT 架構的這個編碼器生成上下文嵌入 - 對于輸入文本中的每個標記是 768 維向量。第二個組件是任務特定的預測頭(TSPH),它是用來嵌入特定預測的專業(yè)化組件。這種架構允許多個客戶應用相同共享編碼器,同時通過各自的專業(yè)化組件保持其獨特的預測能力。

關鍵組件及其相互作用

共享神經(jīng)編碼器

共享神經(jīng)編碼器充分利用了預訓練模型,該預訓練模型在大型通用數(shù)據(jù)集上進行訓練。實現(xiàn)過程中,編碼器組件需要大約 227 MB 的非量化形式,但通過 INT8 量化,可以將其減少到約 58 MB。在處理文本時,它處理長達 250 個令牌的序列,生成高維上下文嵌入。對于典型的包含 15 個令牌的話語,編碼器生成尺寸為 15x768 的輸出張量,對嵌入需要約 45 KB 的內存。

任務特定的預測頭

任務專用預測頭代表了在效率上的顯著改進,其非量化形式只需 36 MB,量化后甚至只需 10 MB。該組件針對意圖分類和實體識別等任務保留了自定義配置,同時比傳統(tǒng)完整模型消耗的內存大大減少。例如,單個預測頭可以在標準 CPU 硬件上在不到 5 毫秒內處理 15x768 維的嵌入向量并輸出分類分數(shù)。

性能指標和實施

通過使用這種架構進行的測試,收獲了令人滿意的性能特征。使用一臺具有 36 個虛擬 CPU 和 72GB 內存的 c5.9xlarge 實例,單個服務器在僅運行預測頭時可以處理約每秒 1,500 筆運算(TPS),且 p90 延遲為 25 毫秒。當將兩個組件組合在同一硬件上時,我們仍然可以實現(xiàn) 300TPS,p90 延遲為 35 毫秒——對大多數(shù)生產(chǎn)工作負載來說已足夠。

編碼器組件在 GPU 硬件上部署時(具體為 p3.2xlarge 實例),可以以每秒超過 1,000 個請求的速度處理,延遲僅為 10 毫秒。該配置允許對請求進行高效的分批處理,最佳分批大小為 16 個請求,提供吞吐量和延遲的最佳平衡。

基礎設施設計

采用具有特定性能目標的單元架構方法。架構中的每個單元設計用于處理約 1,000 個活躍模型,同時具有自動擴展功能,可在三個可用區(qū)域中保持單元的健康狀態(tài)。系統(tǒng)采用復雜的負載平衡策略,能夠處理每個單元高達 600TPS 的突發(fā)量,同時保持 p99 延遲在 80 毫秒以下。

為了實現(xiàn)高可用性,架構實施了一種多環(huán)設計,其中每個環(huán)提供特定的語言區(qū)域。例如,所有英語變體可能共享一個環(huán),而法語變體則共享另一個環(huán),可根據(jù)特定語言模型特性進行有效的資源分配。每個環(huán)包含多個單元格,可以根據(jù)需求獨立進行擴展。

資源優(yōu)化

解耦架構實現(xiàn)了顯著的資源優(yōu)化。在生產(chǎn)環(huán)境中,實際測量顯示如下

  • 內存減少。原始 210 MB 的模型被縮減到 10 MB 的預測頭部加上一個共享的 58 MB 編碼器。
  • 存儲效率。編碼器可以為數(shù)千個預測頭提供服務,最多可以減少 75%的總存儲需求。
  • 成本效率。 GPU 資源在編碼器的所有請求之間共享,而更便宜的 CPU 資源用于處理預測頭。
  • 延遲改善。端到端處理時間,對于緩存模型從 400 毫秒減少到大約 35 毫秒。

對未來的影響

這種架構模式為 ML 部署打開了新的可能性,特別是隨著模型規(guī)模不斷增長。隨著當前趨勢指向更大的語言模型,共享編碼表示變得越來越有價值。這種架構通過以下方式支持未來的增長:

  • 動態(tài)模型更新可以部署新的編碼器版本,而無需更新預測頭。
  • 靈活的縮放基于特定工作負載特征獨立縮放編碼器和預測組件。
  • 資源池高效共享 GPU 資源,服務于更多客戶。

結論

共享神經(jīng)編碼器特定任務預測頭相結合的解耦架構代表著機器學習模型部署中的一項重大進步。性能提升方面表現(xiàn)優(yōu)秀,例如: 75% 的內存減少、40% 的延遲改善,從而支持高并發(fā)模型。該方法提供了一種解決方案,既可以應對規(guī)模挑戰(zhàn),同時又能保持性能并控制成本。

對于希望實施類似架構的組織,應仔細考慮特定工作負載特征。方案的成功與否取決于,對基礎設施設計和智能資源管理策略的深度思考,只有這樣才能支持強大的監(jiān)控和擴展策略。

譯者介紹

崔皓,51CTO社區(qū)編輯,資深架構師,擁有18年的軟件開發(fā)和架構經(jīng)驗,10年分布式架構經(jīng)驗。

原文標題:Scaling ML Models Efficiently With Shared Neural Networks,作者:Meghana Puvvadi

責任編輯:華軒 來源: 51CTO
相關推薦

2017-03-10 12:16:46

機器學習

2023-04-19 10:17:35

機器學習深度學習

2022-02-15 23:38:22

Python機器學習算法

2018-10-18 10:27:15

機器學習神經(jīng)網(wǎng)絡python

2020-12-25 10:08:53

Python機器學習神經(jīng)網(wǎng)絡算法

2017-08-28 21:31:37

TensorFlow深度學習神經(jīng)網(wǎng)絡

2017-09-08 16:41:43

微軟

2020-08-06 10:11:13

神經(jīng)網(wǎng)絡機器學習算法

2019-01-05 08:40:17

VGG神經(jīng)網(wǎng)絡

2017-07-27 10:46:44

神經(jīng)網(wǎng)絡機器學習強化學習

2023-11-15 16:12:41

人工智能機器學習深度學習

2017-08-04 14:23:04

機器學習神經(jīng)網(wǎng)絡TensorFlow

2023-09-03 14:17:56

深度學習人工智能

2020-05-06 10:29:45

機器學習神經(jīng)網(wǎng)絡TensorFlow

2020-06-23 11:49:08

神經(jīng)網(wǎng)絡數(shù)據(jù)圖形

2018-07-03 16:10:04

神經(jīng)網(wǎng)絡生物神經(jīng)網(wǎng)絡人工神經(jīng)網(wǎng)絡

2023-09-17 23:09:24

Transforme深度學習

2018-11-04 11:59:03

神經(jīng)網(wǎng)絡機器學習深度學習

2018-03-22 13:34:59

TensorFlow神經(jīng)網(wǎng)絡

2016-12-27 14:24:57

課程筆記神經(jīng)網(wǎng)絡
點贊
收藏

51CTO技術棧公眾號