在Redhat的Hadoop上安装Petuum笔记

在介绍安装Petuum之前,首先介绍一下Petuum。Petuum 是卡耐基梅隆大学教授邢波组的项目。Petuum 是一个分布式机器学习平台,目标是为大规模机器学习提供一个通用的算法和系统接口,简化分布式机器学习程序的实现。

  • 详细介绍:http://petuum.github.io/index-zh.html
  • 相关技术细节:http://petuum.github.io/research.html
  • 相关源码介绍:http://yinxusen.github.io/blog/2014/01/17/petuum-source-code-read-and-initial-test-result/

petuum 关键特征

  • •Bösen:基于受限异步一致性协议的分布式键值存储系统,可支持数据并行分布式机器学习编程。(存储)
  • Strads: 动态参数更新调度器,可支持模型并行分布式机器学习编程。(调度)

petuum 支持的算法

  • Topic Models:LDA、MedLDA
  • Deep Learning:Deep Neural Network (DNN)
  • Matrix Factorization and Sparse Coding:Matrix Factorization (collaborativefiltering)、negative Matrix Factorization (NMF)、Sparse Coding
  • Regression:Lasso Regression
  • Metric Learning:Distance Metric Learning
  • Clustering:K-means Clustering
  • Classification: Random Forest、 Logistic Regression、 SVM 、 Multi-class LogisticRegression

Redhat上安装命令

由于petuum官网只是提供了ubuntu的安装过程。而我们的Hadoop集群是在redhat上安装的。所以,我写了这个笔记来记录我在redhat上安装Petuum时所使用的命令和安装的包。
sudo yum install libtool
sudo yum install openmpi openmpi-devel openmpi-libs

mpi的地址加入到path

export PATH="$PATH:/usr/lib64/openmpi/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib/"
export LD_LIBRARY_PATH="/home/lib"

sudo yum -y install bzip2-devel
mkdir petuum

安装grandle

export GRADLE_HOME=/opt/gradle/gradle-2.6(gradle的位置)
export PATH=$GRADLE_HOME/bin:$PATH

编译命令

cd strads
make
cd ../bosen/third_party
make
cd ../../bosen
cp defns.mk.template defns.mk
make
cd ..
sudo vim bosen/defns.mk
JAVA_HOME = /usr/java/jdk1.7.0_79
HADOOP_HOME = /home/edu/hadoop-2.6.0
#HAS_HDFS = # Leave empty to build without hadoop.
HAS_HDFS = -DHAS_HADOOP # Uncomment this line to enable hadoop


cd bosen
make clean
make


cd bosen/app/path_to_app
make clean
make

之后就可以跑petuum提供的算法了。

你可能感兴趣的:(开源,red,hat,hadoop)