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
アットホームな分析基盤の作り方 / Homemade Machine Learning Too...
Search
Yuichiro Someya
July 23, 2018
Programming
1
980
アットホームな分析基盤の作り方 / Homemade Machine Learning Toolkits
分析基盤トーク #1
https://daft.connpass.com/event/93036/
Yuichiro Someya
July 23, 2018
Tweet
Share
More Decks by Yuichiro Someya
See All by Yuichiro Someya
にんげんがさき 基盤はあと / Developers over ML platform
ayemos
0
14k
機械学習をスモールスタートさせる方法 / small machine learning
ayemos
3
2k
サービス開発、機械学習、クラウド / the trinity of machine learning
ayemos
0
3.4k
成長を止めない機械学習のやり方 / Don't stop 'til you get enough (data).
ayemos
15
5.2k
AWS で加速する機械学習 / Accelerate Machine Learning with AWS
ayemos
1
320
クックパッドの機械学習基盤 2018 / Machine Learning Platform at Cookpad ~ 2018 ~
ayemos
15
20k
PyTorchとCaffe2とONNXと深層学習モデルのデプロイについて
ayemos
1
3k
クックパッドにおけるAWS GPUインスタンスの利用事例 / Powering by AWS GPU Instances in Cookpad Inc
ayemos
0
420
How we use GPUs in Cookpad
ayemos
0
150
Other Decks in Programming
See All in Programming
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
220
セキュリティマネジャー廃止とクラウドネイティブ型サンドボックス活用
kazumura
1
170
Use Perl as Better Shell Script
karupanerura
0
690
List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'"
philipschwarz
PRO
0
190
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
22
6k
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
350
A comprehensive view of refactoring
marabesi
0
120
Development of an App for Intuitive AI Learning - Blockly Summit 2025
teba_eleven
0
110
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
760
Using AI Tools Around Software Development
inouehi
0
1.2k
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
530
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
690
Designing for humans not robots
tammielis
253
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Adopting Sorbet at Scale
ufuk
77
9.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
780
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Invisible Side of Design
smashingmag
299
51k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The World Runs on Bad Software
bkeepers
PRO
68
11k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Transcript
ΞοτϗʔϜͳ ੳج൫ͷ࡞Γํ BZFNPT
ࣗݾհ છ୩༔Ұ<:VJDIJSP4PNFZB> ౦ژۀେֶେֶӃܭࢉֶम࢜ ΫοΫύουגࣜձࣾݚڀ։ൃ෦ ϦαʔνΤϯδχΞ݄d ػցֶशج൫
Ϩγϐσʔλͷੳ UXJUUFSDPN!BZFNPT@Z HJUIVCDPNBZFNPT IUUQTXXXBZFNPTNF
ΫοΫύουݚڀ։ൃ෦ ݄ʹൃ ໊࣌ͷϝϯόʔ ݄ݱࡏࠃʹ໊ ւ֎ʹ໊
ΫοΫύουͱػցֶश .ZϑΥϧμ ͓ؾʹೖΓػೳ ͷϨγϐΛࣗಈΧςΰϦྨ ʮྉཧ͖Ζ͘ʯεϚʔτϑΥϯͷྉཧࣸਅΛΧϨϯμʔܗࣜ ͰৼΓฦΓ ࡐྉ໊ͷਖ਼نԽ
ʑ ৄ͘͠IUUQTUFDIMJGFDPPLQBEDPN
BHFOEB ΫοΫύουͷੳج൫ͷհ ੳج൫ͷ͜Ε͔Β
ج൫հͦͷ;PPFZ
None
ੳͱ࣮ݧΛ֤͕ࣗࣗ༝ʹߦ͏ͨΊͷ࠷ݶͷج൫
ج൫հͦͷ̍;PPFZ ܭࢉػڥߏங༻$IBU#PU ܭࢉػڥͷ࡞ʗ্ཱͪ͛ʗఀࢭʗআ ΞΠυϧঢ়ଶͷܭࢉػΛࣗಈఀࢭ
None
$6%" DV%// $6%" DV%// %FFQ-FBSOJOH".*+BO FUD 0VUHPJOH8FCIPPLT
TMBDL@VJE6 DPNNBOEDSFBUFXPSLCFODI MBNCEB*OWPLF 71$ 4VCOFU /BNFλά ڥಛ༗ͷઃఆ͜͜ͰΔ ΠϯελϯεʹATMBDL@VJEAΛ λά͚ͯ͠ॴ༗ऀΛཧ͢Δ DSFBUFXPSLCFODI ;PPFZ
ATTIBZFNPTXPSLCFODIEOTDPNA ;PPFZ *ODPNJOH8FCIPPLT TTI
;PPFZ 4UPQ ΞΠυϧͳΠϯελϯεΛࣗಈఀࢭ
ج൫հͦͷ̍;PPFZ ͷԾ*NBHF %FFQ-FBSOJOH".* Λར༻Մೳ Πϯελϯε࡞ͷೖΓޱΛҰຊԽ ωοτϫʔΫɺηΩϡϦςΟपΓͷࡉ͔͍ઃఆΛٵऩ
ར༻ଆ*NBHFΛ൪߸ͰબͿ͚ͩ ࣾΠϯϑϥͷมԽʹରͯ͠πʔϧͷΞοϓσʔτͰରԠ ւ֎ͷϝϯόʔར༻ IUUQTBXTBNB[PODPNKQNBDIJOFMFBSOJOHBNJT
ج൫հͦͷ̍;PPFZ ֤͕ࣗSPPUΛऔΕΔΠϯελϯεΛ͍ग़͢ গʑલ࣌తʁ ॊೈੑߴ͘ɺ࣮ݧஈ֊ͷڥͱ͍ͯ͠৺͕Α͍ ࣗಈఀࢭ͋ΔͷͰ֤ࣗ҆৺ͯ͠ඞཁͳ্ཱ͚ͩͪ͛ΒΕΔ
ʮ࣮ݧʯΛؚΊαϙʔτ͢Δڞ௨ج൫Λ࣋ͨͳ͍ͷͰ ʮ࣮ݧʯʮຊ൪ʯͷ1PSUBCJMJUZผ్ิڧ͢Δඞཁ͕͋Δ
ج൫հͦͷσʔλج൫
None
͍ΘΏΔ%8) 42-ϕʔεͷ&5-ج൫
σʔλج൫ ͜ΕओʹผνʔϜ σʔλج൫άϧʔϓ ʹΑΔཧ "NB[PO3FETIJGUʹΑΔ%8)ߏங .Z42-3FETIJGUͷΠϯϙʔτδϣϒΛίʔυཧ
ৄ͘͠IUUQTUFDIMJGFDPPLQBEDPNFOUSZ
σʔλج൫ͷར༻ঢ়گ %8)͕ਆ &5- ࣮ݧͷʹ֤͕ࣗߦ͍ɺεΫϦϓτԽ͢Δࣄ͕ଟ͍ ڞ௨&5-ج൫ͷར༻ɺதؒσʔλͷڞ༗ͳͲʹର͢Δχʔζ ͦ͜·Ͱେ͖͘ͳ͍
ݱঢ়
ج൫հͦͷίʔυཧ
ج൫հͦͷίʔυཧ ج൫ʁ DPPLJFDVUUFSEBUBTDJFODF ࣾGPSL Λར༻ ϓϩδΣΫτߏͷςϯϓϨʔτ
ATSDEBUBA ATSDNPEFMAσʔλੜɺֶशεΫϦϓτ AEBUBA ANPEFMTAσʔλɺϞσϧ HJUʹDIFDLJOͤͣɺ4ͱTZOD͢Δ ANBLFTZOD@EBUB@UP@TA
ج൫հͦͷίʔυཧ IUUQTHJUIVCDPNEPDLFSTDJFODFDPPLJFDVUUFSEPDLFS TDJFODF DPPLJFDVUUFSEBUBTDJFODFΛࢀߟʹͨ͠ςϯϓϨʔτ EPDLFSΛར༻͠ɺϓϩδΣΫτͷ࣮ݱੑΛ͞ΒʹߴΊΔ OPUFCPPLͷ্ཱͪ͛
1PSUGPSXBSEߦ͏UBSHFU
ج൫·ͱΊ ݱঢ়౷ҰԽ͞ΕͨػցֶशϓϥοτϑΥʔϜΛར༻͍ͯ͠ͳ͍ ࣗπʔϧͷΈ߹Θͤ %8)Ͱ͓͓ΉͶճ͍ͬͯΔ ج൫ͦͷͷͷཧίετͳͲߟྀͭͭ͠ਐΊͨ݁Ռ ݱঢ় ൺֱతΧδϡΞϧͳӡ༻ͱͳ͍ͬͯΔ
ੳج൫ͷࠓޙ ʙΞοτϗʔϜͳੳج൫͔Βେ౷Ұج൫ͷಓͷΓʙ ͔͜͜Βߟ
ੳج൫ͷࠜຊత՝ (FOFSJDBOE&YUFOTJCMF
ੳج൫ͷࠜຊత՝ 5'9"5FOTPS'MPX#BTFE1SPEVDUJPO4DBMF.BDIJOF-FBSOJOH1MBUGPSN ΑΓ l5IFNBDIJOFMFBSOJOHQMBUGPSNNVTUCFHFOFSJD FOPVHIUPIBOEMFUIFNPTUDPNNPOTFUPGMFBSOJOH UBTLTBTXFMMBTCFFYUFOTJCMFUPTVQQPSUPOFP⒎ BUZQJDBMVTFDBTFTz ҙ༁ ػցֶशج൫แׅత͔֦ͭுՄೳͰ͋Δ͖
(FOFSJDBOE&YUFOTJWF ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶशʱ ͠Α͏ͱ͍ͯ͠Δ (FOFSJDͳΔ͘ଟ͘ͷϢʔεέʔεʹ ಁաతʹ ରԠ͍ͨ͠ ྑ͍நԽͱ"1*֦ॆͷؤுΓ͖ͬͱେม
&YUFOTJWFྫ֎తͳέʔεʹରͯ͠ গͳ͍࿑ྗͰ ରԠ͍ͨ͠ ҙͷίʔυΛࠩ͠ࠐΊΔॴΛ༻ҙ͢Δɺͱ͔ʜ
(FOFSJDBOE&YUFOTJWF αϙʔτ͢ΔͷόϦΤʔγϣϯͱͷઓ͍ଓ͘ ྨʗճؼ͘Β͍ͷநԽ͔Β࿙Εͯ͠·͏෦͕ແࢹͰ͖ͳ͍ ྔʹͳ͍ͬͯΔ ཁग़య ج൫ͱ͍͏ܕʹΊΔ͜ͱͰࣦΘΕΔॊೈੑͷ૯ྔΛ༧ଌ͢Δ͜
ͱग़དྷͳ͍ ཁग़య
ߟ ج൫େมͳͣͳͷͰ ࡞Δਓͱ͏ਓ͕૿͑ͯίϛϡχςΟ͕ ͢Δඞཁ͕͋Δ ҰํɺνʔϜͷεέʔϧʹ࠷దԽ͞ΕͨπʔϧΛར༻ʗࣗͯ͠ࡁ·ͤ Δͱ͍͏બࢶ͋Δ ͦͷΑ͏ͳݱ͔Β౷Ұ͞Εͨੳج൫ʹΑͬͯͨΒ͞ΕΔϝϦο
τ͕Πϝʔδ͠ʹ͍͘
ߟ ͷͰɺ લड़ͨ͠Α͏ͳ՝Λ্๊͑ͨͰ ੳج൫͕ଧͪग़͢ϝϦοτԿ͔ɺΛߟ͑Δ ͷ͕େࣄͩͱࢥ͏ ػցֶशΛج൫ͳ͠Ͱεέʔϧͤ͞Δͷ͕ ෆՄೳʹۙ͘ ͍͔͠Βɺ
ಋೖʹ͏ίετ՝Λड͚ೖΕͯͰج൫ʹैͬͯ։ൃ͢Δͱ͍͏બΛ͖͢ɺ ͳͷ͔ εέʔϧ͕͍͠ͱ͍͏࣮ײΛ ۀքશମ͕ ࠓͷ࣌Ͱ ಘ͍ͯΔͷ͔ ڞ௨ج൫Խ͢Δ͜ͱʹΑͬͯಘΒΕΔߴڃͳػೳ "#ςετɺࢹͳͲ ͷັྗΛԡ͠ग़͢ͷ͔ ʑ
ߟ ʮσʔλͷྲྀΕ͕͋ΓɺγεςϜ͕σʔλͱڞʹ͢ΔΑ͏ͳγε ςϜʯ·ͰࢹΛ͛Δͱʜ ػցֶशΛ༻͍ͳ͍ ݕࡧΤϯδϯٞͷର ͱͳΔͷ͕ඞવ ݕࡧΤϯδϯࣗମಠࣗਐԽͯ͠ΔͷͰ৽ͨͳ
ιϦϡʔγϣϯΛଧͪग़͢༨ͳ͍͔͠Εͳ͍͕ʜ ͱ͍͑χϡʔϥϧݕࡧΈ߹ΘͤͨγεςϜʹର͢Δ χʔζࠓޙ૿͍͑ͯͣ͘ ͜͜·Ͱ&YUFOTJCMFʹͳΕΔ͔ ͳΔ͖͔ IUUQTXXXBNB[PODPKQ#VJMEJOH*OUFMMJHFOU4ZTUFNT-FBSOJOH&OHJOFFSJOHFCPPLEQ##82)3
·ͱΊ ΫοΫύουݚڀ։ൃ෦͕ར༻͍ͯ͠Δੳج൫Λհ ෦ʹج൫୲͕͍ͯɺϢʔεέʔεʹরΒ͠߹Θͤͳ͕Βۀվળ ݱঢ়ࣗπʔϧͷΈ߹Θͤ %8)Ͱ͓͓ΉͶຬ ੳج൫ͷ͜Ε͔Β
ݱͱͯͨ͘͠͞ΜͷϢʔεέʔεΛൃ৴͍ͯ͘͠ ػցֶशͷ๊͑Δ՝Λ۩ମԽ͠ɺϝοηʔδͱ͍ͯ͑ͯ͘͠ͷ͕ ॏཁͰେมͦ͏