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
Web系企業研究所における研究開発を加速させるエコシステム / Ecosystem accel...
Search
chck
October 08, 2021
Research
0
120
Web系企業研究所における研究開発を加速させるエコシステム / Ecosystem accelerates our R&D in CyberAgent AI Lab
PRMU #202110
での発表資料です
chck
October 08, 2021
Tweet
Share
More Decks by chck
See All by chck
CyberAgent AI事業本部MLOps研修Container編 / Container for MLOps
chck
2
5k
機械学習開発のためのコンテナ入門 / Container for ML
chck
0
810
CyberAgent AI Labを支えるCloud実験環境 / ML Experiment Management via Cloud Computing Platform in CyberAgent AI Lab
chck
7
4k
続・小さく始めて大きく育てるMLOps2020 / Start small and grow big MLOps2020
chck
3
3.1k
Other Decks in Research
See All in Research
Embers of Autoregression: Understanding Large Language Models Through the Problem They are Trained to Solve
eumesy
PRO
6
1.1k
Active Adaptive Experimental Design for Treatment Effect Estimation with Covariate Choices
masakat0
0
210
Weekly AI Agents News! 9月号 プロダクト/ニュースのアーカイブ
masatoto
1
110
大規模言語モデルを用いた日本語視覚言語モデルの評価方法とベースラインモデルの提案 【MIRU 2024】
kentosasaki
2
500
外積やロドリゲスの回転公式を利用した点群の回転
kentaitakura
1
620
第60回名古屋CV・PRML勉強会:CVPR2024論文紹介(AM-RADIO)
naok615
0
240
テキストマイニングことはじめー基本的な考え方からメディアディスコース研究への応用まで
langstat
1
110
[CV勉強会@関東 CVPR2024] Visual Layout Composer: Image-Vector Dual Diffusion Model for Design Layout Generation / kantocv 61th CVPR 2024
shunk031
1
410
marukotenant01/tenant-20240826
marketing2024
0
510
LLM based AI Agents Overview -What, Why, How-
masatoto
2
590
「並列化時代の乱数生成」
abap34
3
790
[第62回NLPコロキウム]「なりきり」を促すHCI設計:対話型接客ロボットの遠隔操作者へのリアルタイム変換音声フィードバックの適用
nami_ogawa
0
300
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
7
150
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Why Our Code Smells
bkeepers
PRO
334
57k
Adopting Sorbet at Scale
ufuk
73
9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
228
52k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
What's in a price? How to price your products and services
michaelherold
243
12k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Transcript
Web系企業研究所における 研究開発を加速させるエコシステム PRMU研究会 20211008 Yuki IWAZAKI@chck / CyberAgent AI Lab
Hello! I am Yuki IWAZAKI@chck ◦ 2014...Backend Engineer in DSP
└2018-...Research Engineer in AI Lab ◦ Ad x Multimedia (Vision & Language) 2
CyberAgentの事業領域 3
AI Labの立ち位置 4
CyberAgent AI Labについて 2016年に設立された研究組織 30名以上のResearch Scientist, Engineerが在籍 今年の論文投稿数99件 (acceptance: 31.3%)
https://cyberagent.ai/ailab/ 5
組織体制 AI Lab Creative Group Human-computer interaction Econ & Optimization
Creative Research NLP Applied ML Algorithms Graphics Audio Media Fundamentals Econ Research Econ Social Implementation Reinforcement Learning 6
AI LabにおけるR&Dの進め方 • 学術貢献 -> 論文投稿, 学会発表, 特許 ◦ Proposal
first, Bottom up ▪ 会社の事業領域に関連する基礎, 応用研究 • 事業貢献 -> コンサル, EDA, Modeling ◦ Task first, Top down ▪ プロダクトと連携して課題解決 7
AI LabにおけるR&Dの進め方 • 学術貢献 -> 論文投稿, 学会発表 ◦ Proposal first,
Bottom up ▪ 会社の事業領域に関連する基礎, 応用研究 • 事業貢献 -> コンサル, EDA, Modeling ◦ Task first, Top down ▪ プロダクトと連携して課題解決 8
共通のML基盤を持たないAI事業本部 広い事業領域 - over 20 products 少数精鋭の開発チーム - 5-15名/product 裁量権は各チームに
- 技術選定からプロセスまでメ ンバーで決定 9
プロダクトとの連携例 タスク相談 モデル実装 データ提供 実験レポート共有 プロダクトA AI Lab 専門的なFeedback 産学連携先
研究室 データ提供 タスク相談 専門的なFeedback モデル実装 実験レポート共有 10
プロダクトとの連携例2 タスク相談 モデル実装 データ提供 実験レポート共有 プロダクトB AI Lab 専門的なFeedback 途中から参戦
データ提供 専門的なFeedback AI Lab 11
研究組織における3つの課題 1. データ管理 2. モデル管理 3. 実験管理 12
1. データ管理
課題: データ管理 • データ形式がProduct/Project毎に違う ◦ CSV, JSON, S3, RDB, BigQuery,
etc… ◦ Domain知識フル動員な鬼Query • 前処理の共有や冪等性担保が困難 ◦ 属人的で難解なREADME ◦ 先人の実験時とレコード数が違う ◦ リーダブルコーディングが浸透しづらい ◦ 新メンバーやインターンの学習コスト高 preprocess preprocess preprocess product_a dataset_c product_b 14
解決: tensorflow-datasets • Public/Private Dataset loader ◦ 社内GitHubからpip installで利用 •
特徴 ◦ データの読込, 追加が簡単 ◦ ProductやProjectの単位でVersioning ◦ Apache Beamによる並列分散処理 product_a product_b dataset_c product_a dataset_c product_b ailab-datasets 15
tensorflow-datasets: load tf.dataやnumpy, pandas形式でloadできる 16
tensorflow-datasets: load tf.dataやnumpy, pandas形式でloadできる 17 Datasetを指定 Iterationの定義
tensorflow-datasets: load tf.dataやnumpy, pandas形式でloadできる 18 tf.data numpy pandas
tensorflow-datasets: create tfds cliからtemplateを生成 19
20
21 Versioning Metadata. カラムの型の定義 データの説明文 引用論文のURL データのダウンロード 分割方法の指定 前処理含むGenerator
22
23 前処理含むGenerator (apache-beam pipeline)
ailab-datasets: list product_a product_b ailab_datasets/ ┣products/ ┃┣product_a ┃┗product_b ┣image_classification/ ┃┗imagenet
┗text_generation/ https://www.tensorflow.org/datasets/catalog/overview 25
2. モデル管理
課題: モデル管理 • モデルの再発明が多発 ◦ 似たタスク前に誰かがやっていたような ◦ benchmark取りたいが再実装した方が早そう • 研究者間でモデルの重みシェアしたい
◦ 既にどんなモデルがあるか把握しづらい ◦ Aさんの学習済モデルはBさんのテーマで応用できるかも • Public pre-trained modelのprivate版がほしい ◦ ResNet(on imagenet)やBERT(on jawiki)の社内データ版 27
解決: AI Hub tensorflow-hubのManaged版であるAI Hub(GCP)を利用 学習済モデルやNotebookがPrivateに共有可能 28
AI Hub 実体はuploadしたobjectの検索service Metadataを入力し共有したいobjectをupload tf.hubのself-hostingも可能だが 現状はCloud版であるAI Hubで必要十分 tensorflow/hub/issues/266 29
AI Hub 検索機能付きで管理しやすく,Downloadして利用 30 Public model Private model
3. 実験管理
課題: 実験管理 Teamや個人で実験管理がしたい Free: MLflow, Keepsake, TensorBoard SaaS: Neptune.ai, Comet.ml,
Wandb MLflowはServer構築が面倒 SaaS系は個人の無料枠を超えると高い 32
課題: 実験管理 MLflow Serverを1つ立てて使い回しでもよいが, Experiments枠で各Userの実験を混ぜると煩雑 個人やチーム単位で1MLflowあるとBetter 33 ▪ Write ▪
Read
解決: MLflow Cluster • AI Lab共通のMLflow Clusterを構築 • 特徴 ◦
実験管理は各人独立したendpointを提供 ◦ OSSのMLflow Tracking ServerをLab PrivateでHosting ◦ GCP Resourceで各ユーザはCost/Server管理要らず ◦ Google Account Whitelistで共同研究先との利用にも 34
35
36
37
38
Cloud IAPによるユーザ認証 39 Not Authorized
利用の流れ 1.利用希望者の$user endpointを作成 2.Training codeからOAuth Token発行 3.Serverに向けて実験ログを飛ばす 4.${MLFLOW_HOST}/${USER}にアクセス 5.実験結果を自由に管理 40
MLflow Cluster構築ハンズオン Blog公開したのでぜひ https://cyberagent.ai/blog/research/15272/ 41
Summary - 実験の流れ - Data (tensorflow-datasets) - -> Preprocess (tft,
tf.data, numpy, pandas) - -> Training (ai platform training) - -> Save model (AI Hub) - -> Report (MLflow) OSSを上手くwrapすることで メンテコストを抑えた実験サポート環境を実現 42
We’re Hiring! (学生の方向け) 44
We’re Hiring! (学生の方向け) 45
We’re Hiring! (社会人の方向け) 46
We’re Hiring! (社会人の方向け) 47
48 Thanks! Any questions? You can find me at: ◦
github.com/chck ◦
[email protected]