使用Anaconda集成IPython、Spark和TensorFlow、Orange,形成统一管理的分布式机器学习研究环境。可以将流程设计、算法评估、神经网络、分布式计算和包管理集成到一起等,以及可以将其与git/jenkins/sonarqube等集成到一起,实现完整的大规模数据处理与分析的DevOps。不过,目前这些项目还是各自为阵的状态,集成度和自动化程度都还不高。
为了方便管理,将其安装在由conda管理的独立虚拟环境中。
1、Anaconda,python集成环境
由https://www.continuum.io开发。集成了很多优秀的python项目,包括conda虚拟运行环境管理和软件包管理软件,可以部分替代virtualenv和pip的作用。
从 https://www.continuum.io/downloads 下载并且安装。
#创建python虚拟环境。
conda create -n tensor python=3
source activate tensor
2、IPython,高级Python运行环境
现已更名为Jupyter(http://jupyter.org/),支持通过notebook进行算法模型的共享。
Spark,高性能并行计算环境
从 https://conda.anaconda.org/anaconda-cluster 可以访问到集成的Spark版本。
安装:
conda install -n tensor -c https://conda.anaconda.org/anaconda-cluster spark
3、TensorFlow,机器学习引擎
TensorFlow是由Google开源的基于神经网络的机器学习引擎,从 https://www.tensorflow.org/ 访问详细信息。
安装:
conda install -n tensor -c https://conda.anaconda.org/jjhelmus tensorflow
4、Orange,可视化机器学习环境
原始项目为安装在virtualenv里的指南,这里将安装在conda环境下。
#安装基础支持库
sudo apt-get update
sudo apt-get -y install git python-pip python-virtualenv python-qt4-dev python3-pyqt4 libqt4-dev
sudo apt-get -y python3-sip-dev python3-dev python3-numpy python3-scipy
#首先安装Anaconda
./Anaconda3-2.5.0-Linux-x86_64.sh
#退出控制台窗口,重新进入,以让路径设置生效。
#输入conda list,可以查看anaconda安装的包,检查安装是否成功。
#创建python虚拟环境。
conda create -n tensor python=3
#激活所创建的python虚拟环境,后续的软件将安装在该环境中。
source activte tensor
#复制orange源代码。
git clone https://github.com/biolab/orange3
#安装Orange的依赖库代码
cd orange3
pip install -r requirements-core.txt
pip install -r requirements-dev.txt
pip install -r requirements-doc.txt
pip install -r requirements-gui.txt
pip install -r requirements-sql.txt
python setup.py develop
cd ..
#安装扩展库
git clone https://github.com/biolab/orange-bio
cd orange-bio
python setup.py develop
cd ..
#退出虚拟环境
source deactivate
运行,将下面代码保存到start.sh,然后启动即可:
#运行
source activate tensor
python -m Orange.canvas
Orange安装完毕,运行与官方的安装结果完全一样,只是python扩展包现在交由conda而不是virtualenv管理。
下一步就需要考虑如何将TensorFlow和Spark等结合起来,在分布式环境下使用。以及将Orange的widget代码放到Spark环境下去分布式运行。