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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
9.1k
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
23k
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
2
670
医療系スタートアップが経験した 認知負荷問題の症状分析と処方箋 チーム分割による認知負荷の軽減 / Cognitive Load Busters
agatan
2
600
専門性の高い領域をいかに開発し、 テストするか / How to test and develop complicated systems with Domain Experts!
agatan
3
880
Henry のサーバーサイドアーキテクチャ 狙いと課題 2022.08.25 / Server-Side Architecture at Henry, Inc.
agatan
3
5.9k
The Web Conference 2020 - Participation Report
agatan
1
740
○○2vec 再考
agatan
1
4.6k
Improving "People You May Know" on Directed Social Graph
agatan
4
2.7k
Other Decks in Programming
See All in Programming
CSC307 Lecture 12
javiergs
PRO
0
460
文字コードの話
qnighy
44
17k
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
400
CSC307 Lecture 13
javiergs
PRO
0
310
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
160
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
320
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
660
PJのドキュメントを全部Git管理にしたら、一番喜んだのはAIだった
nanaism
0
240
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
530
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
2
140
NOT A HOTEL - 建築や人と融合し、自由を創り出すソフトウェア
not_a_hokuts
2
590
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
330
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
130
New Earth Scene 8
popppiees
1
1.7k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
Tell your own story through comics
letsgokoyo
1
830
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
190
Faster Mobile Websites
deanohume
310
31k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
53k
Done Done
chrislema
186
16k
Navigating Weather and Climate Data
rabernat
0
130
エンジニアに許された特別な時間の終わり
watany
106
240k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
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 Λ࣮ߦ͢Δͷ͕؆୯