真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

大數(shù)據(jù)spark中ml與mllib的區(qū)別你分清了嗎?-創(chuàng)新互聯(lián)

大數(shù)據(jù)學習過程中一個重要的環(huán)節(jié)就是spark,但是在spark中有很多的知識點,很多人都傻傻分不清楚,其中,最易搞混的就是ml與mllib的區(qū)別,所以我們不妨來詳細的了解一下二者的區(qū)別。

如果你想了解大數(shù)據(jù)的學習路線,想學習大數(shù)據(jù)知識以及需要免費的學習資料可以加群:784789432.歡迎你的加入。每天下午三點開直播分享基礎知識,晚上20:00都會開直播給大家分享大數(shù)據(jù)項目實戰(zhàn)。
首先、關于Spark ML

成都創(chuàng)新互聯(lián)2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目網(wǎng)站建設、成都網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元盤龍做網(wǎng)站,已為上家服務,為盤龍各地企業(yè)和個人服務,聯(lián)系電話:028-86922220
1、定義:ark機器學習,對的對象:DataFrame。

   2、主要操作的是DataFrame。其中taFrame是Dataset的子集,也就是Dataset[Row]。DataSet是對RDD的封裝,對SQL之類的操作做了很多優(yōu)化。

   其次、關于Spark MlLib
   1、定義MLlib是Spark的機器學習(ML)庫。其目標是使實用的機器學習具有可擴展性和容易性。在高水平上,它提供了以下工具:

   A、ML算法:常用的學習算法,如分類,回歸,聚類和協(xié)同過濾

   B、特征:特征提取,變換,維數(shù)降低和選擇

   C、管道:構建,評估和調(diào)整ML管道的工具

   D、持久性:保存和加載算法,模型和流水線

   E、實用程序:線性代數(shù),統(tǒng)計,數(shù)據(jù)處理等

   2、針對的對象:RDD

   從Spark 2.0開始,軟件包中基于RDD的API spark.mllib已進入維護模式。只修改bug,不增加系新的功能。Spark的主要機器學習API現(xiàn)在是包中的基于DataFrame的API spark.ml。

   最后,二者的區(qū)別總結

   1、編程過程

   (1)構建機器學習算法的過程不一樣:ML提倡使用pipelines,把數(shù)據(jù)想成水,水從管道的一段流入,從另一端流出。

   (2)大體概念:DataFrame => Pipeline => A newDataFrame

   Pipeline: 是由若干個Transformers和Estimators連起來的數(shù)據(jù)處理過程

   Transformer:入:DataFrame => 出: Data Frame

   Estimator:入:DataFrame => 出:Transformer

   2、算法接口

   (1)spark.mllib中的算法接口是基于RDDs的;

   (2)spark.ml中的算法接口是基于DataFrames的。

   實際使用中推薦ml,建立在DataFrames基礎上的ml中一系列算法更適合創(chuàng)建包含從數(shù)據(jù)清洗到特征工程再到模型訓練等一系列工作的MLpipeline;

   比如用樸素貝葉斯舉個例子:

在模型訓練的時候是使用naiveBayes.fit(dataset: Dataset[]):NaiveBayesModel來訓練模型的,返回值是一個naiveBayesModel,可以使用naiveBayesModel.transform(dataset: Dataset[]): DataFrame,進行模型的檢驗,然后再通過其他的方法來評估這個模型, 模型的使用可以參考上面方法,是使用transform來進行預測的,取預測值可以使用select來取值,使用select的時候可以使用“$”label””的形式來取值。類似與sql ,使用起來通俗易懂,且入門的門檻較低。

   3、抽象程度

   (1)mlib主要是基于RDD的,抽象級別不夠高;

   (2)ml主要是把數(shù)據(jù)處理的流水線抽象出來,算法相當于流水線的一個組件,可以被其他算法隨意的替換,這樣就讓算法和數(shù)據(jù)處理的其他流程分割開來,實現(xiàn)低耦合。

   4、技術角度上:面向的數(shù)據(jù)集類型不一樣

   (1)ML的API是面向Dataset的

   (2)mllib是面對RDD的。Dataset和RDD有啥不一樣呢?

   Dataset的底端是RDD。

   Dataset對RDD進行了更深一層的優(yōu)化,比如說有sql語言類似的黑魔法,Dataset支持靜態(tài)類型分析所以在compile time就能報錯,各種combinators(map,foreach等)性能會更好。

   在spark3.0之后,將會廢棄mllib,全面的基于ml。因為ml操作的對象是DataFrame,操作起來會比RDD方便很多。所以,建議新接觸spark的同學可以直接用ml 的方式。

   大數(shù)據(jù)中的知識點需要大家詳細的去理解和應用,處理數(shù)據(jù)一旦出錯那么影響的將是整個大局,所以,求學者在學習過程中一定要打好基礎,從而更好的掌握大數(shù)據(jù)的知識。

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


本文名稱:大數(shù)據(jù)spark中ml與mllib的區(qū)別你分清了嗎?-創(chuàng)新互聯(lián)
文章來源:http://weahome.cn/article/hcsse.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部