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

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

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

      在幾個AWS實例上運行的XGBoost和LightGBM的性能比較

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

      介紹

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

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

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

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

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

      基準環(huán)境

      基準測試工具

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

      XGBoost: 1.6.2

      LightGBM: 3.3.2

      scikit-learn: 1.1.2

      對于XGBoost,我們?yōu)橐韵聰?shù)據(jù)集運行基準測試:

      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/)


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

      基準測試使用的參數(shù)如下:

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

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

      性能比較

      XGBoost訓(xùn)練性能

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

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

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


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

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

      XGBoost推理性能

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

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

      圖2.XGBoost推理時間比較

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

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

      LightGBM訓(xùn)練性能

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

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

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

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

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

      LightGBM推理性能

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

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

      圖4.LightGBM推理時間比較

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

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

      基準測試考慮因素

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

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

      結(jié)論

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

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

        關(guān)注

        3

        文章

        3358

        瀏覽量

        42523
      • 機器學(xué)習(xí)
        +關(guān)注

        關(guān)注

        66

        文章

        8420

        瀏覽量

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

        關(guān)注

        0

        文章

        432

        瀏覽量

        24385
      • XGBoost
        +關(guān)注

        關(guān)注

        0

        文章

        9

        瀏覽量

        2222

      原文標題:在AWS Graviton3上部署時XGBoost和LightGBM的性能改進

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

      收藏 人收藏

        評論

        相關(guān)推薦

        PWM信號的性能比較

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

        ARM Neoverse IP的AWS實例etcd分布式鍵對值存儲性能提升

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

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

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

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

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

        討論使用TerraformAWS上部署Arm EC2實例

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

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

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

        電感器磁芯材料性能比較

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

        不同材料的電池性能比較

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

        陶瓷PTC與有機PTC的性能比較

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

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

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

        步進電機和交流伺服電機性能比較

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

        基本放大電路性能比較

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

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

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

        電感器磁芯材料性能比較

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