MMLSpark+Spark:pyspark+lightGBM應(yīng)用實(shí)踐

MMLSpark ,即?Microsoft Machine Learning for Apache Spark ,是微軟開源的一個(gè)針對(duì) Apache Spark 的深度學(xué)習(xí)和數(shù)據(jù)可視化的庫(kù)。作為專門為大規(guī)模數(shù)據(jù)處理而設(shè)計(jì)的快速通用計(jì)算引擎,Apache Spark 為用戶提供了創(chuàng)建可擴(kuò)展 ML 的有力平臺(tái)。新發(fā)布的 MMLSpark 能夠?qū)⒅T如深度學(xué)習(xí)等前沿機(jī)器學(xué)習(xí)技術(shù)應(yīng)用于更大的數(shù)據(jù)集,并為用戶提供能夠應(yīng)對(duì)諸如文本、分類數(shù)據(jù)等多種類型數(shù)據(jù)的 API , 大大提高數(shù)據(jù)分析師使用 Apache Spark 的工作效率及實(shí)驗(yàn)速度。


lightGBM官網(wǎng)上提示用它可以在Spark上運(yùn)行l(wèi)ightGBM模型。下面記錄一個(gè)我的實(shí)踐過程。


首要條件(環(huán)境):scala2.11+spark2.4.0+python3.7。我是pyspark在jupyter上進(jìn)行實(shí)驗(yàn)的。

1.配置好python的pyspark,注意直接安裝可能會(huì)和spark2.4.0里面的pyspark版本不一致,建議直接將spark里的:


拷貝進(jìn)pip的site-package里。同時(shí)還需要安裝py4j。

2.啟動(dòng)pyspark,嘗試過官網(wǎng)的安裝mml的方法,沒有一個(gè)安裝成功的,各種問題報(bào)錯(cuò)。于是我嘗試用pip install mmlspark,發(fā)現(xiàn)會(huì)安裝到一個(gè)舊版本的mml,啟動(dòng)pyspark,import mmlspark很多方法都用不了。但是可以在這個(gè)地方下載到j(luò)ar包:然后執(zhí)行下面的操作,解壓jar包把里面的mmlspark文件夾替換至pip site-package里面的mmlspark。替換后即可正常工作。

mmlspark:https://repo1.maven.org/maven2/com/microsoft/ml/spark/mmlspark_2.11/

lightgbmlib:https://repo1.maven.org/maven2/com/microsoft/ml/lightgbm/lightgbmlib/

3.根據(jù)官方的實(shí)例代碼進(jìn)行測(cè)試。示例、數(shù)據(jù)集可以去kaggle找,因?yàn)殒溄涌赡苓B不上去。


能成功運(yùn)行就代表可以在spark上跑LightGBM了。


但是注意,應(yīng)該是要用spark dataframe。通過在pyspark里編寫代碼運(yùn)行即可。也可以使用spark-submit來提交py文件到分布式集群里進(jìn)行運(yùn)行。

如果是在集群上,同樣的方法即可。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容