0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用FIL后端部署XGBOOST模型

星星科技指導(dǎo)員 ? 來(lái)源:NVIDIA ? 作者:William Hicks ? 2022-04-11 14:35 ? 次閱讀

深度神經(jīng)網(wǎng)絡(luò)在多個(gè)領(lǐng)域的成功促使人們對(duì)如何有效地部署這些模型以用于實(shí)際應(yīng)用進(jìn)行了大量思考和努力。然而,盡管基于樹的模型(包括隨機(jī)森林和梯度增強(qiáng)模型)在表格數(shù)據(jù)分析中 continued dominance 非常重要,而且對(duì)于解釋性非常重要的用例非常重要,但加速部署基于樹的模型(包括隨機(jī)森林和梯度增強(qiáng)模型)的努力卻沒(méi)有受到太多關(guān)注。

隨著 DoorDash 和 CapitalOne 等組織轉(zhuǎn)向基于樹的模型來(lái)分析大量關(guān)鍵任務(wù)數(shù)據(jù),提供工具以幫助部署此類模型變得簡(jiǎn)單、高效和高效變得越來(lái)越重要。

NVIDIA Triton 推理服務(wù)器 提供在 CPUGPU 上部署深度學(xué)習(xí)模型的完整解決方案,支持多種框架和模型執(zhí)行后端,包括 PyTorch 、 TensorFlow 、 ONNX 、 TensorRT 等。從 21.06.1 版開始,為了補(bǔ)充 NVIDIA Triton 推理服務(wù)器現(xiàn)有的深度學(xué)習(xí)功能,新的 林推理庫(kù)( FIL )后端 提供了對(duì)樹模型的支持,例如 XGBoost 、 LightGBM 、 Scikit-Learn RandomForest , RAPIDS 卡米爾森林 ,以及 Treelite 支持的任何其他型號(hào)。

基于 RAPIDS 森林推理庫(kù) (NVIDIA ),NVIDIA Triton 推理服務(wù)器 FIL 后端允許用戶利用 NVIDIA Triton 推理服務(wù)器的相同特性,以達(dá)到 deep learning 模型的最優(yōu)吞吐量/延遲,以在相同的系統(tǒng)上部署基于樹的模型。

在本文中,我們將簡(jiǎn)要介紹NVIDIA Triton 推理服務(wù)器本身,然后深入介紹如何使用 FIL 后端部署 XGBOOST 模型的示例。使用 NVIDIA GPU ,我們將看到,我們不必總是在部署更精確的模型或保持延遲可控之間做出選擇。

在示例筆記本中,通過(guò)利用 FIL 后端的 GPU 加速推理,在一臺(tái)配備八臺(tái) V100 GPU 的 NVIDIA DGX-1 服務(wù)器上,我們將能夠部署比 CPU 更復(fù)雜的欺詐檢測(cè)模型,同時(shí)將 p99 延遲保持在 2ms 以下, still 每秒提供超過(guò) 400K 的推斷( 630MB / s ),或者比 CPU 上的吞吐量高 20 倍。

NVIDIA Triton 推理服務(wù)器

NVIDIA Triton 推理服務(wù)器為 machine learning 模型的實(shí)時(shí)服務(wù)提供了完整的開源解決方案。 NVIDIA Triton 推理服務(wù)器旨在使性能模型部署過(guò)程盡可能簡(jiǎn)單,它為在實(shí)際應(yīng)用中嘗試部署 ML 算法時(shí)遇到的許多最常見問(wèn)題提供了解決方案,包括:

多框架 支持 : 支持所有最常見的深度學(xué)習(xí)框架和序列化格式,包括 PyTorch 、 TensorFlow 、 ONNX 、 TensorRT 、 OpenVINO 等。隨著 FIL 后端的引入, NVIDIA Triton 推理服務(wù)器還提供對(duì) XGBoost 、 LightGBM 、 Scikit Learn / cuML RandomForest 和任何框架中的 Treelite 序列化模型的支持。

Dynamic Batching : 允許用戶指定一個(gè)批處理窗口,并將在該窗口中收到的任何請(qǐng)求整理成更大的批處理,以優(yōu)化吞吐量。

多種查詢類型 :優(yōu)化多種查詢類型的推理:實(shí)時(shí)、批處理、流式,還支持模型集成。

使用 NVIDIA 管道和集合 推理服務(wù)器部署的 管道和集合 Triton 型號(hào)可以通過(guò)復(fù)雜的管道或集成進(jìn)行連接,以避免客戶端和服務(wù)器之間,甚至主機(jī)和設(shè)備之間不必要的數(shù)據(jù)傳輸。

CPU 模型執(zhí)行 : 雖然大多數(shù)用戶希望利用 GPU 執(zhí)行帶來(lái)的巨大性能提升,但 NVIDIA Triton 推理服務(wù)器允許您在 CPU 或 GPU 上運(yùn)行模型,以滿足您的特定部署需求和資源可用性。

