一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

使用FIL加速基于樹模型的推理與預(yù)測

星星科技指導(dǎo)員 ? 來源:NVIDIA ? 作者:Andy Adinets ? 2022-04-27 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

介紹

RAPIDS森林推理庫,親切地稱為 FIL ,極大地加速了基于樹的模型的推理(預(yù)測),包括梯度增強(qiáng)的決策樹模型(如 XGBoost 和 LightGBM 的模型)和隨機(jī)森林 ( 要深入了解整個(gè)庫,請(qǐng)查看 最初的 FIL 博客 。原始 FIL 中的模型存儲(chǔ)為密集的二叉樹。也就是說,樹的存儲(chǔ)假定所有葉節(jié)點(diǎn)都出現(xiàn)在同一深度。這就為淺樹提供了一個(gè)簡單、運(yùn)行時(shí)高效的布局。但對(duì)于深樹,它也需要 lot 的 GPU 內(nèi)存2d+1-1深度樹的節(jié)點(diǎn) d 。為了支持最深的森林, FIL 支持

稀疏樹存儲(chǔ)。如果稀疏樹的分支早于最大深度 d 結(jié)束,則不會(huì)為該分支的潛在子級(jí)分配存儲(chǔ)。這可以節(jié)省大量內(nèi)存。雖然深度為 30 的 稠密的 樹總是需要超過 20 億個(gè)節(jié)點(diǎn),但是深度為 30 的最瘦的 稀疏 樹只需要 61 個(gè)節(jié)點(diǎn)。

在 FIL中使用稀疏森林

在 FIL 使用稀疏森林并不比使用茂密森林困難。創(chuàng)建的林的類型由新的 storage_type 參數(shù)控制到 ForestInference.load() 。其可能值為:

DENSE 為了營造一片茂密的森林,

SPARSE 要?jiǎng)?chuàng)建稀疏的森林,

AUTO (默認(rèn))讓 FIL 決定,當(dāng)前總是創(chuàng)建一個(gè)密林。

無需更改輸入文件、輸入數(shù)據(jù)或預(yù)測輸出的格式。初始模型可以由 scikit learn 、 cuML 、 XGBoost 或 LightGBM 進(jìn)行訓(xùn)練。下面是一個(gè)將 FIL 用于稀疏森林的示例。

from cuml import ForestInference
import sklearn.datasets
# Load the classifier previously saved with xgboost model_save()
model_path = 'xgb.model'
fm = ForestInference.load(model_path, output_class=True,
storage_type='SPARSE')
# Generate random sample data
X_test, y_test = sklearn.datasets.make_classification()
# Generate predictions (as a gpu array)
fil_preds_gpu = fm.predict(X_test.astype('float32'))

實(shí)施

Figure 1 depicts how sparse forests are stored in FIL.


圖 1 :在 FIL 中存儲(chǔ)稀疏森林。

圖 1 描述了稀疏森林是如何存儲(chǔ)在 FIL 中的。所有節(jié)點(diǎn)都存儲(chǔ)在單個(gè)大型 nodes 陣列中。對(duì)于每個(gè)樹,其根在節(jié)點(diǎn)數(shù)組中的索引存儲(chǔ)在 trees 數(shù)組中。每個(gè)稀疏節(jié)點(diǎn)除了存儲(chǔ)在密集節(jié)點(diǎn)中的信息外,還存儲(chǔ)其左子節(jié)點(diǎn)的索引。由于每個(gè)節(jié)點(diǎn)總是有兩個(gè)子節(jié)點(diǎn),所以左右節(jié)點(diǎn)相鄰存儲(chǔ)。因此,右子級(jí)的索引總是可以通過將左子級(jí)的索引加 1 來獲得。在內(nèi)部, FIL 繼續(xù)支持密集節(jié)點(diǎn)和稀疏節(jié)點(diǎn),這兩種方法都來自一個(gè)基林類。

