IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Tensorflow On Spark (2021版) -> 正文阅读

[大数据]Tensorflow On Spark (2021版)

之前网上的版本太老了,mnist_spark.py和mnist_data_setup.py测试文件的参数和位置,以及tensorflow-hadoop的版本(1.5)都更新了
一、运行环境准备

1、hadoop2.7:最好是HA

2、spark on yarn:必须是yarn环境,否则不能执行训练,要求必须多台机器的集群

配置好环境变量

export JAVA_HOME=/usr/local/jdk8
export HADOOP_HOME=/home/hadoop/service/hadoop2.7
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export YARN_HOME=/home/hadoop/service/hadoop2.7
export YARN_CONF_DIR=${YARN_HOME}/etc/hadoop
export SPARK_HOME=/home/hadoop/service/spark
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_CONF_DIR/bin:$YARN_HOME/bin:$YARN_CONF_DIR/bin:$SPARK_HOME/bin

3、scala:我用的是scala-2.11.12

4、Python:建议3.7

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz 
mkdir /usr/local/python3
tar -zxf Python-3.7.3.tgz 
cd Python-3.7.3
./configure --prefix=/usr/local/python3
make && make install
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
rm -rf /usr/bin/python
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3
rm -rf /usr/bin/pip
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip
记得修改/usr/bin/yum,改为 #!/usr/bin/python2,否则yum以后不能用

此时执行pyspark可以正常出来运行界面

5、python环境:pip 安装tensorflow、tensorflowonspark

pip install tensorflow  -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com
pip install tensorflowonspark  -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com

二、环境包准备

1、打包python

# 到python3.7的目录下
pushd "/usr/local/python3"
zip -r Python.zip *
popd
# 上传hdfs

2、打包TensorFlowOnSpark

# 到https://github.com/yahoo/TensorFlowOnSpark下载,制作tfspark.zip
zip -r TensorFlowOnSpark.zip tensorflowonspark

3、打包tensorflow-hadoop-1.5-SNAPSHOT.jar

git clone https://github.com/tensorflow/ecosystem.git
cd ecosystem/hadoop
# 打包会报错maven-javadoc-plugin的版本问题,或者直接删掉javadoc,另外是tensorflow-hadoop-1.5.jar
mvn package -Dmaven.test.skip=true

上传hdfs

4、打包数据

pushd ./mnist >/dev/null

curl -O "http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz"

curl -O "http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz"

curl -O "http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz"

curl -O "http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz"

zip  -r mnist.zip *

popd >/dev/null

上传hdfs

三、使用

1、将图像文件(images)和标签(labels)转换为CSV文件

./bin/spark-submit \
--deploy-mode client \
--master yarn \
--num-executors 3 \
--executor-memory 1G \
--archives hdfs://hadoop01:9000/user/hadoop/Python.zip#Python,hdfs://hadoop01:9000/user/liuchunlong/mnist/mnist.zip#mnist \
--jars hdfs://hadoop01:9000/user/hadoop/tensorflow-hadoop-1.5.0.jar \
/home/hadoop/TensorFlowOnSpark/examples/mnist/mnist_data_setup.py \
--output hdfs://hadoop01:9000/user/hadoop/mnist/csv

在这里插入图片描述

2、训练

./bin/spark-submit \
--deploy-mode client \
--master yarn \
--num-executors 3 \
--executor-memory 1G \
--py-files /home/hadoop/package/TensorFlowOnSpark.zip \
--conf spark.dynamicAllocation.enabled=false \
--conf spark.yarn.maxAppAttempts=1 \
--archives hdfs://hadoop01:9000/user/hadoop/Python.zip#Python \
/home/hadoop/TensorFlowOnSpark/examples/mnist/keras/mnist_spark.py \
--images_labels hdfs://hadoop01:9000/user/hadoop/mnist/csv/csv/train \
--model_dir /tmp/mnist_model

在这里插入图片描述

3、预测

./bin/spark-submit \
--master yarn \
--deploy-mode client \
--num-executors 3 \
--executor-memory 1G \
--py-files /home/hadoop/package/TensorFlowOnSpark.zip \
--conf spark.dynamicAllocation.enabled=false \
--conf spark.yarn.maxAppAttempts=1 \
--conf spark.yarn.executor.memoryOverhead=6144 \
--archives hdfs://hadoop01:9000/user/hadoop/Python.zip#Python \
--conf spark.executorEnv.LD_LIBRARY_PATH="$JAVA_HOME/jre/lib/amd64/server" \
/home/hadoop/TensorFlowOnSpark/examples/mnist/keras/mnist_spark.py \
--images_labels hdfs://hadoop01:9000/user/hadoop/mnist/csv/csv/test \
--mode inference \
--model_dir /tmp/mnist_model \
--export_dir /tmp/predictions

不在本机,可以指定hdfs
在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-26 12:16:31  更:2021-10-26 12:18:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:12:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码