0、簡介
sparkMLlib是spark中的一個算法包,主要是進行一些機器學習相關的操作及計算,主要包括以下幾個方面:
序號 | 特徵 | 特徵描述 |
1 | ML算法 | 常見的學習算法,例如分類,迴歸,聚類和協作過濾 |
2 | 特徵化 | 特徵提取,變換,降維和選擇 |
3 | 管道 | 用於構建,評估和調整ML管道的工具 |
4 | 持久性 | 保存和加載算法,模型和管道 |
5 | 實用程序 | 線性代數,統計信息,數據處理等 |
1、官方API介紹
1.1、官方API之基於RDD
聲明:The MLlib RDD-based API is now in maintenance mode.
1.2、官方API之基於DataFrame
聲明: DataFrame-based API is primary API
1.3、說明
從Spark 2.0開始,spark.mllib軟件包中基於RDD的API已進入維護模式。 Spark的主要機器學習API現在是spark.ml軟件包中基於DataFrame的API。
MLlib包括基於RDD的API和基於DataFrame的API。 基於RDD的API現在處於維護模式。 但是既不棄用API,也不棄用MLlib。
2、spark.mllib軟件包依賴項
1、MLlib使用線性代數軟件包Breeze,該軟件包依賴於 netlib-java進行優化的數值處理。如果本機庫1在運行時不可用,您將看到警告消息,而將使用純JVM實現。
2、由於運行時專有二進制文件存在許可問題,因此netlib-java
默認情況下,我們不包含的本機代理。要配置netlib-java
/ Breeze使用系統優化的二進制文件,請包含 com.github.fommil.netlib:all:1.1.2
(或使用構建Spark -Pnetlib-lgpl
)作爲您項目的依賴項,並閱讀netlib-java文檔以獲取平臺的其他安裝說明。
3、要在Python中使用MLlib,您將需要NumPy 1.4版或更高版本。
3、項目依賴座標
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.11</artifactId>
<version>${spark.version}</version>
</dependency>
說明:版本最好使用最新版本,因爲最新版本里面算法更全,更完善,解決了前期版本中出現的bug。
有問題請聯繫QQ:765120845