Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ペパボ研究所がOneLoveな理由/Why pepaken is one love
Search
monochromegane
July 06, 2017
Technology
1.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ペパボ研究所がOneLoveな理由/Why pepaken is one love
ペパボ研究所 やさしい発表会 - ペパボ研究所で事業を差別化する -
monochromegane
July 06, 2017
Transcript
48 slides
- ϖύϘݚڀॴͰࣄۀΛࠩผԽ͢Δ - ࡾ༔հ / Pepabo R&D Institute, GMO Pepabo,
Inc. 2017.07.06 ϖύϘݚڀॴ ༏͍͠ൃදձ ϖύϘݚڀॴ͕OneLoveͳཧ༝
ϓϦϯγύϧΤϯδχΞ ࡾ ༔հ / @monochromegane 2 http://blog.monochromegane.com Yusuke Miyake ϖύϘݚڀॴ
ݚڀһ
1. ϖύϘݚڀॴͷϛογϣϯ 2. ϖύݚͱαʔϏεͷؔ 3. ݚڀ։ൃࣄྫͷհ 3 ࣍
1. ϖύϘݚڀॴͷϛογϣϯ
5 ϖύϘݚڀॴ(ུশʮϖύݚʯ)ɺࣄۀΛࠩผԽ Ͱ͖Δٕज़Λ࡞Γग़ͨ͢ΊʹʮͳΊΒ͔ͳγες Ϝʯͱ͍͏ίϯηϓτͷԼͰݚڀ։ൃʹऔΓΉ ৫Ͱ͢ɻ ❝ ϖύϘݚڀॴʹ͍ͭͯ http://rand.pepabo.com/
ͳͥݚڀ͔
• ݚڀɺࣄ࣮ཧΛ໌Β͔ʹ͢Δʹ͋ͨΓɺ৽نੑɺ༗ޮੑɺ৴པੑΛ٬؍ తʹࣔ͞ͳ͚ΕͳΒͳ͍ • طଘख๏ͷௐࠪ(వ)ɺ뱌(ઈ)ɺจԽ(࿅)Λܦͯɺख๏ͷঢ՚(ൃ)ʹࢸΔ • ݚڀతΞϓϩʔνͷ෮ʹΑͬͯɺཧख๏͕લਐ͢Δ(Ԡ༻ɺܥ౷) • ٕज़͕ҰൠԽ͢Δ࣌ͰɺݚڀΛ௨ͯ͋͠Δख๏ʹ͓͚Δ৽نੑΛݗҾͰ͖ ΔଘࡏͱͳΔ͜ͱ͕ɺࠩผԽͰ͖Δٕज़Λ࣋ͭ͜ͱʹͭͳ͕Δ
7 ͳͥݚڀ͔ ࠩผԽͰ͖Δٕज़Λ࡞Γग़ͨ͢ΊʹɺݚڀతΞϓϩʔν͕༗ޮ
2. ϖύݚͱαʔϏεͷؔ
9 ΞΧσϛοΫͳਫ४ʹ͓͚Δ৽نੑɾ༗ޮੑɾ৴ པੑΛٻ͢ΔݚڀΛߦ͏ͱͱʹɺݚڀ։ൃ͠ ٕͨज़Λ࣮ࡍͷγεςϜͱ࣮ͯ͠ɾఏڙ͢Δ͜ ͱΛ௨ͯ͠ɺࣄۀͷʹߩݙ͠·͢ɻ ❝ ϖύϘݚڀॴʹ͍ͭͯ http://rand.pepabo.com/
10 ϖύݚͱαʔϏεͷؔ ࣄۀΛࠩผԽ͢ΔͨΊʹɺݚڀॴͱαʔϏεͷ࿈ܞ͕ඞਢ ݚڀ ։ൃ ӡ༻ ՝ͷڞ༗ ݚڀʹΑΔղܾ ಋೖ࣌ͷΤϯδχΞؒ࿈ܞ ݚڀ։ൃ݁ՌΛଈ࣌αʔϏεʹಋೖ͢ΔΈͱɺಋೖޙͷϑΟʔυόοΫʹΑΔαΠΫϧͷߴ
ԽʹΑͬͯɺݚڀ։ൃͷߴԽͱࣄۀͷࠩผԽʹͭͳ͛Δ
11
3. ݚڀ։ൃࣄྫͷհ
ಛநग़ثͷֶशͱߪങཤྺΛ ඞཁͱ͠ͳ͍ྨࣅը૾ʹΑΔ ؔ࿈ݕࡧγεςϜ
14 ՝ͷڞ༗ େ͖ͳ୯ҐͰͷ՝ʢઓུʣͷڞ༗ • minneʹ͓͍ͯɺ࡞ͱͷग़ձ͍ͷ֬Λ্͛Δ͜ͱ͕ઓུͷͻͱͭͱ্ͯ͠ ͛ΒΕ͍ͯΔɻݱࡏɺminneʹඦສͷ࡞͕ొ͞Ε͓ͯΓɺαʔϏε ར༻ऀͷ௨ৗͷߦಈͰશͯͷ࡞ΛݟͯճΔ͜ͱࠔͰ͋Δɻ • ඞવతʹαʔϏεར༻ऀ͕ߪೖ͍ͨ͠ͱࢥ͏࡞ͱग़ձ͏֬Լ͖ͯͯ͠ ͓Γɺ͜ͷ֬Λ্͛Δ͜ͱ͕ɺ͓ങ͍ମݧͷ࠷େԽͷͨΊʹٻΊΒΕ͍ͯ
Δɻ
• ճ༡ͷಋઢΛ૿͢ඞཁ͕͋ΔɻAmazonָఱͱ͍ͬͨECαΠτͰؔ࿈ ࡞Λఏࣔ͢Δ͜ͱͰͷݕ౼Λܧଓͤ͞Δճ༡͕͋ΓɺͦͷͨΊʹͳΜ Β͔ͷ؍Ͱؔ࿈͍ͯ͠Δ͜ͱΛγεςϜతʹѻ͑Δঢ়ଶʹ͢Δඞཁ͕͋Δ 15 ண؟ͱํࣜ • ௨ৗɺDB্ʹؚ·ΕΔใʢߏԽͨ͠ใʣʹΑͬͯಉҰࢹͰ͖Δͷ ʢminneͰݴ͑ಉ͡ΧςΰϦɺಉ͡৭ʣͳͲΛ༻͍Δ͕ɺ͜Ε·Ͱʹͳ͍ؔ ࿈࡞ͷಋઢΛ૿ͨ͢Ίɺ·ͩߏԽ͞Ε͍ͯͳ͍ใΛminneͰऔΓѻ
͑ΔΑ͏ʹ͍ͯ͘͠ɻ
• ߪങཤྺͷใ͕ෆཁͰྨ༻ͷՃใͱͯ͠Ͱͳ͘ɺৗʹઃఆ͞ΕΔ ը૾Λର • ಋೖઌͷECαΠτͷʹґଘ͠ͳֶ͍शෆཁͰ൚༻తͳֶशࡁΈωοτ ϫʔΫΛಛநग़ثͱͯ͠࠾༻ • ಛநग़ث͔ΒಘΒΕͨಛྔΛͱʹۙࣅۙ୳ࡧʹΑΓྨࣅը૾Λݕࡧ 16 ఏҊख๏
17
ಛྔม 18 Service Object Storage GCP image to data data
to feature vectorizer by Inception-v3 Annoy Workers • ͋Δ࣌·Ͱͷ࡞ը૾ҰཡΛಛྔʹม͢Δ • มͨ͠ಛྔҰཡΛۙࣅۙ୳ࡧσʔλϕʔεʹೖ͢Δ
• ۙࣅۙ୳ࡧσʔλϕʔεΛmruby-annoy + ngx_mrubyʹͯAPIԽ • ࡞ৄࡉʹྨࣅը૾Λ༻͍ͨؔ࿈࡞Λදࣔ͢Δ 19 ྨࣅը૾ݕࡧ Nyah mruby-annoy
on ngx_mruby products#show product_id nearest products CTR Analytics NNS ˞ۙࣅۙ୳ࡧ࣌ʹେ෦ͷΠϯσο ΫεͷΞΫηε͕ൃੜ͢ΔͨΊ࣮༻ తͳΛಘΔͨΊʹσʔλϕʔε ϑΝΠϧ͕શͯϖʔδΩϟογϡʹࡌ ΔαΠζͷϝϞϦ͕ඞཁ
ྨࣅը૾ʹΑΔؔ࿈࡞ݕࡧ 20
ྨࣅը૾ʹΑΔؔ࿈࡞ݕࡧ 21
ΫϦοΫͱίϯόʔδϣϯ 22 طଘ ఏҊ $53 $73
˞ఏҊख๏ʹΑΔબఆ͕ߦ͑ͳ͍߹ʹαʔϏεͷ ػձଛࣦΛආ͚ΔͨΊطଘख๏ʹΑΔબఆΛߦͬͯ ͍ΔͨΊݕূظؒதͷ֤ख๏ͷදׂࣔ߹طଘ ɺఏҊͰ͋ͬͨ ˞ίϯόʔδϣϯΫϦοΫʹର͢Δߪೖ͔ ΒٻΊͨ طଘ ఏҊ ૉࡐɾࡐྉγΣϧ ૉࡐɾࡐྉϦϘϯɾςʔϓ ૉࡐɾࡐྉϘλϯ ͵͍͙ΔΈɾਓܗ͋Έ͙ΔΈ χοτɾฤΈηʔλʔɾΧʔσΟΨϯ ఏҊख๏͕༗ޮͰ͋ͬͨΧςΰϦ
ݚڀใࠂΠϯλʔωοτͱӡ༻ٕज़ʢIOTʣ 23 ࡾ ༔հ, দຊ ྄հ, ྗ ݈࣍, ܀ྛ ݈ଠ,
ಛநग़ثͷֶ शͱߪങཤྺΛඞཁͱ͠ͳ͍ྨࣅը૾ʹΑΔؔ࿈ݕࡧγ εςϜ, ݚڀใࠂΠϯλʔωοτͱӡ༻ٕज़ʢIOTʣ, Vol.2017-IOT-37(4), pp.1-8, May 2017 http://id.nii.ac.jp/1001/00178892/
ϑΟʔυόοΫ
Gannoy Approximate nearest neighbor search server and dynamic index written
in Golang. https://github.com/monochromegane/gannoy
GannoyʹΑΔಈతΠϯσοΫεߋ৽+ྨࣅը૾ݕࡧ 26 Features Similar items Gannoy [2048]float64 query by http
find similar features mapping similar features to items response Deep CNN index Features [2048]float64 Deep CNN register by http
ΞΫηεස༧ଌʹجͮ͘ ԾαʔόͷܭըతΦʔτεέʔϦϯά
28 ՝ͷڞ༗
• ैྔ՝ۚͷԾαʔόӡ༻ʹ͓͍ͯ࠷దͳϦιʔεधཁͷ༧ଌίετΧοτʹͭͳ͕Δ • WebαʔϏεͷϦιʔεधཁϦΫΤετॲཧ݅ɺͭ·ΓΞΫηεͱ૬͕ؔ͋Δͣ • Ϧιʔεͷ૿ݮʹ͋Δఔͷ͕͔͔࣌ؒΔͨΊɺϦΞϧλΠϜͰͳ͘ҰఆִؒͰͷΞ Ϋηε༧ଌͰेͱߟ͑Δ 29 ண؟ͱํࣜ ΞΫηεΛ༧ଌͰ͖ΔΑ͏ʹͳΕ
ɺϐʔΫλΠϜʹ͋Θͤͨݟੵ Γ͔Β࣌ؒ͝ͱͷ࠷దʢͱࢥΘΕ ΔʣݟੵΓ͕ՄೳʹͳΔ
• WebαʔϏεશମͰҰఆ࣌ؒʹॲཧͨ͠ΞΫηεසͰ͋ΔεϧʔϓοτΛ ࢦඪͱ͠ɺӡ༻্ɺܦݧతʹѲ͞Ε͍ͯΔ҆ఆͯ͠ӡ༻ՄೳͳΛࢦ͢ • աڈͷΞΫηεසͱෆఆظͳมಈཁҼ͔Β༧ଌϞσϧΛಋ͘ • ༧ଌతͳߏมߋΛ՝ۚ୯ҐͰ͋Δ1࣌ؒΛ୯Ґʹߦ͏ 30 ఏҊख๏
31 ఏҊख๏
32 ΞΫηεස༧ଌϞσϧ ΞΫηεස༧ଌϞσϧ ֶशσʔλΫϥυαʔϏεͷඪ४՝ ۚ୯ҐͰ͋Δ࣌ؒΛཻͱ͢Δ 8FCαʔϏεͷ࠷ఆৗੑΛ֬ೝͰ͖Δ࣌ؒͷσʔλ Λೖྗͱ͠ɺ࣍ͷ࣌ؒͷΞΫηεස༧ଌΛग़ྗͱ͢Δ ˞࣌ؒޙҎ߱༧ଌΛؚΊͨظΛೖྗͱ͢Δ
33 Ծαʔόࢉग़ • ༧ଌͨ͠ΞΫηεසΛجʹɺWebαʔϏεΛ҆ఆͯ͠ӡ༻ Ͱ͖Δ҆ͱͳΔεϧʔϓοτΛ֬อͰ͖ΔΛٻΊΔ ༧ଌΞΫηεසʹର͠εϧʔϓοτΛ ֬อͰ͖ΔΛࢉग़͢Δ 5<ΞΫηεස> 1<༧ଌΞΫηεස࣌> -αʔόԼݶ
• ࠓճͷධՁͰɺରͷ WebαʔϏεʹ͓͍ͯཌ ͕ฏͷ߹ɺؒʹΞΫ ηεස͕૿Ճ͢Δͱ͍͏ ܦݧଇΛཁҼͱͯ͠Ճ͑ͨ 34 ඇఆৗͷཁҼͷՃຯʹΑΔ༧ଌਫ਼ͷධՁ
35 ඇఆৗͷཁҼͷՃຯʹΑΔ༧ଌਫ਼ͷධՁ ؒʹීஈͱҟͳΔͱͳΔಛੑΛଊ ͑ͨ༧ଌ͕ߦΘΕ͍ͯΔɻ
36 ܭըతΦʔτεέʔϦϯάͷධՁ ԾαʔόͷਪҠ ͋ͨΓͷαʔό૯ىಈ࣌ؒ"܈ ը૾্ Ͱ͔࣌ؒΒ࣌ؒʹɺ#܈ ը૾Լ Ͱ ͔࣌ؒΒ࣌ؒʹݮ
˞"܈ͷ࣌ࢉग़͕ԼݶΛԼ ճͬͨͨΊɺͷมಈݟΒΕͳ͍
37 ܭըతΦʔτεέʔϦϯάͷධՁ ΞΫηεසͷਪҠ ͋ͨΓΞΫηεසͷඪ४ภࠩ"܈ ը ૾্ Ͱ͔Βʹɺ#܈ ը ૾Լ Ͱ͔ΒʹมԽɻ
ख๏ద༻ޙʹεϧʔϓοτ͕҆ఆ͍ͯ͠Δ ͜ͱ͕Θ͔Δɻ ˞"܈ͷ૿ՃԼݶӡ༻ͱͳͬͨ࣌ؒଳ ͷ͋ͨΓͷεϧʔϓοτ૿ՃʹΑΔ ͷͱߟ͑ΒΕΔ
ݚڀใࠂΠϯλʔωοτͱӡ༻ٕज़ʢIOTʣ 38 ࡾ ༔հ, দຊ ྄հ, ྗ ݈࣍, ܀ྛ ݈ଠ,
ΞΫηεස༧ ଌʹجͮ͘ԾαʔόͷܭըతΦʔτεέʔϦϯά, ݚڀใࠂ Πϯλʔωοτͱӡ༻ٕज़ʢIOTʣ, Vol.2017-IOT-38(13), pp.1-8, June 2017 http://id.nii.ac.jp/1001/00182375/
ݚڀ݁ՌͷαʔϏεಋೖ
1. ج൫ԽɺAPIԽʹΑΔݚڀڥͱαʔϏεͷγʔϜϨεͳ࿈ܞ 2. ίʔυཧɺόʔδϣϯཧʹΑΔݚڀͱӡ༻ͷฒߦ 40 ݚڀ݁ՌͷαʔϏεಋೖ ݚڀ݁ՌͷαʔϏεಋೖଈ͔࣌ͭશࣾల։Ͱ͖Δ͜ͱ͕·͍͠
1. ϩάDBͳͲͷαʔϏεࢿ࢈ͱ࿈ܞͰ͖Δ 2. ൺֱత༰қʹϞσϧͷߏஙͱࢼߦ͕ߦ͑Δ 3. ֶश݁ՌΛར༻͢ΔͨΊͷखஈͱͯ͠APIΛఏڙ͢Δ 1. ֶश݁ՌͷϩʔΧϧར༻͕Ͱ͖Δͱͳ͓Α͍ 4. ্هͷΈ͕εέʔϥϒϧͰ͋Δ͜ͱ
41 ػցֶशج൫ʹٻΊΒΕΔͷ
1. ೖग़ྗ͕Cloud Storageܦ༝ 2. ܇࿅ϓϩάϥϜͱͯ͠TensorFlowΛ࠾༻ 3. ΦϯϥΠϯ༧ଌαʔϏεʹΑΓϞσϧͷAPIԽ 1. ֶश݁ՌCloud StorageʹอଘɺϩʔΧϧͰͷར༻
4. ࢄܕͷτϨʔχϯάΠϯϑϥͱෛՙࢄαʔϏεͱͷ࿈ܞ 42 Google Cloud ML EngineͰߟ͑Δ ※ ݕ౼ʹؔ͢Δৄࡉ: http://rand.pepabo.com/article/2017/01/18/pepabo-ml-platform-and-workflow/
StarChart StarChart is a tool to manage Google Cloud Machine
Learning training programs and model versions https://github.com/monochromegane/starchart
• όʔδϣϯཧͷସʹ͓͚Δஅج४ͱͳΔ܇࿅ϓϩάϥϜɺύϥϝλɺδϣ ϒใ·ͰؚΊͯίʔυͰཧ • ֶश࣌ͷδϣϒIDCloud Storageͷύεɺόʔδϣϯʹඥͮ͘ύϥϝλใ ͷऔಘʹ·ͭΘΔCloud MLͷࡉ͔ͳ͍উखվળ 44 StarChart
·ͱΊ
• ϖύݚͱαʔϏεͰେ͖ͳ୯ҐͰͷ՝ͷڞ༗Λܧଓ͢Δ • ݚڀ݁ՌͷಋೖͱϑΟʔυόοΫΛߴʹ͢Δ͜ͱ͕ࣄۀͷࠩผԽʹͭͳ͕Δ • ϖύݚݚڀ݁ՌΛଈ͔࣌ͭશࣾͰར༻Ͱ͖Δج൫Λ • αʔϏεಋೖɺӡ༻࣌ͷΤϯδχΞؒ࿈ܞΛ 46 ·ͱΊ
͍·ΑΓʮΈΜͳʯͷ෯Λ͛ɺͦͷʮΈΜͳʯʹରͯؔ͠৺Λ͍࣋ͬͯ͘ One Love ❝ http://blog.kentarok.org/entry/2016/12/21/002537
ݚڀһɺੵۃతʹืूதʂ http://rand.pepabo.com/
• ϖύϘݚڀॴ • http://rand.pepabo.com/ • ಛநग़ثͷֶशͱߪങཤྺΛඞཁͱ͠ͳ͍ྨࣅը૾ʹΑΔؔ࿈ݕࡧγεςϜ • http://rand.pepabo.com/article/2017/06/19/iot37-miyakey/ • ΞΫηεස༧ଌʹجͮ͘ԾαʔόͷܭըతΦʔτεέʔϦϯά
• http://rand.pepabo.com/article/2017/06/28/iot38-miyakey/ • Google Cloud ML Λ༻͍ͨػցֶशج൫ͷߏஙͱӡ༻ • https://speakerdeck.com/monochromegane/pepabo-ml-infrastructure-starchart • 2017ͷςʔϚ: One Love • http://blog.kentarok.org/entry/2016/12/21/002537 48 ࢀߟ
More Decks by monochromegane
See All by monochromegane
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
300
適応的スパムフィルタのための軽量な類似メッセージカウンタ / jsai2026-adaptive-spam-filter
monochromegane
0
6.4k
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
3
940
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
860
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
320
不確実性下における目的と手段の統合的探索に向けた連続腕バンディットの応用 / iot70_gp_rff_mab
monochromegane
2
620
なめらかなシステムと運用維持の終わらぬ未来 / dicomo2025_coherently_fittable_system
monochromegane
0
57k
ベクトル検索システムの気持ち
monochromegane
38
13k
Go言語での実装を通して学ぶ、高速なベクトル検索を支えるクラスタリング技術/fukuokago-kmeans
monochromegane
1
350
Other Decks in Technology
See All in Technology
長い仕事を任せる (Workflows、クラウドセッション、Kiro Web) | 目指せ Kiro マスター 10
inariku
PRO
3
180
あの日、見つかっていなかったらどうなっていたか
kazzpapa3
2
160
The Author Pays
hiccupps
0
190
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
230
Kiro Crew 入門 (手を離しても進む仕事) | 目指せ Kiro マスター 11
inariku
PRO
4
730
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
410
Sonnetだけで業務はまわる?
kintotechdev
1
110
これからのデータエンジニアの役割について考える / Rethinking the Role of Data Engineers in the AI Era
okiyuki99
0
460
マネージャーをエスパーにしない マネジメントされる側から始める、働きやすい現場づくり
comi190327
0
110
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
0
230
AWS Quick 入門 | 目指せ Quick マスター 01
inariku
PRO
2
340
JAWSコミュニティに 参加して1年経った結果
ssakita
0
140
Featured
See All Featured
Visualization
eitanlees
153
17k
So, you think you're a good person
axbom
PRO
2
2.3k
We Are The Robots
honzajavorek
0
440
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
1
310
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Designing Experiences People Love
moore
143
24k
Believing is Seeing
oripsolob
1
280
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
330
KATA
mclloyd
PRO
35
16k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
Designing for Timeless Needs
cassininazir
1
560