Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LT_R_on_GoogleColab
Search
NobuakiOshiro
PRO
October 11, 2019
Technology
1
400
LT_R_on_GoogleColab
https://fukuoka-r.connpass.com/event/147096/
NobuakiOshiro
PRO
October 11, 2019
Tweet
Share
More Decks by NobuakiOshiro
See All by NobuakiOshiro
20241115_第0回_データサイエンティストの応援団_ゲスト新川さん
doradora09
PRO
0
12
20241114_AGI福岡_1000行くらいならコーディング無しで簡易ゲーム開発な時代がくる?
doradora09
PRO
0
69
20241111_データサイエンティストの応援団の募集と解説(15min版)
doradora09
PRO
0
75
20241109_やさしいChatGPT入門_部活速習用(15min版)
doradora09
PRO
0
55
第1回 生成AIでポチポチゲームを作ろうの会 (ドラゴンスレイヤー)
doradora09
PRO
0
62
20241019_Chat先生の力を借りてHTMLで動くゲームのベースを作る
doradora09
PRO
0
80
20241012_DS協会せとうち支部発足プレイベント_地方(九州)DS奮闘記_共有用
doradora09
PRO
0
62
20240925_LT_DALLEとTripo3Dで自分風アバターを作って動かす
doradora09
PRO
0
120
20240925_LT_ChatGPT-4oの新ボイスモードが出たので少し触ってみた
doradora09
PRO
0
38
Other Decks in Technology
See All in Technology
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
260
Terraform Stacks入門 #HashiTalks
msato
0
360
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
0
170
Engineer Career Talk
lycorp_recruit_jp
0
190
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
Lambdaと地方とコミュニティ
miu_crescent
2
370
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
100
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
1k
TanStack Routerに移行するのかい しないのかい、どっちなんだい! / Are you going to migrate to TanStack Router or not? Which one is it?
kaminashi
0
600
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Practical Orchestrator
shlominoach
186
10k
Visualization
eitanlees
145
15k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
100
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Being A Developer After 40
akosma
87
590k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
Become a Pro
speakerdeck
PRO
25
5k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
LT R on Google Colab ~ いい感じに処理を共有したい ~ Yakitori.R#02 2019/10/11
@doradora09
⾃⼰紹介 • NOB DATAの⼤城です • 最近クラウド本書きました ->
イベント告知 SpaTech #02 (11/16) • 温泉地でデータ分析勉強会 • 各分析コミュニティの⽅々と、⼤分 の⽅々をつなげられればと思います のでご都合つきましたら是⾮・・!
• ちなみに今回は⼤分県から補助が出 ます https://spatech.connpass.com/event/151005/
本題 課題感 • 分析結果を共有したい!が様々なハードルがある • ⾃分以外のPCにRをインストールするのが⼤変 • サーバの知識がなく、社内でJupyterやRStudioのWebサーバは⽴てられない • サーバの知識はあるが、AWS等のインスタンスを⽴ち上げる予算がない
• 無料、かつPDFやhtmlファイルで共有する以外の⽅法はないものか? 今回 • GoogleColabで直接Rを動かす⽅法のご紹介
GoogleColabのスペックと制限 • スペック • 搭載CPUはIntel(R) Xeon(R) CPU @ 2.30GHz •
メモリーは13GB、データ容量は40GB • GPU、TPUが無料で使える • 制限 • 連続利⽤12時間まで • 90分間アイドル状態が続くとインスタンスがシャットダウン
Rを乗せる前に・・ GoogleColabの基礎
Google Colaboratoryを利⽤する HPPHMFυϥΠϒΞΫηε
ʴ৽ن ΛΫϦοΫ
ΞϓϦΛՃ ΛΫϦοΫ ͦͷଞ
DPMBCPSBUPSZͰݕࡧ ଓϘλϯΛΫϦοΫ
Google Colab上でRを使う⽅法 • 2つご紹介 • お⼿軽な⽅法 • rpy2でPythonと共存したまま使う • ⼀⼿間かける⽅法
• ipynbファイルを書き換えてRのノートブックとして設定する 参考 https://www.marketechlabo.com/google-colaboratory-with-r/
その1:rpy2でPythonと共存したまま使う • rpy2を使うと%%RブロックでRを呼び出すことが可能になる • %load_ext rpy2.ipythonを記載するだけでOK
rpy2のインストールと %%RブロックでRコードの実⾏
install.packages()も使える
決定⽊とかも動く
その2:ipynbを書き換える⽅法 • .ipynbファイルの中⾝を書き換える⽅法 • ⼀⼿間かかるが、Rのコードをそのまま呼び出せる
任意のノートブックを作成し、 .ipynbをダウンロード
.ipynbファイルを2⾏書き換え (nameをirに、display_nameをRにする)
書き換えた.ipynbファイルを アップロードすればOK
あとはRのコードを書くだけ • 1つ⽬の⽅法と違って%%Rのようなブロックは不要
あとはRのコードを書くだけ • 1つ⽬の⽅法と違って%%Rのようなブロックは不要
GoogleColabのデメリットと セッション切れ問題対策 • 90分以上かかる処理の場合はリ ロード必須 • chormeの拡張機能などで定期的 なブラウザのリロードはお⼿軽 に実施できる •
もちろん、PCがスリープしない 設定でやる必要はあり https://chrome.google.com/webstore/detail/auto- refresh/ifooldnmmcmlbdennkpdnlnbgbmfalko
動かなかったもの • rpivotTableとかplotlyパッケージは動かない (knitやHTML出⼒が前提だから?) • ⼿軽にインタラクティブに動かせる環境あると最⾼なので、何 かノウハウありましたらお知らせ下さい
所感 場⾯によっては選択肢としてはあり • 費⽤をかけず、社内データの簡単な分析と共有 良い点 • 無料でハイスペックなマシンが使え、権限管理も可能 向かない点 • (現時点では)凝った処理やGUIでグリグリやりたい場合は素直
にPythonからplotly等各種ライブラリを呼び出す⽅法が楽
余談 • ⽤途が社内でのデータ解析結果の共有ではなく、 単に機械学習の勉強ならkaggleのカーネル使う⽅法もあります • こっちはRに標準対応
まとめ • Google ColabからRで使う⽅法をいくつかご紹介 • rpy2を使う⽅法、ipynbを書き換える⽅法 • 90分タイムアウト問題はブラウザの拡張機能などで対応可能 • 共有範囲の管理もできるので、社内データの簡単な処理やレ
ポートの共有には向いている • ⼀⽅、機械学習の勉強⽤途だけならKaggleのnotebook使うと良い • ⼀応hack的な⽅法なので、現時点では凝った処理は素直に Pythonで書く、といった使い分けが良いかも
Enjoy!