大数据下基于Tensorflow框架的深度学习示例教程

chmod +x bazel-0.4.3-installer-linux-x86_64.sh./bazel-0.4.3-installer-linux-x86_64.sh –user

9.安装Tensorflow:在官网下载软件后执行如下安装命令:

pip install --upgrade tensorflow-0.12.1-cp35-cp35m-linux_x86_64.whl

Tensorflow访问HDFS的部署

1.首先安装Hadoop客户端,在官网下载后执行下面解压移动命令:

tar zxvf hadoop-2.6.0.tar.gzmv hadoop-2.6.0.tar.gz /usr/local/software/Hadoop

进行环境变量的配置/etc/profile,加入如下内容

export PATH=$PATH:/usr/local/software/hadoop/binexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/serverexport HADOOP_HOME=/usr/local/software/hadoopexport HADOOP_HDFS_HOME=/usr/local/software/hadoop

配置完后进行配置更新source /etc/profile

2.其次,安装完客户端后,配置自己的hadoop集群环境文件。

Tensorflow与Kerberos验证的部署

在Tesorflow0.12版本中已经支持了Kerberos验证,本机只要配置好Kerberos文件即可使用。该文中不详述Kerberos的配置内容,罗列一下相关的配置流程。

  • 首先在/etc/krb5.conf文件中进行服务器跟验证策略的配置;
  • 然后在Kerberos服务端生成一个用户文件传至本机;
  • 最后进行Kerberos客户端的权限认证并设置定时任务。

大数据场景下基于分布式Tensorflow的深度学习示例

一、进行数据格式的转换

本文的示例是做的MNIST数据的识别模型,为了更好的读取数据更好的利用内存,我们将本地GZ文件转换成Tensorflow的内定标准格式TFRecord,然后再将转换后的文件上传到HDFS存储。在实际应用中,我们实际利用Spark做了大规模格式转换的处理程序。我们对本地数据处理的相应的转换代码为:

from __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_functionimport argparseimport osimport tensorflow as tffrom tensorflow.contrib.learn.python.learn.datasets import mnistSOURCE_URL = 'http://yann.lecun.com/exdb/mnist/'TRAIN_IMAGES = 'train-images-idx3-ubyte.gz'  # MNIST filenamesTRAIN_LABELS = 'train-labels-idx1-ubyte.gz'TEST_IMAGES = 't10k-images-idx3-ubyte.gz'TEST_LABELS = 't10k-labels-idx1-ubyte.gz'FLAGS = None