centos 6.5 安裝tensorflowOnspark及測試例子

已有環境: spark 2.1, hadoop 2.7, jdk 1.8,scala 2.1

A 安裝python環境

1. 下載anaconda mirrors.tuna.tsinghua.edu.cn 找到 Anaconda3-4.2.0-Linux-x86_64.sh

2. 執行命令:bash Anaconda3-4.2.0-Linux-x86_64.sh,對應python3.5,並選擇將anaconda安裝在某個文件夾下,不要裝在根目錄下。

3. 安裝完後,按提示將anaconda3的binary路徑加到.bashrc,這樣以後輸入python命令會自動使用anaconda3的環境。

4. 安裝tensorflow,使用清華鏡像中地址安裝

執行命令:pip install mirrors.tuna.tsinghua.edu.cn

pip install -i pypi.tuna.tsinghua.edu.cn protobuf

pip install -i pypi.tuna.tsinghua.edu.cn tensorflow-tensorboard

5. Centos 6.5下glibc版本比較低,需升級glibc。這一步需要特別注意,出錯的話系統會啟動不了。參考cnblogs.com/coyu/p/5744

具體如下:

mirror.bjtu.edu.cn/gnu/ 下載最新版本,目前是19

tar -zxvf glibc-2.19.tar.gz

mkdir glibc-2.19-build

cd glibc-2.19-build

../glibc-2.19/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

make

make install

以上步驟已安裝好tensorflow。

B tensorflowONspark

1 安裝tensorflowOnspark

pip install tensorflowonspark 或者使用鏡像安裝

2. 更改/etc/hosts里的IP地址。便於windows進行訪問操作。

參考:powerxing.com/install-h

3. 在/../spark2.1/conf/spark-env.sh 添加

export PYSPARK_PYTHON=/path/to/python3.5

export HADOOP_HDFS_HOME=/path to /hadoop-2.7.3

測試例子:(自己測試時需改對應的路徑)

啟動hadoop

啟動spark

數據準備

download.csdn.net/detai下載數據

需要先將mnist_setup.py中的數據存放地址改為自己數據的地址。

/spark2.1/bin/spark-submit

--master spark://spark1:7077

/TensorFlowOnSpark/examples/mnist/mnist_setup.py

--output examples/mnist/csv

--format csv

可在50070埠的hdfs查看到文件

訓練準備

先創建一個可讀寫的文件夾/TensorFlowOnSpark/model,模型日誌會保存在此文件夾下。

hadoop fs -mkdir 777 /TensorFlowOnSpark/model

hadoop fs -chmod 777 /TensorFlowOnSpark/model

在tensorflowonspark安裝目錄下執行zip -r tfspark.zip tensorflowonspark/*得到tfspark.zip

執行訓練命令

/spark2.1/bin/spark-submit

--master spark://spark1:7077

--conf spark.executorEnv.LD_LIBRARY_PATH="/cloud/jdk1.8/jre/lib/amd64/server"

--conf spark.executorEnv.CLASSPATH="$(/cloud/hadoop-2.7.3/bin/hadoop classpath --glob):${CLASSPATH}"

--py-files /tfspark.zip,/TensorFlowOnSpark/examples/mnist/spark/mnist_dist.py

--conf spark.cores.max=2

--conf spark.task.cpus=1

--conf spark.executorEnv.JAVA_HOME="/cloud/jdk1.8"

/TensorFlowOnSpark/examples/mnist/spark/mnist_spark.py

--cluster_size 2

--images /TensorFlowOnSpark/examples/mnist/csv/train0/images

--labels /TensorFlowOnSpark/examples/mnist/csv/train0/labels

--format csv

--mode train

--model /TensorFlowOnSpark/model/mnist_model

預測

/spark2.1/bin/spark-submit

--master spark://spark1:7077

--conf spark.executorEnv.LD_LIBRARY_PATH="/jdk1.8/jre/lib/amd64/server"

--conf spark.executorEnv.CLASSPATH="$(/hadoop-2.7.3/bin/hadoop classpath --glob):${CLASSPATH}"

--py-files /tfspark.zip,/TensorFlowOnSpark/examples/mnist/spark/mnist_dist.py

--conf spark.cores.max=2

--conf spark.task.cpus=1

--conf spark.executorEnv.JAVA_HOME="/cloud/jdk1.8"

/TensorFlowOnSpark/examples/mnist/spark/mnist_spark.py

--cluster_size 2

--images /TensorFlowOnSpark/examples/mnist/csv/test0/images

--labels /TensorFlowOnSpark/examples/mnist/csv/test0/labels

--format csv

--mode inference

--model /TensorFlowOnSpark/model/mnist_model

--output predictions1

查看

hadoop fs -cat /user/root/predictions/part-00000

關閉

/spark2.1/sbin/stop-slave.sh

/spark2.1/sbin/stop-master.sh

推薦閱讀:

「人工智慧」下的「失業焦慮」
《好奇心漫遊》S01E01:走近亞馬遜,AI來了人類會失業嗎?
一個關於意識的實驗
中國智能製造行業市場前瞻與投資戰略規劃分析
人工智慧時代 我們該如何生存

TAG:機器學習 | 人工智慧 |