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
18
卒業研究発表会_入力データの構造を考慮したLowProFoolアルゴリズムによる敵対的サンプルの生成に関する研究
shotaarima
0
27
勾配法・ニュートン法
shotaarima
0
30
何にも知らないけど とりあえず参加した テックカンファレンスというやつ
shotaarima
1
120
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Statistics for Hackers
jakevdp
799
220k
Docker and Python
trallard
45
3.5k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Designing Experiences People Love
moore
142
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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)