Upgrade to Pro — share decks privately, control downloads, hide ads and more …

心理学者に役立つかもしれないクラウドコンピューティング

Daiki Hojo
April 07, 2020

 心理学者に役立つかもしれないクラウドコンピューティング

クラウドコンピューティング(GCP・AWS)について簡単にまとめました。
そして、R, Python, Wolfram Engineの導入方法も記載しています。
本資料にでてくるコード詳細は以下にあります。
https://github.com/dastatis/dastatis.github.io/blob/master/pdf/Hojo_CloudComputingSetup.txt

Daiki Hojo

April 07, 2020
Tweet

Other Decks in Education

Transcript

  1. 目次 • クラウドコンピューティングとは (利点・欠点など) - AWS - GCP • クラウドコンピューティング環境の導入

    - AWS / GCP の環境構築 - R / RStudio Server 導入 - tidyverse / rstan 導入 MCMC(;´Д`)ハァハァ - Python (Anaconda) 導入 - (Jypyter環境に)Mathematica (Wolfram Engine) の導入 - jspsychの導入(したかった) • 実践 5
  2. クラウドコンピューティング利点・欠点 • 利点 - 一時的にスペック(CPU、GPU、メモリ等)を上げられる - 分析だけ高スペックで行う - 使い方によっては、高スペックPC買うより安い -

    自分のPCスペックに依存しない - ネットさえあれば、どこからでもアクセス可能 - 環境をまるごとコピー、公開可能. (→再現性) - 公開されている誰かのテンプレ環境を使える - 自分でRやPythonを導入しなくてもよい (→ 授業等へ応用可能?) - 実験サーバーを用意する必要がない - 実験準備→実験→データ解析をオールインワンで可能 - そして、そのまま公開すれば良い • 欠点 - 使い方によっては、使わない方(普通のPCの方)が安い - ネットがないと使えない - CUI操作が基本 10
  3. ここでは、Amazon Linux 2 AMI (HVM), SSD Volume Type を選択しました。 •ここで、スペックを選択します

    • 無料になるのは、「無料利用枠の対象」とあるものです (そりゃそうだ) • ちなみに、この無料枠では、メモリがしょぼすぎてrstan等の パッケージがはいりません(Rcppがつらいみたい) 33
  4. 目次 • クラウドコンピューティングとは (利点・欠点など) - AWS - GCP • クラウドコンピューティング環境の導入

    - AWS / GCP の環境構築 - R / RStudio Server 導入 - tidyverse / rstan 導入 MCMC(;´Д`)ハァハァ - Python (Anaconda) 導入 - (Jypyter環境に)Mathematica (Wolfram Engine) の導入 - jspsychの導入 • 実践 68
  5. 心理学者のための 各種環境の構築 • R / RStudio Server 導入 • Python

    (Anaconda) 導入 • (Jypyter環境に)Mathematica (Wolfram Engine) の導入 • jspsychの導入 69
  6. ここからは •先ほど述べたように、以降の環境構築はAWS,GCPも そんなに変わらないので、 •GCP - インスタンスタイプ - n1-standard-2(vCPU x 2、メモリ

    7.5 GB) - ブートディスク(HDD) - Debian(デフォルト) → Ubuntu 18.04 LTS に変更しました - 標準永続ディスク 10GB(デフォルト) → 20GB - ネットワークタグ - 先ほど作成した allow-rstudio を追加 - GCPへのアクセス環境 - WindowsからGoogle Chromeを用いてアクセス •で基本的に実践してきます •適宜セキュリティグループなどいじります。 70
  7. •まずはインスタンスを立ち上げる - 特に変更なければLinuxの「Ubuntu」というディストリ ビューションで作成される - 今後のエラー等は、 「検索したいワード GCP」 もしくは 「検索したいワード

    Ubuntu」で検索するとヒットする可能 性が高いです •次以降の「Rの導入」は、あえてミスを犯してから導 入する流れになっているので、「Rの導入」を最後ま で読んだ上で実行してください Rの導入 71
  8. ˃sudo apt update ˃sudo apt upgrade ## 導入済みパッケージの更新 Do you

    want to continue? [Y/n] 中略 ˃sudo apt install r-base インストール完了 ˃R •上記コマンド>を実行してください •コマンドによっては ~ continue?ときかれるので、 「はい」である, Y を入力してください Rの導入 72
  9. ˃ cat /etc/os-release NAME="Ubuntu" VERSION="18.04.3 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian

    PRETTY_NAME="Ubuntu 18.04.3 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and- policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic •使っているUbuntuのバージョンを調べます(以下) • 僕のは18.04(bionic)でした Rの導入 75
  10. ˃echo -e "¥n## For R package" | sudo tee -a

    /etc/apt/sources.list ˃echo "deb https://cran.rstudio.com/bin/linux/ubuntu $(lsb_release -cs)-cran35/" | sudo tee -a /etc/apt/sources.list ˃sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 ˃sudo apt update ˃sudo apt install r-base •上記を順番に実行していく •やっていることは、最新のCRANの情報を取ってくる ようにしている Rの導入(先人の知恵を借りる) 76 https://qiita.com/JeJeNeNo/items/43fc95c4710c668e86a2 より
  11. ˃ sudo apt-get install gdebi-core ˃ wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server- 1.2.1335-amd64.deb ˃

    sudo gdebi rstudio-server-1.2.1335-amd64.deb # rstudio server にログインするユーザ名を定義.ここでは「rstudio」にしている ˃ sudo adduser rstudio Enter new UNIX password: Retype new UNIX password: #上記を入力すると、このユーザ名のパスワードを定義する画面がでてくる。 # なので,パスワードを決めて、打ち込む •https://www.rstudio.com/products/rstudio/download- server/ で自分のOSに合うインストールコマンドを探 してインストール(ここではUbuntu 18+) Rstudio Server の導入 78
  12. # Rstudio Serverのステータスを確認できる。 ˃sudo rstudio-server status • rstudio-server.service - RStudio

    Server Loaded: loaded (/etc/systemd/system/rstudio-server.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-08-07 16:54:34 UTC; 6min ago Process: 20742 ExecStart=/usr/lib/rstudio-server/bin/rserver (code=exited, status=0/SUCCESS) Main PID: 20747 (rserver) Tasks: 3 (limit: 4401) CGroup: /system.slice/rstudio-server.service └─20747 /usr/lib/rstudio-server/bin/rserver Aug 07 16:54:34 instance-3 systemd[1]: Starting RStudio Server... Aug 07 16:54:34 instance-3 systemd[1]: Started RStudio Server. •どうやら無事動いているようだ •ログインしてみる→ Rstudio Server の立ち上げ 79
  13. ˃sudo apt-get install libcurl4-openssl-dev libssl-dev libxml2-dev build-essential g++ ˃sudo apt

    update ˃sudo apt upgrade •上記をターミナル(not rstudio server)で1行ずつ実行 しましょう •tidyverse や rstanをUbuntuで動かすために必要です。 tidyverse, rstan導入の準備 84 http://katsumushi.hatenadiary.com/entry/2017/11/12/235542 より
  14. ˃ # Add marutter's c2d4u repository, (and rrutter for CRAN

    builds too) ˃ sudo add-apt-repository -y "ppa:marutter/rrutter" ˃ sudo add-apt-repository -y "ppa:marutter/c2d4u" ˃ sudo apt-get update ˃ sudo apt-get install r-cran-rstan ˃ sudo R •公式(https://github.com/stan-dev/rstan/wiki/Installing-RStan-on-Linux) を参考に •terminalにて以下を実行 rstanの導入 86 Rにて ˃install.packages("devtools") ˃remotes::install_github("stan-dev/rstan", ref = "develop", subdir = "rstan/rstan", build_opts = "")
  15. ˃sudo wget http://repo.continuum.io/archive/Anaconda3-4.0.0- Linux-x86_64.sh ˃bash Anaconda3-4.0.0-Linux-x86_64.sh 中略 Do you wish

    the installer to prepend the Anaconda3 install locationto PATH in your /home/dhojo/.bashrc ? [yes|no][no] >>> yes ˃source ~/.bashrc •基本的にYesでよいが、最後のパスを通すかも必ずYes にする Python(Anaconda)の導入 87 https://qiita.com/tk_01/items/307716a680460f8dbe17 参考に
  16. ˃cd ~ ˃jupyter notebook --generate-config ˃cd .jupyter ## .jupyterディレクトリにいることを確認して以下 ˃openssl

    req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mykey.key -out mycert.pem ˃python Jupyter notebookの立ち上げ 88 ## Pythonにて ˃from notebook.auth import passwd; passwd() ## 登録したpasswordを覚えておく ## ‘sha1:~~’の~~の部分をメモしておく ˃quit() ## pythonを閉じる
  17. ˃cd .jupyter ˃vi jupyter_notebook_config.py ## 編集モードになるので、 i を押して、以下を入力し、Escキーを押し、:wqを押す と保存されて終了する #

    OpenSSLで作ったファイルへのパス # dhojo@instance-3の@より前のdhojoが僕のusername # これを以下のURL内に置き換える c.NotebookApp.certfile = u'/home/dhojo/.jupyter/mycert.pem' c.NotebookApp.keyfile = u'/home/dhojo/.jupyter/mykey.key' # どのIPアドレスからのアクセスも受け入れる c.NotebookApp.ip = '0.0.0.0' # passwd()コマンドで作ったパスワードのハッシュを貼る c.NotebookApp.password = u'sha1:22d9227hoge' # 勝手にブラウザを起動しない c.NotebookApp.open_browser = False # 外部からアクセスするためのポート番号を指定する c.NotebookApp.port = 8888 Jupyter notebookの立ち上げ 89
  18. ˃git clone https://github.com/WolframResearch/WolframLanguag eForJupyter.git ˃cd WolframLanguageForJupyter/ ˃wolframscript configure-jupyter.wls add ##

    アクティベートしていないと、上記が出るので、アクティベートする ˃wolframscript –activate ˃wolframscript configure-jupyter.wls add ##再度 Wolfram engineの導入 98 https://qiita.com/TsuMakoto/items/d17ccc6d9974337b55db を参考に
  19. ˃wolframscript Wolfram Language 12.0.0 Engine for Linux x86 (64- bit)Copyright

    1988-2019 Wolfram Research, Inc. In[1]:= とりあえず、普通に使えはするのでよしとする 101