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
Sanny: 大規模ECサイトのための精度と速度を両立した分散可能な近似近傍探索エンジン/io...
Search
monochromegane
June 28, 2018
Technology
0
980
Sanny: 大規模ECサイトのための精度と速度を両立した分散可能な近似近傍探索エンジン/iot42_sanny
第42回 情報処理学会 インターネットと運用技術研究会
https://www.iot.ipsj.or.jp/meeting/42-program/
monochromegane
June 28, 2018
Tweet
Share
More Decks by monochromegane
See All by monochromegane
ベクトル検索システムの気持ち
monochromegane
33
11k
Go言語での実装を通して学ぶ、高速なベクトル検索を支えるクラスタリング技術/fukuokago-kmeans
monochromegane
1
180
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
250
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
910
Online Nonstationary and Nonlinear Bandits with Recursive Weighted Gaussian Process
monochromegane
0
550
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
2
960
Go言語でMac GPUプログラミング
monochromegane
1
620
Contextual and Nonstationary Multi-armed Bandits Using the Linear Gaussian State Space Model for the Meta-Recommender System
monochromegane
1
1.1k
迅速な学習機構を用いて逐次適応性を損なうことなく非線形性を扱う文脈付き多腕バンディット手法/extreme_neural_linear_bandits
monochromegane
0
2.2k
Other Decks in Technology
See All in Technology
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
120
「伝える」を加速させるCursor術
naomix
0
640
Model Mondays S2E01: Advanced Reasoning
nitya
0
420
上長や社内ステークホルダーに対する解像度を上げて、より良い補完関係を築く方法 / How-to-increase-resolution-and-build-better-complementary-relationships-with-your-bosses-and-internal-stakeholders
madoxten
13
7.9k
評価の納得感を2段階高める「構造化フィードバック」
aloerina
1
260
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
350
ハノーバーメッセ2025座談会.pdf
iotcomjpadmin
0
120
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
160
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
2
110
2025/6/21 日本学術会議公開シンポジウム発表資料
keisuke198619
2
430
讓測試不再 BB! 從 BDD 到 CI/CD, 不靠人力也能 MVP
line_developers_tw
PRO
0
270
AWS と定理証明 〜ポリシー言語 Cedar 開発の舞台裏〜 #fp_matsuri / FP Matsuri 2025
ytaka23
9
2.5k
Featured
See All Featured
A designer walks into a library…
pauljervisheath
206
24k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
180
Into the Great Unknown - MozCon
thekraken
39
1.8k
A Modern Web Designer's Workflow
chriscoyier
693
190k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.8k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Transcript
ࡾ༔հ / Pepabo R&D Institute, GMO Pepabo, Inc. 2018.06.28 ୈ42ճ
ใॲཧֶձ Πϯλʔωοτͱӡ༻ٕज़ݚڀձ Sanny: େنECαΠτͷͨΊͷ ਫ਼ͱΛཱ྆ͨ͠ ࢄՄೳͳۙࣅۙ୳ࡧΤϯδϯ
1. ECαΠτʹ͓͚ΔࣗಈఏҊͷഎܠͱຊݚڀͷత 2. ैདྷͷۙࣅۙ୳ࡧͷ՝ 3. େنECαΠτͷͨΊͷͱਫ਼Λཱ྆ͨ͠ࢄՄೳ ͳۙࣅۙ୳ࡧΤϯδϯ 4. ࣮ݧͱߟ 5.
·ͱΊ 2 ࣍
1. ECαΠτʹ͓͚ΔࣗಈఏҊͷഎܠͱ ຊݚڀͷత
• ECαΠτͷใաଟΛղܾ͢ΔͨΊɼͷࣗಈఏҊඞਢػೳ • ECαΠτͷࣗಈఏҊػೳͰɼରʹର͢Δ͍͔ͭ͘ͷީิΛఏࣔ͢Δ • ECαΠτͷࣗಈఏҊػೳʹɼൢചػձͷଛࣦΛ͙ͨΊɼఏҊ༰ͷత֬ ͞ͱॆͳԠͷཱ͕྆ٻΊΒΕΔ 4 എܠ -
ECαΠτͷࣗಈఏҊػೳ
• ͷࣗಈఏҊಉ࢜ͷྨࣅੑΛݩʹߦ͏ • ྨࣅੑͷൺֱʹɼػցతʹऔΓѻ͏͜ͱ͕Ͱ͖Δईͱͯ͠ଟ࣍ݩͷ࣮ϕ ΫτϧΛ༻͍Δ (= ಛྔ) 5 എܠ -
ECαΠτͷࣗಈఏҊػೳͱۙ୳ࡧ ECαΠτͷࣗಈఏҊػೳʹɼͷಛྔू߹Λରͱͨۙ͠୳ࡧ͕ ඞཁͱͳΔɽ͜ͷ࣌ɼରͷಛྔ͕ݕࡧ࣭σʔλʢΫΤϦʣͱͳΔɽ
• େن શମ͔ΒఏҊରΛ୳ࡧ͢ΔͨΊɼಛྔू߹ͷ݅औΓѻ͏ʹ ൺྫͯ͠૿Ճ͢ΔɽେنͳECαΠτͰेສʙඦສ݅ͷಛྔू߹ͱ ͳΔɽ • ߴ࣍ݩ ಛੑͷత֬ͳදݱͷͨΊɼߴ࣍ݩͷಛྔ͕༻͍ΒΕΔɽֶशࡁΈCNN Λಛநग़ثͱͯ͠ར༻ͯ͠ը૾͔ΒಘΒΕΔಛྔɼςΩετΛࢄදݱ ม͢ΔWord2vec͔ΒಘΒΕΔಛྔͷ࣍ݩඦʙઍ࣍ݩͱͳΔɽ
6 എܠ - ECαΠτͷͷಛྔू߹
• ࣄલʹۙू߹ΛٻΊ͓ͯ͘ ͷՃɼߋ৽ɼআ͕සൟʹൃੜ͢ΔECαΠτͰɼఏҊ༰ͷաෆ ʹΑΔൢചػձͷଛࣦΛආ͚ΔͨΊɼࢉग़ࡁΈۙू߹ͷߋ৽Λఆظతʹߦ͏ ඞཁ͕͋Δɽ ·ͨɼΫΤϦͱͳΔର͕ECαΠτͷ֎෦͔Β༩͑ΒΕΔΑ͏ͳ߹ɼ ༧Ίࢉग़ࡁΈͷۙू߹Λར༻͢Δ͜ͱͰ͖ͳ͍ɽ ˠ ߴͳۙ୳ࡧ͕ඞཁ 7
എܠ - େن͔ͭߴ࣍ݩͳू߹ʹର͢Δۙ୳ࡧ(1/2) େن͔ͭߴ࣍ݩͷಛྔू߹ʹର͢Δۙ୳ࡧܭࢉྔ͕૿Ճ͢Δ
• ਫ਼Λ٘ਜ਼ʹͯ͠ܭࢉྔΛ͑Δۙࣅۙ୳ࡧ ਫ਼ͱ͕τϨʔυΦϑͷؔʹ͋ΔͨΊɼख๏ͷఆ͢Δσʔλ࣍ݩ Λ͑ͨ߹ʹਫ਼ͱͷཱ͕྆ࠔʹͳΔɽ 8 എܠ - େن͔ͭߴ࣍ݩͳू߹ʹର͢Δۙ୳ࡧ(2/2) େن͔ͭߴ࣍ݩͷಛྔू߹ʹର͢Δۙ୳ࡧܭࢉྔ͕૿Ճ͢Δ
ECαΠτͰऔΓѻ͏͔ΒɼఏҊ༰ͷత֬͞ͱ୳ࡧΛཱ྆ͨ͠ͷ ࣗಈఏҊػೳΛ࣮ݱ͢ΔͨΊɼ େن͔ͭߴ࣍ݩϕΫτϧू߹Λରͱͨ͠ਫ਼ͱΛཱ྆ͨۙ͠ࣅۙ୳ ࡧͷΈΛݕ౼͢Δ 9 ຊݚڀͷత
2. ैདྷͷۙࣅۙ୳ࡧͷ՝
• େنͳECαΠτͰѻ͏ಛྔɼେن͔ͭߴ࣍ݩϕΫτϧͷू߹ͱͳΔ • ࣗಈఏҊػೳͰɼ͜ͷू߹͔Βݕࡧ࣭σʔλʹྨࣅ͢Δ͍͔ͭ͘ͷϕΫτ ϧΛҙͷڑؔΛͬͯ୳ࡧ͢Δɽۙ୳ࡧɽ • ۙ୳ࡧʹ͓͍ͯɼਖ਼֬Ͱ͋Δ͕ɼσʔλͱ࣍ݩʹൺྫͯ͠ܭࢉྔ͕૿ Ճ͢Δઢܗ୳ࡧݱ࣮తͰͳ͍ • ׂۭؒہॴੑӶහܕϋογϡͳͲͷํࣜʹΑͬͯܭࢉྔΛݮ
• ಛʹେن͔ͭߴ࣍ݩϕΫτϧू߹ʹରͯ͠ɼਫ਼Λ٘ਜ਼ʹͯ͠ܭࢉྔΛ ͑Δۙࣅղ͕༻͍ΒΕΔɽۙࣅۙ୳ࡧɽ 11 ࣗಈఏҊػೳͱۙࣅۙ୳ࡧ
• ࣗಈఏҊػೳʹɼఏҊ༰ͷత֬͞ͱॆͳԠ͕ٻΊΒΕΔɽ • ਫ਼ͱΛཱ྆͢Δۙࣅۙ୳ࡧͷΈ͕ඞཁɽ • ଟछଟ༷ͳۙࣅۙ୳ࡧͷΞϧΰϦζϜͦΕΒΛ࣮ͨ͠ϥΠϒϥϦ͕ެ։ɼ ར༻͞Ε͍ͯΔɽ • ΞϧΰϦζϜ͝ͱʹॴॴ͕͋ΓɼݸʑͷΞϧΰϦζϜվળޮՌ͕ݶఆత 12
ۙࣅۙ୳ࡧͷվળͱ՝ • ҰํͰɼଟ͘ͷΞϧΰϦζϜɼॲཧରσʔλͱ࣍ݩʹੑೳ͕ґଘ͢Δ • ୳ࡧ͋ͨΓͷॲཧରͷॖখ͕ɼશͯͷΞϧΰϦζϜʹޮՌత
13 େن͔ͭߴ࣍ݩϕΫτϧू߹ͷղ͘͠ݮ ߦํͷղ ྻํͷղ ྻํͷݮ ۙ ۙ ۙީิ ΫΤϦR ۙ
BSHNJOE R Y Y㱨ۙީิ ΫΤϦR R@ R@ R@ E` R@ Y Y㱨9@ X_1 X_2 X_3 E` R@ Y Y㱨9@ E` R@ Y Y㱨9@ BSHNJO\E` R@ Y E` R@ Y E` R@ Y ^ Y㱨9 ྻ͝ͱʹڑܭࢉͷҰ෦Λ࣮ࢪ ڑܭࢉ݁ՌΛूͯۙ͠୳ࡧ ࣍ݩݮ
14 େن͔ͭߴ࣍ݩϕΫτϧू߹ͷղ͘͠ݮ ߦํͷղ ྻํͷղ ྻํͷݮ .VKB .BSJVT BOE%BWJE(-PXF4DBMBCMFOFBSFTUOFJHICPSBMHPSJUINTGPSIJHIEJNFOTJPOBM EBUB*&&&USBOTBDUJPOTPOQBUUFSOBOBMZTJTBOENBDIJOFJOUFMMJHFODF
Ұఆͷσʔλ͝ͱʹղɽ֤ू߹ʹ͓͚ΔۙީิͱڑΛ ूۙ͠୳ࡧ͢Δɽ࣍ݩͷґଘ͕Δɽ +FHPV )FSWF .BUUIJKT%PV[F BOE$PSEFMJB4DINJE1SPEVDURVBOUJ[BUJPOGPSOFBSFTU OFJHICPSTFBSDI*&&&USBOTBDUJPOTPOQBUUFSOBOBMZTJTBOENBDIJOFJOUFMMJHFODF Ұఆͷ࣍ݩ͝ͱʹղɽ֤ू߹ʹ͓͚ΔશσʔλͷڑΛू ͯۙ͠୳ࡧɽσʔλͷґଘ͕Δɽ ओੳ 1$" ͳͲʹΑͬͯ࣍ݩݮΛߦ͏ɽਫ਼Λ֬อ͠ ͨݮݶք͕͋Δɽ #BCFOLP "SUFN FUBMz/FVSBMDPEFTGPSJNBHFSFUSJFWBMz&VSPQFBODPOGFSFODFPODPNQVUFS WJTJPO4QSJOHFS $IBN
3. େنECαΠτͷͨΊͷ ͱਫ਼Λཱ྆ͨ͠ ࢄՄೳͳۙࣅۙ୳ࡧΤϯδϯ
• ΫΤϦͱߴ࣍ݩϕΫτϧू߹Λҙͷ࣍ݩͰͨ͠෦ϕΫτϧ୯ҐͰฒ ߦʹۙ୳ࡧͨ݁͠Ռͷू߹Ͱ͋Δۙީิ͔Βɼ࠶ۙ୳ࡧΛߦ͏ɽ 16 ఏҊख๏ (໘) R@ R@ R@ 9@
9@ 9@ /SFDPSET // R@ Y@O Y㱨9@ // R@ Y@O Y㱨9@ // R@ Y@O Y㱨9@ \ ^ \ ^ \ ^ BSHNJOE R Y Y㱨\ ^ 㱮 㱮 ղલ ղޙ ᶃ࣍ݩۭؒͷฒߦͨۙ͠୳ࡧ ᶄݻఆͷۙީิͷू ᶅۙީิͷઢܗ୳ࡧ ᶃ ᶄ ᶅ վળ ᶃ ᶄ ᶅ 2VFSZ
• ಛੑΛΑ͘දݱ͓ͯ͠Γߴਫ਼ʹྨࣅ͕ൺֱՄೳͳߴ࣍ݩ͔ͭີͳϕΫ τϧͷू߹Λରͱͨۙ͠ࣅۙ୳ࡧ • ֶशࡁΈCNNΛಛநग़ثͱͯ͠ར༻ͯ͠ը૾͔ΒಘΒΕΔಛྔू߹ • ςΩετΛࢄදݱม͢ΔWord2vec͔ΒಘΒΕΔಛྔू߹ • ͜ΕΒ͕ɼݕࡧ࣭σʔλ(ΫΤϦ)ʹର͢Δߴ࣍ݩϕΫτϧू߹ͷۙ୳ࡧ݁ Ռͷ্Ґू߹͕ɼΫΤϦͱߴ࣍ݩϕΫτϧू߹Λҙͷ࣍ݩͰͨ͠෦
ϕΫτϧ୯ҐͰۙ୳ࡧͨ݁͠Ռͷ্Ґू߹ͱྨࣅ͍͢͜͠ͱʹண 17 ఏҊख๏ (ਫ਼໘) ෦͕ྨࣅ͢Εશମ͕ྨࣅ͢ΔՄೳੑ͕ߴ͍σʔλಛੑ
18 Sanny: ఏҊख๏ͷ࣮ 4BOOZ 4BOOZ 4BOOZ // // 㱮 //
// ᶃ ᶄ ᶅ 2VFSZ "MHPSJTN "MHPSJTN "MHPSJTN • ΫΤϦฒͼʹ୳ࡧରσʔλͷҙ࣍ݩͷͱ݁ՌͷूΛ୲͢Δ • ෦ϕΫτϧͷۙ୳ࡧΞϧΰϦζϜΘͳ͍ • ෦ϕΫτϧ͝ͱͷ୳ࡧॲཧಠཱͷͨΊࢄߏ͕Մೳ
4. ࣮ݧͱߟ
• σʔλಛੑʹΑΔఏҊख๏ͷਫ਼໘ͰͷޮՌͷࠩΛධՁ • 6ສ݅ͷ֤σʔληοτΛ4ׂɼఏҊख๏ʹΑΔۙ10݅ͷద߹Λൺֱ • ཚΛ༻͍ͨσʔληοτͰఏҊख๏༗ޮʹಇ͔ͳ͍ • Inception-v3Word2vecͷΑ͏ͳใྔ͕ѹॖ͞ΕͨσʔληοτͰ༗ޮ 20 σʔλಛੑʹΑΔ༗ޮੑ
• ׂͱ෦ϕΫτϧ͝ͱͷۙͷΈ߹ΘͤʹΑΔਫ਼ͷมԽΛධՁ • ఏҊख๏ͷޮՌ͕֬ೝ͞Εͨಛੑͷσʔληοτ100ສ݅ͰධՁ • ׂ֤Ͱۙ20͔Β1000݅Λݕূ 21 σʔλಛੑʹΑΔ༗ޮੑ
• ׂΛ૿Ճ͢ΔͱಉҰۙʹ͓͍ͯਫ਼͕Լ • ׂޙͷ࣍ݩ͕100Ҏ্ͱͳΔׂͰ࠷దͳۙΛٻΊΔ͜ͱ͕ඞཁ 22 σʔλಛੑʹΑΔ༗ޮੑ
• ఏҊख๏ʹΑͬͯɼਫ਼ͱ୳ࡧ͕ͲͷΑ͏ʹվળ͢Δ͔ΛධՁ • ୳ࡧରɼఏҊख๏ͷޮՌ͕ݟࠐΊΔInception-v3͔ΒಘΒΕͨσʔληο τ2048࣍ݩ100ສ݅ • ۙ୳ࡧͷΞϧΰϦζϜͱͦΕΒͷύϥϝλΛมԽ͠ͳ͕ΒTop10ۙ୳ࡧʹ ͓͚Δਫ਼ͱͷτϨʔυΦϑΛൺֱ͢Δ 23 ਫ਼ͱ୳ࡧͷτϨʔυΦϑ
• ॎ࣠୳ࡧඵͷٯදࣔɼ্ʹߦ͘ ΄Ͳߴɽԣ࣠ద߹ɽ • ݩͷΞϧΰϦζϜʹରͯ͠ఏҊख๏Λ ద༻ͨ͜͠ͱͰਫ਼ɼͷվળ͕ݟ ΒΕͨ 24 ਫ਼ͱ୳ࡧͷτϨʔυΦϑ
5. ·ͱΊ
• େن͔ͭߴ࣍ݩͳಛྔू߹Λରͱͨ͠ͷࣗಈఏҊػೳͷͨΊʹਫ਼ ͱΛཱ྆͢Δۙ୳ࡧͷΈ͕ඞཁ • ߴਫ਼ʹྨࣅ͕ൺֱՄೳͳߴ࣍ݩ͔ͭີͳϕΫτϧͷू߹Ͱ෦͕ྨࣅ͢ Εશମͱͯ͠ྨࣅ͢ΔՄೳੑ͕ߴ͍ಛੑΛ࣋ͭ͜ͱʹண • ෦ϕΫτϧू߹ʹର͢ΔࢄՄೳͳ୳ࡧͱूΛߦ͏ํࣜʹΑͬͯैདྷख๏ ΑΓਫ਼ͱͷ྆໘Ͱվળ͢Δ͜ͱΛ֬ೝ •
ࠓޙɼ୯७ͳͰͳ͘σʔλͷภΓΛߟྀͨ͠ޮՌతͳׂΛݕ౼ͨ͠ ͍ɽ ·ͨɼࢄՄೳͳಛੑΛ׆͔ͨ͠ߏͰͷධՁΛਐΊ͍ͯ͘ɽ 26 ·ͱΊ
None