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
Go as an aggregator in recommendation systems
Search
Agata Naomichi
July 26, 2018
Programming
2
1.4k
Go as an aggregator in recommendation systems
Agata Naomichi
July 26, 2018
Tweet
Share
More Decks by Agata Naomichi
See All by Agata Naomichi
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
540
医療系スタートアップが経験した 認知負荷問題の症状分析と処方箋 チーム分割による認知負荷の軽減 / Cognitive Load Busters
agatan
2
530
専門性の高い領域をいかに開発し、 テストするか / How to test and develop complicated systems with Domain Experts!
agatan
3
810
Henry のサーバーサイドアーキテクチャ 狙いと課題 2022.08.25 / Server-Side Architecture at Henry, Inc.
agatan
3
5.5k
The Web Conference 2020 - Participation Report
agatan
1
700
○○2vec 再考
agatan
1
4.5k
Improving "People You May Know" on Directed Social Graph
agatan
4
2.7k
Machine Learning and Feedback
agatan
1
1.5k
Recommendation systems on microservices - productivity & reproducibility
agatan
0
890
Other Decks in Programming
See All in Programming
複雑なドメインに挑む.pdf
yukisakai1225
5
1.2k
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
350
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
290
Azure SRE Agentで運用は楽になるのか?
kkamegawa
0
2.5k
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
560
楽して成果を出すためのセルフリソース管理
clipnote
0
180
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
480
Design Foundational Data Engineering Observability
sucitw
3
200
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
Putting The Genie in the Bottle - A Crash Course on running LLMs on Android
iurysza
0
140
Featured
See All Featured
Six Lessons from altMBA
skipperchong
28
4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Bash Introduction
62gerente
615
210k
4 Signs Your Business is Dying
shpigford
184
22k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Transcript
©2018 Wantedly, Inc. Go as an aggregator In Recommendation Systems
26.Jul.2018 - Naomichi Agata
©2018 Wantedly, Inc. agatan Software engineer at Wantedly, inc. Server
side + Machine learning Github Twitter @agatan @agatan_
©2018 Wantedly, Inc. Everything is a Recommendation https://medium.com/netflix-techblog/netflix-recommendations-beyond-the-5-stars-part-1-55838468f429
©2018 Wantedly, Inc. Recommendations ΄ͱΜͲͷαʔϏεͰʮԿ͔Λਪન͢Δʯͱ͍͏ػೳ͋Δ
©2018 Wantedly, Inc. Impact of Recommendations ⾣Linkedinͷͭͳ͕Γͷ50%Ҏ্ʮΓ߹͍Ͱ͔͢ʁʯܦ༝ ⾣ https://engineering.linkedin.com/teams/data/projects/pymk ⾣NetflixਪનγεςϜͷcompetition
Λ։࠵ۚ͠$1 Million Λग़͍ͯ͠Δ ⾣ https://medium.com/netflix-techblog/netflix-recommendations-beyond-the-5-stars-part-1-55838468f429
©2018 Wantedly, Inc. Components of Recommendations ਪનͷࠜڌ͍ΖΜͳॴʹ͋Δ ⾣ʮ˓˓͞Μ͕-JLF͠·ͨ͠ʯ ⾣ʮ͜ͷΛߪೖͨ͠ਓ͜ͷങ͍ͬͯ·͢ʯ ⾣ʮڞ௨ͷͭͳ͕Γ͕ਓ͍·͢ʯ
⾣ʮͷχϡʔεʯ ⾣ʮ˓˓Λݕࡧͨ͠ํʯ ⾣ʮಉ͡ձࣾͰಇ͍͍ͯΔϢʔβʯ
©2018 Wantedly, Inc. Order of Recommendations ΑΓྑ͍ΞΠςϜΛɺΑΓྑ͍ॱংͰఏࣔ͢Δ͜ͱ͕ٻΊΒΕΔ ⾣Hot Topics ͳΔ͘͘ఏ͍ࣔͨ͠
⾣֬ݻͨΔࣗ৴ͷ͋ΔਪનΛ༏ઌͯ͠ݟ͍ͤͨ ⾣શମͰͷਓؾॱΑΓύʔιφϥΠζͨ͠ॱংΛఏڙ͍ͨ͠ ⾣αʔϏεݻ༗ͷׂΓࠐΈ͋Δ͔͠Εͳ͍ by Google
©2018 Wantedly, Inc. Recommendations with strategies
©2018 Wantedly, Inc. aggregator Strategy Strategy Strategy Strategy ༑ୡ͕-JLFͨ͠ΞΠςϜΛఏࣔ ߪೖཤྺ͔Βͷ͓͢͢Ί
ͷΞΠςϜ ϓϩϑΟʔϧ͔Βͷ͓͢͢Ί Recommendations with strategies Strategy Λ࣮ߦ ݁ՌΛू re-ordering ฒߦॲཧ
©2018 Wantedly, Inc. Recommendations with strategies ֤strategy͕ਪનΞΠςϜΛఏࣔ UZQF4USBUFHZJOUFSGBDF\ /BNF 4USBUFHZ/BNF
4VHHFTU DUYDPOUFYU$POUFYU VTFS*%JOU TJ[FJOU <> 4VHHFTU6TFS FSSPS ^ UZQF4VHHFTU6TFSTUSVDU\ 6TFS*%JOU 4DPSFqPBU 4USBUFHZ/BNF4USBUFHZ/BNF 3FBTPOJOUFSGBDF\^GPSMPHHJOH ^
©2018 Wantedly, Inc. Recommendations with strategies ͦΕΒΛฒߦʹ࣮ߦ͠ू ࠷ऴతͳॱংΛܾఆ͢Δ GPS@ TSBOHFTUSBUFHJFT\
XH"EE HPGVOD T4USBUFHZ \ EFGFSXH%POF TT FSST4VHHFTU DUY VTFS*% TJ[F JGFSSOJM\ SFQPSUFSSPS SFUVSO ^ NV-PDL TVHHFTUJPOTBQQFOE TVHHFTUJPOT TT NV6OMPDL ^ T ^
©2018 Wantedly, Inc. Why Go? Machine Learning ͱ Microservices ͳߏ
ˠ֤Strategy API CallΛؚΈ͏Δ ˠฒߦॲཧʹڧ͍͜ͱ͕׆͖Δ aggregator microservices
©2018 Wantedly, Inc. Responsibility of Aggregator ⾣Logging ⾣ ͲͷStrategy ͕Ͳͷ͘Β͍ՌΛ͍͋͛ͯΔ͔
⾣֤Strategy ͷείΞͷॏΈ͚ʹΑΔϥϯΩϯά ⾣e.g. ͢Ͱʹఏࣔͨ͜͠ͱͷ͋ΔΞΠςϜͷείΞΛݮਰͤ͞Δ ⾣A/B Testing
©2018 Wantedly, Inc. Problems… ⾣Frror reporting ⾣ ͋Δstrategy ͕ࢮΜͰ͍ͯશମࢭ·Βͳ͍Ͱ΄͍͠ ⾣ࢮΜͩ͜ͱʹؾ͖͍ͨ
⾣Frror reporting service Λ׆༻ ⾣ෳͷStrategy Ͱಉ͡API CallΛͨ͘͠ͳΔ ⾣e.g. Profile Service ʹॴଐΛ͍߹ΘͤΔ࠷ۙങͬͨͷΧςΰϦ͕Γ͍ͨ ⾣HPMBOHPSHYTZODTJOHMFqJHIU ΠϯϝϞϦΩϟογϡͰແཧཧଋͶΔ ⾣Ͳ͜·Ͱaggregator ͕ܭࢉ͢Δ͖͔
©2018 Wantedly, Inc. Conclusion ⾣ਪનγεςϜ͍ΖΜͳཁૉͷΈ߹Θͤ ⾣Microservices / Machine Learning ⾣A/B
Test ͕ॏཁ ⾣࣮ࡍʹԿΛݟ͔ͤͨɺԿ͕Action ʹͭͳ͕͔ͬͨLogging ͍ͨ͠ ⾣લஈʹGo Λ͓͘ͱศར ⾣Concurrent ʹ͍ΖΜͳStrategy Λ࣮ߦ͢Δͷ͕؆୯