1.MLlib
AMPLab
Spark最初誕生於伯克利 AMPLab實驗室,如今依然還是AMPLab所致力的項目,盡管這些不處於Apache Spark Foundation中,但是依然在妳日常的github項目中享有相當的地位。
ML Base
Spark本身的MLLib位於三層ML Base中的最底層,MLI位於中間層,ML Optimizer則處於最為抽象的頂層。
2.MLI
3.ML Optimizer (又稱 Ghostface)
Ghostware這個項目在2014年就開始進行了,不過從未對外公布。在這39個機器學習庫中,這是唯壹壹個霧件,之所以能囊括在這列表中,全憑著AMPLab與ML Base的地位支撐。
ML Base之外
4.Splash
這是近期2015年6月的壹個項目,在運行隨機梯度下降(SGD)時這套隨機學習算法聲稱在性能上比Spark MLib中快了25%-75%。這是AMPLab實驗室的sp標記項目,因此值得我們去閱讀。
5.Keystone ML
KML將端到端的機器學習管道引進到了Spark中,但在近期Spark版本中管道已經趨於成熟。同樣也承諾具有壹些計算機視覺能力,我曾經在博客中也提到過這也存在壹些局限。
6.Velox
作為壹個服務器專門負責管理大量機器學習模型的收集。
7.CoCoA
通過優化通信模式與shuffles來實現更快的機器學習,詳情可見這篇論文的描述《高效通信分布式雙坐標上升》。
框架
GPU-based
8.DeepLearning4j
我曾經的壹則博客有進行說明 《DeepLearning4J 增加了Spark gpu的支持》。
9.Elephas
全新的概念,這也是我寫這篇博客的初衷。它提供了壹個接口給Keras。
Non-GPU-based
10.DistML
模式並行下而並非數據並行的參數服務器(正如 Spark MLib)。
11.Aerosolve
來自Airbnb,用於他們自動化定價。
12. Zen
邏輯斯諦回歸、隱含狄利克雷分布(LDA)、因子分解機、神經網絡、受限玻爾茲曼機。
13.Distributed Data Frame
與Spark DataFrame類似,但是引擎是不可知的(例如在未來它將運行在引擎上而不是Spark)。其中包括了交叉驗證和外部機器學習庫的接口。
其他機器學習系統的接口
14. spark-corenlp
封裝了斯坦福CoreNLP。
15. Sparkit-learn
給Python Scikit-learn的接口。
16. Sparkling Water
給 的接口。
17. hivemall-spark
封裝了Hivemall,,在Hive中的機器學習。
18. spark-pmml-exporter-validator
可導出預測模型標記語言(PMML),壹種用於傳遞機器學習模型的行業標準的XML格式。
附加組件:增強MLlib中現有的算法。
19. MLlib-dropout
為Spark MLLib 增加dropout能力。基於以下這篇論文進行的實現,《Dropout:壹個簡單的方法來防止神經網絡中的過擬合》。
20.generalized-kmeans-clustering
為K-Means算法增加任意距離函數。
21. spark-ml-streaming
可視化的流式機器學習算法內置於Spark MLlib。
算法
監督學習
22. spark-libFM
因子分解機。
23. ScalaNetwork
遞歸神經網絡(RNNs)。
24. dissolve-struct
基於上文中提到的高性能Spark通信框架CoCoA下的支持向量機(SVM)。
25. Sparkling Ferns
基於以下這篇論文進行的實現,《通過使用隨機森林與隨機蕨算法的圖像分類技術》。
26. streaming-matrix-factorization
矩陣分解推薦系統。