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
110
Cracking the KubeCon CfP
inductor
2
540
KubeCon Recap -Platform migration at Scale-
inductor
1
960
コンテナビルド最新事情 2022年度版 / Container Build 2022
inductor
3
460
データベースとストレージのレプリケーション入門 / 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
790
オンラインの技術カンファレンスを安定稼働させるための取り組み / 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
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.4k
Active Directoryハッキング
cryptopeg
1
110
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
740
ソフトウェアエンジニアと仕事するときに知っておいたほうが良いこと / Key points for working with software engineers
pinkumohikan
0
100
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
18
6.9k
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.5k
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
25
7.2k
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
760
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
君も受託系GISエンジニアにならないか
sudataka
2
440
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Docker and Python
trallard
44
3.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
What's in a price? How to price your products and services
michaelherold
244
12k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Code Reviewing Like a Champion
maltzj
521
39k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
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