zoukankan      html  css  js  c++  java
  • 基于Docker的TensorFlow机器学习框架搭建和实例源码解读

    概述:基于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/

    5.2.解决文件的读写权限

    #查看读写权限
    ls -l
    #将tensorflow 变为属于xiaolei(系统默认)用户
    sudo chown -R xiaolei tensorflow/
    #将tensorflow 变为属于xiaolei(系统默认)用户组
    sudo chgrp -R xiaolei tensorflow/
  • 相关阅读:
    CentOS忘记密码修改方案以及centos卡在开机登录界面,命令失效的解决方法
    音乐制作模块
    CentOS7安装RabbitMQ,并设置远程访问
    设计模式
    排序
    经典排序算法及python实现
    scrapy初步解析源码即深度使用
    JAVA----线程初级
    Python随笔--魔法方法(析构与构造)
    Python随笔--对象
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467641.html
Copyright © 2011-2022 走看看