• 45、Docker 加 tensorflow的机器学习入门初步


    【1】最近领导天天在群里发一些机器学习的链接,搞得好像我们真的要搞机器学习似的,吃瓜群众感觉好神奇呀。

    第一步

      其实也是最后一步,就是网上百度一下,Docker Toolbox,下载下来,下载,安装之后会有三个图标,这里给大家截一下图

    不过,这三个图标首先我们都不需要去点击他们。为什么呢?看来这么多片博文,感觉最靠谱的就是这一篇了http://www.linuxidc.com/Linux/2016-07/133506.htm

    需要先去点击Git Bash这个图标,然后,输入 notepad .bash_profile 创建和打开.bash_profile 配置文件

    然后,在空白处输入(因为我想将以后的镜像都安装到D盘,此处可以修改你喜欢的盘符):

    export MACHINE_STORAGE_PATH='D:docker'

     

    然后,关闭后,在D盘创建名为docker的文件夹,在其下创建名为cache的文件夹,将安装文件下的boot2docker.iso拷贝到该文件夹:

    在Git Bash中输入更改路径命令,此处使用阿里云的加速器,因为在使用docker的时候,会需要从docker的网站下载镜像文件,下载速度可能会很慢。获得阿里云加速,需要登录阿里云开发者平台,然后点击右侧的管理中心(当然你得要有一个账户):

    阿里云开发者平台:https://dev.aliyun.com/search.html

    然后点击加速,Windows

    复制红色方框中的代码,然后修改为如下(根据自己盘符修改):

    docker-machine -s "D:docker" create --engine-registry-mirror=https://vf29u5xi.mirror.aliyuncs.com -d virtualbox default

    现在就可以在Git Bash中运行了:

    虚拟机中出现如下界面:

    此时可以点击Docker Quickstart Terminal:

    同时,Docker Quickstart Terminal也已经登录进去:

    这台docker machine创建后就启动了,如果下次我们再打开电脑,想要启动docker machine,可以打开Docker Quickstart Terminal或者Git Bash,然后执行下面的命令:

    docker-machine start

    来启动docker machine。

    然后是安装tensorflow的镜像

    $docker pull registry.cn-hangzhou.aliyuncs.com/denverdino/tensorflow

    然后是运行这个镜像

    $docker run -it registry.cn-hangzhou.aliyuncs.com/denverdino/tensorflow bash

     端口转发(在浏览器Jupyter里编程)

    $docker run -it -p 8888:8888 registry.cn-hangzhou.aliyuncs.com/denverdino/tensorflow bash

    然后下边是一个tensorflow 运行的实例

    这段很短的 Python 程序生成了一些三维数据, 然后用一个平面拟合它.

    $ docker run -it registry.cn-hangzhou.aliyuncs.com/denverdino/tensorflow bash
    
    root@fdbcbdba4caa:/notebooks# python
    
    >>> import tensorflow as tf
    >>> import numpy as np
    >>> x_data = np.float32(np.random.rand(2,100))
    >>> y_data = np.dot([0.100,0.200],x_data)+0.300
    >>> b=tf.Variable(tf.zeros([1]))
    >>> w=tf.Variable(tf.random_uniform([1,2],-1.0,1.0))
    
    >>> y=tf.matmul(w,x_data)+b
    >>> loss = tf.reduce_mean(tf.square(y-y_data))
    >>> optimizer = tf.train.GradientDescentOptimizer(0.5)
    >>> train = optimizer.minimize(loss)
    
    >>> init = tf.global_variables_initializer()
    >>> sess = tf.Session()
    >>> sess.run(init)
    >>> for step in xrange(0, 201):
    ...     sess.run(train)
    ...     if step % 20 == 0:
    ...         print step, sess.run(w), sess.run(b)
    
    0 [[-0.13530743  0.69625872]] [ 0.179198]
    20 [[ 0.05920886  0.33623493]] [ 0.24744007]
    40 [[ 0.09391995  0.23908366]] [ 0.28211853]
    60 [[ 0.09934434  0.21140608]] [ 0.29422382]
    80 [[ 0.10002527  0.20336725]] [ 0.29818568]
    100 [[ 0.10004984  0.2010016 ]] [ 0.29943922]
    120 [[ 0.10002301  0.20029941]] [ 0.29982832]
    140 [[ 0.10000845  0.20008977]] [ 0.29994777]
    160 [[ 0.10000283  0.20002694]] [ 0.29998416]
    180 [[ 0.10000092  0.20000809]] [ 0.29999521]
    200 [[ 0.10000028  0.20000243]] [ 0.29999855]
    

      

  • 相关阅读:
    Docker
    Docker1.12服务发现,负载均衡和Routing Mesh
    Docker
    docker
    win7下构建swarm nodes实现跨host的容器之间的通信
    Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
    docker 1.12 版本 docker swarm 集群
    DotNet 资源大全中文版(Awesome最新版)
    Extended WPF Toolkit 新控件介绍
    ServiceStack Web Service 创建与调用简单示列
  • 原文地址:https://www.cnblogs.com/weizhen/p/6243237.html
Copyright © 2020-2023  润新知