與內(nèi)部更改相比,對(duì) pythonapi 的更改保持在最低限度。新的 storage_type 參數(shù)指定是創(chuàng)建密集林還是稀疏林。此外,一個(gè)新的值 ‘AUTO’ 已經(jīng)成為推斷算法參數(shù)的新默認(rèn)值;它允許 FIL 自己選擇推理算法。對(duì)于稀疏林,它當(dāng)前使用的是 ‘NAIVE’ 算法,這是唯一受支持的算法。對(duì)于密林,它使用 ‘BATCH_TREE_REORG’ 算法。

基準(zhǔn)

為了對(duì)稀疏樹進(jìn)行基準(zhǔn)測試,我們使用 sciket learn 訓(xùn)練了一個(gè)隨機(jī)林,具體來說就是 sklearn.ensemble.RandomForestClassifier 。然后,我們將得到的模型轉(zhuǎn)化為一個(gè) FIL 林,并對(duì)推理的性能進(jìn)行了測試。數(shù)據(jù)是使用 sklearn.datasets.make_classification() 生成的,包含 200 萬行,在訓(xùn)練和驗(yàn)證數(shù)據(jù)集之間平分, 32 列。對(duì)于基準(zhǔn)測試,在一百萬行上執(zhí)行推斷。

我們使用兩組參數(shù)進(jìn)行基準(zhǔn)測試。

深度限制設(shè)置為 10 或 20 ;在這種情況下,密集或稀疏的 FIL 林都可以放入 GPU 內(nèi)存中。

無深度限制;在這種情況下, SKLearn 訓(xùn)練的模型包含非常深的樹。在我們的基準(zhǔn)測試運(yùn)行中,樹的深度通常在 30 到 50 之間。試圖創(chuàng)建一個(gè)稠密的 FIL-forest 會(huì)耗盡內(nèi)存,但是可以順利創(chuàng)建一個(gè)稀疏的 forest 。

在這兩種情況下,林本身的大小仍然相對(duì)較小,因?yàn)闃渲械娜~節(jié)點(diǎn)數(shù)限制為 2048 個(gè),并且林由 100 棵樹組成。我們測量了 CPU 推理和 GPU 推理的時(shí)間。 GPU 推理是在 V100 上進(jìn)行的, CPU 推理是在一個(gè)有兩個(gè)插槽的系統(tǒng)上進(jìn)行的,每個(gè)插槽有 16 個(gè)內(nèi)核,帶有雙向超線程?;鶞?zhǔn)測試結(jié)果如圖 2 所示。

Results in figure 2 compare sparse and dense FIL predictors (if the latter is available) to SKLearn CPU predictors. FIL predictors are about 34–60x faster.

圖 2 : FIL (密集稀疏樹)和 SKLearn 的基準(zhǔn)測試結(jié)果 。

稀疏和密集 FIL 預(yù)測器(如果后者可用)都比 SKLearn CPU 預(yù)測器快 34-60 倍。對(duì)于淺層森林,稀疏 FIL 預(yù)報(bào)器比稠密 FIL 預(yù)報(bào)器慢,但是對(duì)于較深的森林,稀疏 FIL 預(yù)報(bào)器可以更快;具體的性能差異各不相同。例如,在圖 2 中, max \ u depth = 10 時(shí),密集預(yù)測器比稀疏預(yù)測器快 1 。 14 倍,但 max \ u depth = 20 時(shí),速度較慢,僅達(dá)到稀疏預(yù)測器的 0 。 75 倍。因此,對(duì)于淺層森林應(yīng)采用稠密 FIL 預(yù)報(bào)。

然而,對(duì)于深林,稠密預(yù)測器的內(nèi)存不足,因?yàn)樗目臻g需求隨著森林深度呈指數(shù)增長。稀疏預(yù)測器沒有這個(gè)問題,即使對(duì)于非常深的樹,它也能在 GPU 上提供快速的推斷。

結(jié)論