Dynamic Batching [VZX337 ]如果NVIDIA Triton 推理服務(wù)器不提供對(duì)部分管道的支持,或者如果需要專門的邏輯將各種模型鏈接在一起,則可以使用自定義 PythonC++后端精確地添加所需的邏輯。

Run anywhere :在擴(kuò)展的云或數(shù)據(jù)中心、企業(yè)邊緣,甚至在嵌入式設(shè)備上。它支持用于人工智能推理的裸機(jī)和虛擬化環(huán)境(如 VMware vSphere )。

Kubernetes 和 AI 平臺(tái)支持 :

作為 Docker 容器提供,并可輕松與 Kubernetes 平臺(tái)集成,如 AWS EKS 、谷歌 GKE 、 Azure AKS 、阿里巴巴 ACK 、騰訊 TKE 或紅帽 OpenShift 。

可在 Amazon SageMaker 、 Azure ML 、 Google Vertex AI 、阿里巴巴 AI 彈性算法服務(wù)平臺(tái)和騰訊 TI-EMS 等托管 CloudAI 工作流平臺(tái)上使用。

Enterprise support : NVIDIA AI 企業(yè)軟件套件包括對(duì) NVIDIA Triton 推理服務(wù)器的全面支持,例如訪問(wèn) NVIDIA AI 專家以獲得部署和管理指導(dǎo)、安全修復(fù)和維護(hù)發(fā)布的優(yōu)先通知、長(zhǎng)期支持( LTS )選項(xiàng)和指定的支持代理。

圖 1:NVIDIA Triton 推理服務(wù)器架構(gòu)圖。

為了更好地了解如何利用 FIL 后端的這些特性來(lái)部署樹模型,我們來(lái)看一個(gè)特定的用例。

示例: FIL 后端的欺詐檢測(cè)

為了在 NVIDIA Triton 推理服務(wù)器中部署模型,我們需要一個(gè)配置文件,指定有關(guān)部署選項(xiàng)和序列化模型本身的一些細(xì)節(jié)。模型當(dāng)前可以按以下任意格式序列化:

XGBoost 二進(jìn)制格式

XGBoost JSON

LightGBM 文本格式

Treelite 二進(jìn)制檢查點(diǎn)文件

在下面的筆記本中,我們將介紹部署欺詐檢測(cè)模型過(guò)程的每個(gè)步驟,從培訓(xùn)模型到編寫配置文件以及優(yōu)化部署參數(shù)。在此過(guò)程中,我們將演示 GPU 部署如何在保持最小延遲的同時(shí)顯著提高吞吐量。此外,由于 FIL 可以輕松地?cái)U(kuò)展到非常大和復(fù)雜的模型,而不會(huì)大幅增加延遲,因此我們將看到,對(duì)于任何給定的延遲預(yù)算,在 GPU 上部署比 CPU 上更復(fù)雜和準(zhǔn)確的模型是可能的。

筆記本:

抱歉,出了點(diǎn)問(wèn)題。 Reload?

抱歉,我們無(wú)法顯示此文件。

抱歉,此文件無(wú)效,無(wú)法顯示。

查看器需要 iframe 。

view raw正如我們?cè)诒竟P記本中所看到的, NVIDIA Triton 推理服務(wù)器的 FIL 后端允許我們使用序列化的模型文件和簡(jiǎn)單的配置文件輕松地為樹模型提供服務(wù)。如果沒(méi)有 NVIDIA Triton 推理服務(wù)器,那些希望服務(wù)于其他框架中的 XGBoost 、 LightGBM 或隨機(jī)林模型的人通常會(huì)求助于吞吐量延遲性能差且不支持多個(gè)框架的手動(dòng)搖瓶服務(wù)器。 NVIDIA Triton 推理服務(wù)器的動(dòng)態(tài)批處理和并發(fā)模型執(zhí)行自動(dòng)最大化吞吐量,模型分析器有助于選擇最佳部署配置。手動(dòng)選擇可能需要數(shù)百種組合,并且可能會(huì)延遲模型的展開。有了 FIL 后端,我們可以為來(lái)自所有這些框架的模型提供服務(wù),而無(wú)需定制代碼和高度優(yōu)化的性能。

結(jié)論

使用 FIL 后端,NVIDIA Triton 推理服務(wù)器現(xiàn)在提供了一個(gè)高度優(yōu)化的實(shí)時(shí)服務(wù)的森林模型,無(wú)論是在他們自己或旁邊的深度學(xué)習(xí)模型。雖然支持 CPU 和 GPU 執(zhí)行,但我們可以利用 GPU 加速來(lái)保持低延遲和高吞吐量,即使對(duì)于復(fù)雜的模型也是如此。正如我們?cè)谑纠P記本中看到的,這意味著即使延遲預(yù)算很緊,也不需要通過(guò)退回到更簡(jiǎn)單的模型來(lái)降低模型的準(zhǔn)確性。

