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
The first step of the Top-k Selection algorith...
Search
po3rin
December 18, 2020
Programming
0
180
The first step of the Top-k Selection algorithm in search
po3rin
December 18, 2020
Tweet
Share
More Decks by po3rin
See All by po3rin
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
8
990
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
4
2.3k
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
380
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
350
検索基盤移行時の思考
po3rin
0
4.3k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
6.1k
Elasticsearchを負荷から守るesguard
po3rin
0
310
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
950
eskeeperを使ったファイル定義によるindex管理
po3rin
2
520
Other Decks in Programming
See All in Programming
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
MLH State of the League: 2026 Season
theycallmeswift
0
180
WebAssemblyインタプリタを書く ~Component Modelを添えて~
ruccho
1
940
A Gopher's Guide to Vibe Coding
danicat
0
190
ECS初心者の仲間 – TUIツール「e1s」の紹介
keidarcy
0
110
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.3k
Langfuseと歩む生成AI活用推進
licux
3
320
パッケージ設計の黒魔術/Kyoto.go#63
lufia
2
360
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
120
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
220
OSS開発者という働き方
andpad
5
1.5k
TDD 実践ミニトーク
contour_gara
1
250
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Music & Morning Musume
bryan
46
6.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
A Tale of Four Properties
chriscoyier
160
23k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Transcript
The first step of the Top-k Selection algorithm in search
M3 tecktalk #164 hiromu-nakamura @po3rin
தଜ߂ ΤϜεϦʔͷ"*ɾػցֶशνʔϜͰݕࡧج൫पΓ Λ୲͍ͯ͠Δɻ(P͕͖ɻ ֤छΞΧϯτQPSJOͰͬͯ·͢ɻ )*SPNV/BLBNVSB
None
ݕࡧΤϯδϯΫΤϦΛड͚औΓɺυΩϡϝϯτ͝ͱʹ είΞܭࢉΛείΞ্ҐL݅Λฦ͢ɻ 4FBSDI&OHJOF ΫΤϦ L݅ͷείΞॱυ Ωϡϝϯτ
&MBTUJDTFBSDIͳͲͷݕࡧΤϯδϯɺ୯ޠͷҐஔใΛ ֨ೲ͢ΔͨΊͷࡧҾσʔλߏͰ͋ΔసஔΠϯσοΫε Λ࠾༻͍ͯ͠Δɻ 4FBSDI&OHJOF %ࢲমΛ৯Δ %ࢲαϥμ৯Δ ʮমʯ % సஔΠϯσοΫε
ݕࡧʹ͓͚ΔυΩϡϝϯτͷείΞϦϯάʹ0LBQJ #.ͳͲදతͳͷ͕͋ΔLɻ͜ΕΛݕࡧʹώοτ ͢ΔυΩϡϝϯτʹରͯ͠ܭࢉ͍ͯ͘͠ɻ 4DPSJOH
υΩϡϝϯτશͯͷείΞϦϯά͕ऴ͔ྃͯ͠ΒͦΕΒΛฒ ͼସ͑ΔͷϥϯΩϯά্ҐL൪·Ͱͷ݁Ռʹڵຯ͕͋Δ ߹ඇޮɻͦ͜Ͱݕࡧʹ͓͚ΔLݸͷ࠷େཁૉʢ·ͨ࠷খ ཁૉʣΛબ͢ΔΛߟ͑Δɻ 5PQLTFMFDUJPO
5PQL TFMFDUJPO ೋώʔϓʹυΩϡϝϯτͱείΞΛอ͍࣋ͯ͘͜͠ͱͰ࠷ ऴతͳιʔτͷίετΛεϧʔͰ͖Δɻώʔϓʹ֨ೲ͢Δ͔ ࠜͷείΞ͚ͩݟΕྑ͍ɻ ೋώʔϓ
5PQL TFMFDUJPO ࠓ·Ͱݕࡧʹώοτͨ͠શͯͷυΩϡϝϯτͷείΞΛܭࢉ ͍͕ͯͨ͠ɺ࣮είΞΛܭࢉ͠ͳͯ͘ɺ͋ΔυΩϡϝϯ τ͕UPQLʹೖΒͳ͍͜ͱΛ֬ఆͰ͖Δํ๏͕͋ΔɻͦΕ͕ NBYTDPSFͱݺΕΔख๏Ͱ͢ɻ .BYTDPSF
ͷׂΫΤϦλʔϜͦΕͧΕͷείΞͷߩݙͷ্ݶ Λܾఆ͢Δ͜ͱɻ ͷܦݧతॳظΛ࠾༻͢Δͱɺ5' ্ࣜͷୈҼࢠ ͭ·ΓΛ͑ͳ͍ɻ*%'ࣄલ ʹܭࢉͰ͖Δɻ͜ΕʹΑΓ֤λʔϜ͕د༩͢Δ࠷େείΞ ࣄલʹܾఆͰ͖ΔɻͦͷͨΊϥϯΩϯά্ҐʹݱΕͳ͍υ Ωϡϝϯτ͋Β͔͡ΊΘ͔Δɻ k1
k1 k1 + 1 4DPSJOH 5PQL TFMFDUJPO
4DPSJOH λʔϜ .BY4DPSF UIF TFBSDI FOHJOF
͜ͷ࣌ͰzUIFzؚ͔͠·ͳ͍ϙεςΟϯάϦετͷείΞܭ ࢉແࢹͰ͖ΔɻͳͥͳΒ࠷େείΞݱࡏͷώʔϓͷࠜ ͷείΞΛ͑ͳ͍͔Βɻ 5PQL TFMFDUJPO
4DPSJOH λʔϜ .BY4DPSF UIF TFBSDI FOHJOF
͜ͷ࣌ͰzUIFzͱzTFBSDIzؚ͔͠·ͳ͍υΩϡϝϯτͷε ίΞܭࢉແࢹͰ͖ΔɻͳͥͳΒ࠷େείΞ ݱࡏͷ ώʔϓͷࠜͷείΞΛ͑ͳ͍͔Βɻ 5PQL TFMFDUJPO
*OUFSWBMCBTFEQSVOJOH TFBSDI FOHJOF %PDVNFOU ◾◾◾◾◾◾ ◾◾◾◾◾ NBY NBY
TDPSF ͜ͷ࣌ͰzFOHJOFz͚͔ͩ͠ग़ݱ͍ͯ͠ͳ͍υΩϡϝϯτແࢹͰ͖Δ ͜ͷ࣌ͰzTFBSDIz͚͔ͩ͠ग़ݱ͍ͯ͠ͳ͍υΩϡϝϯτແࢹͰ͖Δ XBMLEPDT
*OUFSWBMCBTFEQSVOJOH ࣮ફͰϙεςΟϯάϦετѹॖ͞Ε͍ͯΔͷͰϒϩοΫ αΠζ͝ͱʹNBYTDPSFΛอ࣋͠ ֤ϒϩοΫͷ۠ΓͷΠϯ λʔόϧʹ6QQFS#PVOE4DPSF 6#4 Λܭࢉ͓ͯ͘͠ɻ͜Ε ʹΑΓϒϩοΫղౚΛεΩοϓͰ͖Δɻ TFBSDI FOHJOF
%PDVNFOU ◾◾◾◾◾◾ ◾◾◾◾ NBY NBY NBY NBY NBY 6#4
$PODMVTJPO 5PQLTFMFDUJPOͰೋώʔϓͳͲͷσʔλߏ͕ར༻Ͱ͖Δɻ ݕࡧείΞʹ͓͚Δ֤λʔϜ͕ߩݙ͢ΔNBYTDPSFࣄલʹܭࢉͰ͖ΔͷͰείΞܭࢉΛεΩοϓͰ͖Δɻ *OUFSWBMCBTFEQSVOJOHΛར༻͢Δ͜ͱͰѹॖΠϯσοΫεείΞܭࢉΛޮతʹߦ͑Δɻ -VDFOFͰߋʹൃలܥͷ8"/%ͱ͍͏ΞϧΰϦζϜ͕ಋೖ͞Ε͍ͯΔɻ
ࢀߟ -VDFOFͷ5PQLΫΤϦϓϩηογϯά࠷దԽ .BY4DPSFΞϧΰϦζϜฤ IUUQTMJOLNFEJVNDPN&I%"D$HRKDC 0LBQJ#. IUUQTKBXJLJQFEJBPSHXJLJ0LBQJ@#. ใݕࡧݕࡧΤϯδϯͷ࣮ͱධՁ UUQTXXXBNB[PODPKQEQSFGDN@TX@FN@S@NU@EQ@$H'C&;7('9
The first step of the Top-k algorithm in search M3
tecktalk #164 hiromu-nakamura @po3rin