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
Synapse: 利用者の文脈に応じて 継続的に推薦手法の選択を 最適化する推薦システム/io...
Search
monochromegane
May 24, 2019
Technology
0
820
Synapse: 利用者の文脈に応じて 継続的に推薦手法の選択を 最適化する推薦システム/iot45_synapse
第45回 情報処理学会 インターネットと運用技術研究会
https://www.ipsj.or.jp/kenkyukai/event/csec85iot45.html
monochromegane
May 24, 2019
Tweet
Share
More Decks by monochromegane
See All by monochromegane
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
190
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
710
Online Nonstationary and Nonlinear Bandits with Recursive Weighted Gaussian Process
monochromegane
0
420
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
2
770
Go言語でMac GPUプログラミング
monochromegane
1
490
Contextual and Nonstationary Multi-armed Bandits Using the Linear Gaussian State Space Model for the Meta-Recommender System
monochromegane
1
940
迅速な学習機構を用いて逐次適応性を損なうことなく非線形性を扱う文脈付き多腕バンディット手法/extreme_neural_linear_bandits
monochromegane
0
2.1k
再帰化への認知的転回/the-turn-to-recursive-system
monochromegane
0
760
仮想的な探索を用いて文脈や時間の経過による番狂わせにも迅速に追従する多腕バンディット手法/wi2_lkf_bandits
monochromegane
0
690
Other Decks in Technology
See All in Technology
マルチデータプロダクト開発・運用に耐えるためのデータ組織・アーキテクチャの遷移
mtpooh
1
390
ビジネスと現場活動をつなぐソフトウェアエンジニアリング~とあるスタートアッププロダクトの成長記録より~
mizunori
0
120
アンチパターンのアーキテクチャと組織 / Anti-Pattern Software Architecture and Organization
oztick139
0
160
Googleマップ/Earthが一般化した 地図タイルのイマ
mapconcierge4agu
1
170
データの品質が低いと何が困るのか
kzykmyzw
2
160
[JAWS-UG栃木]地方だからできたクラウドネイティブ事例大公開! / jawsug_tochigi_tachibana
biatunky
0
210
さいきょうのアーキテクチャを生み出すセンスメイキング
jgeem
0
400
実践!OpenTelemetry
oracle4engineer
PRO
0
180
カスタムインストラクションでGitHub Copilotをカスタマイズ!
07jp27
8
1.7k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
56k
ゆもつよがこの30年間自ら経験してきたQA、テストの歴史と未来
ymty
3
620
Zenn のウラガワ ~エンジニアのアウトプットを支える環境で Google Cloud が採用されているワケ~ #burikaigi #burikaigi_h
kongmingstrap
19
7.3k
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
A designer walks into a library…
pauljervisheath
205
24k
Writing Fast Ruby
sferik
628
61k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Faster Mobile Websites
deanohume
306
31k
Designing for humans not robots
tammielis
250
25k
Building Adaptive Systems
keathley
39
2.4k
Designing Experiences People Love
moore
139
23k
Site-Speed That Sticks
csswizardry
3
320
Transcript
ࡾ༔հ / Pepabo R&D Institute, GMO Pepabo, Inc. 2019.05.24 ୈ45ճ
ใॲཧֶձ Πϯλʔωοτͱӡ༻ٕज़ݚڀձ Synapse: ར༻ऀͷจ຺ʹԠͯ͡ ܧଓతʹਪનख๏ͷબΛ ࠷దԽ͢ΔਪનγεςϜ
1. ͡Ίʹ 2. എܠ 3. ఏҊख๏ 4. ධՁ 5. ·ͱΊ
2 ࣍
1. ͡Ίʹ
• ECαΠτͰ૿େʹ͏ใաଟΛղܾ͢ΔͨΊΛࣗಈతʹఏ Ҋ͢ΔػೳʢਪનγεςϜʣ͕ಋೖ͞ΕΔɽ • ਪનख๏ਪનࠜڌͱͳΔใݯํࣜʹΑͬͯબఆ͢Δ͕ҟͳΔ • ར༻ऀͷཁٻΛຬͨ͢Λબఆ͢ΔՄೳੑͷߴ͍ਪનख๏Λબ͢Δ͜ͱ͕ ӡӦऀʹͱͬͯॏཁ 4 ݚڀͷత
• Which is the best ? • ༰ϕʔεܕਪન • ྨࣅը૾
• ྨࣅςΩετ • ڠௐܕਪન • ࣝϕʔεܕਪન • ϋΠϒϦουܕਪન • ฒྻܕɼྻܕ… 5 ਪનख๏ͷબ
• Which is the best • ༰ϕʔεܕਪન • ྨࣅը૾ •
ྨࣅςΩετ • ڠௐܕਪન • ࣝϕʔεܕਪન • ϋΠϒϦουܕਪન • ฒྻܕɼྻܕ… 6 ಛఆͷ݅Ͱͷਪનख๏ͷબ • In the case ? • ਫ਼ • ͷಛੑ • ༰ͷදݱྗ • ίʔϧυελʔτ • ۙࣅ • จ຺ • ར༻ऀͷঢ়گͱཁٻ
• Which is the best • ༰ϕʔεܕਪન • ྨࣅը૾ •
ྨࣅςΩετ • ڠௐܕਪન • ࣝϕʔεܕਪન • ϋΠϒϦουܕਪન • ฒྻܕɼྻܕ… 7 ECαΠτͷಛఆͷ݅Ͱͷਪનख๏ͷબ • In the case • ਫ਼ • ͷಛੑ • ༰ͷදݱྗ • ίʔϧυελʔτ • ۙࣅ • จ຺ • ར༻ऀͷঢ়گͱཁٻ • On a EC site ? • ܧଓతͳվળ • ػೳՃ • ར༻ऀ૿Ճ • அଓతͳվѱ • ෆ۩߹ • γεςϜෛՙ • ݱࡏͷ࠷ળखͷٻ
ਪનख๏ͷ༏ྼଟ͘ͷ݅ʢจ຺ʣʹΑͬͯࠨӈ͞ΕΔ 8 ݚڀͷഎܠͱఏҊͷࠎࢠ ࣄલʹఆΊͨจ຺͝ͱʹਪનख๏ͷબΛࣗಈత͔ͭܧଓతʹ࠷దԽ͢Δਪન γεςϜͷఏҊ ༗ޮͳਪનख๏Λػձଛࣦ͕ͳ͍Α͏ʹจ຺ʹԠ͍͚͍ͯͨ͡
3. എܠ
• ᶃ ਪનख๏ͷ༏ྼ͕จ຺ʹΑͬͯมԽ͢Δ • ᶄ ༏ྼͷมԽ͢Δ൚༻తͰ໌֬ͳج४͕ͳ͍ • ᶅ ༏ྼ͕ܧଓతʹมԽ͢Δ 10
ਪનख๏ͷબʹ·ͭΘΔ՝ ECαΠτͷӡӦऀར༻ऀͷཁٻΛຬͨ͢Մೳੑͷߴ͍ਪનख๏Λબ͍ͨ͠ ͕ɼҎԼͷ՝ͷͨΊಋೖઌ͝ͱͷධՁͱௐ͕ߦΘΕ͍ͯΔɽ
11 ՝ᶃ ਪનख๏ͷ༏ྼ͕จ຺ʹΑͬͯมԽ͢Δ • ਪનख๏ͷ༏ྼଟ͘ͷ݅ʢจ຺ʣʹΑͬͯࠨӈ͞ΕΔ • ਪનख๏ͷલఏํࣜʹىҼ͢Δ੍ • ਪનରͱͳΔͷಛੑ •
ԠදࣔॱংͳͲͷ࣮ཁҼ • ΫϦοΫߪೖͳͲͷධՁࢦඪ • ਪન݁ՌΛධՁ͢Δར༻ऀଆͷঢ়گ
12 ՝ᶃ ਪનख๏ͷ༏ྼ͕จ຺ʹΑͬͯมԽ͢Δ ਪનରͱͳΔͷಛੑɼධՁࢦඪʹΑΔ༏ྼࠩͷྫ
13 ՝ᶃ ਪનख๏ͷ༏ྼ͕จ຺ʹΑͬͯมԽ͢Δ ਪનख๏ͷ༏ྼଟ͘ͷ݅ʢจ຺ʣʹΑͬͯࠨӈ͞ΕΔ ݅ʢจ຺ʣΛఆΊͯɼจ຺͝ͱʹదͨ͠ਪનख๏Λ͍͚Δ͜ͱͰਪનγ εςϜશମͰར༻ऀͷཁٻΛຬͨ͢Λબఆ͢ΔՄೳੑΛߴΊ͍ͨ
14 ՝ᶄ ༏ྼͷมԽ͢Δ൚༻తͰ໌֬ͳج४͕ͳ͍ • ༏ྼࠩͷج४ʹ͍ͭͯͷҰൠతͳ͜Ε·ͰͷใࠂධՁߟ͕͋Δͷ ͷจ຺ґଘͷͨΊ൚༻తͰ໌֬ͳج४ଘࡏ͠ͳ͍ • Ұൠతͳߟʹج͖ͮͭͭɼ࣮ڥͰͷධՁʹΑ͍͚ͬͯͷج४ ΛٻΊΔඞཁ͕͋Δ
• ϋΠϒϦουܕਪન • ਪનख๏ΛΈ߹Θ֤ͤͯख๏ͷॴΛิ͏ • ߪങཤྺ͕ੵ͞ΕΔ·Ͱ༰ϕʔεΛॏࢹɼੵޙʹڠௐܕΛॏࢹ 15 ՝ᶄ ༏ྼͷมԽ͢Δ൚༻తͰ໌֬ͳج४͕ͳ͍ $53
)JTUPSZDPVOU -PX .JEEMF )JHI $POUFOUCBTF $PDPSBCPSBUFCBTF ڠௐܕਪન͕ߪങཤྺͷੵʹΑͬͯਫ਼্͕͠༰ϕʔεܕ ਪનͷਫ਼ͱٯస͢Δ͜ͱΛදݱͨࣜ͠ਤ ߪങཤྺͷੵ͕۩ମతʹԿ݅ʹୡͨ࣌͠ʹ༰ϕʔεܕਪનͱ Γସ͑Δ͖͔࣮ڥͰͷධՁ͕ඞཁ
16 ՝ᶅ ༏ྼ͕ܧଓతʹมԽ͢Δ ECαΠτɼ࣮ڥͰͷධՁʹΑͬͯಘΒΕͨ݅͝ͱͷޮՌࠩʹج͍ͮͨਪ નख๏ͷ͍͚ʹΑͬͯਪનγεςϜͷޮՌΛܧଓతʹ࠷େԽ͍ͨ͠ 1. จ຺ͷΓ͚ 2. ৽͍͠ਪનख๏ͷಋೖ 3.
ಋೖޙͷ࠶ܭଌɼޮՌఆɼޮՌతͳख๏ͷద༻ ͜ΕΒΛఆظత͔ͭ࠷ͰߦΘͳ͚Εӡ༻ڥͰػձଛࣦ͕ൃੜ͢Δ
3. ఏҊख๏
• ᶃ ਪનख๏ͷ༏ྼ͕จ຺ʹΑͬͯมԽ͢Δ • จ຺ΛఆΊͯɼఆΊͨจ຺͝ͱʹਪનख๏Λ͍͚Δ • ᶄ ༏ྼͷมԽ͢Δ൚༻తͰ໌֬ͳج४͕ͳ͍ • ఆΊͨจ຺͝ͱʹ࣮ڥͰͷධՁΛߦ͏
• ᶅ ༏ྼ͕ܧଓతʹมԽ͢Δ • จ຺ਪનख๏ͷಋೖޙʹ࣌ؒࠩͳ͘దԠ͢Δ 18 ՝ͷཧ
• ར༻ऀͷཁٻΛຬͨ͢Λબఆ͢ΔՄೳੑͷߴ͍ਪનख๏Λӡ༻ڥͰػձ ଛࣦ͕ൃੜ͠ͳ͍Α͏ࣗಈత͔ͭܧଓతʹར༻͍ͨ͠ 19 ఏҊख๏ 1. จ຺ͷఆٛͱಋೖ 2. ৽͍͠ਪનख๏ͷಋೖ 3.
ಋೖޙͷ࠶ܭଌɼޮՌఆɼޮՌతͳख๏ͷద༻ • ࣄલʹఆΊͨจ຺͝ͱʹਪનख๏ͷબΛࣗಈత͔ͭܧଓతʹ࠷దԽ͢Δਪન γεςϜΛఏҊ
20 ਪનख๏ͷಋೖ • ධՁରͷਪનख๏ΛਪનγεςϜ͕Ձʹѻ͑ΔΑ͏ڞ௨ͷΠϯλʔϑΣʔ εΛ࣋ͭϞδϡʔϧͱͯ͠ఆٛ • ਪનॲཧڞ௨͢ΔϑΟϧλʹΑͬͯߏ͞ΕΔ • Profileʢར༻ऀͷใΛऩूʣ •
AssociationʢϓϩϑΝΠϧͱ݅ͷඥ͚ʣ • Searchʢ݅ʹै͍ީิΛݕࡧɼฒସ͑ʣ • ϑΟϧλͷڞ௨ར༻ʹΑΓอकੑͷ্
• ਪન݁Ռʹର͢Δར༻ऀͷԠΛܭଌ͢ΔͨΊͷϩάઃܭ • ར༻ऀ͝ͱͷϦΫΤετΛه • ར༻ऀ͝ͱͷਪનϦΫΤετʹର͢Δਪન݁ՌΛه • ਪનϦΫΤετͷޙͷߦಈ͕ਪન݁Ռͷʹؔ͢Δߦಈ͔Λൺֱ 21 จ຺͝ͱͷܭଌͱධՁ
5JNF $POUFYU .FUIPE 6TFS 1BUI 1BSBNT 3FTQPOTF $IBJS JNBHF " SFDPNNFOE " TIPX $IBJS DG # SFDPNNFOE # TIPX ਪનͷडೖ
• ෳͷਪનख๏͔ΒಘΒΕΔޮՌΛ࠷େԽ͢Δ • ଟόϯσΟοτͱͯ͠ղऍ͠ɼෳͷਪનख๏ͷޮՌʢΫϦοΫߪ ೖʣΛ࠷େԽ͢ΔͨΊEpsilon-GreedyΞϧΰϦζϜΛ࠾༻ • A/Bςετʹ͓͚ΔධՁͷख๏ར༻࣌ͷػձଛࣦΛճආ͢ΔͨΊͷख๏ • ࠷ॳA/BςετͷΑ͏ʹಉසͰΓସ͑Δ͕ධՁͷੵʢใु:rewardʣ ʹ͍ར༻සʹॏΈ͚͕ͳ͞ΕΔ
22 จ຺͝ͱͷධՁ Џ ׆༻ ୳ࡧ &QTJMPO(SFFEZΞϧΰϦζϜ
23 ධՁ݁Ռͷө ਪનγεςϜɼଟόϯσΟοτͱͯ͠ѻͬͨจ຺͝ͱͷޮՌతͳਪનख ๏ͷબ݁ՌΛఆظతʹऔΓࠐΈɼEpsilon-GreedyΞϧΰϦζϜͷॏΈ͚ʹ ै͍׆༻ํΛมߋ͢Δ
Synapse 24 Context Routing Context Context Method Method Method Method
Matching Process 0.33 0.33 0.33 Search Result Bandit Activity log Rewards Algorithms Epsilon- Greedy Softmax Feedback
Synapse 25 Context Routing Context Context Method Method Method Method
Matching Process 0.1 0.8 0.1 Search Result Bandit Activity log Rewards Algorithms Epsilon- Greedy Softmax Feedback
4. ධՁ
• ECαΠτͰར༻தͷਪનख๏ͷΫϦοΫ࣮ʹΑΔఏҊख๏ͷޮՌ༧ଌ • ΫϦοΫ࣮ɿӾཡதͷʹର͢ΔਪનΛఏҊ͢Δػೳ • ਪનख๏ɿྨࣅը૾ɼྨࣅςΩετɼڠௐܕਪનʢϓϦϛςΟϒɼLLRʣɼ σϞάϥϑΟοΫ • ϞϯςΧϧϩ๏ʹΑΔྦྷੵใु༧ଌΛൺֱ •
ࣄલʹఆΊΔจ຺ͱͯ͠ӾཡதͷͷΧςΰϦΛ࠾༻ • ࠷దԽͷޮՌଌఆɿ࠷దԽʹΑΔྦྷੵใु༧ଌͷมԽΛൺֱ • จ຺ͷޮՌଌఆɿจ຺͝ͱͷ࠷దԽͷ༗ແͰྦྷੵใु༧ଌͷมԽΛൺֱ 27 จ຺Λߟྀͨ͠ਪનख๏ͷબͷ࠷దԽ
จ຺͝ͱͷਪનख๏ͷޮՌͷࠩ 28 • จ຺ɼར༻ऀ͕ͲͷΧ ςΰϦΛݟ͍ͯΔ͔ • ਪનख๏͔ΒͷఏҊʹର͢Δ ΫϦοΫΛൺֱ • ΧςΰϦ͝ͱʹਪનख๏ͷޮ
Ռͷ͕ࠩ͋Δ͜ͱ͕ݟͯऔΕ Δ ΧςΰϦར༻ऀͷจ຺ͷ͏ͪγεςϜ͕ ѲͰ͖ΔͷͰଞͷECαΠτͰల։͍͢͠ɽ
ྦྷੵใु༧ଌ 29 • ࠷దԽΛߦͳ͍ͬͯͳ͍ͷ(1. No optimization) ͱൺֱͯ͠ ࠷ద ԽΛ͓͜ͳͬͨͷʢ2. Overall
optimization, 3. Category-wise optimizationʣͷྦྷੵใु༧ଌ͕ ߴ͍ • ࠷ऴతͳྦྷੵใु༧ଌจ຺ߟྀ ͨ͠࠷దԽ(3. Category-wize optimization)͕࠷ߴ͍
ྦྷੵใु༧ଌʢ্ཱ͕ͪΓʣ 30 • ࠷ॳͷൺֱͷઌ಄1000ճͷΈΛൺ ֱͨ͠ͷ • จ຺ߟྀ(3. Category-wise optimization)ͷ߹ɼจ຺͝ͱʹ ֶश͕ߦΘΕΔ͜ͱ͔Β্ཱ͕ͪ
Γʹ͕͔͔࣌ؒͬͨ
ྦྷੵใु༧ଌʢ༏ྼࠩͷগͳ͍ͷʣ 31 • ࠷ॳͷൺֱͷΫϦοΫͷࠩΛҙ ਤతʹΊͨͷ • ࠷ॳͷ࣮ݧͱಉ͡ॱҐ͚ͮʹͳΔ ͕༏ྼࠩͷஅ·Ͱʹଟ͘ͷࢼߦ ճΛཁͨ͠
• ਪનख๏ͷ༏ྼΛॿ͢Δదͳ݅Λબఆͯ͠ɼ͜ΕʹԠͨ͡ਪનख๏ͷબ ͷ࠷దԽΛߦ͏͜ͱͰྦྷੵใुֹͷ্ʹͭͳ͕Δ • ຊݚڀڥͷมԽͷଟ͍ঢ়گΛҙਤ͍ͯ͠Δ͜ͱ͔Βɼগͳ͍ࢼߦճͰͷ ࠷దԽΛਤΕΔΑ͏ͳํࡦʹΑΔվળ͕ظͰ͖Δ • ࢼߦճͷ૿Ճʹ͍୳ࡧΛΊΔʢΞχʔϦϯάʣ • ଞͷόϯσΟοτΞϧΰϦζϜʢUCB,
softmax…) • จ຺͖όϯσΟοτ 32 ධՁ
5. ·ͱΊ
• ར༻ऀͷจ຺ʹԠͯ͡ਪનख๏ͷಘखෆಘख͕͋Δ͜ͱ͕Θ͔ͬͨ • ఏҊख๏ʹΑΓख๏ಋೖͱจ຺ʹԠͨ͡࠷దͳख๏બఆ͕༰қʹͳΓɼػձଛ ࣦͷͳ͍ਪનγεςϜΛޮతͳߏங͕Մೳͱͳͬͨ • ݱࡏɼจ຺ΛࣄલʹఆΊΔඞཁ͕͋ΔͨΊɼಘखෆಘख͕ੜ͡Δจ຺ʹ͍ͭͯ ௐࠪΛਐΊΔ • ಘखෆಘखΛิ͍߹͑ΔΑ͏ʹͳͬͨ͜ͱͰɼݶఆతͰ͋ͬͯޮՌͷߴ͍ਪ
નख๏ͷ༗༻ੑ͕૿͢͜ͱ͕ߟ͑ΒΕΔͨΊɼͦͷΑ͏ͳख๏ͷݕ౼ΛਐΊΔɽ 34 ·ͱΊ
None