【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]

  

45、Docker 加 tensorflow的机器学习入门初步的更多相关文章

  1. TensorFlow.NET机器学习入门【1】开发环境与类型简介

    项目开发环境为Visual Studio 2019 + .Net 5 创建新项目后首先通过Nuget引入相关包: SciSharp.TensorFlow.Redist是Google提供的TensorF ...

  2. TensorFlow.NET机器学习入门【0】前言与目录

    曾经学习过一段时间ML.NET的知识,ML.NET是微软提供的一套机器学习框架,相对于其他的一些机器学习框架,ML.NET侧重于消费现有的网络模型,不太好自定义自己的网络模型,底层实现也做了高度封装. ...

  3. TensorFlow.NET机器学习入门【3】采用神经网络实现非线性回归

    上一篇文章我们介绍的线性模型的求解,但有很多模型是非线性的,比如: 这里表示有两个输入,一个输出. 现在我们已经不能采用y=ax+b的形式去定义一个函数了,我们只能知道输入变量的数量,但不知道某个变量 ...

  4. TensorFlow.NET机器学习入门【4】采用神经网络处理分类问题

    上一篇文章我们介绍了通过神经网络来处理一个非线性回归的问题,这次我们将采用神经网络来处理一个多元分类的问题. 这次我们解决这样一个问题:输入一个人的身高和体重的数据,程序判断出这个人的身材状况,一共三 ...

  5. TensorFlow.NET机器学习入门【5】采用神经网络实现手写数字识别(MNIST)

    从这篇文章开始,终于要干点正儿八经的工作了,前面都是准备工作.这次我们要解决机器学习的经典问题,MNIST手写数字识别. 首先介绍一下数据集.请首先解压:TF_Net\Asset\mnist_png. ...

  6. TensorFlow.NET机器学习入门【6】采用神经网络处理Fashion-MNIST

    "如果一个算法在MNIST上不work,那么它就根本没法用:而如果它在MNIST上work,它在其他数据上也可能不work". -- 马克吐温 上一篇文章我们实现了一个MNIST手 ...

  7. TensorFlow.NET机器学习入门【7】采用卷积神经网络(CNN)处理Fashion-MNIST

    本文将介绍如何采用卷积神经网络(CNN)来处理Fashion-MNIST数据集. 程序流程如下: 1.准备样本数据 2.构建卷积神经网络模型 3.网络学习(训练) 4.消费.测试 除了网络模型的构建, ...

  8. TensorFlow.NET机器学习入门【2】线性回归

    回归分析用于分析输入变量和输出变量之间的一种关系,其中线性回归是最简单的一种. 设: Y=wX+b,现已知一组X(输入)和Y(输出)的值,要求出w和b的值. 举个例子:快年底了,销售部门要发年终奖了, ...

  9. TensorFlow.NET机器学习入门【8】采用GPU进行学习

    随着网络越来约复杂,训练难度越来越大,有条件的可以采用GPU进行学习.本文介绍如何在GPU环境下使用TensorFlow.NET. TensorFlow.NET使用GPU非常的简单,代码不用做任何修改 ...

随机推荐

  1. kylin(二): Calcite

    Apache Calcite是面向Hadoop新的查询引擎,它提供了标准的SQL语言.多种查询优化和连接各种数据源的能力,除此之外,Calcite还提供了OLAP和流处理的查询引擎.Calcite之前 ...

  2. excel 导入数据库 / SSIS 中 excel data source --64位excel 版本不支持-- solution

    当本地安装的excel(2013版) 是64-bit时:出现的以下两种错误 解决: 1. excel 导入数据库 , 如果文件是2007则会出现:“The 'Microsoft.ACE.OLEDB.1 ...

  3. visual studio 调试时遇到 System.BadImageFormatException

    System.BadImageFormatException”类型的未经处理的异常在 未知模块. 中发生 其他信息: 未能加载文件或程序集“SendYourIP.exe”或它的某一个依赖项.生成此程序 ...

  4. Mesos

    1. 软件定义数据中心 Mesos的二级调度机制: maseos协调每个节点的slave,获取每个节点的机器资源.获取资源后,在相应节点运行framework,在容器中执行任务.从而使得多种类型的服务 ...

  5. ubuntu16041,安装opencv3.1.0

    [非常感谢:http://www.linuxdiyf.com/linux/18482.html] 1.依赖关系: sudo apt-get install build-essentialsudo ap ...

  6. Unity UI on the HoloLens

    Following the steps under "Required configuration" will allow Unity UI to continue to work ...

  7. STM32 USB转串口驱动 Virtual COM Port Driver(V1.3.1)

    将stm32的USB口接到PC端后,PC端会要求安装一个STM32 USB Virtual COM Port Driver,然后就可以用串口调试助手对其操作了

  8. Junit4参数化测试实现程序与用例数据分离

    http://touchfu.iteye.com/blog/732930 现状:你是不是还在为自己的TestCase代码杂乱无章而苦恼,咎其根本还在于针对不同的用例,输入参数和mock信息的组装全部作 ...

  9. 从高处理解android与服务器交互(看懂了做开发就会非常的容易)

    今天帮一个朋友改一个bug 他可以算是初学者吧 .我给他看了看代码,从代码和跟他聊天能明显的发现他对客户端与服务器交互 基本 不是很了解.所以我花了更多时间去给他讲客户端与服务器的关系.我觉得从这个高 ...

  10. 01-C#入门(函数一)

    只有在动手写代码的时候,才能真正理解到代码的逻辑思想,所以,开始写代码吧. 函数的意义:降低相同功能的代码重复编写,提高重复代码的维护效率. 函数 一个文件由命令空间(namespace).类(cla ...