機械学習基盤の本番運用とその取り組み / ML platform in production

Ad22fcf5773b906c08330f4d57242212?s=47 Kohei Ota
December 08, 2019

機械学習基盤の本番運用とその取り組み / ML platform in production

Ad22fcf5773b906c08330f4d57242212?s=128

Kohei Ota

December 08, 2019
Tweet

Transcript

  1. ػցֶशج൫ͷຊ൪ӡ༻ͱ ͦͷऔΓ૊Έ 1SFTFOUFECZ,PIFJ0UB !JOEVDUPS  +VMZ5FDI'FTUB

  2. ࣗݾ঺հ w ଠాߤฏ !@JOEVDUPS@ !JOEVDUPS  w %PDLFS.FFUVQ5PLZP0SHBOJ[FS w *OGSBTUSVDUVSF&OHJOFFS

    .-0QT5FBN!;0;05FDIOPMPHJFT *OD
  3. ;0;0508/ͷը૾ݕࡧػೳʹΈΔ ,VCFSOFUFTΛ࢖ͬͨػցֶशج൫ӡ༻ͷཪଆ $MPVE/BUJWF%BZT,BOTBJ  $PQZSJHIU˜;0;05FDIOPMPHJFT *OD גࣜձࣾ;0;0ςΫϊϩδʔζ ։ൃ෦ .-0QTνʔϜ ଠా

    ߤฏ
  4. ;0;0508/ͷը૾ݕࡧػೳʹΈΔ ,VCFSOFUFTΛ࢖ͬͨػցֶशج൫ӡ༻ͷཪଆ $MPVE/BUJWF%BZT,BOTBJ  $PQZSJHIU˜;0;05FDIOPMPHJFT *OD גࣜձࣾ;0;0ςΫϊϩδʔζ ։ൃ෦ .-0QTνʔϜ ଠా

    ߤฏ ৄ͘͠͸4QFBLFSEFDLͷεϥΠυͰʂ
  5. ࠓ೔ͷλʔήοτ w Πϯϑϥ%FW0QT43&తͳ͜ͱΛ΍͍ͬͯΔਓ w ػցֶशʹ͍ͭͯ͋·Γྑ͘෼͔͍ͬͯͳ͍ਓ ׬શʹཧղ͍ͯ͠Δਓ  w ಥવৼΒΕΔṖͷλεΫʹରԠͰ͖Δ͔Θ͔Βͳ͍ਓ

  6. ͋Δ೔͜Μͳ͜ͱΛݴΘΕΔͱ ߟ͑ͯΈ͍ͯͩ͘͞

  7. ܦӦऀʮ͜Ε͔Β͸"*ͩʂʂʯ

  8. "*ʁػցֶशʁͲ͏ҧ͏ͷʁ

  9. ػցֶशͬͯͳʹʁʁ

  10. ػցֶशʁʁ w σʔλΛೖྗɺ͋Δ΂͖݁ՌΛग़ྗͱͯ͠ w ෳ਺ͷσʔλ͔Βڞ௨ͷϧʔϧ΍ಛ௃ɺ൑அج४Λநग़ w ໌ࣔతʹϓϩάϥϜϩδοΫΛॻ͔ͣʹ݁ՌΛग़ͨ͢Ίͷ࢓૊Έ

  11. ػցֶशʁʁ w σʔλΛೖྗɺ͋Δ΂͖݁ՌΛग़ྗͱͯ͠ w ෳ਺ͷσʔλ͔Βڞ௨ͷϧʔϧ΍ಛ௃ɺ൑அج४Λநग़ w ໌ࣔతʹϓϩάϥϜϩδοΫΛॻ͔ͣʹ݁ՌΛग़ͨ͢Ίͷ࢓૊Έ ϩδοΫͷந৅Խ

  12. ͳͥػցֶश͕ٻΊΒΕΔͷ͔ w ϞόΠϧ΍Πϯλʔωοτ͕ීٴ͖ͬͨ͠ࠓɺ෺ࣄͷঢ়گ͸ٸܹʹมΘΔ w ͦͷมԽΛϓϩάϥϜͰද͢ͷ͸େม w *G΍GPSͰઃఆͨ͠ύϥϝʔλʔΛॻ͖׵͑Δ͚ͩͷվमΛՃ͑Δͷ͸
 ೉͍͠͠ɺޮՌଌఆ΋େมʢ͍ΘΏΔzਓ޻ແೳzͱ͍͏ݺ͹ΕΔ΍ͭʣ w ͜Ε·Ͱͷ܏޲͔Β࣍ͷ݁ՌΛ༧ଌ͢Δࣄ͕Ͱ͖Δശ͕͋Ε͹


    ຊ࣭తʹ͸αʔϏεͷϩδοΫ͸໰୊Ͱ͸ͳ͍͸ͣ
  13. ͳͥػցֶश͕ٻΊΒΕΔͷ͔ w ϞόΠϧ΍Πϯλʔωοτ͕ීٴ͖ͬͨ͠ࠓɺ෺ࣄͷঢ়گ͸ٸܹʹมΘΔ w ͦͷมԽΛϓϩάϥϜͰද͢ͷ͸େม w *G΍GPSͰઃఆͨ͠ύϥϝʔλʔΛॻ͖׵͑Δ͚ͩͷվमΛՃ͑Δͷ͸
 ೉͍͠͠ɺޮՌଌఆ΋େมʢ͍ΘΏΔzਓ޻ແೳzͱ͍͏ݺ͹ΕΔ΍ͭʣ w ͜Ε·Ͱͷ܏޲͔Β࣍ͷ݁ՌΛ༧ଌ͢Δࣄ͕Ͱ͖Δശ͕͋Ε͹


    ຊ࣭తʹ͸αʔϏεͷϩδοΫ͸໰୊Ͱ͸ͳ͍͸ͣ ػցֶशʹΑͬͯಘΒΕͨϞσϧ ϒϥοΫϘοΫε Λ ೖΕସ͑Δ͚ͩͰΞϓϦέʔγϣϯ͕ੈͷதͷ
 χʔζʹରԠͰ͖ΔͷͰ͸ͳ͍͔ʂͱ͍͏ൃ૝
  14. ػցֶशͷԠ༻ྫ w ݕࡧΤϯδϯͷϦίϝϯσʔγϣϯ w ؞΍޻৔ʹ͓͚Δෆྑ඼ͳͲͷҟৗݕ஌ w Ի੠ೝࣝɺը૾ೝࣝ w גՁ༧ଌ

  15. ػցֶशͷԠ༻ྫ w ݕࡧΤϯδϯͷϦίϝϯσʔγϣϯ w ؞΍޻৔ʹ͓͚Δෆྑ඼ͳͲͷҟৗݕ஌ w Ի੠ೝࣝɺը૾ೝࣝ w גՁ༧ଌ ϦΞϧλΠϜͰมԽ͢Δ΋ͷ΍


    ਓؒͷखΛհ͢Δͱେมͳ΋ͷʹରͯ͠ಛʹ༗ޮ
  16. ػցֶशͷར༻Πϝʔδ

  17. ػցֶशͷར༻Πϝʔδ Ϟσϧ

  18. ػցֶशͷར༻Πϝʔδ ֶश ਪ࿦ ਪ࿦Ϟσϧ

  19. ֶशͱਪ࿦ w ֶश w σʔλΛҰఆͷنଇ ΞϧΰϦζϜ ʹैͬͯϞσϧʹม׵ w σʔλιʔε͕ॏཁͳͷͰɺ೔ʑೖΕସΘΔ΋ͷ͸ఆৗతʹֶश͢Δ w

    ਪ࿦ w ϞσϧΛ࢖ͬͯɺ͋Δσʔλ͕Ͳͷύλʔϯʹ࠷΋͍͔ۙΛ൑அ͢Δ w ਪ࿦ʹ࢖͏Ϟσϧͷσʔλ઱౓͕ॏཁ
  20. ֶशͱਪ࿦ w ֶश w σʔλΛҰఆͷنଇ ΞϧΰϦζϜ ʹैͬͯϞσϧʹม׵ w σʔλιʔε͕ॏཁͳͷͰɺ೔ʑೖΕସΘΔ΋ͷ͸ఆৗతʹֶश͢Δ w

    ਪ࿦ w ϞσϧΛ࢖ͬͯɺ͋Δσʔλ͕Ͳͷύλʔϯʹ࠷΋͍͔ۙΛ൑அ͢Δ w ਪ࿦ʹ࢖͏Ϟσϧͷσʔλ઱౓͕ॏཁ 8FCʹ͸ͳ͍ػցֶशج൫ͷϙΠϯτ
 
 Ϟσϧ͕ػցֶशʹ͓͚Δ಄೴ ϒϥοΫϘοΫε  ϞσϧͷೖΕସ͑ͱɺֶशස౓ͳͲͷఆ͕ٛॏཁ
  21. Πϯϑϥج൫ͷ࿩

  22. ྫ͑͹͜ΜͳΞϓϦ͕͋ͬͨͱͯ͠ 8FC "QQ %#

  23. ΞϓϦʹػցֶशΛ࢖ͬͨ
 ػೳΛ૿΍͢͜ͱΛߟ͑ͯΈΔ

  24. Πϝʔδ͸͜͏ 8FC "QQ %# ਪ࿦Ϟσϧ ਪ࿦"1*ͷ
 αʔϏϯά

  25. Πϝʔδ͸͜͏ 8FC "QQ %# ਪ࿦Ϟσϧ ਪ࿦"1*ͷ
 αʔϏϯά ͜ΕͰ΋ಈ͘ʹ͸ಈ͚͘Ͳɾɾɾ

  26. Πϝʔδ͸͜͏ 8FC "QQ %# ਪ࿦Ϟσϧ ਪ࿦"1*ͷ
 αʔϏϯά Ϟσϧͷߋ৽Ͳ͏͢Δͷʁ
 ΞϓϦͷߋ৽ͱύΠϓϥΠϯ෼͚Δͷʁ Πϯϑϥઃܭ͸୭͕͢Δͷʁ

  27. ػցֶशʹؔΘΔਓͨͪ ౰ࣾൺ w ϦαʔνϟʔˠΞϧΰϦζϜͱϞσϧධՁΛ୲౰ w .-ΤϯδχΞ

  28. ػցֶशʹؔΘΔਓͨͪ ౰ࣾൺ w Ϧαʔνϟʔ w .-ΤϯδχΞˠϞσϧΛ࢖ͬͨ"1*΍ΞϓϦͷϓϩτλΠϐϯάͳͲ

  29. ػցֶशʹؔΘΔਓͨͪ ౰ࣾൺ w Ϧαʔνϟʔ w .-ΤϯδχΞˠϞσϧΛ࢖ͬͨ"1*΍ΞϓϦͷϓϩτλΠϐϯάͳͲ ࣗಈԽ͸Ͳͬͪͷ࢓ࣄʁ Πϯϑϥઃܭ͸ͩΕ͕΍Δʁ ύϑΥʔϚϯενϡʔχϯά͸ʁ

  30. Two Big Problems Data Scientist Machine Learning Engineer vs

  31. Ϟσϧ࡞੒ͱαʔϏϯάͷ
 ֞ࠜΛແͯ͘͠
 ࣮ӡ༻ʹ଱͑͏Δج൫Λ࡞Γ͍ͨ

  32. %FWY0QT

  33. .-Y0QT

  34. .-0QTνʔϜͷϛογϣϯ ౰ࣾൺ w .-ΤϯδχΞ΍ݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖Δ؀ڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨ΋ͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏

  35. .-0QTͰิ͑Δ͜ͱ w ݚڀऀ͸ιϑτ΢ΣΞΤϯδχΞϦϯάͷ஌ݟ͕ͳ͍ w +VQZUFS/PUFCPPL͚ͩ͋Ε͹͍͍ɻ%PDLFS΍Πϯϑϥ͸஌Βͳ͍͜ͱ΋ଟ͍ w .-ΤϯδχΞ͸ϓϩτλΠϐϯά͕ಘҙͰ΋ܧଓతͳΞϓϦέʔγϣϯͷվળ΍ ࣗಈԽͷλεΫ͸ઐ໳֎ͳ͜ͱ΋ଟ͍ w $*$%ઃܭɺֶशϫʔΫϑϩʔͷ࠷దԽͳͲ͸༏ઌ౓͕௿͍

  36. .-0QTͰิ͑Δ͜ͱ w %FW0QTͰഓͬͨϊ΢ϋ΢Λػցֶशʹ΋ద༻͍ͯ͘͠ w (16$16Λ࢖ͬͨϫʔΫϑϩʔ΍ΠϯϑϥઃܭͳͲ͸ɺͦ΋ͦ΋Πϯϑϥͷ ஌͕ࣝཁٻ͞ΕΔ෼໺ w ຊ൪ʹ޲͚ͨΞϓϦέʔγϣϯͷվળ w ίϯςφԽɺϘτϧωοΫͷվળͳͲ

  37. ࣮ྫΛோΊͯΈΔ

  38. ˜;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
  39. None
  40. .-0QTͷ୲౰ྖҬ ౰ࣾൺ w Πϯϑϥͷߏ੒؅ཧ $*$%ύΠϓϥΠϯؚΉ  w ΞϓϦέʔγϣϯͷ$*$%΍ίϯςφԽɺνϡʔχϯά w ֶशϫʔΫϑϩʔͷվળ΍ӡ༻

  41. શ෦Ͱ͖ͳ͍ͱ͍͚ͳ͍ͷ͔ʁ

  42. :FTBOEOP

  43. νʔϜͷଟ༷ੑ w 43&ʹ͓͍ͯඞཁͱ͞ΕΔνʔϜͷଟ༷ੑ͸.-0QTͰ΋ॏཁ w ۀ຿΍ϓϩμΫτɺج൫ʹ͓͍ͯ࢖ΘΕΔٕज़͸શͯแׅతʹཧղ͢Δ ͜ͱ͕ॏཁͳͷ͸ݴ͏·Ͱ΋ͳ͍ w ಘҙྖҬ͕ҧ͏ΤϯδχΞ͕ෳ਺͍Δ͜ͱʹΑͬͯνʔϜͱͯ͠
 ΑΓେ͖ͳൣғΛΧόʔͰ͖Δ w

    ҧ͏ࢹ఺ͷΤϯδχΞ͕͏·͘ಈ͍͍ͯ͘ʹ͸ɺݸʑͷνʔϜΛҙࣝͨ͠ ಈ͖΍༏लͳϦʔμʔͷଘࡏ΋ॏཁ
  44. νʔϜͷଟ༷ੑ w 43&ʹ͓͍ͯඞཁͱ͞ΕΔνʔϜͷଟ༷ੑ͸.-0QTͰ΋ॏཁ w ۀ຿΍ϓϩμΫτɺج൫ʹ͓͍ͯ࢖ΘΕΔٕज़͸શͯแׅతʹཧղ͢Δ ͜ͱ͕ॏཁͳͷ͸ݴ͏·Ͱ΋ͳ͍ w ಘҙྖҬ͕ҧ͏ΤϯδχΞ͕ෳ਺͍Δ͜ͱʹΑͬͯνʔϜͱͯ͠
 ΑΓେ͖ͳൣғΛΧόʔͰ͖Δ w

    ҧ͏ࢹ఺ͷΤϯδχΞ͕͏·͘ಈ͍͍ͯ͘ʹ͸ɺݸʑͷνʔϜΛҙࣝͨ͠ ಈ͖΍༏लͳϦʔμʔͷଘࡏ΋ॏཁ ɾνʔϜͷ౷཰ ɾνʔϜͷଟ༷ੑ ͜ΕΒཁૉͷཱ͕྆ॏཁ
  45. ΋͏গ࣮͠ࡍͷऔ૊Έʹ͍ͭͯ ۷ΓԼ͛ͯΈ·͠ΐ͏

  46. .-0QTͷ୲౰ྖҬ ౰ࣾൺ w Πϯϑϥͷߏ੒؅ཧ $*$%ύΠϓϥΠϯؚΉ  w ΞϓϦέʔγϣϯͷ$*$%΍ίϯςφԽɺνϡʔχϯά w ֶशϫʔΫϑϩʔͷվળ΍ӡ༻

    8FC։ൃͱڞ௨෦෼͕େ͖͍λεΫ ػցֶशʹݻ༗ͷ෦෼͕େ͖͍λεΫ
  47. ΞϓϦͷνϡʔχϯά w ϏδωεϩδοΫΛม͑ͳ͍ൣғͰਪ࿦"1*ͷ଎౓Λ্͛Δ w "1.΍֎ܗ؂ࢹͳͲΛ͔ͭͬͯఆৗ؂ࢹ͠ɺϘτϧωοΫΛݟ͚ͭΔ w ϞσϧͰѻ͏ϕΫτϧͷύϥϝʔλʔ΍σʔλͷྔʹΑͬͯɺ$16 (16ͲͪΒΛ࢖͏΂͖͔͕ܾ·Δ ෛՙࢼݧͳͲͰݕূ΋͢Δ 

    w (16͸ศར͕ͩɺίϯςΩετεΠονʹऑ͍ͷͰΞϓϦέʔγϣϯͰ ͸ۃྗ࢖͍ͨ͘ͳ͍
  48. ΞϓϦͷνϡʔχϯά w ϏδωεϩδοΫΛม͑ͳ͍ൣғͰਪ࿦"1*ͷ଎౓Λ্͛Δ w "1.΍֎ܗ؂ࢹͳͲΛ͔ͭͬͯఆৗ؂ࢹ͠ɺϘτϧωοΫΛݟ͚ͭΔ w ϞσϧͰѻ͏ϕΫτϧͷύϥϝʔλʔ΍σʔλͷྔʹΑͬͯɺ$16 (16ͲͪΒΛ࢖͏΂͖͔͕ܾ·Δ ෛՙࢼݧͳͲͰݕূ΋͢Δ 

    w (16͸ศར͕ͩɺίϯςΩετεΠονʹऑ͍ͷͰΞϓϦέʔγϣϯͰ ͸ۃྗ࢖͍ͨ͘ͳ͍ *46$0/͸๻ͨͪʹେ੾ͳ͜ͱΛڭ͑ͯ͘Εͨ
  49. ֶशϫʔΫϑϩʔͷӡ༻ͱվળ w ݚڀऀ΍.-ΤϯδχΞ͕ϞσϧΛ࡞੒͞ΕΔҰ࿈ͷྲྀΕΛ
 ϑϩʔʹམͱ͠ࠐΈɺࣗಈԽ͢Δ w ຖ೔ɺຖ࣌ؒ৘ใ͕มΘΔΑ͏ͳσʔλʹରͯ͠ܧଓͯ͠Ձ஋Λ
 ఏڙ͢ΔͨΊʹ͸ඞཁෆՄܽ w ฒྻ࣮ߦੑ͕Ͳ͜·ͰߴΊΒΕΔ͔ w

    ΞϧΰϦζϜ΍ɺ࢖͍ͬͯΔख๏ʹର͢Δཧղ͕ॏཁ
  50. ˜;0;05FDIOPMPHJFT *OD  ը૾ݕࡧʹ࢖ΘΕΔҰൠతͳΞϧΰϦζϜ ෺ମݕग़ΞϧΰϦζϜ • ը૾͔Β෺ମͷݕग़ͱΫϥε෼ྨΛ͢Δ ಛ௃ྔநग़ΞϧΰϦζϜ • ը૾͔Βଟ࣍ݩϕΫτϧͷಛ௃ྔΛநग़͢Δ

    ۙࣅ࠶࠷ۙ๣୳ࡧ "// • ߴ଎ʹଟ࣍ݩͷϕΫτϧΛ୳ࡧ͢Δ IUUQTHJUIVCDPNTQPUJGZBOOPZ $// 'FBUVSF
  51. .-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪ࿦Ϟσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠
 ਪ࿦"1*࡞ΔΑʂ

  52. .-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪ࿦Ϟσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠
 ਪ࿦"1*࡞ΔΑʂ ϫʔΫϑϩʔͰ
 ਪ࿦Ϟσϧͷੜ੒ΛࣗಈԽ ΞϓϦέʔγϣϯͷ
 $*$%ύΠϓϥΠϯ ਪ࿦Ϟσϧͷ
 ࣗಈσϓϩΠ

  53. .-ϓϩμΫγϣϯ·ͰͷྲྀΕ ਪ࿦Ϟσϧ࡞ͬͨΑ ϞσϧσϓϩΠͯ͠
 ਪ࿦"1*࡞ΔΑʂ ϫʔΫϑϩʔͰ
 ਪ࿦Ϟσϧͷੜ੒ΛࣗಈԽ ΞϓϦέʔγϣϯͷ
 $*$%ύΠϓϥΠϯ ਪ࿦Ϟσϧͷ
 ࣗಈσϓϩΠ

    ࣮͸ɺ΍͍ͬͯΔ͜ͱͷຊ࣭͸
 ࠓ·Ͱͷ43&%FW0QTͷख๏ͱͦΜͳʹҧ͍͕ͳ͍
  54. վΊͯ.-0QTͷ
 ϛογϣϯʹ͍ͭͯৼΓฦΔ

  55. .-0QTνʔϜͷϛογϣϯ ౰ࣾൺ w .-ΤϯδχΞ΍ݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖Δ؀ڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨ΋ͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏

  56. .-0QTνʔϜͷϛογϣϯ ౰ࣾൺ w .-ΤϯδχΞ΍ݚڀऀ͕ػցֶशϞσϧͷ։ൃʹूதͰ͖Δ؀ڥΛఏڙ͢Δ w ϓϩτλΠϓΛϓϩμΫγϣϯϨϕϧʹҾ্͖͛Δ ˠݚڀऀɺ.-ΤϯδχΞ͕ͨͪ࡞ͬͨ΋ͷΛ࣮ࡍʹαʔϏεΠϯ͠ӡ༻·Ͱߦ͏ Ϟσϧ΍"1*ͷ೔ʑͷ։ൃऀ ମݧͷ޲্ 43&తͳΞϓϩʔν

  57. ·ͱΊ w %FW0QT͸։ൃͱӡ༻ͷ֞ࠜΛແ͘͠ɺϏδωεʹߩݙ͢ΔεϐʔυײΛߴΊΔͨΊ ͷऔΓ૊ΈɺจԽվֵͷϚΠϯυηοτͩͬͨ w 43&͸%FW0QTΛؚΉɺαʔϏεͷఏڙՁ஋ΛߴΊΔ࣮ફతͳΞϓϩʔν w .-0QT͸྆ऀͷ࣋ͭಛੑΛػցֶशͷεϐʔυײ΍৴པੑΛߴΊΔͨΊͷऔΓ૊Έ

  58. 5IBOLZPVGPSZPVSBUUFOUJPO