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
セッション切れに苦しまない DockerとJupyter Notebookの活用法
Search
Shota Arima
July 26, 2024
1
210
セッション切れに苦しまない DockerとJupyter Notebookの活用法
TechRamen2024で登壇しました
https://techramenconf.net/
Shota Arima
July 26, 2024
Tweet
Share
More Decks by Shota Arima
See All by Shota Arima
DBSCANの事例紹介
shotaarima
0
7
自己紹介スライド 2025/5/26
shotaarima
0
17
卒業研究発表会_入力データの構造を考慮したLowProFoolアルゴリズムによる敵対的サンプルの生成に関する研究
shotaarima
0
27
勾配法・ニュートン法
shotaarima
0
30
何にも知らないけど とりあえず参加した テックカンファレンスというやつ
shotaarima
1
120
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
A designer walks into a library…
pauljervisheath
207
24k
Code Review Best Practice
trishagee
69
19k
How to Ace a Technical Interview
jacobian
278
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Bash Introduction
62gerente
614
210k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Transcript
セッション切れに苦しまない DockerとJupyter Notebookの活用法 @live_in_2107(学生室の住人) Tech Ramen 2024 #techramen24conf
ֶੜࣨͷॅਓ ຊ໊༗അଠ § 本業 : 学生(東京都市大学 メディア情報学部 4年) § 研究分野
: 機械学習、データ解析、最適化手法 § 進路 : 内部進学で大学院へ § 趣味 : サッカー観戦、旅行、担当教授のXを眺める § 初旭川! 21年ぶり北海道! X(旧Twitter) Qiita
͖ͳϥʔϝϯ § 魂心屋(あざみ野店) § ラーメン(塩味) § 麺柔らかめ、ほうれん草マシ § ご飯はお供 §
現在まくり券が現在15枚 § 22枚で器がもらえる
ࠓճऔΓ্͛Δࣄ § Google Colabratory(以下Colab)のセッションが切れてしまう問題
(PPHMF$PMBCͱ § Google社が提供するクラウド実行型のJupyter環境 § 機能 § 環境構築が不要 § GPUに料金なしでアクセス §
簡単に共有 § Google Drive上で簡単にファイルを作成でき、実行することができる § 充実したライブラリなどが事前に収録されている § 個人の端末のスペックに依存しない
(PPHMF$PMBCͱ <Jupyter環境> § Jupyter Notebookが前身 § プログラムと実行結果、Markdown形式のドキュメント、LaTeX形式の数式、図 表をまとめて記述・格納できるWebアプリケーション <歴史> §
PythonのインタラクティブなシェルであるIPythonのプロジェクトとして開発が 進められた § カーネルを分離し、Python以外の言語のサポートも進み、IPython NotebookはJupyterプロジェクトにスピンオフされた
(PPHMF$PMBCͱ Google Colab Google drive GPUの搭載 Jupyterの環境 ライブラリ
§ セッション切れはどのようにして発生するのか (PPHMF$PMBCͱ
ηογϣϯΕʹ͍ͭͯ § クラウド上での実行となるため、ランタイム接続時間が設定されている § 90分 : 非アクティブ状態が続くと切れてしまう § 12時間 :
最大接続時間(公式に記載) § 24時間 : pro版への課金(月額1,179円)で可能 § ※バックグラウンド実行 : pro+への課金(月額5,767円)で実行可能 § この制約の中で試行錯誤している記事を見かけました。
ηογϣϯΕʹ͍ͭͯ § この制約の中で試行錯誤している記事を見かけました。 § Google Colaboratoryの90分セッション切れ対策【自動接続】 from Qiita § 90分での接続解除を防ぐために90分おきにスクロールするコードを実装
§ ブラウザのアドオンを利用して定期的にリロードする § 12時間経過した場合、結局切れてしまう…
ηογϣϯΕʹ͍ͭͯ § 根本的な原因は、クラウドへの接続 § ローカルで動かせば解決するのでは
ϩʔΧϧͰಈ͔͢ํ๏ 1. 自分でライブラリを設定する方法 2. 公式が出しているColabイメージの方法
ϩʔΧϧͰಈ͔͢ํ๏ 1. 自分でライブラリを設定する方法 § ColabのベースであるJupyterのイメージをDockerで作成 § 自分好みにライブラリのバージョンなどを設定にする § Dockerでローカルに分析環境を整える方法 from
Qiita § Enviornment.ymlにライブラリのバージョンを指定してイメージを作成 ※ここらへんの話は昨日の@ftnextさんの「one obvious wayを志向するPythonに依存ライブ ラリ管理ツールがたっくさんある話 〜Rust製ツールが高速を謳う」を聞いてください
ϩʔΧϧͰಈ͔͢ํ๏ 2.公式が出しているColabイメージの方法 § Colab の Docker ランタイム イメージ § Jupyter
ランタイムイメージ のどちらかでイメージを作成する →これによりGoogle のホスト型ランタイム環境にあるパッケージを使用可能 ※ローカルのパッケージは使用できない
ϩʔΧϧͰಈ͔͢ํ๏ 2.公式が出しているColabイメージの方法 ローカルリソースを使用することによる危険性が指摘されていました。 § マシンのローカルリソースを使用するため以下のことに注意が必要です。 § 任意のコマンドの呼び出し(例:ホストをマウントしている際の「rm -rf /」) §
ローカル ファイル システムへのアクセス § ローカルマシンでの悪意のあるコンテンツの実行
·ͱΊ § Colabは簡単に使え、環境構築不要な点では素晴らしいシステム § ローカルで実装する方がセッション切れが発生しない § Dockerでローカルの仮想環境を作る § ライブラリを指定するならJupyterのイメージ §
Colab環境のままならColabのイメージ
参考文献 § “Jupyter.ipynb”,https://colab.research.google.com/github/chokkan/pyth on/blob/main/jupyter.ipynb#scrollTo=1h_ICQjmFXHW,(閲覧日2024-7- 25) § “Colaboratoryへようこそ”, https://colab.research.google.com/, (2024-7- 25)
§ “Google Colaboratoryの90分セッション切れ対策【自動接続】”, https://qiita.com/enmaru/items/2770df602dd7778d4ce6 , 2020-01- 11,(2024-7-25) § ”Google Colab”, https://research.google.com/colaboratory/local- runtimes.html?hl=ja (2024-7-25)