[GPU] Machine Learning on C++

1、MPI爲什麼物?

初步瞭解:MPI集羣環境搭建html

 

2、從新認識Spark

連接:https://www.zhihu.com/question/48743915/answer/115738668git

馬鐵大神的phd thesis 總結裏面說了一句話 大概意思是說 單純的若是使用mpi 來實現一個算法 比spark 快五六倍是很正常的 可是spark 是一個 general 的 data flow 處理框架 就是能夠在數據的生命週期裏面 可使用spark 之上的具體實現來處理數據 ml 只是一部分而已 這就是spark 最大的賣點之一github

因此你用這個Prophet平臺來和spark 比 ml這方面的效率固然你要快了的 由於還有不少ml 專業的平臺都要比spark 快 這就不列舉了
由於spark 基於 mapreduce的 這種program model 就不是適合ml的 特別是ml 裏面大量參數的模型 好比lda 之類的 算法

btw: 若是做爲一個嚴格的論文來看的話 把spark 做爲baseline 而不是作普遍的實驗比較的話好比 各類平臺算法 數據集 算法

 

3、Microsoft Distributed Machine Learning Toolkit (DMTK)

<Parallelization in Machine Learning with Multiple Processes>
 

 

DMTK includes the following projects:shell

  • DMTK framework(Multiverso): The parameter server framework for distributed machine learning.
  • LightLDA: Scalable, fast and lightweight system for large-scale topic modeling.
  • LightGBM: LightGBM is a fast, distributed, high performance gradient boosting (GBDT, GBRT, GBM or MART) framework based on decision tree algorithms, used for ranking, classification and many other machine learning tasks.
  • Distributed word embedding: Distributed algorithm for word embedding implemented on multiverso.
 

4、GPU隆重登場

 
 
在2.4版本中,kmean是opencl實現。
 
 
在4.1版本中,LogisticRegression是opencl實現的麼?
class  cv::ml::LogisticRegression
貌似不是gpu版本。
 

In a nutshell

Ref: How to use NVIDIA GPUs for Machine Learning with the new Data Science PC from Maingeardom

看樣子你們纔剛剛意識到這個事情,或者dnn就足夠了。機器學習

Goto: [CUDA] Install H2O.ai,有部分GPU實現的算法。分佈式

  • GLM: Lasso, Ridge Regression, Logistic Regression, Elastic Net Regulariation
  • KMeans
  • Gradient Boosting Machine (GBM) via XGBoost
  • Singular Value Decomposition(SVD) + Truncated Singular Value Decomposition
  • Principal Components Analysis(PCA)

Real time bench mark: https://www.youtube.com/watch?v=LrC3mBNG7WU,速度快二十倍。工具

 
End.
相關文章
相關標籤/搜索