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
サービス開発、機械学習、クラウド / the trinity of machine learning
Search
Yuichiro Someya
May 11, 2018
Programming
0
3.3k
サービス開発、機械学習、クラウド / the trinity of machine learning
Qiita × Microsoft 共催MeetUp
https://connpass.com/event/86280/
Yuichiro Someya
May 11, 2018
Tweet
Share
More Decks by Yuichiro Someya
See All by Yuichiro Someya
にんげんがさき 基盤はあと / Developers over ML platform
ayemos
0
13k
機械学習をスモールスタートさせる方法 / small machine learning
ayemos
3
2k
アットホームな分析基盤の作り方 / Homemade Machine Learning Toolkits
ayemos
1
940
成長を止めない機械学習のやり方 / Don't stop 'til you get enough (data).
ayemos
15
5.1k
AWS で加速する機械学習 / Accelerate Machine Learning with AWS
ayemos
1
310
クックパッドの機械学習基盤 2018 / Machine Learning Platform at Cookpad ~ 2018 ~
ayemos
15
19k
PyTorchとCaffe2とONNXと深層学習モデルのデプロイについて
ayemos
1
2.9k
クックパッドにおけるAWS GPUインスタンスの利用事例 / Powering by AWS GPU Instances in Cookpad Inc
ayemos
0
400
How we use GPUs in Cookpad
ayemos
0
120
Other Decks in Programming
See All in Programming
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
命名をリントする
chiroruxx
1
380
layerx_20241129.pdf
kyoheig3
2
290
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
103 Early Hints
sugi_0000
1
220
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
630
14 Years of iOS: Lessons and Key Points
seyfoyun
1
770
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
180
testcontainers のススメ
sgash708
1
120
CSC305 Lecture 26
javiergs
PRO
0
140
事業成長を爆速で進めてきたプロダクトエンジニアたちの成功談・失敗談
nealle
3
1.4k
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
120
Featured
See All Featured
Docker and Python
trallard
41
3.1k
Documentation Writing (for coders)
carmenintech
66
4.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
How GitHub (no longer) Works
holman
311
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Bash Introduction
62gerente
608
210k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
αʔϏε։ൃɺػցֶशɺΫϥυ !2JJUBº.JDSPTPGUڞ࠵.FFU6Q
ࣗݾհ છ୩༔Ұ<:VJDIJSP4PNFZB> ౦ژۀେֶେֶӃܭࢉֶम࢜ ΫοΫύουגࣜձࣾݚڀ։ൃ෦ ϦαʔνΤϯδχΞ݄d ػցֶशج൫ͷඋɺϨγϐσʔλͷੳ
UXJUUFSDPN!BZFNPT@Z HJUIVCDPNBZFNPT XXXBZFNPTNF TQFBLFSEFDLDPNBZFNPT
None
ʰιϑτΣΞΛ༻͍ͨαʔϏε։ൃͱ͍͏ ଟ݁ߏ ۙͳ ݱ͔Βػցֶशͱ͍͏ٕज़ΛݟͭΊɺ͖߹͍ํΛߟ͑Δճʱ ओͳର ػցֶशΛͬͯސ٬ʹՁΛಧ͚͍ͨਓ
?Έ͍ͨͳਓ͕ճΓʹ͍Δਓ
࣍ ͍ΖΜͳػցֶश αʔϏε։ൃͱػցֶश Ϋϥυͱ͍͏બࢶ ਓೳϒʔϜͱݬ໓ظ
࣍ ͍ΖΜͳػցֶश αʔϏε։ൃͱػցֶश Ϋϥυͱ͍͏બࢶ ਓೳϒʔϜͱݬ໓ظ
͍ΖΜͳػցֶश ػցֶशҰൃউෛͷιϦϡʔγϣϯʗ։ൃ ྫࣗಈӡసɺݕࡧ༁ ٕज़తഉଞੑͷཁҼͱͯ͠ͷػցֶश େنͳࣗಈԽʹΑΔܻഒͷվળنɺͱ͔ͦ͏͍͏ͭ
͋·ΓۙͰͳ͍
͍ΖΜͳػցֶश ػցֶशΛར༻ͨ͠αʔϏεͷ։ൃʗվળ ྫهࣄͷࣗಈྨϨίϝϯσʔγϣϯ ࣗࣾαʔϏεͰ ͪ͜ΒϒʔϜʹݗҾ͞ΕΔܗͰനԽ͍ͯ͠Δ
ਓೳػցֶशαʔϏε։ൃͱʁ ׂͬͪ͜ͱۙɻࠓ͜͜ͷΛ͠·͢ɻ
࣍ ͍ΖΜͳػցֶश αʔϏε։ൃͱػցֶश Ϋϥυͱ͍͏બࢶ ਓೳϒʔϜͱݬ໓ظ
αʔϏε։ൃͱػցֶश ιϑτΣΞ αʔϏε։ൃͰػցֶशΛ͍͍ͨͱ͍͏ χʔζ͕૿͍͑ͯΔ ਓೳϒʔϜʹґΔͱ͜Ζ͕େ͖͍ ଟ
ʰػցֶशΛ͏ʱͱʁ
ʰػցֶशΛ͏ʱͱ ػցֶशʹΑΔαʔϏεՁͷग़ʗ্ ྫهࣄͷࣗಈྨϨίϝϯσʔγϣϯ ࣗࣾαʔϏεͰ ͜ΕΛɺαʔϏε։ൃͱಉ͡ඨͰΖ͏ͱ͍͏
ۃΛݴ͑ʰϘλϯͷ৭ʗେ͖͞Λม͑Δʱͷͱಉ͡ ։ൃϓϩηεɺ։ൃίετɺٕज़తෛ࠴ɺʑ͕ొ
ʰػցֶशΛ͏ʱͱ ػցֶशʹΑΔαʔϏεՁͷग़ʗ্ ྫهࣄͷࣗಈྨϨίϝϯσʔγϣϯ ࣗࣾαʔϏεͰ ͜ΕΛɺαʔϏε։ൃͱಉ͡ඨͰΖ͏ͱ͍͏
ۃΛݴ͑ʰϘλϯͷ৭ʗେ͖͞Λม͑Δʱͷͱಉ͡ ։ൃϓϩηεɺ։ൃίετɺٕज़తෛ࠴ɺʑ͕ొ
ਗ਼͘ਖ਼͘͠ػցֶशΛ͏ͨΊʹ ։ൃʹ͔͔ΔظؒͱίετʁಘΒΕΔՁʁ ແɺϒʔϜΛ౿·͑ͯଟΊʹࢿΛ͢Δͷͭͷબࢶ αʔϏεͷվળεϐʔυʹ͍ͭͯདྷΕΔʁ དྷΕͳ͍ͱͨ͠ΒͲΕ͘Β͍Ϊϟοϓ͕͋Δʁ ӡ༻ίετͲΕ͘Β͍ʁ
ਗ਼͘ਖ਼͘͠ػցֶशΛ͏ͨΊʹ ։ൃʹ͔͔ΔظؒͱίετʁಘΒΕΔՁʁ ແɺϒʔϜΛ౿·͑ͯଟΊʹࢿΛ͢Δͷͭͷબࢶ αʔϏεͷվળεϐʔυʹ͍ͭͯདྷΕΔʁ དྷΕͳ͍ͱͨ͠ΒͲΕ͘Β͍Ϊϟοϓ͕͋Δʁ ӡ༻ίετͲΕ͘Β͍ʁ
ʰਫ਼ʱͱʰՁʱ ࢀߟIUUQTXXXTMJEFTIBSFOFU5PLPSPUFO/BLBZBNBTT αʔϏεͷՁ' ػցֶशϞσϧͷਫ਼ ͱͨ࣌͠ɺ 'ͲͷΑ͏ͳܗ͔ʁ ͦΕΛ౿·͑ͯͲͷΑ͏ͳظΛઃఆ͢Δ͔
ग़དྷΕαʔϏεͷاըʗઃܭΛ͢Δ࣌ʹ͜ΕΛݕ౼͖͢ αʔϏεͷվળϓϩηεʹػցֶशϞσϧ͕ר͖ࠐ·ΕΔ
ʰਫ਼ʱͱʰՁʱ ࢀߟIUUQTXXXTMJEFTIBSFOFU5PLPSPUFO/BLBZBNBTT αʔϏεͷՁ' ػցֶशϞσϧͷਫ਼ ͱͨ࣌͠ɺ 'ͲͷΑ͏ͳܗ͔ʁ ͦΕΛ౿·͑ͯͲͷΑ͏ͳظΛઃఆ͢Δ͔
ग़དྷΕαʔϏεͷاըʗઃܭΛ͢Δ࣌ʹ͜ΕΛݕ౼͖͢ αʔϏεͷվળϓϩηεʹػցֶशϞσϧ͕ר͖ࠐ·ΕΔ
ਗ਼͘ਖ਼͘͠ػցֶशΛ͏ͨΊʹ ։ൃʹ͔͔ΔظؒͱίετʁಘΒΕΔՁʁ ແɺϒʔϜΛ౿·͑ͯଟΊʹࢿΛ͢Δͷͭͷબࢶ αʔϏεͷվળεϐʔυʹ͍ͭͯདྷΕΔʁ དྷΕͳ͍ͱͨ͠ΒͲΕ͘Β͍Ϊϟοϓ͕͋Δʁ ӡ༻ίετͲΕ͘Β͍ʁ
ػցֶशͷվળϓϩηε ྫهࣄͷࣗಈྨ ࣗಈهࣄྨثͷΧςΰϦʹ ʰಈʱΛͯ͠Έ͍ͨ σʔλऩूͱੳɺϞσϧͷֶश ͋Δ͔Βिؒ͘Β͍͔͔Δͳ Ϛδ͔
ػցֶशͷվળϓϩηε ྫهࣄͷࣗಈྨ ࣗಈهࣄྨثͷΧςΰϦʹ ʰಈʱΛͯ͠Έ͍ͨ σʔλऩूͱੳɺϞσϧͷֶश ͋Δ͔Βिؒ͘Β͍͔͔Δͳ Ϛδ͔
ػցֶशͷվળϓϩηε ྫهࣄͷࣗಈྨ ࣗಈهࣄྨثͷΧςΰϦʹ ʰಈʱΛͯ͠Έ͍ͨ σʔλऩूͱੳɺϞσϧͷֶश ͋Δ͔Βिؒ͘Β͍͔͔Δͳ Ϛδ͔ αʔϏε։ൃͱϞσϧ։ൃͷ εϐʔυײʹΪϟοϓ͕͋Δ
ௗͷը૾ྨʹ͔͔Βͳ͍͕ʜ
ػցֶशͷվળϓϩηε αʔϏεͷՁ' ػցֶशϞσϧͷਫ਼ αʔϏεʗϞσϧͷվળεϐʔυʹΪϟοϓ͕͋Δ αʔϏε։ൃʹ͓͍ͯհͳίϯϙʔωϯτʹͳΓͭͭ͋Δ
ࣅͨલྫͱͯ͠ݕࡧΤϯδϯͱ͔ʁ
ਗ਼͘ਖ਼͘͠ػցֶशΛ͏ͨΊʹ ։ൃʹ͔͔ΔظؒͱίετʁಘΒΕΔՁʁ ແɺϒʔϜΛ౿·͑ͯଟΊʹࢿΛ͢Δͷͭͷબࢶ αʔϏεͷվળεϐʔυʹ͍ͭͯདྷΕΔʁ དྷΕͳ͍ͱͨ͠ΒͲΕ͘Β͍Ϊϟοϓ͕͋Δʁ ӡ༻ίετͲΕ͘Β͍ʁ
ػցֶशͱӡ༻ίετ ʰػցֶशٕज़తෛ࠴ͷߴརି͠ ҙ༁ ʱ IUUQTSFTFBSDIHPPHMFDPNQVCTQVCIUNM σʔλͷऩूʗੳʗཧ ϞσϧͷσϓϩΠͱϞχλϦϯά
͜͜·Ͱ αʔϏε։ൃͷݱͰػցֶशΛͬͯՁΛੜΈग़͍ͨ͠ ಘΒΕΔՁ' Ϟσϧͷਫ਼ Λྫྷ੩ʹݟͭΊΔ͖ αʔϏε։ൃͷεϐʔυײͷ͔ͤʹͳΒͳ͍Α͏ʹҙ
Ҏ্ ӡ༻ίετΛ౿·͑ͯɺຊʹΔ͖͔ߟ͑Δ
͜͜·Ͱ αʔϏε։ൃͷݱͰػցֶशΛͬͯՁΛੜΈग़͍ͨ͠ ಘΒΕΔՁ' Ϟσϧͷਫ਼ Λྫྷ੩ʹݟͭΊΔ͖ αʔϏε։ൃͷεϐʔυײͷ͔ͤʹͳΒͳ͍Α͏ʹҙ
Ҏ্ ӡ༻ίετΛ౿·͑ͯɺຊʹΔ͖͔ߟ͑Δ ωΨςΟϒ
ػցֶशͱαʔϏεͷվળϓϩηε Ͳ͏͢Εʁ εϐʔυʹΪϟοϓ͕͋Δͱ͍͏ೝࣝ߹Θͤ ϓϩηεͷݟ͠ ͳΔ͘ૣ͘͢Δ ྫػցֶशֶ
ػցֶशֶ ػցֶशʹؔ͢Δ։ൃϓϩηεͷվળ ػցֶशֶݚڀձͱ͍͏ͷग़དྷͨΈ͍ͨ IUUQTTJUFTHPPHMFDPNWJFXTJHNMTF ՝ҙࣝߴ·͍ͬͯΔ
ػցֶशͷӡ༻ίετ Ͳ͏͢Εʁ ӡ༻ίετΛ౿·͑ͯऔΓΉ͖͔ܾΊΔ ແɺϒʔϜΛ౿·͑ͯଟΊʹࢿΛSZ ػցֶशϓϥοτϑΥʔϜͱ͍͏બࢶ
࣍ ͍ΖΜͳػցֶश αʔϏε։ൃͱػցֶश Ϋϥυͱ͍͏બࢶ ਓೳϒʔϜͱݬ໓ظ
ػցֶशϓϥοτϑΥʔϜ ֤छΫϥυϓϥοτϑΥʔϜͷػցֶशαϙʔτ͕നԽͯ͠Δ "NB[PO4BHF.BLFS "[VSF.BDIJOF-FBSOJOH4UVEJP (PPHMF$MPVE.BDIJOF-FBSOJOH&OHJOFʑ
લड़ͨ͠Α͏ͳҙ͕ࣝߴ·͍ͬͯΔʁ
ػցֶशͱΫϥυ .-BB4ɺػցֶशϓϥοτϑΥʔϜͱ͍͏બࢶ͕͋Δ ৽͍͠ͳͷͰ༻ޠ͕৭ʑ ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶश͢Δʱ
ػցֶशͱΫϥυ .-BB4ɺػցֶशϓϥοτϑΥʔϜͱ͍͏બࢶ͕͋Δ ৽͍͠ͳͷͰ༻ޠ͕৭ʑ ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶश͢Δʱ σʔλऩूσʔλੳϞσϧߏஙֶशσϓϩΠ ͦΕͧΕͷ࣮ߦͱཧ
֤छσʔλܥαʔϏεͱͷ౷߹ σʔλऩू ੳ άϥϑΟΧϧͳύΠϓϥΠϯߏங Ϟσϧߏங ֶश
࣮ݧ݁ՌͷαʔϏεԽ σϓϩΠ ྫ"[VSF.BDIJOF-FBSOJOH4UVEJP
ػցֶशͱΫϥυ ̋ڞ௨ج൫ԽʹΑͬͯӡ༻ίετ͕ݮग़དྷΔ ̋ج൫্ʹߏங͞ΕΔߴڃͳػೳͷԸܙ͕ड͚ΒΕΔ "#ςετɺਫ਼ϞχλϦϯά ଟɺকདྷతʹɺ
˚طଘϦιʔεͱͷ౷߹ίετ ػցֶशʹݶΒͳ͍ͳͷͰࠓճεϧʔ ˚(FOFSJDBOE&YUFOTJWFͱ͍͏ཁ݅
5'9"5FOTPS'MPX#BTFE1SPEVDUJPO4DBMF.BDIJOF-FBSOJOH1MBUGPSN ΑΓ l5IFNBDIJOFMFBSOJOHQMBUGPSNNVTUCFHFOFSJD FOPVHIUPIBOEMFUIFNPTUDPNNPOTFUPGMFBSOJOH UBTLTBTXFMMBTCFFYUFOTJCMFUPTVQQPSUPOFP⒎ BUZQJDBMVTFDBTFTz IUUQTEMBDNPSHDJUBUJPODGN JE ҙ༁ .-BB4แׅత͔֦ͭுՄೳͰ͋Δ͖
(FOFSJDBOE&YUFOTJWF ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶशʱ ͠Α͏ͱ͍ͯ͠Δ (FOFSJDͳΔ͘ଟ͘ͷϢʔεέʔεʹ ಁաతʹ ରԠ͍ͨ͠ ྑ͍நԽͱ"1*֦ॆͷؤுΓ
&YUFOTJWFྫ֎తͳέʔεʹରͯ͠ গͳ͍࿑ྗͰ ରԠ͍ͨ͠ ҙͷίʔυΛࠩ͠ࠐΊΔॴΛ༻ҙ͢Δɺͱ͔ʜ
(FOFSJDBOE&YUFOTJWF ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶशʱ ͠Α͏ͱ͍ͯ͠Δ (FOFSJDͳΔ͘ଟ͘ͷϢʔεέʔεʹ ಁաతʹ ରԠ͍ͨ͠ ྑ͍நԽͱ"1*֦ॆͷؤுΓ
&YUFOTJWFྫ֎తͳέʔεʹରͯ͠ গͳ͍࿑ྗͰ ରԠ͍ͨ͠ ҙͷίʔυΛࠩ͠ࠐΊΔॴΛ༻ҙ͢Δɺͱ͔ʜ ࣮αʔϏεͰͷӡ༻࣮ϓϥοτϑΥʔϜख़ ͕͞ΕΔͱ͜Ζ
(FOFSJDBOE&YUFOTJWF ʰ࣮ݧ͔Βຊ൪ӡ༻·Ͱɺ౷߹తͳڥͰػցֶशʱ ͠Α͏ͱ͍ͯ͠Δ (FOFSJDͳΔ͘ଟ͘ͷϢʔεέʔεʹ ಁաతʹ ରԠ͍ͨ͠ ྑ͍நԽͱ"1*֦ॆͷؤுΓ
&YUFOTJWFྫ֎తͳέʔεʹରͯ͠ গͳ͍࿑ྗͰ ରԠ͍ͨ͠ ҙͷίʔυΛࠩ͠ࠐΊΔॴΛ༻ҙ͢Δɺͱ͔ʜ ݱͱͯ͠ ͬͯΈΔࣄྫΛ࡞Δࣄ͔Β࢝ΊΑ͏
͜͜·Ͱ·ͱΊ
࣍ ͍ΖΜͳػցֶश αʔϏε։ൃͱػցֶश Ϋϥυͱ͍͏બࢶ ਓೳϒʔϜͱݬ໓ظ
ਓೳϒʔϜ ʰୈ࣍ਓೳϒʔϜʱ ͷౙ͔͍ͬͯΔʁ
IUUQXXXHBSUOFSDPKQQSFTTIUNMQSIUNM
IUUQXXXHBSUOFSDPKQQSFTTIUNMQSIUNM
ਓೳϒʔϜ ਓೳ࣮ݱͷखஈͷ̍ͭͱͯ͠ͷػցֶशʹ͕ू·Δ ΛΘͳ͍ػցֶशͷԠ༻ʹର͢Δظ͕͍͢͝ ιϑτΣΞ։ൃͷݱͰۙʹ؍ଌͰ͖Δͷ?͜ΕͷҰ෦ ྫʮػցֶशͰͳΜͱ͔͢Δʯ
ਓೳϒʔϜ ਓೳ࣮ݱͷखஈͷ̍ͭͱͯ͠ͷػցֶशʹ͕ू·Δ ΛΘͳ͍ػցֶशͷԠ༻ʹର͢Δظ͕͍͢͝ ιϑτΣΞ։ൃͷݱͰۙʹ؍ଌͰ͖Δͷ?͜ΕͷҰ෦ ྫʮػցֶशͰͳΜͱ͔͢Δʯ ظͱݱঢ়ͷΪϟοϓݬ໓ͷҼࢠ
ਓೳϒʔϜ Ͳ͏͢Εʁ ਖ਼͘͠ظ͢Δ ͪ͜Β͋·ΓίϯτϩʔϧͰ͖ͳ͍ʜ ظʹԠ͑ΔҝʹؤுΔ ࠓͨ͠ͱ͔
·ͱΊ ػցֶश͕Γ্͕͍ͬͯΔ αʔϏε։ൃͱ͍͏จ຺Ͱ Α͍͖߹͍ํΛࡧ͍͖͍ͯͨ͠ ӡ༻ίετɺਫ਼ͱՁͷ͕ؔॏཁͳΧΪ
·ͱΊ ػցֶश͕Γ্͕͍ͬͯΔ αʔϏε։ൃͱ͍͏จ຺Ͱ Α͍͖߹͍ํΛࡧ͍͖͍ͯͨ͠ ӡ༻ίετɺਫ਼ͱՁͷ͕ؔॏཁͳΧΪ
ͦΕͦΕͱͯ͠ σΟʔϓϥʔχϯάͷՄೳੑੌ͍ ͱࢥ͏ ͷͰɺಓʹ͍ͬͯ͘
͓ΘΓ