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
GOの実験環境について
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takashi Suzuki
April 01, 2021
Technology
46
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GOの実験環境について
2021/04に行われた社内 AI技術勉強会の発表資料
Takashi Suzuki
April 01, 2021
More Decks by Takashi Suzuki
See All by Takashi Suzuki
到着予想時間サービスの特徴量のニアリアルタイム化
t24kc
0
210
Kubernetes超入門
t24kc
0
270
AI予約サービスのMLOps事例紹介
t24kc
0
47
MLプロジェクトのリリースフローを考える
t24kc
0
25
GOの機械学習システムを支えるMLOps事例紹介
t24kc
0
160
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
t24kc
0
59
MOVの機械学習システムを支えるMLOps実践
t24kc
0
49
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
t24kc
0
59
MOV お客さま探索ナビの GCP ML開発フローについて
t24kc
0
34
Other Decks in Technology
See All in Technology
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
270
20260807_第6回_関東kaggler会LT_claw系bot xangiと始める、"寂しくない" kaggle
sugupoko
0
350
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
5
2k
強化学習「理論」入門
enakai00
3
3.6k
Go 1.27 の標準パッケージに uuid が入った!のでいろいろ喋る / go_127_std_go_uuid
convto
1
280
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
150
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.6k
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
500
私がブラウザを自作したくなった理由
supurazako
1
270
事業価値と Engineering 2026年度版
recruitengineers
PRO
51
25k
モダンフロントエンド 開発研修
recruitengineers
PRO
4
790
MulticaとPi Coding Agentで、小規模OSSを30本同時運用した流れ
eiei114
0
130
Featured
See All Featured
Claude Code のすすめ
schroneko
67
230k
Darren the Foodie - Storyboard
khoart
PRO
3
3.7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
240
Fireside Chat
paigeccino
42
4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
410
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
270
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
BBQ
matthewcrist
89
10k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
500
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Embracing the Ebb and Flow
colly
88
5.1k
4 Signs Your Business is Dying
shpigford
187
23k
Transcript
Mobility Technologies Co., Ltd. MLエンジニアリンググループ 鈴木 隆史 GOの実験環境について
Mobility Technologies Co., Ltd. 実サービスで実験環境を利用する際の - セキュリティ要件 - スケール要件 -
コスト要件 を加味した運用ノウハウを共有します 今日話すこと 2
Mobility Technologies Co., Ltd. 実験環境の要件定義 01 3
Mobility Technologies Co., Ltd. MLシステムにおける実験環境の役割 4 データサイエンティスト BigQuery 探索的データ解析 前処理
学習 推論 評価
Mobility Technologies Co., Ltd. クラウド実験環境の要望 5 セキュリティ要件 • セキュアなデータへのアクセスのため、権限・証跡を管理したい スケール要件
• 実験データが肥大化した際、ローカルPCではOOMでも快適に実験したい コスト要件 • 単に強いインスタンスを利用するのではなく、コストも必要最小限に運用した い
Mobility Technologies Co., Ltd. • JupyterHubはユーザごとにJupyter環境を管理するツール • HelmにJupyterHubのパッケージがありカスタム利用可能 • インフラ設定はk8s管理、起動イメージはdocker管理
• 構築詳細は zero-to-jupyterhub JupyterHubの利用 6
Mobility Technologies Co., Ltd. セキュリティ要件 02 7
Mobility Technologies Co., Ltd. • GCPマネージドSSL証明書を作成しLBで利用 SSL対応 8
Mobility Technologies Co., Ltd. • k8sのIngressのBackendConfigで設定 • Cloud ArmorにはVPNやoffice IPを設定
IP制限(Cloud Armor) 9
Mobility Technologies Co., Ltd. • IAMロールを持つユーザのみにアクセスを絞れる • Google Groupと連携させることで棚卸しが楽に 個人認証
Identity-Aware Proxy (IAP) 10
Mobility Technologies Co., Ltd. • 全員一括でdocker+conda env側で管理 • packageの脆弱性 発生時などは一括更新
python package管理 11
Mobility Technologies Co., Ltd. • 全員一括でdocker側で管理 • 個別に要望があればserverに入れてもらう jupyterlab extension管理
12
Mobility Technologies Co., Ltd. セキュリティ要件 13 SSL • SSL対応でデータの暗号化 IP制限
• 社内IPに制限 個人認証 • 特定のロールをもったユーザのホワイトリスト化 package更新 • 脆弱性発生時などには一括で更新
Mobility Technologies Co., Ltd. スケール要件 03 14
Mobility Technologies Co., Ltd. • NFS Serverを別途立て共有用ディレクトリを分離 ディスクの分離 15
Mobility Technologies Co., Ltd. • 通常の実験はNotebook環境で実施 • 個別ユーザに割り当てるデフォルトMemory/CPUを設定 • 最大でノード上限までデータ分析が可能
通常時のリソース 16
Mobility Technologies Co., Ltd. • k8sのauto scallingを有効にすることで、実験するユーザ数が 増えてもノードインスタンス数が増えて追従 ノードのスケール 17
Mobility Technologies Co., Ltd. • AI Platform Training Jobでマシンタイプ指定して実行 •
imageをpushする手間はあるが、お手軽に実行可能 ノード上限以上のメモリ要求(1) 18
Mobility Technologies Co., Ltd. • 実験用の外部GKEを指定してJobを実行する方法 • Training Jobよりも細かいインスタンス調整が可能 ノード上限以上のメモリ要求(2)
19
Mobility Technologies Co., Ltd. ディスクの分離 • 共有用のディスクは分離 ノードのスケール • 実験ノードのメモリ上限まではそのまま利用可能
• 人数が増えてもノードがスケールして追従 大きいメモリ要求 • 外部GKEやAI Platform Training Jobを利用 • 一度GCRへimageをpushするのがひと手間かかるのがデメリット スケール要件 20
Mobility Technologies Co., Ltd. コスト要件 04 21
Mobility Technologies Co., Ltd. • ノードは2つ設定(常時起動の最小サイズのdefault node、利 用者向けのcostom node(min size:0))
ノードの分離 22
Mobility Technologies Co., Ltd. • airflowで21:30にcostom nodeを0にresizeしてコスト削減し、9:30にsize 1に 戻す 夜間/休日スケーリング
23
Mobility Technologies Co., Ltd. ノードの分離 • 通常起動の最小nodeと、実験向きのnodeに分離 実験ノードのスケール • 利用しない夜間/休日に関しては、実験ノードを0にリサイズ
コスト要件 24
confidential 文章·画像等の内容の無断転載及び複製等の行為はご遠慮ください。 Mobility Technologies Co., Ltd. 25