第45回 情報処理学会 インターネットと運用技術研究会 https://www.ipsj.or.jp/kenkyukai/event/csec85iot45.html
ࡾ༔հ / Pepabo R&D Institute, GMO Pepabo, Inc.2019.05.24 ୈ45ճ ใॲཧֶձ Πϯλʔωοτͱӡ༻ٕज़ݚڀձSynapse: ར༻ऀͷจ຺ʹԠͯ͡ܧଓతʹਪનख๏ͷબΛ࠷దԽ͢ΔਪનγεςϜ
View Slide
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• ༰ϕʔεܕਪન• ྨࣅը૾• ྨࣅςΩετ• ڠௐܕਪન• ࣝϕʔεܕਪન• ϋΠϒϦουܕਪન• ฒྻܕɼྻܕ…7ECαΠτͷಛఆͷ݅Ͱͷਪનख๏ͷબ• 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ΞϧΰϦζϜͷॏΈ͚ʹै͍׆༻ํΛมߋ͢Δ
Synapse24Context RoutingContext ContextMethod Method Method MethodMatching Process0.33 0.33 0.33SearchResultBanditActivity logRewardsAlgorithmsEpsilon-GreedySoftmaxFeedback
Synapse25Context RoutingContext ContextMethod Method Method MethodMatching Process0.1 0.8 0.1SearchResultBanditActivity logRewardsAlgorithmsEpsilon-GreedySoftmaxFeedback
4.ධՁ
• ECαΠτͰར༻தͷਪનख๏ͷΫϦοΫ࣮ʹΑΔఏҊख๏ͷޮՌ༧ଌ• ΫϦοΫ࣮ɿӾཡதͷʹର͢ΔਪનΛఏҊ͢Δػೳ• ਪનख๏ɿྨࣅը૾ɼྨࣅςΩετɼڠௐܕਪનʢϓϦϛςΟϒɼLLRʣɼσϞάϥϑΟοΫ• ϞϯςΧϧϩ๏ʹΑΔྦྷੵใु༧ଌΛൺֱ• ࣄલʹఆΊΔจ຺ͱͯ͠ӾཡதͷͷΧςΰϦΛ࠾༻• ࠷దԽͷޮՌଌఆɿ࠷దԽʹΑΔྦྷੵใु༧ଌͷมԽΛൺֱ• จ຺ͷޮՌଌఆɿจ຺͝ͱͷ࠷దԽͷ༗ແͰྦྷੵใु༧ଌͷมԽΛൺֱ27จ຺Λߟྀͨ͠ਪનख๏ͷબͷ࠷దԽ
จ຺͝ͱͷਪનख๏ͷޮՌͷࠩ28• จ຺ɼར༻ऀ͕ͲͷΧςΰϦΛݟ͍ͯΔ͔• ਪનख๏͔ΒͷఏҊʹର͢ΔΫϦοΫΛൺֱ• ΧςΰϦ͝ͱʹਪનख๏ͷޮՌͷ͕ࠩ͋Δ͜ͱ͕ݟͯऔΕΔΧςΰϦར༻ऀͷจ຺ͷ͏ͪγεςϜ͕ѲͰ͖ΔͷͰଞͷECαΠτͰల։͍͢͠ɽ
ྦྷੵใु༧ଌ29• ࠷దԽΛߦͳ͍ͬͯͳ͍ͷ(1.No optimization) ͱൺֱͯ͠ ࠷దԽΛ͓͜ͳͬͨͷʢ2. Overalloptimization, 3. Category-wiseoptimizationʣͷྦྷੵใु༧ଌ͕ߴ͍• ࠷ऴతͳྦྷੵใु༧ଌจ຺ߟྀͨ͠࠷దԽ(3. Category-wizeoptimization)͕࠷ߴ͍
ྦྷੵใु༧ଌʢ্ཱ͕ͪΓʣ30• ࠷ॳͷൺֱͷઌ಄1000ճͷΈΛൺֱͨ͠ͷ• จ຺ߟྀ(3. Category-wiseoptimization)ͷ߹ɼจ຺͝ͱʹֶश͕ߦΘΕΔ͜ͱ͔Β্ཱ͕ͪΓʹ͕͔͔࣌ؒͬͨ
ྦྷੵใु༧ଌʢ༏ྼࠩͷগͳ͍ͷʣ31• ࠷ॳͷൺֱͷΫϦοΫͷࠩΛҙਤతʹΊͨͷ• ࠷ॳͷ࣮ݧͱಉ͡ॱҐ͚ͮʹͳΔ͕༏ྼࠩͷஅ·Ͱʹଟ͘ͷࢼߦճΛཁͨ͠
• ਪનख๏ͷ༏ྼΛॿ͢Δదͳ݅Λબఆͯ͠ɼ͜ΕʹԠͨ͡ਪનख๏ͷબͷ࠷దԽΛߦ͏͜ͱͰྦྷੵใुֹͷ্ʹͭͳ͕Δ• ຊݚڀڥͷมԽͷଟ͍ঢ়گΛҙਤ͍ͯ͠Δ͜ͱ͔Βɼগͳ͍ࢼߦճͰͷ࠷దԽΛਤΕΔΑ͏ͳํࡦʹΑΔվળ͕ظͰ͖Δ• ࢼߦճͷ૿Ճʹ͍୳ࡧΛΊΔʢΞχʔϦϯάʣ• ଞͷόϯσΟοτΞϧΰϦζϜʢUCB, softmax…)• จ຺͖όϯσΟοτ32ධՁ
5.·ͱΊ
• ར༻ऀͷจ຺ʹԠͯ͡ਪનख๏ͷಘखෆಘख͕͋Δ͜ͱ͕Θ͔ͬͨ• ఏҊख๏ʹΑΓख๏ಋೖͱจ຺ʹԠͨ͡࠷దͳख๏બఆ͕༰қʹͳΓɼػձଛࣦͷͳ͍ਪનγεςϜΛޮతͳߏங͕Մೳͱͳͬͨ• ݱࡏɼจ຺ΛࣄલʹఆΊΔඞཁ͕͋ΔͨΊɼಘखෆಘख͕ੜ͡Δจ຺ʹ͍ͭͯௐࠪΛਐΊΔ• ಘखෆಘखΛิ͍߹͑ΔΑ͏ʹͳͬͨ͜ͱͰɼݶఆతͰ͋ͬͯޮՌͷߴ͍ਪનख๏ͷ༗༻ੑ͕૿͢͜ͱ͕ߟ͑ΒΕΔͨΊɼͦͷΑ͏ͳख๏ͷݕ౼ΛਐΊΔɽ34·ͱΊ