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
機械学習基盤の本番運用とその取り組み / ML platform in production
Search
Kohei Ota
December 08, 2019
Technology
8
2k
機械学習基盤の本番運用とその取り組み / ML platform in production
Kohei Ota
December 08, 2019
Tweet
Share
More Decks by Kohei Ota
See All by Kohei Ota
CloudNative Meets WebAssembly: Exploring Wasm's Potential to Replace Containers
inductor
3
2.2k
The Cloud Native Chronicles: 10 Years of Community Growth Inside and Outside Japan
inductor
0
120
Cracking the KubeCon CfP
inductor
2
540
KubeCon Recap -Platform migration at Scale-
inductor
1
960
コンテナビルド最新事情 2022年度版 / Container Build 2022
inductor
3
470
データベースとストレージのレプリケーション入門 / Intro-of-database-and-storage-replication
inductor
26
6.2k
KubeConのケーススタディから振り返る、Platform for Platforms のあり方と その実践 / Lessons from KubeCon case studies: Platform for Platforms and its practice
inductor
3
800
オンラインの技術カンファレンスを安定稼働させるための取り組み / SRE activity for online conference platform
inductor
1
1.2k
Kubernetesネットワーキング初級者脱出ガイド / Kubernetes networking beginner's guide
inductor
19
6.1k
Other Decks in Technology
See All in Technology
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
240
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
600
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
160
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
340
短縮URLをお手軽に導入しよう
nakasho
0
140
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
プロダクトエンジニア 360°フィードバックを実施した話
hacomono
PRO
0
140
システム・ML活用を広げるdbtのデータモデリング / Expanding System & ML Use with dbt Modeling
i125
1
320
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
160
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
260
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
320
分解して理解する Aspire
nenonaninu
2
990
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Code Reviewing Like a Champion
maltzj
521
39k
We Have a Design System, Now What?
morganepeng
51
7.4k
Designing for Performance
lara
604
68k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Optimizing for Happiness
mojombo
376
70k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Docker and Python
trallard
44
3.3k
What's in a price? How to price your products and services
michaelherold
244
12k
A designer walks into a library…
pauljervisheath
205
24k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Transcript
ػցֶशج൫ͷຊ൪ӡ༻ͱ ͦͷऔΓΈ 1SFTFOUFECZ,PIFJ0UB !JOEVDUPS +VMZ5FDI'FTUB
ࣗݾհ w ଠాߤฏ !@JOEVDUPS@ !JOEVDUPS w %PDLFS.FFUVQ5PLZP0SHBOJ[FS w *OGSBTUSVDUVSF&OHJOFFS
.-0QT5FBN!;0;05FDIOPMPHJFT *OD
;0;0508/ͷը૾ݕࡧػೳʹΈΔ ,VCFSOFUFTΛͬͨػցֶशج൫ӡ༻ͷཪଆ $MPVE/BUJWF%BZT,BOTBJ $PQZSJHIU;0;05FDIOPMPHJFT *OD גࣜձࣾ;0;0ςΫϊϩδʔζ ։ൃ෦ .-0QTνʔϜ ଠా
ߤฏ
;0;0508/ͷը૾ݕࡧػೳʹΈΔ ,VCFSOFUFTΛͬͨػցֶशج൫ӡ༻ͷཪଆ $MPVE/BUJWF%BZT,BOTBJ $PQZSJHIU;0;05FDIOPMPHJFT *OD גࣜձࣾ;0;0ςΫϊϩδʔζ ։ൃ෦ .-0QTνʔϜ ଠా
ߤฏ ৄ͘͠4QFBLFSEFDLͷεϥΠυͰʂ
ࠓͷλʔήοτ w Πϯϑϥ%FW0QT43&తͳ͜ͱΛ͍ͬͯΔਓ w ػցֶशʹ͍ͭͯ͋·Γྑ͔͍ͬͯ͘ͳ͍ਓ શʹཧղ͍ͯ͠Δਓ w ಥવৼΒΕΔṖͷλεΫʹରԠͰ͖Δ͔Θ͔Βͳ͍ਓ
͋Δ͜Μͳ͜ͱΛݴΘΕΔͱ ߟ͑ͯΈ͍ͯͩ͘͞
ܦӦऀʮ͜Ε͔Β"*ͩʂʂʯ
"*ʁػցֶशʁͲ͏ҧ͏ͷʁ
ػցֶशͬͯͳʹʁʁ
ػցֶशʁʁ w σʔλΛೖྗɺ͋Δ͖݁ՌΛग़ྗͱͯ͠ w ෳͷσʔλ͔Βڞ௨ͷϧʔϧಛɺஅج४Λநग़ w ໌ࣔతʹϓϩάϥϜϩδοΫΛॻ͔ͣʹ݁ՌΛग़ͨ͢ΊͷΈ
ػցֶशʁʁ w σʔλΛೖྗɺ͋Δ͖݁ՌΛग़ྗͱͯ͠ w ෳͷσʔλ͔Βڞ௨ͷϧʔϧಛɺஅج४Λநग़ w ໌ࣔతʹϓϩάϥϜϩδοΫΛॻ͔ͣʹ݁ՌΛग़ͨ͢ΊͷΈ ϩδοΫͷநԽ
ͳͥػցֶश͕ٻΊΒΕΔͷ͔ w ϞόΠϧΠϯλʔωοτ͕ීٴ͖ͬͨ͠ࠓɺࣄͷঢ়گٸܹʹมΘΔ w ͦͷมԽΛϓϩάϥϜͰද͢ͷେม w *GGPSͰઃఆͨ͠ύϥϝʔλʔΛॻ͖͑Δ͚ͩͷվमΛՃ͑Δͷ ͍͠͠ɺޮՌଌఆେมʢ͍ΘΏΔzਓແೳzͱ͍͏ݺΕΔͭʣ w ͜Ε·Ͱͷ͔Β࣍ͷ݁ՌΛ༧ଌ͢Δࣄ͕Ͱ͖Δശ͕͋Ε
ຊ࣭తʹαʔϏεͷϩδοΫͰͳ͍ͣ
ͳͥػցֶश͕ٻΊΒΕΔͷ͔ w ϞόΠϧΠϯλʔωοτ͕ීٴ͖ͬͨ͠ࠓɺࣄͷঢ়گٸܹʹมΘΔ w ͦͷมԽΛϓϩάϥϜͰද͢ͷେม w *GGPSͰઃఆͨ͠ύϥϝʔλʔΛॻ͖͑Δ͚ͩͷվमΛՃ͑Δͷ ͍͠͠ɺޮՌଌఆେมʢ͍ΘΏΔzਓແೳzͱ͍͏ݺΕΔͭʣ w ͜Ε·Ͱͷ͔Β࣍ͷ݁ՌΛ༧ଌ͢Δࣄ͕Ͱ͖Δശ͕͋Ε
ຊ࣭తʹαʔϏεͷϩδοΫͰͳ͍ͣ ػցֶशʹΑͬͯಘΒΕͨϞσϧ ϒϥοΫϘοΫε Λ ೖΕସ͑Δ͚ͩͰΞϓϦέʔγϣϯ͕ੈͷதͷ χʔζʹରԠͰ͖ΔͷͰͳ͍͔ʂͱ͍͏ൃ
ػցֶशͷԠ༻ྫ w ݕࡧΤϯδϯͷϦίϝϯσʔγϣϯ w ؞ʹ͓͚ΔෆྑͳͲͷҟৗݕ w Իೝࣝɺը૾ೝࣝ w גՁ༧ଌ
ػցֶशͷԠ༻ྫ w ݕࡧΤϯδϯͷϦίϝϯσʔγϣϯ w ؞ʹ͓͚ΔෆྑͳͲͷҟৗݕ w Իೝࣝɺը૾ೝࣝ w גՁ༧ଌ ϦΞϧλΠϜͰมԽ͢Δͷ
ਓؒͷखΛհ͢Δͱେมͳͷʹରͯ͠ಛʹ༗ޮ
ػցֶशͷར༻Πϝʔδ
ػցֶशͷར༻Πϝʔδ Ϟσϧ
ػցֶशͷར༻Πϝʔδ ֶश ਪ ਪϞσϧ
ֶशͱਪ w ֶश w σʔλΛҰఆͷنଇ ΞϧΰϦζϜ ʹैͬͯϞσϧʹม w σʔλιʔε͕ॏཁͳͷͰɺʑೖΕସΘΔͷఆৗతʹֶश͢Δ w
ਪ w ϞσϧΛͬͯɺ͋Δσʔλ͕Ͳͷύλʔϯʹ࠷͍͔ۙΛஅ͢Δ w ਪʹ͏Ϟσϧͷσʔλ͕ॏཁ
ֶशͱਪ w ֶश w σʔλΛҰఆͷنଇ ΞϧΰϦζϜ ʹैͬͯϞσϧʹม w σʔλιʔε͕ॏཁͳͷͰɺʑೖΕସΘΔͷఆৗతʹֶश͢Δ w
ਪ w ϞσϧΛͬͯɺ͋Δσʔλ͕Ͳͷύλʔϯʹ࠷͍͔ۙΛஅ͢Δ w ਪʹ͏Ϟσϧͷσʔλ͕ॏཁ 8FCʹͳ͍ػցֶशج൫ͷϙΠϯτ Ϟσϧ͕ػցֶशʹ͓͚Δ಄ ϒϥοΫϘοΫε ϞσϧͷೖΕସ͑ͱɺֶशසͳͲͷఆ͕ٛॏཁ
Πϯϑϥج൫ͷ
ྫ͑͜ΜͳΞϓϦ͕͋ͬͨͱͯ͠ 8FC "QQ %#
ΞϓϦʹػցֶशΛͬͨ ػೳΛ૿͢͜ͱΛߟ͑ͯΈΔ
Πϝʔδ͜͏ 8FC "QQ %# ਪϞσϧ ਪ"1*ͷ αʔϏϯά
Πϝʔδ͜͏ 8FC "QQ %# ਪϞσϧ ਪ"1*ͷ αʔϏϯά ͜ΕͰಈ͘ʹಈ͚͘Ͳɾɾɾ
Πϝʔδ͜͏ 8FC "QQ %# ਪϞσϧ ਪ"1*ͷ αʔϏϯά Ϟσϧͷߋ৽Ͳ͏͢Δͷʁ ΞϓϦͷߋ৽ͱύΠϓϥΠϯ͚Δͷʁ Πϯϑϥઃܭ୭͕͢Δͷʁ
ػցֶशʹؔΘΔਓͨͪ ࣾൺ w ϦαʔνϟʔˠΞϧΰϦζϜͱϞσϧධՁΛ୲ w .-ΤϯδχΞ
ػցֶशʹؔΘΔਓͨͪ ࣾൺ w Ϧαʔνϟʔ w .-ΤϯδχΞˠϞσϧΛͬͨ"1*ΞϓϦͷϓϩτλΠϐϯάͳͲ
ػցֶशʹؔΘΔਓͨͪ ࣾൺ w Ϧαʔνϟʔ w .-ΤϯδχΞˠϞσϧΛͬͨ"1*ΞϓϦͷϓϩτλΠϐϯάͳͲ ࣗಈԽͲͬͪͷࣄʁ ΠϯϑϥઃܭͩΕ͕Δʁ ύϑΥʔϚϯενϡʔχϯάʁ
Two Big Problems Data Scientist Machine Learning Engineer vs
Ϟσϧ࡞ͱαʔϏϯάͷ ֞ࠜΛແͯ͘͠ ࣮ӡ༻ʹ͑͏Δج൫Λ࡞Γ͍ͨ
%FWY0QT
.-Y0QT
.-0QTνʔϜͷϛογϣϯ ࣾൺ w .-ΤϯδχΞݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖ΔڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏
.-0QTͰิ͑Δ͜ͱ w ݚڀऀιϑτΣΞΤϯδχΞϦϯάͷݟ͕ͳ͍ w +VQZUFS/PUFCPPL͚ͩ͋Ε͍͍ɻ%PDLFSΠϯϑϥΒͳ͍͜ͱଟ͍ w .-ΤϯδχΞϓϩτλΠϐϯά͕ಘҙͰܧଓతͳΞϓϦέʔγϣϯͷվળ ࣗಈԽͷλεΫઐ֎ͳ͜ͱଟ͍ w $*$%ઃܭɺֶशϫʔΫϑϩʔͷ࠷దԽͳͲ༏ઌ͕͍
.-0QTͰิ͑Δ͜ͱ w %FW0QTͰഓͬͨϊϋΛػցֶशʹద༻͍ͯ͘͠ w (16$16ΛͬͨϫʔΫϑϩʔΠϯϑϥઃܭͳͲɺͦͦΠϯϑϥͷ ͕ࣝཁٻ͞ΕΔ w ຊ൪ʹ͚ͨΞϓϦέʔγϣϯͷվળ w ίϯςφԽɺϘτϧωοΫͷվળͳͲ
࣮ྫΛோΊͯΈΔ
;0;05FDIOPMPHJFT *OD ΞʔΩςΫνϟશମ $MPVE-PBE #BMBODJOH $MPVE"SNPS ,VCFSOFUFT &OHJOF $MPVE
4UPSBHF $POUBJOFS 3FHJTUSZ $MPVE .FNPSZTUPSF %FWFMPQFS ը૾ετϨʔδ ϞσϧετϨʔδ ίϯςφΠϝʔδ Ωϟογϡ $MPVE $PNQPTFS ֶश ,VCFSOFUFT &OHJOF "//JOEFY Ϟσϧ 6TFS ֶश ਪ (16 $MPVE 'JMFTUPSF
None
.-0QTͷ୲ྖҬ ࣾൺ w Πϯϑϥͷߏཧ $*$%ύΠϓϥΠϯؚΉ w ΞϓϦέʔγϣϯͷ$*$%ίϯςφԽɺνϡʔχϯά w ֶशϫʔΫϑϩʔͷվળӡ༻
શ෦Ͱ͖ͳ͍ͱ͍͚ͳ͍ͷ͔ʁ
:FTBOEOP
νʔϜͷଟ༷ੑ w 43&ʹ͓͍ͯඞཁͱ͞ΕΔνʔϜͷଟ༷ੑ.-0QTͰॏཁ w ۀϓϩμΫτɺج൫ʹ͓͍ͯΘΕΔٕज़શͯแׅతʹཧղ͢Δ ͜ͱ͕ॏཁͳͷݴ͏·Ͱͳ͍ w ಘҙྖҬ͕ҧ͏ΤϯδχΞ͕ෳ͍Δ͜ͱʹΑͬͯνʔϜͱͯ͠ ΑΓେ͖ͳൣғΛΧόʔͰ͖Δ w
ҧ͏ࢹͷΤϯδχΞ͕͏·͘ಈ͍͍ͯ͘ʹɺݸʑͷνʔϜΛҙࣝͨ͠ ಈ͖༏लͳϦʔμʔͷଘࡏॏཁ
νʔϜͷଟ༷ੑ w 43&ʹ͓͍ͯඞཁͱ͞ΕΔνʔϜͷଟ༷ੑ.-0QTͰॏཁ w ۀϓϩμΫτɺج൫ʹ͓͍ͯΘΕΔٕज़શͯแׅతʹཧղ͢Δ ͜ͱ͕ॏཁͳͷݴ͏·Ͱͳ͍ w ಘҙྖҬ͕ҧ͏ΤϯδχΞ͕ෳ͍Δ͜ͱʹΑͬͯνʔϜͱͯ͠ ΑΓେ͖ͳൣғΛΧόʔͰ͖Δ w
ҧ͏ࢹͷΤϯδχΞ͕͏·͘ಈ͍͍ͯ͘ʹɺݸʑͷνʔϜΛҙࣝͨ͠ ಈ͖༏लͳϦʔμʔͷଘࡏॏཁ ɾνʔϜͷ౷ ɾνʔϜͷଟ༷ੑ ͜ΕΒཁૉͷཱ͕྆ॏཁ
͏গ࣮͠ࡍͷऔΈʹ͍ͭͯ ۷ΓԼ͛ͯΈ·͠ΐ͏
.-0QTͷ୲ྖҬ ࣾൺ w Πϯϑϥͷߏཧ $*$%ύΠϓϥΠϯؚΉ w ΞϓϦέʔγϣϯͷ$*$%ίϯςφԽɺνϡʔχϯά w ֶशϫʔΫϑϩʔͷվળӡ༻
8FC։ൃͱڞ௨෦͕େ͖͍λεΫ ػցֶशʹݻ༗ͷ෦͕େ͖͍λεΫ
ΞϓϦͷνϡʔχϯά w ϏδωεϩδοΫΛม͑ͳ͍ൣғͰਪ"1*ͷΛ্͛Δ w "1.֎ܗࢹͳͲΛ͔ͭͬͯఆৗࢹ͠ɺϘτϧωοΫΛݟ͚ͭΔ w ϞσϧͰѻ͏ϕΫτϧͷύϥϝʔλʔσʔλͷྔʹΑͬͯɺ$16 (16ͲͪΒΛ͏͖͔͕ܾ·Δ ෛՙࢼݧͳͲͰݕূ͢Δ
w (16ศར͕ͩɺίϯςΩετεΠονʹऑ͍ͷͰΞϓϦέʔγϣϯͰ ۃྗ͍ͨ͘ͳ͍
ΞϓϦͷνϡʔχϯά w ϏδωεϩδοΫΛม͑ͳ͍ൣғͰਪ"1*ͷΛ্͛Δ w "1.֎ܗࢹͳͲΛ͔ͭͬͯఆৗࢹ͠ɺϘτϧωοΫΛݟ͚ͭΔ w ϞσϧͰѻ͏ϕΫτϧͷύϥϝʔλʔσʔλͷྔʹΑͬͯɺ$16 (16ͲͪΒΛ͏͖͔͕ܾ·Δ ෛՙࢼݧͳͲͰݕূ͢Δ
w (16ศར͕ͩɺίϯςΩετεΠονʹऑ͍ͷͰΞϓϦέʔγϣϯͰ ۃྗ͍ͨ͘ͳ͍ *46$0/ͨͪʹେͳ͜ͱΛڭ͑ͯ͘Εͨ
ֶशϫʔΫϑϩʔͷӡ༻ͱվળ w ݚڀऀ.-ΤϯδχΞ͕ϞσϧΛ࡞͞ΕΔҰ࿈ͷྲྀΕΛ ϑϩʔʹམͱ͠ࠐΈɺࣗಈԽ͢Δ w ຖɺຖ࣌ؒใ͕มΘΔΑ͏ͳσʔλʹରͯ͠ܧଓͯ͠ՁΛ ఏڙ͢ΔͨΊʹඞཁෆՄܽ w ฒྻ࣮ߦੑ͕Ͳ͜·ͰߴΊΒΕΔ͔ w
ΞϧΰϦζϜɺ͍ͬͯΔख๏ʹର͢Δཧղ͕ॏཁ
;0;05FDIOPMPHJFT *OD ը૾ݕࡧʹΘΕΔҰൠతͳΞϧΰϦζϜ ମݕग़ΞϧΰϦζϜ • ը૾͔Βମͷݕग़ͱΫϥεྨΛ͢Δ ಛྔநग़ΞϧΰϦζϜ • ը૾͔Βଟ࣍ݩϕΫτϧͷಛྔΛநग़͢Δ
ۙࣅ࠶࠷ۙ୳ࡧ "// • ߴʹଟ࣍ݩͷϕΫτϧΛ୳ࡧ͢Δ IUUQTHJUIVCDPNTQPUJGZBOOPZ $// 'FBUVSF
.-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪϞσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠ ਪ"1*࡞ΔΑʂ
.-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪϞσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠ ਪ"1*࡞ΔΑʂ ϫʔΫϑϩʔͰ ਪϞσϧͷੜΛࣗಈԽ ΞϓϦέʔγϣϯͷ $*$%ύΠϓϥΠϯ ਪϞσϧͷ ࣗಈσϓϩΠ
.-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪϞσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠ ਪ"1*࡞ΔΑʂ ϫʔΫϑϩʔͰ ਪϞσϧͷੜΛࣗಈԽ ΞϓϦέʔγϣϯͷ $*$%ύΠϓϥΠϯ ਪϞσϧͷ ࣗಈσϓϩΠ
࣮ɺ͍ͬͯΔ͜ͱͷຊ࣭ ࠓ·Ͱͷ43&%FW0QTͷख๏ͱͦΜͳʹҧ͍͕ͳ͍
վΊͯ.-0QTͷ ϛογϣϯʹ͍ͭͯৼΓฦΔ
.-0QTνʔϜͷϛογϣϯ ࣾൺ w .-ΤϯδχΞݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖ΔڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏
.-0QTνʔϜͷϛογϣϯ ࣾൺ w .-ΤϯδχΞݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖ΔڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏ Ϟσϧ"1*ͷʑͷ։ൃऀ ମݧͷ্ 43&తͳΞϓϩʔν
·ͱΊ w %FW0QT։ൃͱӡ༻ͷ֞ࠜΛແ͘͠ɺϏδωεʹߩݙ͢ΔεϐʔυײΛߴΊΔͨΊ ͷऔΓΈɺจԽվֵͷϚΠϯυηοτͩͬͨ w 43&%FW0QTΛؚΉɺαʔϏεͷఏڙՁΛߴΊΔ࣮ફతͳΞϓϩʔν w .-0QT྆ऀͷ࣋ͭಛੑΛػցֶशͷεϐʔυײ৴པੑΛߴΊΔͨΊͷऔΓΈ
5IBOLZPVGPSZPVSBUUFOUJPO