使用Anaconda在Docker上进行机器学习,通过Matthew Kirk的《实战数据科学与Python机器学习》一书

1.为了立刻使用的人(as soon as)

「用Python进行周到的机器学习」,由Matthew Kirk著。

cat39.gif

 

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日下午

非常感谢您阅读至最后。

喜欢!?请关注我。

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

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

广告
将在 10 秒后关闭
bannerAds