您的位置:首页 > 运维架构 > Docker

基于Docker的TensorFlow机器学习框架搭建和实例源码解读

2017-02-17 19:23 633 查看
概述:基于Docker的TensorFlow机器学习框架搭建和实例源码解读,TensorFlow作为最火热的机器学习框架之一,Docker是的容器,可以很好的结合起来,为机器学习或者科研人员提供便捷的机器学习开发环境,探索人工智能的奥秘,容器随开随用方便快捷。源码解析TensorFlow容器创建和示例程序运行,为热爱机器学者降低学习难度。

默认机器已经装好了Docker(Docker安装和使用可以看我另一篇博文:Ubuntu16.04安装Docker1.12+开发实例+hello world+web应用容器)。



1.下载TensorFlow镜像

docker pull tensorflow/tensorflow
#或者
#sudo docker pull tensorflow/tensorflow


2.创建TensorFlow容器,源码解读

docker run --name xiaolei-tensortflow -it -p 8888:8888 -v ~/tensorflow:/notebooks/data  tensorflow/tensorflow


docker run
运行镜像,

--name
为容器创建别名,

-it
保留命令行运行,

-p 8888:8888
将本地的8888端口
http://localhost:8888/
映射,

-v ~/tensorflow:/notebooks/data
将本地的~/tensorflow文件夹挂载到新建容器的/notebooks/data下(这样创建的文件可以保存到本地~/tensorflow)

tensorflow/tensorflow
为指定的镜像,默认标签为latest(即tensorflow/tensorflow:latest)



3.开启TensorFlow容器

3.1.可以直接从命令行中右键打开连接,或者在浏览器中输入localhost:8888,然后将命令行中的token粘贴上去。



4.开始TensorFlow编程(Python语言)

4.1.在首页可以
New
一个Python项目



4.2.tensorflow示例源码解读

from __future__ import print_function
#导入tensorflow
import tensorflow as tf
#输入两个数组,input1和input2然后相加,输出结果
with tf.Session():
input1 = tf.constant([1.0, 1.0, 1.0, 1.0])
input2 = tf.constant([2.0, 2.0, 2.0, 2.0])
output = tf.add(input1, input2)
result = output.eval()
print("result: ", result)


4.3.运行程序,输出的结果为(运行成功)

result:  [ 3.  3.  3.  3.]




5.其他 linux,TensorFlow,Docker相关操作

5.1.关闭TensorFlow和开启TensorFlow环境

#关闭tensorflow容器
docker stop xiaolei-tensortflow

#开启TensorFlow容器
docker start xiaolei-tensortflow
#浏览器中输入 http://localhost:8888/[/code] 

5.2.解决文件的读写权限

#查看读写权限
ls -l
#将tensorflow 变为属于xiaolei(系统默认)用户
sudo chown -R xiaolei tensorflow/
#将tensorflow 变为属于xiaolei(系统默认)用户组
sudo chgrp -R xiaolei tensorflow/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: