基于Jupyter Notebook的Tensorflow深度学习教程 ·基于lupyter Notebook的Tensorflow深度学习教程 。环境搭建 ·关于Docker ·安装Docker ■Docker命令 o Jupyter ·Jupyter界面 ·lupyter单元格 o Tensorflow的辅助支持库 ■NumPy ·NumPy数据 ■NumPy运算 ■NumPy素引 ·NumPy合并与分割 ·Pandas ■Pandas对象 ■Pandas选择数据 ·Matplotlib 环境搭建 学习Tensorflow,首先要配置好Tensorflow的运行环境,这也是很多入门者感到困难的地方。要保证 Matplotlib等,往往还要配置环境变量。如果某些版本的模块与当前环境不兼容,那就会出现各种各样的错 误。开发者常常碰到的一个场是是:在自己的机器上可以正常坛行,换一台机器上就运行不了。环培配置如出 麻烦,换一台机器,就要重来一次,费时费力。能不能从根本上解决问愿?安装软件的时候,能不能把正确的 环境打包复制过来?这就是Docker起作用的地方。 关于Docker Dokr(搬运工)是一个遵从Apache协议开源的应用容器引擎,它把要运行的应用以及依黄软件打包到一个 轻量级、可移植的自给自足的容器中,然后可以发布到任何流行的Linux、Windows和MacOS机器上。 Docker的推出具有划时代的意义 它彻底释放了计算虚拟化的威力,极大提高了应用的部署效率,降低了云计 算资源的供应成本。使用Docker,我们可以把配置好的Tensorflow资源下载到自己的机器上直接运行,避免 了繁琐的安装和配置,极大的提高效率节约时间。Dod水er有三个基木要素,1)Docker Containers(容器): 负责应用程序的运行,包括操作系统、用户添加的文件以及元数据:2)Docker Images(镜像):是一个只读 模板,用来运行Docker容器:3)DockerFile:文件指令集,用来说明如何自动创建Docker镜像。镜像文件是 Docker应用的基础,在Docker Hub.上存储了大量的公共镜像,包括我们要使用的Tensorflow镜像。 安装Docker 我们以Windows系统为例,介绍安装Docker相关工具的过程,MacOs系统的安装可以参照 1/24
1/24 基于 Jupyter Notebook 的 Tensorflow 深度学习教程 基于 Jupyter Notebook 的 Tensorflow 深度学习教程 环境搭建 关于Docker 安装Docker Docker 命令 Jupyter Jupyter 界面 Jupyter 单元格 Tensorflow 的辅助支持库 NumPy NumPy 数据 NumPy 运算 NumPy 索引 NumPy 合并与分割 Pandas Pandas 对象 Pandas 选择数据 Matplotlib 环境搭建 学习 Tensorflow,首先要配置好 Tensorflow 的运行环境,这也是很多入门者感到困难的地方。要保证 Tensorflow 能够正常运行,必须确保软件版本,各种依赖库和组件的安装都正确。举例来说,安装 Python 时,有 2.x 和 3.x 不同的版本,有面向 32 位和 64 位不同的操作系统环境,还必须有各种依赖库如 Numpy、 Matplotlib 等,往往还要配置环境变量。如果某些版本的模块与当前环境不兼容,那就会出现各种各样的错 误。开发者常常碰到的一个场景是:在自己的机器上可以正常运行,换一台机器上就运行不了。环境配置如此 麻烦,换一台机器,就要重来一次,费时费力。能不能从根本上解决问题?安装软件的时候,能不能把正确的 环境打包复制过来?这就是 Docker 起作用的地方。 关于Docker Docker(搬运工)是一个遵从 Apache 协议开源的应用容器引擎,它把要运行的应用以及依赖软件打包到一个 轻量级、可移植的自给自足的容器中,然后可以发布到任何流行的 Linux、Windows 和 MacOS 机器上。 Docker 的推出具有划时代的意义,它彻底释放了计算虚拟化的威力,极大提高了应用的部署效率,降低了云计 算资源的供应成本。使用 Docker,我们可以把配置好的 Tensorflow 资源下载到自己的机器上直接运行,避免 了繁琐的安装和配置,极大的提高效率节约时间。Docker 有三个基本要素,1)Docker Containers(容器): 负责应用程序的运行,包括操作系统、用户添加的文件以及元数据;2)Docker Images(镜像):是一个只读 模板,用来运行 Docker 容器;3)DockerFile:文件指令集,用来说明如何自动创建 Docker 镜像。镜像文件是 Docker 应用的基础,在 Docker Hub上存储了大量的公共镜像,包括我们要使用的 Tensorflow 镜像。 安装Docker 我们以 Windows 系统为例,介绍安装 Docker 相关工具的过程,MacOS 系统的安装可以参照
https/docs.dockercom/toolbox/toolbox install mac/:Linux系统(包括Ubuntu、Debian、CentoS和 Fedora)可以安装Dokcer CE(Community Edition),参见htps:/docs.docker.com/instal//linux/docker ce/ubuntu/。 目前支持Windows系统的Docker工具包括:Docker Toolbox和Docker CE。.经过测试,我们推荐使用Docke Toolbox,Doc水er Toolbox支持64位的Vindows7、8、10等系统。首先检查系统是否打开虚拟化支持,用 可以右健点击任务栏,选择任务管理器”,切换到性能"页,进行查看。 CPU ☐的地 ☐壁0cr利 刀8e 8 15%400G地 83189640155 0035608 ⊙装路怎中必四力开家■ 如果虚拟化功能未启用,需要重新启动计算机进入B1OS将虚拟化功能打开。打开 htps:/docs.docker.com/.toolbox/toolbox_install_windows/页面,点击相应下载按钮进行下载。因为下载文件尺 寸较大,推荐使用下载工具进行下载。下载后运行Docker Toolbox exe安装。 Setup-Docker Toolbox eDocker Toolbox edthatyoudoealoheaolatorsbe包 c,orCaneetoeotsehp s durng instal. 安装过程中接受所有默认选项即可。安装完成后,双击Docker QuickStart Terminal启动Docker客户端, 2/24
2/24 https://docs.docker.com/toolbox/toolbox_install_mac/ ;Linux 系统(包括Ubuntu、Debian、CentOS和 Fedora)可以安装 Dokcer CE(Community Edition),参见 https://docs.docker.com/install/linux/dockerce/ubuntu/ 。 目前支持 Windows 系统的 Docker 工具包括:Docker Toolbox 和 Docker CE。经过测试,我们推荐使用 Docker Toolbox,Docker Toolbox 支持 64 位的 Windows 7、8、10 等系统。首先检查系统是否打开虚拟化支持,用户 可以右键点击任务栏,选择“任务管理器”,切换到“性能”页,进行查看。 如果虚拟化功能未启用,需要重新启动计算机进入 BIOS 将虚拟化功能打开。打开 https://docs.docker.com/toolbox/toolbox_install_windows/ 页面,点击相应下载按钮进行下载。因为下载文件尺 寸较大,推荐使用下载工具进行下载。下载后运行 DockerToolbox.exe 安装。 安装过程中接受所有默认选项即可。安装完成后,双击 Docker QuickStart Terminal 启动 Docker 客户端
Docker Quickstart Terminal 在第一次运行Docker时,会在线下载最新版本的Boot2 Dockeris0文件,文件会被下载到 C.\Users\Administratordocker\machine\cache\目标文件夹中,如果当前用户不是Administrator,就用当前用 户名替换路径中的Administrator,如用户名是hangsan,文件夹就是 C:\Use rs\zhangsan..docker\machine\cache\,在这一步下载耗时较长,有时会超时失败,建议用下载工具下载相 应文件,下载后把它复制到目标文件夹中即可。 Docker命令 运行Docker后,初始页面会显示一条载货小鲸鱼的文本图像,这是Docker的标志。同时还会显示出为当前机 器配置的iD地址,一般是192.16B.99.100。后面在运行Tensorflow镜像时需要使用这个地址。 MINGW64/c/Users/Administrator n。 rt interactive shel】 ZB-106-Adninistratoredy teb-106 MINGUG4 在Docker中运行各种应用都需要使用对应的镜像文件,在hub.docker.com网站上可以找到数以万计的镜像文 件,我们要使用的Tensorflow镜像也可以从该网站下载。我们可以使用pul命令从Docker Hub网站下载: docker pull tensorflow/tensorflow:latest-py3 3/24
3/24 在第一次运行 Docker 时,会在线下载最新版本的 Boot2Docker.iso 文件,文件会被下载到 C:\Users\Administrator.docker\machine\cache\ 目标文件夹中,如果当前用户不是 Administrator,就用当前用 户名替换路径中的 Administrator,如用户名是 zhangsan,文件夹就是 C:\Users\zhangsan.docker\machine\cache\,在这一步下载耗时较长,有时会超时失败,建议用下载工具下载相 应文件,下载后把它复制到目标文件夹中即可。 Docker 命令 运行 Docker 后,初始页面会显示一条载货小鲸鱼的文本图像,这是 Docker 的标志。同时还会显示出为当前机 器配置的ip地址,一般是 192.168.99.100 。后面在运行 Tensorflow 镜像时需要使用这个地址。 在 Docker 中运行各种应用都需要使用对应的镜像文件,在 hub.docker.com 网站上可以找到数以万计的镜像文 件,我们要使用的 Tensorflow 镜像也可以从该网站下载。我们可以使用 pull 命令从 Docker Hub 网站下载: docker pull tensorflow/tensorflow:latest-py3
这条命令将下载Python3版本的最新Tensorflow(当下是1.5版)镜像,tensorflow/tensorflow是镜像的名 字,斜线前的tensorflow表示Docker Hub用户名,斜线后的tensorflow表示资源库名称,冒号后面的latest py3,是Docker镜像的标签(tag),用以区分镜像的不同的子版本。以Tensorflow为例,其镜像支持数十种 标签,包括latest,nightly,latest-.gpu,latest--devel-gpu等等。其中的latest是缺省标签,也就是说如果未指 定标签的话,就会使用latest。我们这里没有使用latest标签,因为tensorflow/tensorflow:latest镜像对应 Python2.7版,我们要使用的是Python3.5版,对应的是latest-py3标签。 pul命令成功运行后,tensorflow的镜像文件就下载到本地了,我们可以通过images命令来查看本地的所有镜 像: docker images 在运行Tensorflow镜像之前,我们要准备好要测试的代码资源,我们首先在当前用户目录下新建一个子目录 gt,如果用户名是小hangsar 文件夹就是C:\Users\zhangsan\git将本书配套的代码或者其他练习代码复制到 该文件夹中。我们运行镜像时,运行环境和本地环境是隔离的,为了让运行起来的镜像(容器)能够访问本地 资源,我们需要进行资源映射。比如Tensorflow镜像中封装了lupyter工具,缺省使用8888端口提供服务, 我们就要使用p命令将本地的8888端口映射到容器的8888端口。为了让容器能够访问本地gt目录中的文 件,我们使用-v命令将本地的gt目录映射到容器里相应的目录。要运行Tesnorflow,我们可以使用run命 令,同时指定端口映射和路径映射: docker run -it-p 8888:8888 -v~/git/:/notebooks/git/ tensorflow/tensorflow:latest-py3 在这条run命令里,-it表示要启动一个交互式(interactive)的终端(terminal),-p表示端口(port)映 -v表示路径(volume)映射,映射的格式是:"本地资源容器资源"。如~git/:/notebooks//git/表示把本 地当前用户目录(~)下的gt子日录,映射到容器里根目录()下的notebooks//gt子目录。为什么容器目录 里要加上notebooks目录呢?如果你打开tensorflow容器看一下就明白了,在我们运行的tensorflow容器里, 事先已经建立了notebooks目录,Jupyter就是从这个目录启动的,所以/notebooks目录就是Jupyter的根目 录,我们把本地的gt目录映射到notebooks/.git,所以打开upyter页面后就可以看到git目录,点击进入就 可以测试代码了。 执行完docker run命令后,系统会提示我们打开Jupyter的服务页面: 4/24
4/24 这条命令将下载 Python 3 版本的最新 Tensorflow(当下是 1.5 版)镜像,tensorflow/tensorflow 是镜像的名 字,斜线前的 tensorflow 表示 Docker Hub 用户名,斜线后的 tensorflow 表示资源库名称,冒号后面的 latestpy3,是 Docker 镜像的标签(tag),用以区分镜像的不同的子版本。以 Tensorflow 为例,其镜像支持数十种 标签,包括 latest,nightly,latest-gpu,latest-devel-gpu 等等。其中的 latest 是缺省标签,也就是说如果未指 定标签的话,就会使用 latest。我们这里没有使用 latest标签,因为 tensorflow/tensorflow:latest 镜像对应 Python 2.7 版,我们要使用的是 Python 3.5 版,对应的是 latest-py3 标签。 pull 命令成功运行后,tensorflow的镜像文件就下载到本地了,我们可以通过 images 命令来查看本地的所有镜 像: docker images 在运行Tensorflow镜像之前,我们要准备好要测试的代码资源,我们首先在当前用户目录下新建一个子目录 git,如果用户名是 zhangsan,文件夹就是 C:\Users\zhangsan\git, 将本书配套的代码或者其他练习代码复制到 该文件夹中。我们运行镜像时,运行环境和本地环境是隔离的,为了让运行起来的镜像(容器)能够访问本地 资源,我们需要进行资源映射。比如 Tensorflow 镜像中封装了 Jupyter 工具,缺省使用 8888 端口提供服务, 我们就要使用 -p 命令将本地的 8888 端口映射到容器的 8888 端口。为了让容器能够访问本地 git 目录中的文 件,我们使用 -v 命令将本地的 git 目录映射到容器里相应的目录。要运行 Tesnorflow,我们可以使用 run 命 令,同时指定端口映射和路径映射: docker run -it -p 8888:8888 -v ~/git/:/notebooks/git/ tensorflow/tensorflow:latest-py3 在这条 run 命令里, -it 表示要启动一个交互式(interactive)的终端(terminal),-p 表示端口(port)映 射,-v 表示路径(volume)映射,映射的格式是:“本地资源:容器资源”。如 ~/git/:/notebooks/git/ 表示把本 地当前用户目录(~)下的 git 子目录,映射到容器里根目录(/)下的notebooks/git 子目录。为什么容器目录 里要加上notebooks目录呢?如果你打开 tensorflow 容器看一下就明白了,在我们运行的 tensorflow 容器里, 事先已经建立了 /notebooks 目录,Jupyter 就是从这个目录启动的,所以 /notebooks 目录就是 Jupyter 的根目 录,我们把本地的 git 目录映射到 /notebooks/git,所以打开 Jupyter 页面后就可以看到 git 目录,点击进入就 可以测试代码了。 执行完 docker run 命令后,系统会提示我们打开 Jupyter 的服务页面:
出。 , 把屏幕最下方的链接地址中的1 ocalhost换成之前初始页面里面提示的1P地址,一般是192.168.99.100,对应 图中的例子,就是:http/192.168.99.100:8888/7 token:=469d68b945a185bf5002e7台fb60a602e2285c29e719b690。用浏览器打开这个链接地址,就会显示 出Jupyter页面: →C0192.16899.100 Jupyter 回0✉s/ 另一种打开upyter的方法是用浏览器打开http/192.168.99.100:8888/这个地址,在显示的Web页面里填 写相应的Token,对应图中的例子就是469d68b945a185bf5002e7fafb60a602e228529e719b690,也一样会 登录进Jupyter页面。 到目前为止,我们已经打开Jupyter页面,可以进行代码测试了。点击右上角的New按钮,选择Python3 Notebook,建立一个Python笔记本。 5/24
5/24 把屏幕最下方的链接地址中的 localhost 换成之前初始页面里面提示的 IP 地址,一般是 192.168.99.100,对应 图中的例子,就是:http://192.168.99.100:8888/? token=469d68b945a185bf5002e7fafb60a602e2285c29e719b690 。 用浏览器打开这个链接地址,就会显示 出 Jupyter 页面: 另一种打开 Jupyter 的方法是用浏览器打开 http://192.168.99.100:8888/ 这个地址,在显示的 Web 页面里填 写相应的 Token,对应图中的例子就是 469d68b945a185bf5002e7fafb60a602e2285c29e719b690 ,也一样会 登录进 Jupyter 页面。 到目前为止,我们已经打开 Jupyter 页面,可以进行代码测试了。点击右上角的 New 按钮,选择 Python 3 Notebook,建立一个Python笔记本