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
2.1k
機械学習基盤の本番運用とその取り組み / 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
4
3.1k
The Cloud Native Chronicles: 10 Years of Community Growth Inside and Outside Japan
inductor
0
140
Cracking the KubeCon CfP
inductor
2
650
KubeCon Recap -Platform migration at Scale-
inductor
1
1k
コンテナビルド最新事情 2022年度版 / Container Build 2022
inductor
3
540
データベースとストレージのレプリケーション入門 / Intro-of-database-and-storage-replication
inductor
29
6.4k
KubeConのケーススタディから振り返る、Platform for Platforms のあり方と その実践 / Lessons from KubeCon case studies: Platform for Platforms and its practice
inductor
3
890
オンラインの技術カンファレンスを安定稼働させるための取り組み / SRE activity for online conference platform
inductor
1
1.3k
Kubernetesネットワーキング初級者脱出ガイド / Kubernetes networking beginner's guide
inductor
22
6.5k
Other Decks in Technology
See All in Technology
FastAPIの魔法をgRPC/Connect RPCへ
monotaro
PRO
1
730
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
コンテキストエンジニアリングとは? 考え方と応用方法
findy_eventslides
4
890
Goにおける 生成AIによるコード生成の ベンチマーク評価入門
daisuketakeda
2
100
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
1.9k
SOC2取得の全体像
shonansurvivors
1
370
Green Tea Garbage Collector の今
zchee
PRO
2
390
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
4
580
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
250
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
250
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
350
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Docker and Python
trallard
46
3.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Mobile First: as difficult as doing things right
swwweet
224
10k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Raft: Consensus for Rubyists
vanstee
139
7.1k
The Invisible Side of Design
smashingmag
301
51k
Code Review Best Practice
trishagee
72
19k
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