Upgrade to Pro — share decks privately, control downloads, hide ads and more …

フリーランスだらけの ML基盤開発 / ML Infra Development with F...

Kengo Miyakawa
December 12, 2019

フリーランスだらけの ML基盤開発 / ML Infra Development with Freelance

Kengo Miyakawa

December 12, 2019
Tweet

Other Decks in Technology

Transcript

  1. ٶ઒ ݈ޗ (@N30nnnn) ࣗݾ঺հ • ܦӦ޻ֶ - ౷ܭֶઐ߈ • ݸਓࣄۀओ

    • σʔλ෼ੳ → ը૾ܥML → EM + MLOps • ݱࡏ͸2ࣾͰ MLOps 2
  2. ৬ྺ • ޿ࠂ୅ཧళ (σʔλ෼ੳ) • ਓ޻஌ೳडୗ։ൃ1 (ML) • ਓ޻஌ೳडୗ։ൃ2 (ML,

    EM) • (ݱ৬) גࣜձࣾΫϥϏε (MLOps, EM) ᵋ ձܭܥը૾ॲཧ • (ݱ৬) גࣜձࣾϨΞδϣϒ (MLOps) ᵋ ΦϯϥΠϯӳձ࿩ EM: HowͱWho EM: HowͱWho 3 ※ڐՄΛड͚ͯެ։ ※2019/12 ݱࡏ
  3. MLνʔϜͷϝϯόʔߏ੒ • (ݱ৬) גࣜձࣾΫϥϏε (MLOps, EM) ᵋ ձܭܥը૾ॲཧ • (ݱ৬)

    גࣜձࣾϨΞδϣϒ (MLOps) ᵋ ΦϯϥΠϯӳձ࿩ ਖ਼ࣾһ: 2ਓ ϑϦʔ: 7ਓ ਖ਼ࣾһ: 2ਓ ϑϦʔ: 5ਓ 4 ※ڐՄΛड͚ͯެ։ ※2019/12 ݱࡏ
  4. Agenda • ࠷ۙ࡞͍ͬͯΔϓϩμΫτͷߏ੒ • Fargateϕʔε • EKSϕʔε • ϑϦʔϥϯε͕ଟ͍ϓϩδΣΫτͷ೰Έ •

    ਓࡐαΠΫϧͷ଎͞ • ઐ໳ྖҬͷҧ͍ • ࢒͞ΕͨMLίʔυ؅ཧ • ߨͨ͡ղܾࡦ • ΠϯλʔϑΣʔεͷపఈ - ؔ৺ͷ෼཭ 5
  5. ϓϩμΫτ: Fargate - ਪ࿦؀ڥ • 1API - 1ϦϙδτϦ • gitflowͰ


    develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυͱ
 devσϓϩΠ͸CircleCIͰࣗಈԽ • Πϯϑϥ͸Terraform 7 ※ڐՄΛड͚ͯެ։
  6. ϓϩμΫτ: Fargate - ࠶ֶशػߏ 8 • ֶशσʔλ͸RDSʹ. • ఆظతʹֶशΛτϦΨ. •

    Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ
 ੑೳ޲্/෼෍มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
  7. ϓϩμΫτ: Fargate - ࠶ֶशػߏ 9 • ֶशσʔλ͸RDSʹ. • ఆظతʹֶशΛτϦΨ. •

    Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ
 ੑೳ޲্/෼෍มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
  8. ϓϩμΫτ: Fargate - ࠶ֶशػߏ 10 • ֶशσʔλ͸RDSʹ. • ఆظతʹֶशΛτϦΨ. •

    Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ
 ੑೳ޲্/෼෍มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
  9. ϓϩμΫτ: Fargate - ࠶ֶशػߏ 11 • ֶशσʔλ͸RDSʹ. • ఆظతʹֶशΛτϦΨ. •

    Dynamoʹֶश݁Ռอଘ • Dynamoࢀর͠࠷ྑͷϞσ ϧΛऔಘ • RDSʹཷΊΔͷΈͰɺ
 ੑೳ޲্/෼෍มԽΛଊ͑ ͍ͨ ※ڐՄΛड͚ͯެ։
  10. ϓϩμΫτ: EKS - ਪ࿦؀ڥ • ෳ਺ͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶश͸ݕ౼த •

    develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ͸
 CircleCIͰࣗಈԽ • Πϯϑϥ͸Terraform 13 ※ڐՄΛड͚ͯެ։
  11. ϓϩμΫτ: EKS - ਪ࿦؀ڥ • ෳ਺ͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶश͸ݕ౼த •

    develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ͸
 CircleCIͰࣗಈԽ • Πϯϑϥ͸Terraform 14 ※ڐՄΛड͚ͯެ։
  12. ϓϩμΫτ: EKS - ਪ࿦؀ڥ • ෳ਺ͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶश͸ݕ౼த •

    develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ͸
 CircleCIͰࣗಈԽ • Πϯϑϥ͸Terraform 15 ※ڐՄΛड͚ͯެ։
  13. ϓϩμΫτ: EKS - ਪ࿦؀ڥ • ෳ਺ͷೖྗΛ·ͱΊͯਪఆ ΩϡʔܗࣜͷAPI • ࠶ֶश͸ݕ౼த •

    develop/master → ։ൃ/ຊ൪ • ΠϝʔδϏϧυ͸
 CircleCIͰࣗಈԽ • Πϯϑϥ͸Terraform 16 ※ڐՄΛड͚ͯެ։
  14. ϑϦʔϥϯε͕ଟ͍PJͷ೰Έ2 • ઐ໳ྖҬͷҧ͍ • ඞͣ͠΋ML / αʔόʔαΠυ྆ํͷ஌͕ࣝ༗ΔΘ͚Ͱ͸ͳ͍ • αʔόʔαΠυͷ೉͠͞(e.g. APIपΓ,

    ฒߦॲཧ) • MLͷ೉͠͞(e.g. ੑೳࢦඪ, Train,Validation,Test…) • ඇઐ໳ྖҬʹੵۃతͱ͸ݶΒͳ͍ ίϛϡχέʔγϣϯίετ͕πϥ͍ 20
  15. e.g. ࠶ֶशػߏ αʔόʔαΠυ ML αʔόʔαΠυ σʔλͷॴࡏ, औಘํ๏ΛML͔Β෼཭ σʔλͷॴࡏ, औಘํ๏ΛML͔Β෼཭ ੑೳ஋ൺֱͷ෼཭

    Ϟσϧબ୒ͷ໌ࣔ 27 Ϟσϧ΍աڈ৘ใͷॴࡏ, औಘ,ه࿥Λ෼཭ Ϟσϧ΍աڈ৘ใͷॴࡏ, औಘ,ه࿥Λ෼཭