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

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

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

在幾個(gè)AWS實(shí)例上運(yùn)行的XGBoost和LightGBM的性能比較

jf_9aVl32Dp ? 來(lái)源:Arm軟件開(kāi)發(fā)者 ? 作者:Arm軟件開(kāi)發(fā)者 ? 2022-10-24 10:24 ? 次閱讀

介紹

XGBoost(eXtreme Gradient Boosting)是一個(gè)在Gradient Boosting Decision Tree(GBDT)框架下的開(kāi)源機(jī)器學(xué)習(xí)庫(kù)(https://github.com/dmlc/xgboost)。XGBoost用于使用機(jī)器學(xué)習(xí)解決數(shù)據(jù)科學(xué)中的回歸和分類問(wèn)題。任務(wù)可以分布在一組機(jī)器上,以便更快地進(jìn)行訓(xùn)練和推理。例如,XGBoost4J-Spark(https://xgboost.readthedocs.io/en/latest/jvm/xgboost4j_spark_tutorial.html)是一個(gè)將XGBoost與Apache Spark集成的項(xiàng)目。

LightGBM(Light Gradient Boosting Machine)是微軟開(kāi)發(fā)的另一款基于GDBT的開(kāi)源工具(https://www.microsoft.com/en-us/research/project/lightgbm/),與XGBoost相比,它以更高效的訓(xùn)練而聞名。與XGBoost類似,LightGBM培訓(xùn)可以分布在一個(gè)節(jié)點(diǎn)集群上,并通過(guò)減少節(jié)點(diǎn)之間的通信來(lái)降低任務(wù)分配的成本。

這個(gè)博客比較了在幾個(gè)AWS實(shí)例上運(yùn)行的XGBoost和LightGBM的性能。這些實(shí)例包括類型C5(Skylake SP或Cascade Lake)、C6i(Intel Ice Lake)、C6g(AWS Graviton2)和C7g(AWS Graviton3),大小為12xlarge。這些實(shí)例都配備了48個(gè)vCPU和96GB內(nèi)存。

AWS Graviton3:第三代Graviton處理器系列

AWS Graviton2處理器是AWS使用Arm Neoverse內(nèi)核設(shè)計(jì)的第二代處理器,與Amazon EC2中的x86實(shí)例相比,為不同的工作負(fù)載提供了廣泛的性價(jià)比改進(jìn)。AWS Gravaton3是Graviton處理器系列的第三代,與第二代相比,計(jì)算性能提高了25%。特定計(jì)算的性能可以提高2到3倍,例如浮點(diǎn)運(yùn)算和密碼運(yùn)算,以及支持bfloat16的基于CPU的機(jī)器學(xué)習(xí)應(yīng)用程序。與支持DDR4的實(shí)例相比,Graviton3對(duì)DDR5的支持將內(nèi)存帶寬提高了50%。

基準(zhǔn)環(huán)境

基準(zhǔn)測(cè)試工具

XGBoost集成在一個(gè)流行的Python機(jī)器庫(kù)scikit-learn中。我們使用scikit-learn_bench對(duì)XGBoost進(jìn)行基準(zhǔn)測(cè)試,并對(duì)LightGBM進(jìn)行少量修改?;鶞?zhǔn)測(cè)試工具和參數(shù)在配置文件中傳遞。示例配置文件位于存儲(chǔ)庫(kù)的“config”目錄中?;鶞?zhǔn)測(cè)試使用Python 3.10.4和以下版本的Python庫(kù):

XGBoost: 1.6.2

LightGBM: 3.3.2

scikit-learn: 1.1.2

對(duì)于XGBoost,我們?yōu)橐韵聰?shù)據(jù)集運(yùn)行基準(zhǔn)測(cè)試:

