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
210
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
740
Online Nonstationary and Nonlinear Bandits with Recursive Weighted Gaussian Process
monochromegane
0
460
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
2
800
Go言語でMac GPUプログラミング
monochromegane
1
520
Contextual and Nonstationary Multi-armed Bandits Using the Linear Gaussian State Space Model for the Meta-Recommender System
monochromegane
1
960
迅速な学習機構を用いて逐次適応性を損なうことなく非線形性を扱う文脈付き多腕バンディット手法/extreme_neural_linear_bandits
monochromegane
0
2.1k
再帰化への認知的転回/the-turn-to-recursive-system
monochromegane
0
770
仮想的な探索を用いて文脈や時間の経過による番狂わせにも迅速に追従する多腕バンディット手法/wi2_lkf_bandits
monochromegane
0
700
Other Decks in Technology
See All in Technology
開発組織を進化させる!AWSで実践するチームトポロジー
iwamot
2
490
Introduction to OpenSearch Project - Search Engineering Tech Talk 2025 Winter
tkykenmt
2
150
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
230
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
510
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
110
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
1.4k
Pwned Labsのすゝめ
ken5scal
2
530
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
190
JAWS FESTA 2024「バスロケ」GPS×サーバーレスの開発と運用の舞台裏/jawsfesta2024-bus-gps-serverless
ma2shita
3
290
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
750
開発者のための FinOps/FinOps for Engineers
oracle4engineer
PRO
2
210
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Designing for humans not robots
tammielis
250
25k
What's in a price? How to price your products and services
michaelherold
244
12k
Gamification - CAS2011
davidbonilla
80
5.2k
Navigating Team Friction
lara
183
15k
KATA
mclloyd
29
14k
Automating Front-end Workflow
addyosmani
1369
200k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Embracing the Ebb and Flow
colly
84
4.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
580
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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