如果您想嘗試部署自己的 XGBOST 、 LITGBM 、 SKEXCEL 或 CUML 森林模型進(jìn)行實(shí)時(shí)推理,那么您可以很容易地從 Docker container 、NVIDIA 的 GPU 優(yōu)化的 AI 軟件目錄中拉取 NVIDIA NVIDIA AI 企業(yè)套件 推理服務(wù)器 Docker container 。您可以在 FIL 后端文檔 中找到入門所需的一切。如果準(zhǔn)備部署到 Kubernetes 集群, NVIDIA Triton 還提供了 Helm charts 示例。對(duì)于希望在實(shí)際工作負(fù)載下試用 Triton 推理服務(wù)器的企業(yè), NVIDIA LaunchPad 計(jì)劃提供了一組在 Triton 中使用 Triton 的精心策劃的實(shí)驗(yàn)室。

Krieger 說(shuō):“ STAR 的獨(dú)特之處在于,它是第一個(gè)在軟組織中規(guī)劃、調(diào)整和執(zhí)行手術(shù)計(jì)劃的機(jī)器人系統(tǒng),只需極少的人工干預(yù)?!?。

關(guān)于作者

William Hicks 是NVIDIA RAPIDS 團(tuán)隊(duì)的高級(jí)軟件工程師。??怂箵碛胁继m代斯大學(xué)物理學(xué)碩士學(xué)位和布朗大學(xué)文學(xué)藝術(shù)碩士學(xué)位。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    4989

    瀏覽量

    103074
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    4740

    瀏覽量

    128953
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9165

    瀏覽量

    85436
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    企業(yè)AI模型部署攻略

    當(dāng)下,越來(lái)越多的企業(yè)開始探索和實(shí)施AI模型,以提升業(yè)務(wù)效率和競(jìng)爭(zhēng)力。然而,AI模型部署并非易事,需要企業(yè)在多個(gè)層面進(jìn)行細(xì)致的規(guī)劃和準(zhǔn)備。下面,AI部落小編為企業(yè)提供一份AI模型
    的頭像 發(fā)表于 12-23 10:31 ?110次閱讀

    AI模型部署邊緣設(shè)備的奇妙之旅:目標(biāo)檢測(cè)模型

    以及邊緣計(jì)算能力的增強(qiáng),越來(lái)越多的目標(biāo)檢測(cè)應(yīng)用開始直接在靠近數(shù)據(jù)源的邊緣設(shè)備上運(yùn)行。這不僅減少了數(shù)據(jù)傳輸延遲,保護(hù)了用戶隱私,同時(shí)也減輕了云端服務(wù)器的壓力。然而,在邊緣端部署高效且準(zhǔn)確的目標(biāo)檢測(cè)模型
    發(fā)表于 12-19 14:33

    如何開啟Stable Diffusion WebUI模型推理部署

    如何開啟Stable Diffusion WebUI模型推理部署
    的頭像 發(fā)表于 12-11 20:13 ?107次閱讀
    如何開啟Stable Diffusion WebUI<b class='flag-5'>模型</b>推理<b class='flag-5'>部署</b>

    AI模型部署邊緣設(shè)備的奇妙之旅:如何實(shí)現(xiàn)手寫數(shù)字識(shí)別

    新的數(shù)據(jù)樣本,另一個(gè)是判別器用來(lái)判斷這些樣本的真實(shí)性。兩者相互競(jìng)爭(zhēng),共同進(jìn)化,最終實(shí)現(xiàn)高質(zhì)量的數(shù)據(jù)合成。 2.4 模型優(yōu)化技術(shù) 在將深度學(xué)習(xí)模型部署到資源受限的環(huán)境中時(shí),模型優(yōu)化技術(shù)扮
    發(fā)表于 12-06 17:20

    AI模型部署和管理的關(guān)系

    AI模型部署與管理是AI項(xiàng)目成功的兩大支柱,它們之間既相互獨(dú)立又緊密相連,共同推動(dòng)著AI技術(shù)從實(shí)驗(yàn)室走向?qū)嶋H應(yīng)用。
    的頭像 發(fā)表于 11-21 10:02 ?154次閱讀

    企業(yè)AI模型部署怎么做

    AI模型部署作為這一轉(zhuǎn)型過(guò)程中的關(guān)鍵環(huán)節(jié),其成功實(shí)施對(duì)于企業(yè)的長(zhǎng)遠(yuǎn)發(fā)展至關(guān)重要。在此,AI部落小編為您介紹企業(yè)AI模型部署的步驟以及注意事項(xiàng)。
    的頭像 發(fā)表于 11-04 10:15 ?155次閱讀

    llm模型本地部署有用嗎

    ,將這些模型部署到本地環(huán)境可能會(huì)帶來(lái)一些挑戰(zhàn)和優(yōu)勢(shì)。 1. LLM模型概述 大型語(yǔ)言模型(LLM)通常是基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型,它們能夠
    的頭像 發(fā)表于 07-09 10:14 ?495次閱讀

    PerfXCloud大模型開發(fā)與部署平臺(tái)開放注冊(cè)

    PerfXCloud?介紹 PerfXCloud是澎峰科技為開發(fā)者和企業(yè)量身打造的AI開發(fā)和部署平臺(tái)。它專注于滿足大模型的微調(diào)和推理需求,為用戶提供極致便捷的一鍵部署體驗(yàn)。 PerfXCloud為算
    的頭像 發(fā)表于 07-02 10:27 ?382次閱讀
    PerfXCloud大<b class='flag-5'>模型</b>開發(fā)與<b class='flag-5'>部署</b>平臺(tái)開放注冊(cè)

    使用TVM量化部署模型報(bào)錯(cuò)NameError: name \'GenerateESPConstants\' is not defined如何解決?

    各位好,我在使用TVM部署模型時(shí),遇到一下錯(cuò)誤,請(qǐng)問(wèn)如何解決?我進(jìn)esp.py文件看,有如下兩個(gè)函數(shù)是找不到定義的: GenerateESPConstants(), ExtractConstantsFromPartitionedFunction(),
    發(fā)表于 06-28 10:50

    模型端側(cè)部署加速,都有哪些芯片可支持?

    電子發(fā)燒友網(wǎng)報(bào)道(文/李彎彎)大模型在端側(cè)部署是指將大型神經(jīng)網(wǎng)絡(luò)模型部署在移動(dòng)終端設(shè)備上,使這些設(shè)備能夠直接運(yùn)行這些模型,從而執(zhí)行各種人工智
    的頭像 發(fā)表于 05-24 00:14 ?4133次閱讀

    基于stm32h743IIK在cubeai上部署keras模型模型輸出結(jié)果都是同一組概率數(shù)組,為什么?

    基于stm32h743IIK,在cubeai上部署keras模型,模型輸出結(jié)果都是同一組概率數(shù)組,一點(diǎn)也搞不明白,看社區(qū)也有相同的問(wèn)題,但沒(méi)有解決方案
    發(fā)表于 05-20 08:18

    模擬后端是什么意思

    模擬后端,在軟件開發(fā)和測(cè)試領(lǐng)域,通常是指使用工具或技術(shù)來(lái)模擬實(shí)際后端服務(wù)的行為。這樣做的主要目的是在項(xiàng)目開發(fā)過(guò)程中,當(dāng)后端服務(wù)還未就緒或暫時(shí)無(wú)法訪問(wèn)時(shí),前端或其他依賴后端的系統(tǒng)能夠繼續(xù)
    的頭像 發(fā)表于 03-15 15:58 ?683次閱讀

    使用CUBEAI部署tflite模型到STM32F0中,模型創(chuàng)建失敗怎么解決?

    看到CUBE_AI已經(jīng)支持到STM32F0系列芯片,就想拿來(lái)入門嵌入式AI。 生成的模型很小,是可以部署到F0上的,但是一直無(wú)法創(chuàng)建成功。 查閱CUBE AI文檔說(shuō)在調(diào)用create函數(shù)前,要啟用
    發(fā)表于 03-15 08:10

    源2.0適配FastChat框架,企業(yè)快速本地化部署模型對(duì)話平臺(tái)

    北京2024年2月28日?/美通社/ -- 近日,浪潮信息Yuan2.0大模型與FastChat框架完成全面適配,推出"企業(yè)快速本地化部署模型對(duì)話平臺(tái)"方案。該方案主要面向金融、法律、教育等領(lǐng)域
    的頭像 發(fā)表于 02-29 09:57 ?812次閱讀
    源2.0適配FastChat框架,企業(yè)快速本地化<b class='flag-5'>部署</b>大<b class='flag-5'>模型</b>對(duì)話平臺(tái)

    邊緣側(cè)部署模型優(yōu)勢(shì)多!模型量化解決邊緣設(shè)備資源限制問(wèn)題

    電子發(fā)燒友網(wǎng)報(bào)道(文/李彎彎)大模型的邊緣部署是將大模型部署在邊緣設(shè)備上,以實(shí)現(xiàn)更快速、更低延遲的計(jì)算和推理。邊緣設(shè)備可以是各種終端設(shè)備,如智能手機(jī)、平板電腦、智能家居設(shè)備等。通過(guò)將大
    的頭像 發(fā)表于 01-05 00:06 ?3565次閱讀