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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Arishow
July 26, 2024
290
1
Share
セッション切れに苦しまない DockerとJupyter Notebookの活用法
TechRamen2024で登壇しました
https://techramenconf.net/
Arishow
July 26, 2024
More Decks by Arishow
See All by Arishow
初心者でもコードゴルフに挑戦!
arishow
0
160
DBSCANの事例紹介
arishow
0
18
卒業研究発表会_入力データの構造を考慮したLowProFoolアルゴリズムによる敵対的サンプルの生成に関する研究
arishow
0
56
勾配法・ニュートン法
arishow
0
42
何にも知らないけど とりあえず参加した テックカンファレンスというやつ
arishow
1
130
Featured
See All Featured
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
760
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
180
Exploring anti-patterns in Rails
aemeredith
3
320
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
110
The World Runs on Bad Software
bkeepers
PRO
72
12k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
810
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
160
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
100
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
69
39k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
190
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)