Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CyberAgent AI Labを支えるCloud実験環境 / ML Experiment ...
Search
chck
May 26, 2021
Programming
4.4k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CyberAgent AI Labを支えるCloud実験環境 / ML Experiment Management via Cloud Computing Platform in CyberAgent AI Lab
PyData.Tokyo Meetup #23
での発表資料です
chck
May 26, 2021
More Decks by chck
See All by chck
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
310
CyberAgent AI Lab研修 / Social Implementation Anti-Patterns in AI Lab
chck
7
5k
CyberAgent AI Lab研修 / Container for Research
chck
1
2.4k
CyberAgent AI Lab研修 / Code Review in a Team
chck
3
2.5k
論文読み会 / Socio-Technical Anti-Patterns in Building ML-Enabled Software: Insights from Leaders on the Forefront
chck
0
160
CyberAgent AI事業本部MLOps研修Container編 / Container for MLOps
chck
3
6.2k
論文読み会 / GLAZE: Protecting Artists from Style Mimicry by Text-to-Image Models
chck
0
120
論文読み会 / On the Factory Floor: ML Engineering for Industrial-Scale Ads Recommendation Models
chck
0
92
論文読み会 / GUIGAN: Learning to Generate GUI Designs Using Generative Adversarial Networks
chck
0
82
Other Decks in Programming
See All in Programming
変化を抱擁するドキュメントの作り方 - ビジネスルール駆動開発がもたらす、コードとの新しい関係
ioki
2
150
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
Intent as Code
shoppingjaws
6
940
高専キャリア LT 発表内容
crysta1221
6
5.7k
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
170
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
150
アクセシビリティから考える情報設計
high_g_engineer
0
360
From 6 People Classroom Meetup to 100 People Regional Conference / FOSS4G Hiroshima 2026
furukawayasuto
0
140
Foundry Localでエージェント開発
seosoft
0
180
信頼性の目標を誰も求めてない
shubox
0
500
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
1
290
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
470
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
280
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
900
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.8k
Typedesign – Prime Four
hannesfritz
42
3.2k
Visualization
eitanlees
152
17k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
sira's awesome portfolio website redesign presentation
elsirapls
0
410
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
CyberAgent AI Labを支える Cloud実験環境 PyData.Tokyo 20210526 Yuki IWAZAKI@chck / CyberAgent
AI Lab
Hello! I am Yuki IWAZAKI@chck ◦ 2014...Backend Engineer (Ruby/Scala) └2017...ML/DS
(Scala/Python) └2018-...Research Engineer in AI Lab ◦ Multimedia (Vision & Language) 2
CyberAgent AI Labの規模感 人数(35) 研究領域 3
AI Labを支えるEcosystem 4
AI Labを支えるEcosystem 5
AI Labを支えるEcosystem Data selection ailab-datasets 6
tensorflow-datasets Public Datasetのdata loader 7 celeb_a imagenet, cifar10, mnist coco
squad iris, movielens, titatic imdb, wiki40b youtube_vis https://www.tensorflow.org/datasets/catalog/overview
tensorflow-datasets Public Datasetのdata loader 8 celeb_a imagenet, cifar10, mnist coco
squad iris, movielens, titatic imdb, wiki40b youtube_vis https://www.tensorflow.org/datasets/catalog/overview Dataset名を指定 Iterationの定義
tensorflow-datasets: load “tensorflow” とあるが, numpyやpandas形式で出力できる 9
tensorflow-datasets: load “tensorflow” とあるが, numpyやpandas形式で出力できる 10 tf.data numpy pandas
tensorflow-datasets: create tfds cliからtemplateを生成 11
12
13 Versioning Metadata. カラムの型の定義 データの説明文 引用論文のURL データのダウンロード 分割方法の指定 前処理含むGenerator
14
15 前処理含むGenerator (apache-beam pipeline)
Private dataの課題感 ◦ Private dataの管理にルールがない ◦ 全プロダクトのデータ集約基盤は Researcher向けじゃない ◦ 各々がオレオレJupyterlabで実験
◦ 前処理の冪等性担保や共有が困難 ◦ とにかく属人的で難解なSQL ◦ Public -> Private dataでの実験 ◦ インターンや新メンバーの学習コスト ◦ 急にDomain知識が必要になる preprocess preprocess preprocess product_a dataset_c product_b 16
ailab-datasets ◦ mnist.loadのようにメンテフリーに扱いたい ◦ Domain知識をコード内に埋め込みたい ◦ tensorflow-datasetsのwrapper ◦ Lab共通のPrivate Dataset
Loader ◦ 社内githubからpip installで利用 1. Data追加が簡単 2. ProductやTaskの単位でVersioning 3. Apache Beamによる高速な前処理 product_a product_b dataset_c product_a dataset_c product_b ailab-datasets 17
ailab-datasets product_a product_b dataset_c product_a dataset_c product_b ailab-datasets 18 ailab_datasets/
┣products/ ┃┣product_a ┃┗product_b ┣image_classification/ ┗text_generation/
PowerfulなDataset Runner Apache BeamによりCPU並列, Worker並列が選択可能 https://towardsdatascience.com/running-an-apache-beam-data-pipeline-on-azure-databricks-c09e521d8fc3 19
ailab-datasets -> post-process 利用者がデータ規模に応じて後段の処理を自由に選択可能 20 ailab-datasets Tensorflow Transform tf.data Numpy
Pandas Dask-cuDF Distributed GPU CPU Apache Beam
AI Labを支えるEcosystem Modeling ailab-model-zoo 21
Private modelの課題感 ◦ 似たデータ,似たタスクによるモデルの再発明が多発 ◦ 例えば広告×NLPや広告×CVでpretraining taskが収束してくる ◦ Researcher間で重みシェアしたい欲高まる ◦
誰がどんな学習済モデルを秘蔵しているかが把握しづらい状況 ◦ Aさんの学習済モデルはBさんに応用できるかも ◦ Public pre-trained modelのprivate版がほしかった ◦ ResNet(on imagenet)やBERT(on ja-wiki)の社内データ版 22
ailab-model-zoo (WIP) tensorflow-hubのManaged版であるAI Hub(GCP)を利用 以下3つがPrivateに共有可能: - kubeflow pipeline - notebook
- trained model 23
ailab-model-zoo (WIP) “tensorflow” とあるが, 実体はuploadしたobjectの検索service Metadataを入力して共有したいobjectをupload tf.hubのself-hostingも可能だが 現状はAI Hubで必要十分 tensorflow/hub/issues/266
24
ailab-model-zoo (WIP) 検索機能付きで管理しやすく,Downloadして利用 25 Public model Private model
AI Labを支えるEcosystem ailab-mlflow Evaluation 26
実験管理の課題感 Teamや個人で実験管理がしたい Free: MLflow, Keepsake SaaS: Neptune.ai, Comet.ml, Wandb MLflowはServer構築が面倒
SaaS系は個人の無料枠を超えると高い 27
実験管理の課題感 MLflow Serverを1つ立てて使い回しでもよいが, Experiments枠で各Userの実験を分けると煩雑 個人やチームごとに1MLflowあるとBetter 28 ▪ Write ▪ Read
ailab-mlflow AI Lab共通で使えるMLflow Clusterを構築 OSSのMLflow Tracking ServerをLab PrivateでHosting GCP Resourceで各ユーザはCost/Server管理要らず
Gmail Whitelist Accessなので共同研究先との利用にも 29
30
31
32
33
Cloud IAPによるユーザ認証 34 Not Authorized
How to track 1. Terraformで$user endpointを作成 2.Training codeからOAuth Token発行 3.Serverに向けて実験ログを飛ばす
4.${MLFLOW_HOST}/${USER}にアクセス 5.実験結果を自由に管理 35
Summary - 実験の流れ - Data (ailab-datasets) - -> Preprocess (tft,
tf.data, numpy, pandas) - -> Training (ai platform training) - -> Save model (ailab-model-zoo) - -> Report (ailab-mlflow) OSSを上手くwrapすることで メンテコストを抑えた実験サポート環境を実現 36
Future work: ailab-pipeline - 実験の流れ - Data (ailab-datasets) - ->
Preprocess (tft, tf.data, numpy, pandas) - -> Training (ai platform training) - -> Save model (ailab-model-zoo) - -> Report (ailab-mlflow) 全体のPipelineもうまいこと管理したいが... Pipeline 37
どう布教させるかの話 ResearcherはCloudの新技術とかに拘らない傾向 意外と使ってくれないのでTutorialや事例を地道に増やす, 共著で入るときにこっそり導入してしまう 全体のPipelineを設計して自由度を下げるよりも、まずはパーツ 部分に注力し、利用者側が取捨て選択できるように 38
ailab-mlflowの構築方法 近々blog公開するのでぜひ https://cyberagent.ai/blog/research/ 39
40 Thanks! Any questions? You can find me at: ◦
github@chck ◦
[email protected]