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
850
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
ベクトル検索システムの気持ち
monochromegane
33
10k
Go言語での実装を通して学ぶ、高速なベクトル検索を支えるクラスタリング技術/fukuokago-kmeans
monochromegane
1
170
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
240
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
870
Online Nonstationary and Nonlinear Bandits with Recursive Weighted Gaussian Process
monochromegane
0
520
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
2
940
Go言語でMac GPUプログラミング
monochromegane
1
580
Contextual and Nonstationary Multi-armed Bandits Using the Linear Gaussian State Space Model for the Meta-Recommender System
monochromegane
1
1k
迅速な学習機構を用いて逐次適応性を損なうことなく非線形性を扱う文脈付き多腕バンディット手法/extreme_neural_linear_bandits
monochromegane
0
2.2k
Other Decks in Technology
See All in Technology
RubyKaigi NOC 近況 2025
sorah
3
1k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
9
1.7k
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
2
160
VitePress & MCPでアプリ仕様のオープン化に挑戦する
hal_spidernight
0
120
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
140
さくらのクラウド開発の裏側
metakoma
PRO
18
5.3k
Асинхронная коммуникация в Go: от понятного к душному. Дима Некрасов, Otello, 2ГИС
lamodatech
0
2.2k
計測による継続的なCI/CDの改善
sansantech
PRO
7
1.5k
Previewでもここまで追える! Azure AI Foundryで始めるLLMトレース
tomodo_ysys
2
710
転職したらMCPサーバーだった件
nwiizo
10
8.3k
Software Architecture in an AI-Driven World
atty303
44
16k
TanStack Start 技術選定の裏側 / Findy-Lunch-LT-TanStack-Start
iktakahiro
1
150
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
523
40k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
GraphQLとの向き合い方2022年版
quramy
46
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
120
52k
Music & Morning Musume
bryan
47
6.5k
How GitHub (no longer) Works
holman
314
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
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