LoginSignup
0
0

dockerで機械学習(71) with R (1)「入門 機械学習」Drew Conway, John Myles White 著

Last updated at Posted at 2018-10-08

1.すぐに利用したい方へ(as soon as)

「入門 機械学習」Drew Conway, John Myles White 著

picture_large978-4-87311-594-8.jpeg

docker

dockerを導入し、Windows, Macではdockerを起動しておいてください。
Windowsでは、BiosでIntel Virtualizationをenableにしないとdockerが起動しない場合があります。
また、セキュリティの警告などが出ることがあります。

docker pull and run

$ docker pull kaizenjapan/r-ml

$ docker run -it kaizenjapan/r-ml /bin/bash

以下のshell sessionでは
(base) root@473fc1bb505d:/#は入力促進記号(comman prompt)です。実際には数字の部分が違うかもしれません。この行の#の右側を入力してください。
それ以外の行は出力です。出力にエラー、違いがあれば、コメント欄などでご連絡くださると幸いです。
それぞれの章のフォルダに移動します。

dockerの中と、dockerを起動したOSのシェルとが表示が似ている場合には、どちらで捜査しているか間違えることがあります。dockerの入力促進記号(comman prompt)に気をつけてください。

ファイル共有または複写

dockerとdockerを起動したOSでは、ファイル共有をするか、ファイル複写するかして、生成したファイルをブラウザ等表示させてください。参考文献欄にやり方のURLを記載しています。

複写の場合は、dockerを起動したOS側コマンドを実行しました。お使いのdockerの番号で置き換えてください。複写したファイルをブラウザで表示し内容確認しました。

第1章

(base) root@473fc1bb505d:/# ls
ML_for_Hackers	bin  boot  dev	etc  home  lib	lib64  media  mnt  opt	proc  root  run  sbin  srv  sys  tmp  usr  var
(base) root@473fc1bb505d:/# cd ML_for_Hackers/
(base) root@473fc1bb505d:/ML_for_Hackers# ls
01-Introduction  03-Classification  05-Regression      07-Optimization	09-MDS		    11-SNA		 README.md     package_installer.R
02-Exploration	 04-Ranking	    06-Regularization  08-PCA		10-Recommendations  12-Model_Comparison  fast_check.R  slides
(base) root@473fc1bb505d:/ML_for_Hackers# cd 01-Introduction/
(base) root@473fc1bb505d:/ML_for_Hackers/01-Introduction# ls
data  images  ufo_sightings.R

01 ufo_sightings.R

(base) root@473fc1bb505d:/ML_for_Hackers/01-Introduction# r ufo_sightings.R 
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Error in strsplit(unitspec, " ") : non-character argument
In addition: Warning message:
Removed 1 rows containing non-finite values (stat_bin). 

2. dockerを自力で構築する方へ

ここから下は、上記のpullしていただいたdockerをどういう方針で、どういう手順で作ったかを記録します。
上記のdockerを利用する上での参考資料です。本の続きを実行する上では必要ありません。
自力でdocker/anacondaを構築する場合の手順になります。
dockerfileを作る方法ではありません。ごめんなさい。

docker

ubuntu, debianなどのLinuxを、linux, windows, mac osから共通に利用できる仕組み。
利用するOSの設定を変更せずに利用できるのがよい。
同じ仕様で、大量の人が利用することができる。
ソフトウェアの開発元が公式に対応しているものと、利用者が便利に仕立てたものの両方が利用可能である。今回は、公式に配布しているものを、自分で仕立てて、他の人にも利用できるようにする。

docker pull

docker公式配布の利用は、URLからpullすることで実現する。

apt

(base) root@473fc1bb505d:/# apt update

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

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

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

(base) root@473fc1bb505d:/# apt install -y r-base

(base) root@473fc1bb505d:/# apt install -y r-cran-hmisc

git

(base) root@f19e2f06eabb:/# git clone https://github.com/johnmyleswhite/ML_for_Hackers

3.docker hub 登録

ここからは、新たにソフトを導入したdockerを自分のhubに登録する方法です。
ご自身で何かソフトウェアを導入されたら、ぜひhubに登録することをお勧めします。
続きの作業を誰かに依頼したり、エラーがでてわからなくなったときに、対処方法を問い合わせるのにも役立ちます。

$ docker ps 
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                            NAMES
b28c065c8b45        continuumio/anaconda3            "/usr/bin/tini -- /b…"   21 hours ago        Up 21 hours                                                                                  elegant_gates       

$ docker commit b28c065c8b45  kaizenjapan/r-ml


$ docker push kaizenjapan/r-ml

参考資料(reference)

Rのインストール
http://www.okadajp.org/RWiki/?R%20のインストール#td663091

dockerで機械学習(74) 環境構築(4) R いくつ難関?

dockerで機械学習(52) with R (2)「データサイエンスのための統計学入門 ―予測、分類、統計モデリング、統計的機械学習とRプログラミング」Peter Bruce、Andrew Bruce 著
https://qiita.com/kaizen_nagoya/items/479e3283a2d030726254

dockerで機械学習(python:anaconda)「直感Deep Learning」Antonio Gulli、Sujit Pal 第1章,第2章
https://qiita.com/kaizen_nagoya/items/483ae708c71c88419c32

OpenCVをPythonで動かそうとしてlibGL.soが無いって言われたけど解決した。
https://qiita.com/toshitanian/items/5da24c0c0bd473d514c8

サーバサイドにおけるmatplotlibによる作図Tips
https://qiita.com/TomokIshii/items/3a26ee4453f535a69e9e

Dockerでホストとコンテナ間でのファイルコピー
https://qiita.com/gologo13/items/7e4e404af80377b48fd5

Docker for Mac でファイル共有を利用する
https://qiita.com/seijimomoto/items/1992d68de8baa7e29bb5

「名古屋のIoTは名古屋のOSで」Dockerをどっかーらどうやって使えばいいんでしょう。TOPPERS/FMP on RaspberryPi with Macintosh編 5つの関門
https://qiita.com/kaizen_nagoya/items/9c46c6da8ceb64d2d7af

64bitCPUへの道 and/or 64歳の決意
https://qiita.com/kaizen_nagoya/items/cfb5ffa24ded23ab3f60

ゼロから作るDeepLearning2自然言語処理編 読書会の進め方(例)
https://qiita.com/kaizen_nagoya/items/025eb3f701b36209302e

文書履歴(document history)

ver. 0.10 初稿 20181008
ver. 0.11 見出し、入力促進記号、URLをr-mlに訂正 20181013
ver. 0.12 表題訂正、参考URL追記 20181014
ver. 0.13 番号変更、参考文献追記 20181029

最後までおよみいただきありがとうございました。

いいね 💚、フォローをお願いします。

Thank you very much for reading to the last sentence.

Please press the like icon 💚 and follow me for your happy life.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0