在稀疏森林的支持下, FIL 適用于更廣泛的問題。無論您是使用 XGBoost 構(gòu)建梯度增強(qiáng)的決策樹,還是使用 cuML 或 sciket learn 構(gòu)建隨機(jī)林, FIL 都應(yīng)該是一個(gè)方便的選擇,可以加速您的推理。

關(guān)于作者

Andy Adinets 自2005年以來一直從事GPU編程工作,自2017年7月底以來一直在Nvidia擔(dān)任AI開發(fā)人員技術(shù)工程師近4年。他目前正在從事多個(gè)項(xiàng)目,包括Forest Inference Library(FIL) )和GPU排序。 當(dāng)機(jī)會(huì)出現(xiàn)時(shí),他還喜歡優(yōu)化各種GPU算法。

審核編輯:郭婷

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

    關(guān)注

    68

    文章

    11077

    瀏覽量

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

    關(guān)注

    28

    文章

    4944

    瀏覽量

    131217
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    信而泰×DeepSeek:AI推理引擎驅(qū)動(dòng)網(wǎng)絡(luò)智能診斷邁向 “自愈”時(shí)代

    模態(tài)的技術(shù)特性,DeepSeek正加速推動(dòng)AI在金融、政務(wù)、科研及網(wǎng)絡(luò)智能化等關(guān)鍵領(lǐng)域的深度應(yīng)用。 信而泰:AI推理引擎賦能網(wǎng)絡(luò)智能診斷新范式信而泰深度整合DeepSeek-R1大模型系統(tǒng),構(gòu)建了新一代
    發(fā)表于 07-16 15:29

    模型推理顯存和計(jì)算量估計(jì)方法研究

    方法。 一、引言 大模型推理是指在已知輸入數(shù)據(jù)的情況下,通過深度學(xué)習(xí)模型進(jìn)行預(yù)測或分類的過程。然而,大模型
    發(fā)表于 07-03 19:43

    詳解 LLM 推理模型的現(xiàn)狀

    2025年,如何提升大型語言模型(LLM)的推理能力成了最熱門的話題之一,大量優(yōu)化推理能力的新策略開始出現(xiàn),包括擴(kuò)展推理時(shí)間計(jì)算、運(yùn)用強(qiáng)化學(xué)習(xí)、開展監(jiān)督微調(diào)和進(jìn)行提煉等。本文將深入探討
    的頭像 發(fā)表于 04-03 12:09 ?484次閱讀
    詳解 LLM <b class='flag-5'>推理模型</b>的現(xiàn)狀

    英偉達(dá)GTC25亮點(diǎn):NVIDIA Dynamo開源庫加速并擴(kuò)展AI推理模型

    DeepSeek-R1 上的吞吐量提高了 30 倍 NVIDIA 發(fā)布了開源推理軟件 NVIDIA Dynamo,旨在以高效率、低成本加速并擴(kuò)展 AI 工廠中的 AI 推理模型。 作為 NVIDIA
    的頭像 發(fā)表于 03-20 15:03 ?645次閱讀

    為什么無法在運(yùn)行時(shí)C++推理中讀取OpenVINO?模型?

    使用模型優(yōu)化器 2021.1 版OpenVINO?轉(zhuǎn)換模型 使用 Runtime 2022.3 版本在 C++ 推理實(shí)現(xiàn) ( core.read_model()) 中讀取模型Open
    發(fā)表于 03-05 06:17

    中國電提出大模型推理加速新范式Falcon

    近日,中國電信翼支付針對(duì)大模型推理加速的最新研究成果《Falcon: Faster and Parallel Inference of Large Language Models through
    的頭像 發(fā)表于 01-15 13:49 ?954次閱讀
    中國電提出大<b class='flag-5'>模型</b><b class='flag-5'>推理</b><b class='flag-5'>加速</b>新范式Falcon

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

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

    阿里云開源推理模型QwQ

    近日,阿里云通義團(tuán)隊(duì)宣布推出全新AI推理模型QwQ-32B-Preview,并同步實(shí)現(xiàn)了開源。這一舉措標(biāo)志著阿里云在AI推理領(lǐng)域邁出了重要一步。 據(jù)評(píng)測數(shù)據(jù)顯示,QwQ預(yù)覽版本已具備研究生水平的科學(xué)
    的頭像 發(fā)表于 11-29 11:30 ?1165次閱讀

    使用vLLM+OpenVINO加速大語言模型推理

    隨著大語言模型的廣泛應(yīng)用,模型的計(jì)算需求大幅提升,帶來推理時(shí)延高、資源消耗大等挑戰(zhàn)。
    的頭像 發(fā)表于 11-15 14:20 ?1419次閱讀
    使用vLLM+OpenVINO<b class='flag-5'>加速</b>大語言<b class='flag-5'>模型</b><b class='flag-5'>推理</b>

    高效大模型推理綜述

    模型由于其在各種任務(wù)中的出色表現(xiàn)而引起了廣泛的關(guān)注。然而,大模型推理的大量計(jì)算和內(nèi)存需求對(duì)其在資源受限場景的部署提出了挑戰(zhàn)。業(yè)內(nèi)一直在努力開發(fā)旨在提高大模型
    的頭像 發(fā)表于 11-15 11:45 ?1453次閱讀
    高效大<b class='flag-5'>模型</b>的<b class='flag-5'>推理</b>綜述

    FPGA和ASIC在大模型推理加速中的應(yīng)用

    隨著現(xiàn)在AI的快速發(fā)展,使用FPGA和ASIC進(jìn)行推理加速的研究也越來越多,從目前的市場來說,有些公司已經(jīng)有了專門做推理的ASIC,像Groq的LPU,專門針對(duì)大語言模型
    的頭像 發(fā)表于 10-29 14:12 ?2015次閱讀
    FPGA和ASIC在大<b class='flag-5'>模型</b><b class='flag-5'>推理</b><b class='flag-5'>加速</b>中的應(yīng)用

    澎峰科技高性能大模型推理引擎PerfXLM解析

    自ChatGPT問世以來,大模型遍地開花,承載大模型應(yīng)用的高性能推理框架也不斷推出,大有百家爭鳴之勢。在這種情況下,澎峰科技作為全球領(lǐng)先的智能計(jì)算服務(wù)提供商,在2023年11月25日發(fā)布了針對(duì)大語言
    的頭像 發(fā)表于 09-29 10:14 ?1468次閱讀
    澎峰科技高性能大<b class='flag-5'>模型</b><b class='flag-5'>推理</b>引擎PerfXLM解析

    【《大語言模型應(yīng)用指南》閱讀體驗(yàn)】+ 基礎(chǔ)知識(shí)學(xué)習(xí)

    習(xí)語言的表達(dá)方式和生成能力。通過預(yù)測文本中缺失的部分或下一個(gè)詞,模型逐漸掌握語言的規(guī)律和特征。 常用的模型結(jié)構(gòu) Transformer架構(gòu):大語言模型通?;赥ransformer架
    發(fā)表于 08-02 11:03

    LLM大模型推理加速的關(guān)鍵技術(shù)

    LLM(大型語言模型)大模型推理加速是當(dāng)前人工智能領(lǐng)域的一個(gè)研究熱點(diǎn),旨在提高模型在處理復(fù)雜任務(wù)時(shí)的效率和響應(yīng)速度。以下是對(duì)LLM大
    的頭像 發(fā)表于 07-24 11:38 ?1804次閱讀

    云天勵(lì)飛推出IPU-X6000加速卡,針對(duì)大模型推理任務(wù)設(shè)計(jì)

    卡的互聯(lián);可應(yīng)用于語言、視覺、多模態(tài)等各類大模型推理加速,目前已適配云天天書、通義千問、百川智能、Llama2/3等近10個(gè)主流大模型。
    的頭像 發(fā)表于 07-24 11:03 ?1380次閱讀