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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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
48
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
t24kc
0
59
MOV お客さま探索ナビの GCP ML開発フローについて
t24kc
0
31
Other Decks in Technology
See All in Technology
事業成長とAI活用を止めないデータ基盤アーキテクチャの設計思想
hiracky16
0
700
AmplifyHostingConstructからSSRフレームワークのためのホスティング設計を考察する/amplify-hosting-construct
fossamagna
1
320
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
500
OpenTelemetryにおけるGoのゼロコード・コンパイル時計装について #fukuokago
quiver
0
300
論語・武士道・産業革命から見る かわるもの、かわらないもの
ichimichi
6
720
数値で見る Microsoft MVP 〜Spec Kit と GitHub Copilot Agent で作るデータ可視化ダッシュボード〜
yutakaosada
0
140
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
1
380
SoccerMaster: A Vision Foundation Model for Soccer Understanding
kzykmyzw
0
180
Claude CodeとAmazon Bedrock AgentCoreでつくる、自分だけのAIアシスタント
ymae
0
110
OPENLOGI Company Profile for engineer
hr01
1
75k
AI Native なプロダクト組織の立ち上げ方 : 生産性 100 倍への挑戦
mikesorae
0
1.4k
AI時代におけるエンジニアの新たな役割──FDEとクオリアの探求/登壇資料(戸井田 裕貴)
hacobu
PRO
0
380
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
850
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
380
Side Projects
sachag
455
43k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
A Soul's Torment
seathinner
6
3.1k
Why Our Code Smells
bkeepers
PRO
340
58k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Google's AI Overviews - The New Search
badams
0
1.1k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
410
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