使用Anaconda在Docker上进行机器学习,通过Matthew Kirk的《实战数据科学与Python机器学习》一书
1.为了立刻使用的人(as soon as)
「用Python进行周到的机器学习」,由Matthew Kirk著。
Docker 容器
请安装Docker,并在Windows和Mac上启动Docker。在Windows上,如果不启用Intel虚拟化,则可能无法启动Docker。此外,可能会出现安全警告等情况。
使用Docker运行
$ docker pull kaizenjapan/anaconda-matthew
$ docker run -it -p 8888:8888 kaizenjapan/anaconda-matthew /bin/bash
在以下的shell会话中,
(base) root@f19e2f06eabb:/#是命令提示符。实际上数字部分可能会有所不同。请在此行的#右侧输入。
其他行是输出。如果有错误或差异,请在评论栏等处与我们联系。
将移动到每个章节的文件夹中。
当Docker容器和正在运行的操作系统的Shell显示相似时,有时会混淆正在使用哪个进行调查。请注意Docker的命令提示符。
文件共享或复制
请启动Docker和操作系统,并选择共享文件或复制文件的方式,以便在浏览器等中显示生成的文件。在参考文献中提供了操作步骤的URL。
我正在寻找在启动了Docker的操作系统上进行磁盘整理的最佳方法。在某些方法中,我会一开始就进行共享设置。
如果进行复制,我执行了在运行Docker的操作系统上的命令。请用您的Docker编号替换。我在浏览器中显示了复制的文件并确认了内容。
如果您想自己搭建Docker,请继续阅读。
从这里开始,我们将记录下上面所pull下来的docker是以什么方针、什么步骤来构建的。
这是使用上述docker时的参考资料。在执行本书后续内容时不需要。
这是为了手动构建docker/anaconda的步骤。
这不是通过编写dockerfile来创建docker的方法。非常抱歉。
Docker容器
Ubuntu、Debian等的Linux是一种可以在Linux、Windows和Mac OS上共同使用的机制。
能够在不更改操作系统设置的情况下使用是很好的。
它具有相同的规格,可以供大量用户使用。
既可以使用开发者官方提供的软件,也可以使用用户自行定制的软件。本次是将官方发布的软件进行个性化定制,以便其他人也可以使用。
解说:Python
我用Python进行了深度学习的实践。
选择使用Python的原因是因为许多机器学习的工具在Python中可以使用,并且统计分析工具,如R,也可以很容易地从Python中使用。
大蟒蛇
Python有不同版本(2和3)的差異,以及發布方式等。過去一年半我一直使用Anaconda的Python 3版本。我選擇使用Anaconda是因為它已經預先安裝了統計分析庫和Jupyter Notebook。
Docker官方发布
在中国有许多官方发布的操作系统,如Ubuntu和Debian,还有像gcc和anaconda这样的编程语言的官方发布。通过使用它们并注册到Docker Hub,可以确认官方发布的质量,并共享包括变更权限在内的广泛信息。这里的意思是Docker并不是官方发布,而是各自软件提供者的官方发布。
拉取 Docker 镜像
通过从URL上拉取,可以实现使用Docker官方发布的分发。
容器化安装Anaconda
使用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来进行其他推送的拉取操作。
公寓
(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
apt install scala
apt install default-jre
源(版本)控制工具 git
(base) root@f19e2f06eabb:/# git clone https://github.com/PacktPublishing/Hands-On-Data-Science-and-Python-Machine-Learning
安达
(base) root@f19e2f06eabb:/d# conda update --prefix /opt/conda anaconda
喷管
(base) root@f19e2f06eabb:/# pip install --upgrade pip
pip install pyspark
将注册到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 3bf1f723168d kaizenjapan/anaconda-matthew
sha256:19c9a19266e82ed92ae370291692b02f154a67c231b258565a5ebe3be65e9993
$ docker push kaizenjapan/anaconda-matthew
The push refers to repository [docker.io/kaizenjapan/anaconda-matthew]
7721420b3ea4: Pushed
20e2d12fa618: Mounted from kaizenjapan/anaconda-gavin
62df93dfc701: Mounted from kaizenjapan/anaconda-gavin
95456260f6d1: Mounted from kaizenjapan/anaconda-gavin
6410333f34cf: Mounted from kaizenjapan/anaconda-gavin
cf342e34eca3: Mounted from kaizenjapan/anaconda-gavin
cea95006e36a: Mounted from kaizenjapan/anaconda-gavin
0f3a12fef684: Mounted from kaizenjapan/anaconda-gavin
latest: digest: sha256:82cb17fb39dd056fad1819506bfeacb5161181e0950a23d33baa0759b8285d20 size: 2018
参考资料
为什么要使用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进行机器学习(3) “直觉深度学习” Antonio Gulli、Sujit Pal 第1章,第2章。
链接:https://qiita.com/kaizen_nagoya/items/483ae708c71c88419c32
在使用 Docker 构建机器学习环境的过程中,遇到了一些错误问题,请参考如下链接的解决方案:
https://qiita.com/kaizen_nagoya/items/690d806a4760d9b9e040
在Windows上使用Docker搭建机器学习环境(72)。详细教程请参考qiita网站上的”https://qiita.com/kaizen_nagoya/items/c4daa5cf52e9f0c2c002″.
使用docker来构建机器学习环境(73),使用docker/linux/macos bash脚本以及ms-dos批处理文件进行环境搭建。请参考此链接:https://qiita.com/kaizen_nagoya/items/3f7b39110b7f303a5558
请问在 Docker 中建立机器学习(74)环境,需要多难才能使用 R ?
使用 Docker 构建机器学习(75)环境(5)并管理与 Docker 相关的文件: https://qiita.com/kaizen_nagoya/items/4f03df9a42c923087b5d
我试图在Python中运行OpenCV,但出现了”libGL.so”不存在的错误,不过我已经解决了。
Note: The given sentence contains a mix of Japanese and English. The Chinese paraphrase is based on the English parts of the sentence.
“关于Matplotlib在服务器端绘图的技巧”
https://qiita.com/TomokIshii/items/3a26ee4453f535a69e9e
在Docker中,在主机和容器之间复制文件。
使用Docker for Mac实现文件共享
https://qiita.com/seijimomoto/items/1992d68de8baa7e29bb5
「在名古屋的物联网是由名古屋的操作系统进行管理的。我们该如何从哪里使用Docker呢?在树莓派上运行TOPPERS/FMP和Macintosh编辑器,有五个关卡。」
Note: The given English sentence seems to be a mix of Japanese and English, so the Chinese translation might also seem a bit mixed.
64位CPU的道路和/或64岁的决心。
《从零开始的深度学习2-自然语言处理篇》读书会的推进方式(例)
尝试在Ubuntu 16.04 LTS上使用NVIDIA Docker。
文件记录
版本0.10初稿,于2018年10月24日上午
版本0.11推送,于2018年10月24日下午
非常感谢您阅读至最后。
喜欢!?请关注我。
非常感谢您阅读到最后一句话。
请点击喜欢的图标 ? 并关注我,享受快乐生活。