解決超級模型部署難題
# 解決超級模型部署難題 #
雖說目前尚處起步階段,但還是為解決問題提供了可行的思路。
1. 縮小模型
如果模型太大,為什麼不壓縮它們?要做到這一點,一種方法是透過“知識蒸餾”(knowledge distillation)。這一想法是,一個小型模型可以透過學習來模仿大型模型(即父模型)的效能。
換句話說,訓練 GPT-2 需要向其饋入高達 40GB 的文字,這相當於大約 27118520 頁的文字檔案。然而,訓練一個蒸餾過的 GPT-2 模型只需向其饋入 GPT-2 的輸出即可。
著名的 Transformer NLP 庫背後的 HuggingFace 公司就是這樣做的,建立了 DistilGPT2 。雖然與完整的 GPT-2 模型相比,DistilGPT2 在一些質量基準上的得分要低一些,但它比完整的 GPT-2 模型小了 33%,速度快了一倍。
速度能提高兩倍,可不是一件小事。對自動駕駛汽車來說,安全剎車和輕微碰撞之間的區別就在於此。對於一個會話智慧體來說,這就是自然談話和令人惱火的機器人電話之間的區別。
2,將模型部署到雲端
就算用了知識蒸餾,模型仍然可能很龐大。超過 25GB 的模型(NVIDIA 的 Megatron 是 GPT-2 的 5.6 倍)儘管縮小了 33%,但仍然很龐大。
在這種規模下,我們用來消費機器學習生成內容的裝置,我們的手機、電視,甚至電腦,都無法承載這些模型,它們根本就不合適。
一種解決方案是將模型作為微服務部署到雲端,我們的裝置就可以根據需要進行查詢。這稱為“實時推理”(Realtime inference),是在生產中部署大型模型的標準方法。
然而,在雲端部署也有自身的問題,尤其是在規模方面。舉個例子,我們可以看看 AI Dungeon,這是一款流行的基於 GPT-2 的冒險遊戲。
由於 GPT-2 的大小和算力需求所限,AI Dungeon 只能為單個部署模型中的幾個使用者提供服務。為了應對流量的增加,AI Dungeon 需要具備自動擴充套件的能力。
水平擴充套件 GPT-2 部署是一件非常棘手的事。它需要:
確保每個部署都是相同的。例如,使用 Docker 對模型進行容器化,並使用 Kubernetes 對容器進行編排。
自動擴充套件部署。例如,透過配置雲供應商的自動擴充套件程式,根據流量自動向上或向下旋轉例項。
最佳化資源。這意味著需要在不犧牲效能的情況下,找到並執行最便宜的例項型別和資源分配。
3. 加速硬體服務模式
最後一項使大型模型變得更容易的努力,與模型本身並沒有任何關係。相反,它必須與改進硬體有關。
更大的模型在更好的硬體上,效能更優。事實上,GPU 對模型服務很重要,為 GPT-2 提供自動更正低延遲服務的唯一方法是使用 GPU:
如果你在 CPU 上執行,每次請求耗時 925 毫秒。如果使用 GPU,在每次請求 199 毫秒的情況下,可以在大約 100 毫秒的空間時間內預測訊息的其餘部分,當你考慮到他們的瀏覽器仍然需要呈現你的預測時,這就非常有用了。
然而,隨著模型變得越來越大,我們需要更多的處理能力。
解決該問題的一些努力涉及構建全新的硬體。例如,谷歌釋出了 TPU,這是專門為與 TensorFlow 介面而設計的 ASIC,最新的 TPU 打破了模型服務基準的可擴充套件性和效能的記錄。
其他努力還包括加速和最佳化現有硬體。NVIDIA 釋出了 TensorRT,這是一個用於最佳化 NVIDIA GPU 在推理服務中利用率的 SDK。NVIDIA 已經證明,與在 GPU 上使用 TensorRT,比只使用 CPU 推理相比,效能提高了 40 倍。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946223/viewspace-2677436/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MindSpore聯邦學習框架解決行業級難題聯邦學習框架行業
- 乾貨|兩個資料分析模型,快速解決使用者分析難題模型
- MDS:解決SOA的資料難題
- 工作疑難問題解決4例
- 解決 go get 超時問題Go
- 管理系統解決企業管理難題
- 機械行業解決方案高效解決企業管理難題行業
- 七道認知難題難倒了AI大模型AI大模型
- 阿里雲聯合帆軟釋出企業級BI分析解決方案,解決資料應用難題阿里
- 解決代理連線超時問題
- 解決超過會話數問題會話
- 電商解決方案,全面解決企業管理難題、提升盈利水平
- 智慧經營3.0解決門店管理難題!
- 微軟John Langford:機器學習解決哪些世界難題?微軟機器學習
- 解決DDD最大難題-如何劃分領域
- IOT邊緣計算閘道器有效解決老舊裝置接入難題,降低部署成本
- websphere 應用超時問題的解決Web
- nginx fastcgi 超時問題解決記錄NginxAST
- 重灌 Homestead 虛擬機器 暴力解決難題虛擬機
- 解決跨海高併發崩潰難題?so easy
- 多專案管理中的難題及解決方案專案管理
- 難解決的記憶體洩露(OutOfMemory)問題!!!記憶體洩露
- Windows XP 系統疑難問題巧解決(轉)Windows
- 解決Sql Server警報的疑難問題(轉)SQLServer
- IBM通過超級計算機使用大資料來解決大問題IBM計算機大資料
- 如何破解NGS入院難題,臻和科技IVD整體解決方案或可解決
- CRM系統幫助企業解決管理上難解決的問題(下)
- nginx部署後常見問題解決辦法Nginx
- 即學即會 Serverless | 如何解決 Serverless 應用開發部署的難題?Server
- 幽默:程式設計中困難的不是解決問題,而是確定要解決的問題 - Paul程式設計
- 航空客戶價值識別很困難?兩個模型幫你解決模型
- 輕量級模型設計與部署總結模型
- 解決代理超時問題的三種方法
- 短影片系統開發疑難問題解決方案
- 辦公室無線覆蓋方案解決網路死角難題
- 解決程式設計難題的實用方法指南 - praeclarum程式設計
- 通用連線池幫你解決資源管理難題
- “網紅架構師”解決你的Ceph 運維難題架構運維