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

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

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

工業(yè)大數(shù)據(jù)挖掘的利器——Spark MLlib

格創(chuàng)東智 ? 2019-01-10 13:40 ? 次閱讀

格物匯之前刊發(fā)的《工業(yè)大數(shù)據(jù)處理領(lǐng)域的“網(wǎng)紅”——Apache Spark》中提到,在“中國制造2025”的技術(shù)路線圖中,工業(yè)大數(shù)據(jù)是作為重要突破點(diǎn)來規(guī)劃的,而在未來的十年,以數(shù)據(jù)為核心構(gòu)建的智能化體系會(huì)成為支撐智能制造和工業(yè)互聯(lián)網(wǎng)的核心動(dòng)力。Apache Spark 作為新一代輕量級大數(shù)據(jù)快速處理平臺,集成了大數(shù)據(jù)相關(guān)的各種能力,是理解大數(shù)據(jù)的首選。Spark有一個(gè)機(jī)器學(xué)習(xí)組件是專門用于解決海量數(shù)據(jù)如何進(jìn)行高效數(shù)據(jù)挖掘的問題,那就是SparkMLlib組件。今天的格物匯就給大家詳細(xì)介紹一下Spark MLlib。

Spark MLlip 天生適合迭代計(jì)算

在介紹Spark MLlib 這個(gè)組件前,我們先了解一下機(jī)器學(xué)習(xí)的定義。在維基百科中對機(jī)器學(xué)習(xí)給出如下定義:

機(jī)器學(xué)習(xí)是一門人工智能的科學(xué),該領(lǐng)域的主要研究對象是人工智能,特別是如何在經(jīng)驗(yàn)學(xué)習(xí)中改善具體算法的性能。

機(jī)器學(xué)習(xí)是對能通過經(jīng)驗(yàn)自動(dòng)改進(jìn)的計(jì)算機(jī)算法的研究。

機(jī)器學(xué)習(xí)是用數(shù)據(jù)或以往的經(jīng)驗(yàn),以此優(yōu)化計(jì)算機(jī)程序的性能標(biāo)準(zhǔn)。

很明顯,機(jī)器學(xué)習(xí)的重點(diǎn)之一就是“經(jīng)驗(yàn)”,對于計(jì)算機(jī)而言,經(jīng)驗(yàn)就是需要進(jìn)行多次迭代計(jì)算得到的,Spark 的基于內(nèi)存的計(jì)算模式天生就擅長迭代計(jì)算,多個(gè)步驟計(jì)算直接在內(nèi)存中完成,只有在必要時(shí)才會(huì)操作磁盤和網(wǎng)絡(luò),所以說Spark正是機(jī)器學(xué)習(xí)的理想的平臺。在Spark官方首頁中展示了Logistic Regression算法在Spark和Hadoop中運(yùn)行的性能比較,如圖下圖所示。

Spark MLlib 算法以及功能

MLlib由一些通用的學(xué)習(xí)算法以及工具組成,其中包括分類、回歸、聚類、協(xié)同過濾、降維等,同時(shí)還包括底層的優(yōu)化原語和高層的管道API。具體主要包含以下內(nèi)容:

>>>>

回歸(Regression)

