使用Anaconda集成IPython、Spark和TensorFlow、Orange

使用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,可视化机器学习环境

网站:http://orange.biolab.si/

原始项目为安装在virtualenv里的指南,这里将安装在conda环境下。

#安装基础支持库
sudo apt-get update
sudo apt-get -y install git python-pip python-virtualenv 
python3-dev python3-numpy python3-scipy python3-pyqt4 python-qt4-dev python3-sip-dev libqt4-dev

#首先安装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环境下去分布式运行。


你可能感兴趣的:(python,spark,Orange,tensorflow,conda)