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
3
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
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
330
Honoアップデート 2025年夏
yusukebe
1
870
自作OSでDOOMを動かしてみた
zakki0925224
1
1.4k
為你自己學 Python - 冷知識篇
eddie
1
280
ゲームの物理
fadis
5
1.6k
OSS開発者という働き方
andpad
3
1.1k
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
740
コーディングエージェント時代のNeovim
key60228
1
110
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
930
A Gopher's Guide to Vibe Coding
danicat
0
180
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
150
MCPで実現するAIエージェント駆動のNext.jsアプリデバッグ手法
nyatinte
7
970
Featured
See All Featured
Building an army of robots
kneath
306
46k
The World Runs on Bad Software
bkeepers
PRO
70
11k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Gamification - CAS2011
davidbonilla
81
5.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
RailsConf 2023
tenderlove
30
1.2k
Statistics for Hackers
jakevdp
799
220k
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