線性回歸(Linear

廣義線性回歸(Generalized Linear)

決策樹(Decision Tree)

隨機(jī)森林(Random Forest)

梯度提升樹(Gradient-boosted Tree)

Survival

Isotonic

>>>>

分類(Classification)

邏輯回歸(Logistic,二分類和多酚類)

決策樹(Decision Tree)

隨機(jī)森林(Random Forest)

梯度提升樹(Gradient-boosted Tree)

多層反饋(Multilayer Perceptron)

支持向量機(jī)(Linear support vector machine)

One-vs-All

樸素貝葉斯(Naive Bayes)

>>>>

聚類(Clustering)

K-means

隱含狄利克雷分布(LDA)

BisectingK-means

高斯混合模型(Gaussian Mixture Model)

協(xié)同過濾(Collaborative Filtering)

>>>>

特征工程(Featurization)

特征工程(Featurization)

特征提取

轉(zhuǎn)換

降維(Dimensionality reduction)

篩選(Selection)

>>>>

管道(Pipelines)

組合管道(Composing Pipelines)

構(gòu)建、評估和調(diào)優(yōu)(Tuning)機(jī)器學(xué)習(xí)管道

>>>>

持久化(Persistence)

保存算法,模型和管道到持久化存儲(chǔ)器,以備后續(xù)使用

從持久化存儲(chǔ)器載入算法、模型和管道

>>>>

實(shí)用工具(Utilities)

線性代數(shù)(Linear algebra)

統(tǒng)計(jì)

數(shù)據(jù)處理

其他

綜上可見,Spark在機(jī)器學(xué)習(xí)上發(fā)展還是比較快的,目前已經(jīng)支持了主流的統(tǒng)計(jì)和機(jī)器學(xué)習(xí)算法。

Spark MLlib API 變遷

Spark MLlib 組件從Spark 1.2版本以后就出現(xiàn)了兩套機(jī)器學(xué)習(xí)API:

spark.mllib基于RDD的機(jī)器學(xué)習(xí)API,是Spark最開始的機(jī)器學(xué)習(xí)API,在Spark1.0以前的版本就已經(jīng)存在的了。

spark.ml提供了基于DataFrame 高層次的API,引入了PipLine,可以向用戶提供一個(gè)基于DataFrame的機(jī)器學(xué)習(xí)流式API套件。

Spark 2.0 版本開始,spark mllib就進(jìn)入了維護(hù)模式,不再進(jìn)行更新,后續(xù)等spark.ml API 足夠成熟并足以取代spark.mllib 的時(shí)候就棄用。

那為什么Spark要將基于RDD的API 切換成基于DataFrame的API呢?原因有以下三點(diǎn):

首先相比spark.mllib,spark.ml的API更加通用和靈活,對用戶更加友好,并且spark.ml在DataFrame上的抽象級別更高,數(shù)據(jù)與操作的耦合度更低;

spark.ml中無論是什么模型,都提供了統(tǒng)一的算法操作接口,例如模型訓(xùn)練就調(diào)用fit方法,不行spark.mllib中不同模型會(huì)有各種各樣的trainXXX;

受scikit-learn 的Pipline概念啟發(fā),spark.ml引入pipeline, 跟sklearn,這樣可以把很多操作(算法/特征提取/特征轉(zhuǎn)換)以管道的形式串起來,使得工作流變得更加容易。

如今工業(yè)互聯(lián)網(wǎng)飛速發(fā)展,企業(yè)內(nèi)部往往存儲(chǔ)著TB級別甚至更大的數(shù)據(jù),面對海量數(shù)據(jù)的難以進(jìn)行有效快速的進(jìn)行數(shù)據(jù)挖掘等難題,Spark提供了MLlib 這個(gè)組件,通過利用了Spark 的內(nèi)存計(jì)算和適合迭代型計(jì)算的優(yōu)勢,并且提供用戶友好的API,使用戶能夠輕松快速的應(yīng)對海量數(shù)據(jù)挖掘的問題,加快工業(yè)大數(shù)據(jù)的價(jià)值變現(xiàn)。作為TCL集團(tuán)孵化的創(chuàng)新型科技公司,格創(chuàng)東智正在致力于深度融合包括Spark在內(nèi)的大數(shù)據(jù)、人工智能、云計(jì)算等前沿技術(shù)與制造行業(yè)經(jīng)驗(yàn),打造行業(yè)領(lǐng)先的“制造x”工業(yè)互聯(lián)網(wǎng)平臺。隨著未來Spark社區(qū)在AI領(lǐng)域的不斷發(fā)力,相信Spark MLlib組件的表現(xiàn)會(huì)越來越出色。

本文作者:格創(chuàng)東智大數(shù)據(jù)工程師黃歡(轉(zhuǎn)載請注明作者及來源)

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

    評論

    相關(guān)推薦

    工業(yè)大數(shù)據(jù)

    工業(yè)大數(shù)據(jù)是未來工業(yè)在全球市場競爭中發(fā)揮優(yōu)勢的關(guān)鍵。無論是德國工業(yè)4.0、美國工業(yè)互聯(lián)網(wǎng)還是《中國制造2025》,各國制造業(yè)創(chuàng)新戰(zhàn)略的實(shí)施基礎(chǔ)都是
    發(fā)表于 06-19 17:43

    大數(shù)據(jù)開發(fā)之spark應(yīng)用場景

    Spark大數(shù)據(jù)技術(shù)中數(shù)據(jù)計(jì)算處理的王者,能夠一次處理PB級的數(shù)據(jù),分布在數(shù)千個(gè)協(xié)作的物理或虛擬服務(wù)器集群中,它有一套廣泛的開發(fā)者庫和API,并且支持Java,Python,R和Sc
    發(fā)表于 04-10 16:05

    工業(yè)大數(shù)據(jù)分析平臺的應(yīng)用價(jià)值探討

    自己去了解一下了。 通過這樣的一個(gè)工業(yè)大數(shù)據(jù)分析平臺的應(yīng)用,可以為工業(yè)企業(yè)創(chuàng)新、產(chǎn)品的研發(fā)、工業(yè)企業(yè)管理等各個(gè)方面服務(wù)。比如:在企業(yè)產(chǎn)品創(chuàng)新方面:通過大量的數(shù)據(jù)
    發(fā)表于 11-12 15:56

    大數(shù)據(jù)系列之Spark

    大數(shù)據(jù)系列Spark初探
    發(fā)表于 04-30 08:08

    如何成功實(shí)施工業(yè)大數(shù)據(jù)

    如何成功實(shí)施工業(yè)大數(shù)據(jù)?
    發(fā)表于 09-30 08:45

    工業(yè)大數(shù)據(jù)技術(shù)綜述

    工業(yè)大數(shù)據(jù)工業(yè)數(shù)據(jù)的總稱,包括信息化數(shù)據(jù)、物聯(lián)網(wǎng)數(shù)據(jù)以及跨界數(shù)據(jù),是
    發(fā)表于 03-27 16:10 ?14次下載

    工業(yè)大數(shù)據(jù)處理領(lǐng)域的“網(wǎng)紅”——Apache Spark

    應(yīng)對海量數(shù)據(jù)的處理、分析以及深度挖掘,但作為分布式計(jì)算框架的Spark卻能輕松應(yīng)付這些場景。在工業(yè)互聯(lián)網(wǎng)平臺上,Spark 既能快速實(shí)現(xiàn)
    的頭像 發(fā)表于 12-17 10:55 ?2953次閱讀

    工業(yè)大數(shù)據(jù)的概念

    工業(yè)大數(shù)據(jù)是指在工業(yè)領(lǐng)域中,圍繞典型智能制造模式,從客戶需求到銷售、訂單、計(jì)劃、研發(fā)、設(shè)計(jì)、工藝、制造、采購、供應(yīng)、庫存、發(fā)貨和交付、售后服務(wù)、運(yùn)維、報(bào)廢或回收再制造等整個(gè)產(chǎn)品全生命周期各個(gè)環(huán)節(jié)所
    的頭像 發(fā)表于 03-05 15:18 ?4000次閱讀

    工業(yè)大數(shù)據(jù)和互聯(lián)網(wǎng)大數(shù)據(jù)區(qū)別

    工業(yè)大數(shù)據(jù)與互聯(lián)網(wǎng)大數(shù)據(jù)最大的區(qū)別在于工業(yè)大數(shù)據(jù)有非常強(qiáng)的目的性,而互聯(lián)網(wǎng)大數(shù)據(jù)更多的是一種關(guān)聯(lián)的挖掘,是更加發(fā)散的一種分析。除此之外,兩者
    的頭像 發(fā)表于 03-28 14:08 ?1.1w次閱讀

    工業(yè)大數(shù)據(jù)前景

    工業(yè)大數(shù)據(jù)正以一種革命風(fēng)暴的姿態(tài)闖入人們視野,其技術(shù)和市場在快速發(fā)展,而駕馭工業(yè)大數(shù)據(jù)的呼聲則一浪高過一浪。于是有人說中國大數(shù)據(jù)產(chǎn)業(yè)有炒作“過熱”之嫌,也有人認(rèn)為大數(shù)據(jù)投資正當(dāng)時(shí)。隨著
    的頭像 發(fā)表于 03-28 14:08 ?3801次閱讀

    SparkMLlib GBDT算法工業(yè)大數(shù)據(jù)實(shí)戰(zhàn)

    在格物匯之前發(fā)表的《工業(yè)大數(shù)據(jù)挖掘利器——Spark MLlib》中提到,Spark
    的頭像 發(fā)表于 04-28 14:11 ?3742次閱讀
    SparkMLlib GBDT算法<b class='flag-5'>工業(yè)大數(shù)據(jù)</b>實(shí)戰(zhàn)

    工業(yè)大數(shù)據(jù)如何管理

    從需求側(cè)看,隨著智能制造、工業(yè)互聯(lián)網(wǎng)等國家戰(zhàn)略的逐一推進(jìn),個(gè)性化定制、網(wǎng)絡(luò)化延伸以及智能化設(shè)計(jì)、生產(chǎn)、服務(wù)等新模式不斷出現(xiàn),對于工業(yè)大數(shù)據(jù)技術(shù)、產(chǎn)品、平臺的需求不斷增大,為工業(yè)大數(shù)據(jù)提供了充足的應(yīng)用場景。
    的頭像 發(fā)表于 04-21 16:55 ?2834次閱讀

    工業(yè)大數(shù)據(jù)的技術(shù)與應(yīng)用

    工業(yè)大數(shù)據(jù),是指在工業(yè)領(lǐng)域中,圍繞典型智能制造模式,從客戶需求到銷售、訂單、計(jì)劃、研發(fā)、設(shè)計(jì)、工藝、制造、采購、供應(yīng)、庫存、發(fā)貨和交付、售后服務(wù)、運(yùn)維、報(bào)廢或回收再制造等整個(gè)產(chǎn)品全生命周期各個(gè)環(huán)節(jié)
    的頭像 發(fā)表于 11-23 14:37 ?5457次閱讀

    SparkMLlib GBDT算法工業(yè)大數(shù)據(jù)的實(shí)戰(zhàn)案例

    在格物匯之前發(fā)表的《工業(yè)大數(shù)據(jù)挖掘利器——Spark MLlib》中提到,Spark
    的頭像 發(fā)表于 12-25 17:42 ?879次閱讀

    工業(yè)大數(shù)據(jù)在制造企業(yè)的應(yīng)用場景

    工業(yè)大數(shù)據(jù)是一個(gè)新的概念,從字面上理解,工業(yè)大數(shù)據(jù)是指在工業(yè)領(lǐng)域信息化應(yīng)用中所產(chǎn)生的大數(shù)據(jù)。
    的頭像 發(fā)表于 01-17 12:05 ?4878次閱讀