使用Docker和Anaconda进行机器学习(34),借助Indra Bakker的《Python深度学习食谱》
1. 对于希望立即使用的人们
《Python深度学习食谱》,作者Indra Bakker
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
警告
运行时错误
操作系统错误,名称错误
对于希望自行构建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
感谢您一直阅读到最后。
喜欢的话 ?,请关注一下。
非常感谢您读到最后一句话。
请点击喜欢的图标?并关注我,享受幸福生活。