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基盤開発 / ML Infra Development with F...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kengo Miyakawa
December 12, 2019
Technology
2.9k
3
Share
フリーランスだらけの ML基盤開発 / ML Infra Development with Freelance
Kengo Miyakawa
December 12, 2019
Other Decks in Technology
See All in Technology
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
710
探して_入れて_作って_使う_Agent_Skills___LT.pdf
peintangos
2
160
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.8k
noUncheckedIndexedAccess、3時間、1万円。 / noUncheckedIndexedAccess, 3 Hours, 10,000 JPY.
kaonavi
1
210
プラットフォームエンジニア ワークショップ/ platform-workshop
databricksjapan
0
240
イベントストーミングとKiroの仕様駆動開発で実現する要件の認識合わせプロセス
syobochim
7
1.1k
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
340
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
180
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
230
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
450
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
170
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
0
140
Featured
See All Featured
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
600
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
270
Skip the Path - Find Your Career Trail
mkilby
1
140
Typedesign – Prime Four
hannesfritz
42
3.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
380
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Discover your Explorer Soul
emna__ayadi
2
1.1k
We Are The Robots
honzajavorek
0
240
Transcript
ϑϦʔϥϯεͩΒ͚ͷ MLج൫։ൃ ٶ݈ޗ @MLPP#5 2019/12/12 1
ٶ ݈ޗ (@N30nnnn) ࣗݾհ • ܦӦֶ - ౷ܭֶઐ߈ • ݸਓࣄۀओ
• σʔλੳ → ը૾ܥML → EM + MLOps • ݱࡏ2ࣾͰ MLOps 2
৬ྺ • ࠂཧళ (σʔλੳ) • ਓೳडୗ։ൃ1 (ML) • ਓೳडୗ։ൃ2 (ML,
EM) • (ݱ৬) גࣜձࣾΫϥϏε (MLOps, EM) ᵋ ձܭܥը૾ॲཧ • (ݱ৬) גࣜձࣾϨΞδϣϒ (MLOps) ᵋ ΦϯϥΠϯӳձ EM: HowͱWho EM: HowͱWho 3 ※ڐՄΛड͚ͯެ։ ※2019/12 ݱࡏ
MLνʔϜͷϝϯόʔߏ • (ݱ৬) גࣜձࣾΫϥϏε (MLOps, EM) ᵋ ձܭܥը૾ॲཧ • (ݱ৬)
גࣜձࣾϨΞδϣϒ (MLOps) ᵋ ΦϯϥΠϯӳձ ਖ਼ࣾһ: 2ਓ ϑϦʔ: 7ਓ ਖ਼ࣾһ: 2ਓ ϑϦʔ: 5ਓ 4 ※ڐՄΛड͚ͯެ։ ※2019/12 ݱࡏ
Agenda • ࠷ۙ࡞͍ͬͯΔϓϩμΫτͷߏ • Fargateϕʔε • EKSϕʔε • ϑϦʔϥϯε͕ଟ͍ϓϩδΣΫτͷΈ •
ਓࡐαΠΫϧͷ͞ • ઐྖҬͷҧ͍ • ͞ΕͨMLίʔυཧ • ߨͨ͡ղܾࡦ • ΠϯλʔϑΣʔεͷపఈ - ؔ৺ͷ 5
Fargateͷࣄྫ 6
ϓϩμΫτ: Fargate - ਪڥ • 1API - 1ϦϙδτϦ • gitflowͰ
develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυͱ devσϓϩΠCircleCIͰࣗಈԽ • ΠϯϑϥTerraform 7 ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: Fargate - ࠶ֶशػߏ 8 • ֶशσʔλRDSʹ. • ఆظతʹֶशΛτϦΨ. •
Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ ੑೳ্/มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: Fargate - ࠶ֶशػߏ 9 • ֶशσʔλRDSʹ. • ఆظతʹֶशΛτϦΨ. •
Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ ੑೳ্/มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: Fargate - ࠶ֶशػߏ 10 • ֶशσʔλRDSʹ. • ఆظతʹֶशΛτϦΨ. •
Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ ੑೳ্/มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: Fargate - ࠶ֶशػߏ 11 • ֶशσʔλRDSʹ. • ఆظతʹֶशΛτϦΨ. •
Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ ੑೳ্/มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
EKSͷࣄྫ 12
ϓϩμΫτ: EKS - ਪڥ • ෳͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶशݕ౼த •
develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ CircleCIͰࣗಈԽ • ΠϯϑϥTerraform 13 ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: EKS - ਪڥ • ෳͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶशݕ౼த •
develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ CircleCIͰࣗಈԽ • ΠϯϑϥTerraform 14 ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: EKS - ਪڥ • ෳͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶशݕ౼த •
develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ CircleCIͰࣗಈԽ • ΠϯϑϥTerraform 15 ※ڐՄΛड͚ͯެ։
ϓϩμΫτ: EKS - ਪڥ • ෳͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶशݕ౼த •
develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ CircleCIͰࣗಈԽ • ΠϯϑϥTerraform 16 ※ڐՄΛड͚ͯެ։
• ͳΔ͘γϯϓϧͳ࡞Γ • δϣΠϯίετݮ • ຊ࣭తͳ։ൃʹઐ೦ • ҰํͰͳΔ͘Ϟμϯʹ • ৽͍ؒ͠ʹདྷͯͨ͘Ίͷڥ࡞Γ
17
ϑϦʔϥϯε͕ଟ͍PJͷΈ 18 • ਓࡐαΠΫϧͷ͞ • ઐྖҬͷҧ͍ • ͞ΕͨMLίʔυཧ
ϑϦʔϥϯε͕ଟ͍PJͷΈ1 • ਓࡐαΠΫϧͷ͞ • 3ϲ݄, 6ϲ݄Ͱ͍ͳ͘ͳΔ͜ͱ • ࠾༻ଆ߹ɾΤϯδχΞଆ߹ ΩϟονΞοϓͷ͕࣌ؒπϥ͍ 19
ϑϦʔϥϯε͕ଟ͍PJͷΈ2 • ઐྖҬͷҧ͍ • ඞͣ͠ML / αʔόʔαΠυ྆ํͷ͕ࣝ༗ΔΘ͚Ͱͳ͍ • αʔόʔαΠυͷ͠͞(e.g. APIपΓ,
ฒߦॲཧ) • MLͷ͠͞(e.g. ੑೳࢦඪ, Train,Validation,Test…) • ඇઐྖҬʹੵۃతͱݶΒͳ͍ ίϛϡχέʔγϣϯίετ͕πϥ͍ 20
ϑϦʔϥϯε͕ଟ͍PJͷΈ3 • ͞ΕͨMLίʔυཧ • લఏͱ͞ΕΔσΟϨΫτϦߏ / ਖ਼ղϥϕϧܗࣜ • ୯ҰͷࣈԽͮ͠Β͍ੑೳධՁ MLͷཧ͕πϥ͍
21
ΠϯλʔϑΣʔεͷపఈ 22
ؔ৺ͷ • Pythonʹଘࡏ͠ͳ͍ΠϯλʔϑΣʔε • σʔλͷࡏΓॲμϯϩʔυͳͲʹؔ༩ͨ͘͠ͳ͍ML • Ϟσϧͷൺֱํ๏લॲཧޙॲཧͳͲʹؔ༩ͨ͘͠ͳ͍αʔό • ͞Εͨίʔυͷ࣮ଶѲΛ؆ૉԽ͍ͨ͠ཧऀ ΠϯλʔϑΣʔεΛݻΊͯίϛϡχέʔγϣϯΛݮΒ͢
23
e.g. ਪఆॲཧͷ߹ 24 αʔόʔαΠυ ML
e.g. ਪఆॲཧͷ߹ 25 αʔόʔαΠυ σʔλͷॴࡏ, औಘํ๏ΛML͔Β ฦ٫࣌ͷܗΛ αʔό͔Β ML σʔλͷॴࡏΛML͕
ؾʹ͢Δඞཁ͕ͳ͍
e.g. ࠶ֶशػߏ αʔόʔαΠυ ML αʔόʔαΠυ 26 ݺͼग़͠
e.g. ࠶ֶशػߏ αʔόʔαΠυ ML αʔόʔαΠυ σʔλͷॴࡏ, औಘํ๏ΛML͔Β σʔλͷॴࡏ, औಘํ๏ΛML͔Β ੑೳൺֱͷ
Ϟσϧબͷ໌ࣔ 27 Ϟσϧաڈใͷॴࡏ, औಘ,هΛ Ϟσϧաڈใͷॴࡏ, औಘ,هΛ
e.g. ࠶ֶशػߏ αʔόʔαΠυ ML αʔόʔαΠυ ࠶ֶश༻σʔλϕʔε •ը૾ྨςʔϒϧ •จࣈྻݕςʔϒϧ •OCRςʔϒϧ •……
நԽ 28
• ݸʑਓͷઐྖҬੌ͍ • ϑϦʔϥϯεͷੜ໋ઢ • ؔ৺֎ʹؔ༩ͯ͠ΒΘͳͯ͘ྑ͍ߏ • ҟͳΔઐؒͰͷίϛϡχέʔγϣϯݮ͠ෛ୲ݮ • αʔόʔαΠυͷΈͳΒͣMLϑϦʔϥϯεͰՄೳʹ
29 ·ͱΊ