使用Docker和Anaconda进行机器学习(34),借助Indra Bakker的《Python深度学习食谱》

1. 对于希望立即使用的人们

《Python深度学习食谱》,作者Indra Bakker

cat34.gif

 

Docker:容器技术

请安装Docker,并在Windows和Mac上启动Docker。在Windows上,如果没有在Bios中启用Intel Virtualization,可能无法启动Docker。此外,可能会出现安全警告等情况。

运行 Docker

$  docker run -it -p 8888:8888 kaizenjapan/anaconda-indra /bin/bash

在下面的shell会话中,
(base) root@f19e2f06eabb:/#表示命令提示符。实际的数字部分可能不同。请输入此行#右侧的内容。
其他行是输出。如果输出中有错误或差异,请在评论栏等处与我联系。
将进入各个章节的文件夹。

如果Docker和启动Docker操作系统的Shell显示类似,可能会混淆正在使用哪一个进行调查。请注意Docker的命令提示符。

文件共享或复制

在已启动Docker和Docker的操作系统上,可以选择进行文件共享或文件复制,并将生成的文件在浏览器等中进行展示。关于操作方法的URL已在参考文献部分进行了记录。

在进行复制的情况下,我执行了启动docker的操作系统命令。请将命令中的docker编号替换为您所使用的编号。我用浏览器打开复制后的文件并确认了其内容。

用Jupyter Notebook

# jupyter notebook --ip=0.0.0.0 --allow-root


ju34-1.png

警告

ju34-2.png

运行时错误

ju34-3.png

操作系统错误,名称错误

py34-4.png

对于希望自行构建Docker的人

以下是记录使用上文提到的pull拉取到的docker所采用的方针和步骤。
这是使用上述docker的参考资料。在执行本书后续内容时不需要。
下面是手动搭建docker/anaconda的步骤。
这不是创建dockerfile的方法。对不起。
##docker

使用 Linux 操作系统(如 Ubuntu、Debian)的一种机制,可以在 Linux、Windows 和 Mac OS 上通用地使用。最好的是,可以在不更改操作系统设置的情况下进行使用。通过相同的规范,可以供大量的人使用。可以使用官方支持的软件开发者提供的软件,也可以使用用户方便地构建的软件。这次我们选择自己构建并分发给其他人使用。

我之前用Python进行了深度学习的实践。
选择使用Python的原因是因为许多机器学习的工具和R等统计分析工具可以很容易地从Python中使用。
###Anaconda

在Python中,有不同版本的2和3,以及不同的分发方式等差异。我过去一年半一直在使用Anaconda的Python3版本。我之所以选择使用Anaconda,是因为它已经预装了统计分析库和Jupyter Notebook。## Docker的官方发布。

有Ubuntu、Debian等操作系统的官方发布,也有GCC、Anaconda等语言的官方发布。通过利用这些,可以在Docker Hub上进行注册,以便确认官方发布的质量并分享包含变更权的广泛信息。这里指的是各个软件提供者的官方发布,而不是Docker的官方发布。

拉取docker

使用docker Anaconda,可以通过URL从docker公式分发中进行pull来实现。

使用Anaconda提供的官方分发版。

$  docker pull kaizenjapan/anaconda-keras
Using default tag: latest
latest: Pulling from continuumio/anaconda3
Digest: sha256:e07b9ca98ac1eeb1179dbf0e0bbcebd87701f8654878d6d8ce164d71746964d1
Status: Image is up to date for continuumio/anaconda3:latest

$ docker run -it -p 8888:8888 continuumio/anaconda3 /bin/bash

实际上,还有其他使用Keras和TensorFlow的push和pull。

公寓

(base) root@d8857ae56e69:/# apt update

(base) root@d8857ae56e69:/# apt install -y procps

(base) root@d8857ae56e69:/# apt install -y vim

(base) root@d8857ae56e69:/# apt install -y apt-utils

(base) root@d8857ae56e69:/# apt install sudo

源代码 git