Airline(binary classification)(https://www.stat.purdue.edu/~sguha/rhipe/doc/html/airline.html)

Higgs(binary classification) (https://archive.ics.uci.edu/ml/datasets/HIGGS)

MSRank(multi-class classification)(https://www.microsoft.com/en-us/research/project/mslr/)


對(duì)于LightGBM,我們呈現(xiàn)Airline和Higgs數(shù)據(jù)集的結(jié)果。

基準(zhǔn)測(cè)試使用的參數(shù)如下:

13cd15be-52c3-11ed-a3b6-dac502259ad0.png

XGBoost的“hist”樹(shù)方法類似于LightGBM的工作方式,可以提高訓(xùn)練速度。估計(jì)器(estimators)的數(shù)量設(shè)置為100,這是XGBoost和LightGBM庫(kù)的默認(rèn)值。線程數(shù)設(shè)置為實(shí)例上可用的vCPU數(shù),對(duì)于12xlarge的實(shí)例為48。

性能比較

XGBoost訓(xùn)練性能

下圖顯示了三個(gè)數(shù)據(jù)集和不同實(shí)例類型的訓(xùn)練時(shí)間。結(jié)果表明,Graviton3實(shí)例的訓(xùn)練時(shí)間比C5提高了52%,比C6i提高了36%,比Graviton2提高了37%。

140a735a-52c3-11ed-a3b6-dac502259ad0.jpg

圖1.XGBoost訓(xùn)練時(shí)間比較


下表顯示了Airline、Higgs和MSRank數(shù)據(jù)集的XGBoost訓(xùn)練時(shí)間。

142b818a-52c3-11ed-a3b6-dac502259ad0.png

XGBoost推理性能

圖2顯示了三個(gè)數(shù)據(jù)集和不同實(shí)例類型的推理時(shí)間。結(jié)果表明,Graviton3實(shí)例的推理時(shí)間比C5提高了45%,比C6i提高了26%,比Graviton2提高了32%。

146fa4aa-52c3-11ed-a3b6-dac502259ad0.jpg

圖2.XGBoost推理時(shí)間比較

下表顯示了三個(gè)數(shù)據(jù)集的XGBoost推理時(shí)間。

14ab62ce-52c3-11ed-a3b6-dac502259ad0.png

LightGBM訓(xùn)練性能

圖3顯示了Airline和Higgs數(shù)據(jù)集以及不同實(shí)例類型的訓(xùn)練時(shí)間。結(jié)果表明,Graviton3實(shí)例的訓(xùn)練時(shí)間比C5提高了53%,比C6i提高了42%,比Graviton2提高了41%。

14ce21ce-52c3-11ed-a3b6-dac502259ad0.jpg

圖3.LightGBM訓(xùn)練時(shí)間比較

下表顯示了Airline和Higgs數(shù)據(jù)集的LighttGBM訓(xùn)練時(shí)間。

14f968d4-52c3-11ed-a3b6-dac502259ad0.png

LightGBM推理性能

圖4顯示了兩個(gè)數(shù)據(jù)集和不同實(shí)例類型的訓(xùn)練時(shí)間。結(jié)果表明,Graviton3實(shí)例比C5提高了39%,比C6i提高了31%,比Graviton2提高了31%。

15223e58-52c3-11ed-a3b6-dac502259ad0.jpg

圖4.LightGBM推理時(shí)間比較

圖4中圖表的數(shù)據(jù)來(lái)自下表,顯示了LightGBM以及Airline和Higgs數(shù)據(jù)集的推理時(shí)間:

154f7472-52c3-11ed-a3b6-dac502259ad0.png

基準(zhǔn)測(cè)試考慮因素

默認(rèn)情況下,scikit_learn_bench 使用了Scikit-learn補(bǔ)丁,使用Intel(R)Extension for scikit learn(https://github.com/intel/scikit-learn-intelex)在支持SSE2、AVX、AVX2和AVX512的Intel處理器上優(yōu)化ML性能。然而,在本博客發(fā)布時(shí),該補(bǔ)丁不支持梯度增強(qiáng)算法。

Intel提供oneAPI數(shù)據(jù)分析庫(kù)(oneDAL)(https://github.com/oneapi-src/oneDAL)來(lái)加速I(mǎi)ntel機(jī)器上的ML算法。然而,它需要從標(biāo)準(zhǔn)XGBoost和LightGBM模型到OneDAL的代碼更改和轉(zhuǎn)換。在本測(cè)試中,我們沒(méi)有使用OneDAL轉(zhuǎn)換和測(cè)試這些模型。

結(jié)論

XGBoost基準(zhǔn)測(cè)試表明,在選擇用于性能分析的三個(gè)數(shù)據(jù)集(Airline、Higgs和MSRank)中,Graviton3實(shí)例的性能優(yōu)于Graviton2和x86實(shí)例。在某些情況下,Graviton3比x86高出50%。對(duì)于LightGBM以及Airline和Higgs這兩個(gè)數(shù)據(jù)集,在訓(xùn)練和推理操作中,表現(xiàn)出了類似的性能增強(qiáng)。
審核編輯:彭靜

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    3181

    瀏覽量

    42235
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8318

    瀏覽量

    132164
  • AWS
    AWS
    +關(guān)注

    關(guān)注

    0

    文章

    423

    瀏覽量

    24249
  • XGBoost
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    2202

原文標(biāo)題:在AWS Graviton3上部署時(shí)XGBoost和LightGBM的性能改進(jìn)

文章出處:【微信號(hào):Arm軟件開(kāi)發(fā)者,微信公眾號(hào):Arm軟件開(kāi)發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PWM信號(hào)的性能比較

    我正在研究一個(gè)項(xiàng)目,希望使用PWM信號(hào),誰(shuí)能給我性能比較?? 以上來(lái)自于百度翻譯 以下為原文 i am working on a project wich requries a use of a
    發(fā)表于 06-19 08:38

    ARM Neoverse IP的AWS實(shí)例etcd分布式鍵對(duì)值存儲(chǔ)性能提升

    是在給定時(shí)間段內(nèi)完成的總操作數(shù)。本文中,我們比較AWS M6g實(shí)例(基于 Arm Neoverse IP的 Graviton2)與M5實(shí)例
    發(fā)表于 07-06 17:37

    Arm Neoverse V1的AWS Graviton3深度學(xué)習(xí)推理工作負(fù)載方面的作用

    機(jī)器學(xué)習(xí) (ML) 是云和邊緣基礎(chǔ)設(shè)施中增長(zhǎng)最快的部分之一。 ML 中,深度學(xué)習(xí)推理預(yù)計(jì)會(huì)增長(zhǎng)得更快。本博客中,我們比較了三種 Amazon Web Services (AWS)
    發(fā)表于 08-31 15:03

    比較AWS M6g實(shí)例與M5實(shí)例的etcd吞吐量和延遲性能

    members)Table 5: etcdM5和M6g的時(shí)延性能結(jié)果 (Write to all members)下圖顯示了M5和M6g實(shí)例
    發(fā)表于 09-13 15:06

    討論使用TerraformAWS上部署Arm EC2實(shí)例

    于將 A1 實(shí)例部署到您的云基礎(chǔ)設(shè)施。除了選擇 A1 實(shí)例類型外,無(wú)需執(zhí)行任何不同或特殊操作即可在 AWS 運(yùn)行 A1
    發(fā)表于 09-16 14:53

    膠體電池與鉛酸電池性能比較

    膠體電池與鉛酸電池性能比較
    發(fā)表于 11-06 16:43 ?35次下載

    電感器磁芯材料性能比較

    電感器磁芯材料性能比較表 Iron Powder
    發(fā)表于 12-22 11:31 ?2263次閱讀

    不同材料的電池性能比較

    不同材料的電池性能比較 電池成份
    發(fā)表于 10-27 10:48 ?836次閱讀

    陶瓷PTC與有機(jī)PTC的性能比較

    陶瓷PTC與有機(jī)PTC的性能比較     正溫度系數(shù)的熱敏電阻(PTC)作為一種新型過(guò)流保護(hù)元件,近幾年來(lái)已在程控交換機(jī)的用
    發(fā)表于 11-28 10:04 ?2376次閱讀

    各種電子管的防雷器件性能比較

    各種電子管的防雷器件性能比較 下為常用防雷元器件性能比較: 火花間隙(Arc chopping)
    發(fā)表于 11-30 09:32 ?831次閱讀

    步進(jìn)電機(jī)和交流伺服電機(jī)性能比較

    步進(jìn)電機(jī)和交流伺服電機(jī)性能比較 步進(jìn)電機(jī)和交流伺服電機(jī)性能比較 步進(jìn)電機(jī)是一種離散運(yùn)動(dòng)的裝置,它和現(xiàn)代數(shù)字控制技術(shù)有著本質(zhì)的聯(lián)系。目前國(guó)內(nèi)的數(shù)字
    發(fā)表于 02-06 10:25 ?976次閱讀

    基本放大電路性能比較

    基本放大電路性能比較,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-18 17:19 ?0次下載

    基于 Boosting 框架的主流集成算法介紹(

    本文是決策樹(shù)的第三篇,主要介紹基于 Boosting 框架的主流集成算法,包括 XGBoostLightGBM。 XGBoost
    的頭像 發(fā)表于 02-17 15:57 ?952次閱讀
    基于 Boosting 框架的主流集成算法介紹(<b class='flag-5'>上</b>)

    XGBoost 2.0介紹

    XGBoost是處理不同類型表格數(shù)據(jù)的最著名的算法,LightGBM 和Catboost也是為了修改他的缺陷而發(fā)布的。近日XGBoost發(fā)布了新的2.0版,本文除了介紹讓XGBoost
    的頭像 發(fā)表于 11-03 10:12 ?427次閱讀
    <b class='flag-5'>XGBoost</b> 2.0介紹

    電感器磁芯材料性能比較

    電子發(fā)燒友網(wǎng)站提供《電感器磁芯材料性能比較表.doc》資料免費(fèi)下載
    發(fā)表于 02-27 15:57 ?0次下載