[スナックミー] パーソナライズを追求するお菓子の製造需要予測を自動化させた話 / snaq.me dev day tokyo 2018

Fed9e45a0fa859739e9d862a35b0a4a6?s=47 hayato miyoshi
November 01, 2018

[スナックミー] パーソナライズを追求するお菓子の製造需要予測を自動化させた話 / snaq.me dev day tokyo 2018

DevDay Tokyo2018
https://aws.amazon.com/jp/aws-devday-tokyo-2018/sessions/#ml07

スナックミー
無添加おやつのパーソナライズ×サブスクリプションサービス
https://snaq.me

CLR BAR
自然由来の食材を使用した、美味しくて体にも優しい栄養バー、プロテインバー
https://clrbar.com

Twitter: https://twitter.com/miyoshihayato

Fed9e45a0fa859739e9d862a35b0a4a6?s=128

hayato miyoshi

November 01, 2018
Tweet

Transcript

  1. ύʔιφϥΠζΛ௥ٻ͢Δ͓՛ࢠͷ ੡଄धཁ༧ଌΛࣗಈԽͤͨ͞࿩ גࣜձࣾεφοΫϛʔ Dev Day T okyo2018 11.01 Co-Founder &

    CTO ࡾ޷ ൏ਓ Data Scientist ླ໦ Ұ࢙
  2. ࣗݾ঺հ ࡾ޷ ൏ਓ גࣜձࣾεφοΫϛʔ (snaq.me) Co-Founder & CTO ޷͖ͳAWS Lambda

    / ECR
  3. εφοΫϛʔ (snaq.me)ͱ͸ ? ͓՛ࢠ(εφοΫ)ͷఆظߪೖαʔϏε อଘྉɺఴՃ෺ෆ࢖༻ͷ͓՛ࢠ 150छྨҎ্ͷ͓՛ࢠ͔Β8छྨຖճ͓ಧ͚ ஋ஈ 1,728ԁ (੫ࠐ) /

    ճ 2िʹ1౓ or 4िʹ1౓ͷ͓ಧ͚Մೳ
  4. εφοΫϛʔ (snaq.me)ͱ͸ ? εφοΫϛʔΦϦδφϧͰ੡଄͞Εͨ φνϡϥϧϑΟφϯγΣ ߳઒ݝ࢈ͷ্࣭ͳখഴͱశࡊ౶Λ࢖༻͠ ম্͖͛ ೕԽࡎ΍ਓޱ߳ྉͳͲΛ࢖༻͍ͯ͠ͳ͍ ͨΊɺ༏͍͠؁͞ͱɺඒຯ͠͞ͷ༨ӆ͕ ௕͍ͷ͕ಛ௃

    ίίΞϑΟφϯγΣ
  5. εφοΫϛʔ (snaq.me)ͱ͸ ? ࠭౶ෆ࢖༻ͰύΠφοϓϧ͚ͩͷϦΞϧ υϥΠϑϧʔπ Ұޱ৯΂Δͱɺࠓ·Ͱ৯΂ͨυϥΠϑϧʔ πͱҧ͏ຯΘ͍/৯ײͳͲ υϥΠϑϧʔπͳͷʹɺδϡʔγʔײʂ ੜͷϑϧʔπ͕͞ΒʹࢫຯΛ͚ͭͯਐԽ ͨ͠ײ͡

    ϓϨϛΞϜυϥΠύΠϯ
  6. εφοΫϛʔ (snaq.me)ͱ͸ ? ϦΫΤετ/ ධՁΛߦ͏͜ͱͰɹɹɹɹɹ ύʔιφϥΠζ͕Մೳ 1ਓ1ਓ͓ಧ͚͢Δ͕͓՛ࢠ͕ҟͳΔ

  7. ੡଄͔Βൃૹ·ͰͷྲྀΕ ੡଄ࢦࣔॻ ࡞੒ ੡଄ ࡏݿొ࿥ ΞαΠϯ * ΞαΠϯ : ͓٬༷΁ಧ͚ΔεφοΫΛબͿ͜ͱ

    ϐοΩϯά ൃૹ
  8. ੡଄͔Βൃૹ·ͰͷྲྀΕ ੡଄ࢦࣔॻ ࡞੒ ੡଄ ࡏݿొ࿥ ΞαΠϯ * ΞαΠϯ : ͓٬༷΁ಧ͚ΔεφοΫΛબͿ͜ͱ

    ϐοΩϯά ൃૹ γεςϜԽΛਐΊ͍ͯΔՕॴ
  9. ΞαΠϯͷߏ੒ਤ

  10. ੡଄͔Βൃૹ·ͰͷྲྀΕ before ੡଄ࢦࣔॻ ࡞੒ ੡଄ ࡏݿొ࿥ ΞαΠϯ * ΞαΠϯ :

    ͓٬༷΁ಧ͚ΔεφοΫΛબͿ͜ͱ ϐοΩϯά ൃૹ
  11. ΞαΠϯͷ࢓૊Έ by Well Architecture of the year ͔͜͜Βࢿྉ֬ೝͰ͖·͢

  12. ΞαΠϯͷ࢓૊Έ by Well Architecture of the year ͔͜͜Βࢿྉ֬ೝͰ͖·͢ ୲౰ऀ͕ϘλϯҰͭͰAWS Batch͔ΒjobΛىಈͤ͞

    Ϣʔβʔ΁ͷΞαΠϯΛҰؾ௨؏ͰՄೳ
  13. ࠓճ͸ ੡଄ࢦࣔॻ

  14. ੡଄͔Βൃૹ·ͰͷྲྀΕ before ੡଄ࢦࣔॻ ࡞੒ ੡଄ ࡏݿొ࿥ ΞαΠϯ * ΞαΠϯ :

    ͓٬༷΁ಧ͚ΔεφοΫΛબͿ͜ͱ ϐοΩϯά ൃૹ
  15. ੡଄࣌ͷ՝୊ ੡଄ࢦࣔॻͷ࡞੒ʹຖि1ʙ2೔͔͔Δ ੡଄ܭը͕όϥόϥ ഑ૹͨ͠εφοΫͷຬ଍౓ͷ൑ఆ͕೉͍͠ ࠷খɺ࠷େՄೳ੡଄਺͕όϥόϥ ͳͲ

  16. SageMakerͰधཁ༧ଌ͠Α͏

  17. SageMakerͰ࣮ݱ͍ͤͨ͜͞ͱ खܰʹར༻͍ͨ͠ ίετ͸࠷খݶ & ࣗಈԽ͍ͤͨ͞ SageMakerͰػցֶशͷج൫Λ࡞Γ͍ͨ ͳͲ

  18. धཁ༧ଌߏ੒ਤ

  19. धཁ༧ଌߏ੒ਤ ༧ଌ͢ΔεφοΫΛ S3ʹupload ༧ଌ ݁Ռ

  20. धཁ༧ଌߏ੒ਤ

  21. धཁ༧ଌ෦෼ͷߟ͑ํ Ϣʔβʔ਺༧ଌ ഑ૹ͓՛ࢠͷຬ଍౓

  22. धཁ༧ଌߏ੒ਤ point - ᶃ

  23. धཁ༧ଌߏ੒ਤ point - ᶃ ɾStepFunctionsΛ༻͍Δ͜ͱͰ ඞཁͷͱ͖ʹSagemakerΛىಈ ༧ଌ͕ऴΘͬͨΒɺendpointΛ ࡟আ͢Δ͜ͱ͕Մೳ ɾΤϥʔ࣌ͷ࠶τϥΠ΋༰қʹ ઃఆՄೳ

  24. धཁ༧ଌߏ੒ਤ point - ᶄ

  25. धཁ༧ଌߏ੒ਤ point - ᶄ ɾCloudWatch EventsΛ༻͍Δ͜ͱͰɺ࠶ֶशΛఆظతʹߦ͏͜ͱ͕ Մೳ

  26. धཁ༧ଌߏ੒ਤ point - ᶅ

  27. धཁ༧ଌߏ੒ਤ point - ᶅ ɾS3ͷόʔδϣχϯάΛ༻͍͜ͱͰɺສ͕Ұಈ͔ͳ͍Ϟσϧ͕࠷৽൛ Ͱ΋ҰͭલͷόʔδϣϯͰϦΧόϦʔ͕Մೳ

  28. ͜ͷߏ੒ਤΛ։ൃͯ͠ ޻෉ͨ͠఺ / ஫ҙ఺

  29. ࣗݾ঺հ ླ໦ Ұ࢙(@kz23szk) גࣜձࣾεφοΫϛʔ (snaq.me) Data Scientist ޷͖ͳAWS SageMaker

  30. sagemakerͱ͸ ػցֶश༻ϑϧϚωʔδυαʔϏε ϊʔτϒοΫ্Ͱͷ࡞ۀ͕Ͱ͖Δ ̍ϝιουͰσϓϩΠ׬ྃ ໨త͝ͱͷνϡʔτϦΞϧ͕๛෋ ελʔτΞοϓ΍ػցֶशΛ͜Ε͔Β ࢝ΊΔاۀʹ͓͢͢Ίʂ

  31. धཁ༧ଌ ൃ஫લʹϢʔβ਺Λਪఆ ਓखͰ༧૝ͯ͠ൃ஫ ܽ඼΍ա৒ࡏݿͷϦεΫɺਓత ίετΛ࡟ݮ͍ͨ͠

  32. ՝୊ͱ޻෉఺ ʲ՝୊̍ʳΤϯυϙΠϯτΛৗ࣌ىಈ͢Δͱίετ͕͔͞Ή →༧ଌͷ౓ʹLambdaͰΤϯυϙΠϯτͷىಈɺ༧ଌɺ࡟আ ʲ՝୊̎ʳόʔδϣϯΞοϓͰಈ͔ͳ͘ͳΔ →Step FunctionsͰ࠷৽̎ϞσϧͰτϥΠ ʲ՝୊̏ʳ௚ۙͷσʔλ΋ؚΊͯ࠶ֶश͍ͨ͠ →࠶ֶश༻lambdaΛ༻ҙ (CloudWatch eventsͰ݄࣮࣌ߦʣ

  33. ʲ՝୊̍ʳΤϯυϙΠϯτΛৗ࣌ىಈ͢Δͱίετ͕͔͞Ή

  34. ޻෉̍ɹlambdaͰΤϯυϙΠϯτىಈͱ࡟আ boto3ʢSDKʣΛ࢖ͬͯ ΤϯυϙΠϯτΛࢦఆ͠ ىಈɺ࡟আ

  35. ޻෉̍ɹlambdaͰ༧ଌ ΤϯυϙΠϯτͱσʔλΛ ࢦఆ࣮ͯ͠ߦ͢Δ͚ͩʂ ɾ༧ଌ͝ͱʹΤϯυϙΠϯτͷىಈɺ༧ଌɺ࡟আΛߦ͏͜ͱͰ ίετΛ݄਺υϧʹ཈͑Δ

  36. ʲ՝୊̎ʳόʔδϣϯΞοϓͰಈ͔ͳ͘ͳΔ

  37. StepFunctions jsonܗࣜͰαʔϏε࣮ߦΛ εςοϓͰ੍ޚͰ͖Δɻ

  38. ޻෉̎ StepFunctions ɾهड़͢Δͱϑϩʔ͕ՄࢹԽ͞ΕΔɻ ɾlambdaίʔυ͕୯ػೳʹͳΔɻ ɾ෼ذॲཧͰόʔδϣϯΞοϓ࣌ͷো֐Λ๷͙ɻ

  39. ʲ՝୊̏ʳ࠶ֶशΛࣗಈԽ͍ͨ͠ ɾCloudWatch EventsΛ༻͍Δ͜ͱͰɺ࠶ֶशΛఆظతʹߦ͏

  40. ޻෉̏ɹ࠶ֶशΛࣗಈԽ Cloudwatch eventͰΫʔϩϯܗࣜͰ εέδϡʔϧ࣮ߦ LambdaଆͰલճ࣮ߦ ͨ͠δϣϒΛ࠶࣮ߦ

  41. Sagemaker͜͏ͳͬͨΒخ͍͠ ɾલॲཧ༻ͷΤϯυϙΠϯτ࡞੒ػೳ͕ཉ͍͠ →ϊʔτϒοΫ্ͷίʔυΛlambdaʹ΋͖ͬͯͯରԠத

  42. ɹ·ͱΊ ࡞ۀ࣌ؒͷ࡟ݮ ʢ3࣌ؒ/िʣ ୹࣌ؒɺि࣍ͷ༧ଌͰ΋ίετΛ཈͑ͯӡ༻ sagemakerͷ࣮ߦɺ࠶ֶशͷࣗಈԽʹ੒ޭ ͪΐͬͱͨ͠༧ଌΛεϞʔϧελʔτͰ࢝ΊΒΕΔʂ

  43. ࠓޙ͍ͨ͜͠ͱ σΟεΧόϦʔཁૉͷڧԽ Ϣʔβʔݸʑͷػցֶश ৽঎඼ൃ۷δϟϯϧͷఏҊ ਓؾෆਓؾεφοΫͷࣗಈબผ

  44. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ Let’s enjoy guilt free snacks !

  45. We’re hiring! ɾFront / Backend ɾData Scientist ɾSRE etc