(base) root@f19e2f06eabb:/# git clone https://github.com/indradenbakker/Python-Deep-Learning-Cookbook

安装Anaconda

# conda update --prefix /opt/conda anaconda
Solving environment: done

# conda install theano

喷管

(base) root@f19e2f06eabb:/d# pip install --upgrade pip
Collecting pip
  Downloading https://files.pythonhosted.org/packages/5f/25/e52d3f31441505a5f3af41213346e5b6c221c9e086a166f3703d2ddaf940/pip-18.0-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 2.0MB/s 
distributed 1.21.8 requires msgpack, which is not installed.
Installing collected packages: pip
  Found existing installation: pip 10.0.1
    Uninstalling pip-10.0.1:
      Successfully uninstalled pip-10.0.1
Successfully installed pip-18.0

将注册到Docker Hub

$ docker ps
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                    NAMES
caef766a99ff        continuumio/anaconda3   "/usr/bin/tini -- /b…"   10 hours ago        Up 10 hours         0.0.0.0:8888->8888/tcp   sleepy_bassi

$ docker commit caef766a99ff kaizenjapan/anaconda-indra

$ docker push kaizenjapan/anaconda-indra 

请参考以下资料(reference)

为什么要在Docker中进行机器学习?正在创建图书和资源列表(目标100项)。
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2

使用docker和anaconda进行机器学习,参考斎藤康毅的《从零开始的深度学习-使用Python学习深度学习的理论和实践》。链接:https://qiita.com/kaizen_nagoya/items/a7e94ef6dca128d035ab

使用Docker和Anaconda进行机器学习(2),“从零开始深度学习2:自然语言处理篇”一书,作者斋藤康毅。
链接:https://qiita.com/kaizen_nagoya/items/3b80dfc76933cea522c6

使用Docker和Anaconda进行机器学习的直观深度学习书籍,作者是Antonio Gulli和Sujit Pal,包含第1章和第2章。具体链接为:https://qiita.com/kaizen_nagoya/items/483ae708c71c88419c32

通过使用Docker搭建机器学习环境时,遇到了很多错误。

使用Docker在Windows环境下搭建机器学习(72)环境的方法可以在这里找到:https://qiita.com/kaizen_nagoya/items/c4daa5cf52e9f0c2c002

使用Docker构建机器学习环境的Bash脚本和MS-DOS批处理文件(来源:https://qiita.com/kaizen_nagoya/items/3f7b39110b7f303a5558)。

使用docker搭建机器学习环境的难度如何?

在 Docker 上配置机器学习环境(75),管理相关的 Docker 文件(5)。
链接:https://qiita.com/kaizen_nagoya/items/4f03df9a42c923087b5d

我在试图在Python中运行OpenCV时遇到了缺少libGL.so的问题,但已经解决了。请参考此链接:https://qiita.com/toshitanian/items/5da24c0c0bd473d514c8

在服务器端使用matplotlib进行绘图的技巧 – Tomok Ishii的Qiita文章

使用Docker在主机和容器之间进行文件复制。

使用Docker for Mac进行文件共享
https://qiita.com/seijimomoto/items/1992d68de8baa7e29bb5

「在名古屋的物联网是在名古屋的操作系统上使用Docker。如何在树莓派上安装TOPPERS/FMP和Macintosh,共有五个关卡。」

以下是64 bit CPU之路和/或64岁的决心的中文表达:

– “通往64位CPU的道路”和/或”64岁时的决心”

《从零开始学习深度学习2: 自然语言处理篇》读书会的进行方式(示例)https://qiita.com/kaizen_nagoya/items/025eb3f701b36209302e

尝试在 Ubuntu 16.04 LTS 上使用 NVIDIA Docker。

文档历史

版本0.10 初稿 20181023
版本0.11 将apt-get更改为apt。20220528

感谢您一直阅读到最后。

喜欢的话 ?,请关注一下。

非常感谢您读到最后一句话。

请点击喜欢的图标?并关注我,享受幸福生活。

广告
将在 10 秒后关闭
bannerAds