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

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

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Daiki Hojo Daiki Hojo
April 07, 2020

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

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

Avatar for Daiki Hojo

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