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
M3 情報検索/推薦論文輪読会 ~SIGIR祭~ (SIGIR2021: Session 6...
Search
po3rin
August 16, 2021
Programming
0
130
M3 情報検索/推薦論文輪読会 ~SIGIR祭~ (SIGIR2021: Session 6D – IR Models)
po3rin
August 16, 2021
Tweet
Share
More Decks by po3rin
See All by po3rin
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
360
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
340
検索基盤移行時の思考
po3rin
0
4.3k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
6.1k
Elasticsearchを負荷から守るesguard
po3rin
0
300
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
920
eskeeperを使ったファイル定義によるindex管理
po3rin
2
510
Handling Temporal Query for Health Search with ja-timex
po3rin
3
350
医療検索における婉曲表現変換
po3rin
2
800
Other Decks in Programming
See All in Programming
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
290
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
300
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
270
CursorはMCPを使った方が良いぞ
taigakono
0
160
C++20 射影変換
faithandbrave
0
500
AIネイティブなプロダクトをGolangで挑む取り組み
nmatsumoto4
0
120
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
1
3k
Create a website using Spatial Web
akkeylab
0
300
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
570
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
960
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
330
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Designing for humans not robots
tammielis
253
25k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
The Invisible Side of Design
smashingmag
299
51k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
200
Why Our Code Smells
bkeepers
PRO
337
57k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Practical Orchestrator
shlominoach
188
11k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Transcript
hiromu-nakamura @po3rin 4*(*3 4FTTJPO%r*3.PEFMT M3 ใݕࡧ/ਪનจྠಡձ ~SIGIRࡇ~
தଜ߂ ΤϜεϦʔͷ"*ɾػցֶशνʔϜͰݕࡧج൫पΓ Λ୲͍ͯ͠Δɻ(P͕͖ɻ ֤छΞΧϯτQPSJOͰͬͯ·͢ɻ )*SPNV/BLBNVSB
5*-%&5FSN*OEFQFOEFOU-JLFMJIPPENP%&MGPS1BTTBHF3FSBOLJOH ༻ޠʹґଘͤͣɺΫΤϦϞσϧͱυΩϡϝϯτϞσϧͷ྆ํͰݕࡧ݁ՌΛϦϥϯΩϯά͢ΔϞσϧΛఏҊ 1BUICBTFE%FFQ/FUXPSLGPS$BOEJEBUF*UFN.BUDIJOHJO3FDPNNFOEFST ΫΤύʔιφϥΠζͱμΠόʔγςΟͷ྆ํΛΈࠐΜͰਪનͷύϑΥʔϚϯεΛ্ͤ͞Δύεϕʔεͷ σΟʔϓωοτϫʔΫʢ1%/ʣ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT %3ͷͨΊͷ҆ఆֶशΞϧΰϦζϜʢ45"3ʣͱϥϯΩϯάύϑΥʔϚϯεΛ࠷దԽ͢ΔͨΊͷ ΫΤϦଆͷֶशΞϧΰϦζϜʢ"%03&ʣΛఏҊ #1301#PPUTUSBQQFE1SFUSBJOJOHXJUI3FQSFTFOUBUJWF8PSET1SFEJDUJPOGPS"EIPD3FUSJFWBM ΞυϗοΫݕࡧ༻ͷ#&35ʹجͮ͘ϒʔτετϥοϓࣄલτϨʔχϯάํ๏ʢ#1301ʣΛఏҊ
8FJHIUJOH1BTTBHFT&OIBODFT"DDVSBDZ ΩʔϫʔυີΛར༻ͯ͠ύοηʔδͷؔ࿈ੑΛ׆༻͠ɺશମతͳݕࡧΛେ෯ʹվળ͢Δํ๏Λ࣮ݧతʹࣔ͠ɺ #.1ͱ͍͏৽͍͠ख๏ΛఏҊɻ
ઃఆ ΞυϗοΫݕࡧʹ͓͍ͯ#.͕ओྲྀ͕ͩɺ୯ޠͷॏཁ͚ͩ͡Όͳͯ͘ɺจͷॏཁߟྀ͍ͨ͠ΑͶ ΩʔΞΠσΞ จ͝ͱͷ༻ޠසͷՃॏઢܗ݁߹Λ࡞ͯ͠JOEFY͓ͯ͘͠ 8FJHIUJOH1BTTBHFT&OIBODFT"DDVSBDZ
8FJHIUJOH1BTTBHFT&OIBODFT"DDVSBDZ ઃఆ ΞυϗοΫݕࡧʹ͓͍ͯ#.͕ओྲྀ͕ͩɺ୯ޠͷॏཁ͚ͩ͡Όͳͯ͘ɺจͷॏཁߟྀ͍ͨ͠ΑͶ ΩʔΞΠσΞ ॏཁͳจʹग़ݱ͢Δ୯ޠʹॏΈΛ༩͑ͯ#.Λ֦ுɻ
5*-%&5FSN*OEFQFOEFOU-JLFMJIPPENP%&MGPS1BTTBHF3FSBOLJOH ઃఆ ਂݴޠϞσϧͷ3FSBOLJOHޮՌ͍͍͕ɺ࣮ઓͰΫΤϦ࣌ͷߴՁͳਪεςοϓ͕ωοΫ #&35SFSBOLFSʹ ΑΔՃͷϨΠςϯγʔɺߴੑೳ(16Ͱ ϛϦඵͷΦʔμʔ ΩʔΞΠσΞ λʔϜඇґଘͳΫΤϦΛԾఆ͢Δ ΦϑϥΠϯͰࣄલʹܭࢉͯ͠ΠϯσοΫε࣌ʹυΩϡϝϯτͱҰॹʹޠኮͷ֬Λอଘ
5*-%&5FSN*OEFQFOEFOU-JLFMJIPPENP%&MGPS1BTTBHF3FSBOLJOH ࣄલࣝ දݱϕʔεޮ͍͍͕ɺ༗ޮੑ·͊·͊ɺޮ΅ͪ ΅ͪ B ɻ ਂݴޠϞσϧ C D ΛͬͨΫΤϦϞσϧ༗ޮੑߴ
͍͚Ͳίετߴ͍
ࢀߟࢿྉϦϯΫ IUUQTJQTKJYTROJJBDKQFK BDUJPOSFQPTJUPSZ@BDUJPO@DPNNPO@EPXOMPBEJUFN@JEJUFN@OPBUUSJCVUF@JEpMF@OP ͜͜Ͱ2- 2VFSZ-JLFMJIPPE ͷ͓͞Β͍
5*-%&5FSN*OEFQFOEFOU-JLFMJIPPENP%&MGPS1BTTBHF3FSBOLJOH λʔϜಠཱੑͷԾఆ ɺΫΤϦϞσϧ 2- υΩϡϝϯτλʔϜͱΫΤϦ͕૬ޓʹґଘ͢Δͷͱͯ͠ϞσϧԽ͞ΕͯɺೖྗʹυΩϡ ϝϯτͱΫΤϦͷ྆ํ͕ඞཁͳ͜ͱ 5*-%&ೖྗͱͯ͠ΫΤϦςΩετ·ͨυΩϡϝϯτςΩετͷΈΛඞཁͱ͢Δɻग़ྗਂݴޠϞσϧͷޠኮʹؚ·Ε Δͯ͢ͷτʔΫϯͷର֬ɻ2-ͱ%-Λ྆ํಉ࣌ʹֶशՄೳɻ ֶश#&35ΛpOFUVOJOHɺ5*-%&2-Λ͏߹ɺΫΤϦ࣌#&35τʔΫφΠβʔͰׂ͢Δεςοϓ͕૿͑Δͩ ͚ɻ֤λʔϜͷࣄલʹJOEFY͓͚ͯ͠Δ
#&35ͰΫΤϦϞσϧΛ࡞ΔՕॴಉ͡ηογϣϯͰΧϯλʔ৯ΒͬͯΔ
ઃఆ ΞΠςϜϕʔεͷڠௐੑϑΟϧλϦϯά $3 ύʔιφϥΠζʹରԠ͢Δͷ͕͘͠ɺຒΊࠐΈख๏  ΞΠςϜؒͷڞىใ Λ໌ࣔతʹ౷߹͢Δ͜ͱ͕͍ͨ͠Ίɺଟ༷ੑΛຬͨ͢ͷ͕ࠔɻ ΩʔΞΠσΞ ϢʔβɺӾཡΞΠςϜɺλʔήοτΞΠςϜΛϗοϓύεʹɻ w
͜ͷΞΠσΞͰΞΠςϜϕʔε$3ͱͷརΛऔΓೖΕΔ1%/ 1BUICBTFE%FFQ/FUXPSL ΛఏҊɻ 1BUICBTFE%FFQ/FUXPSLGPS$BOEJEBUF*UFN.BUDIJOHJO3FDPNNFOEFST
1BUICBTFE%FFQ/FUXPSLGPS$BOEJEBUF*UFN.BUDIJOHJO3FDPNNFOEFST 1%/PWFSWJFX ຒΊࠐΈࢄԽʹΑΓɺີͳಛྔΛ PCFIPUεΩʔϜʹม 5SJHHFS/FUϢʔβʔͱͦͷτϦΨʔΞ ΠςϜ͔ΒᅂείΞΛܭࢉɻ 4JNJMBSJUZ/FUΞΠςϜͷϓϩϑΝΠϧ ͱڞىใʹج͍ͮͯɺ֤ΞΠςϜͱλʔ ήοτΞΠςϜؒͷؔ࿈ੑΛܭࢉ
1BUICBTFE%FFQ/FUXPSLGPS$BOEJEBUF*UFN.BUDIJOHJO3FDPNNFOEFST 1%/ΛγεςϜʹΈࠐΉ 4UFQJOEFY ֤ΞΠςϜͷྨࣅΛ4JNJMBSJUZ/FUXPSLͰܭࢉͯ͠ UPQLΛؔ࿈είΞͱͱʹJOEFY͓ͯ͘͠ 4UFQτϦΨʔநग़ ΞϓϦΛ։͍ͨΒϢʔβʔ͕ΞΫγϣϯͨͯ͢͠ͷ ΞΠςϜΛ5SJH/FUΛ༻ͯ͠είΞϦϯά͠·͢ UPQNͷτϦΨʔΛฦ͢ɻ 4UFQSFUSJFWBM
NºLͷΞΠςϜΛ͖࣋ͬͯͯείΞϦϯάͯ͠Ϣʔ βʔʹ্Ґ݅Λฦ͢ɻ
ઃఆ %3 %FOTF3FUSJFWBM ϞσϧͷओྲྀͷֶशϞσϧͷ/FHBUJWF4BNQMJOHෆ҆ఆͳ4UBUJD)BSE /FHBUJWF4BNQMJOHΛ࠾༻͍ͯ͠Δɻ ΩʔΞΠσΞ /FHBUJWF4BNQMJOHʹযΛͯɺ৽ֶ͍͠शख๏ ຒΊࠐΈֶशͱɺΫΤϦΤϯίʔμֶश ΛఏҊɻ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
લఏ ϥϯΩϯάֶशͰωΨςΟϒαϯϓϦϯάΛͲͷΑ͏ʹߦ͏͔͕ͱͳΔɻ 3BOEBN/FHBUJWF4BNQMJOHద߹จॻ͕Լͷํʹ͋Δͷ͕ࢧతʹͳΓɺ্Ґ͕͏·ֶ͘शͰ͖ͳ͍ͱ͍͏͕͋Δɻ ओྲྀͷ4UBUJD)BSE/FHBUJWF4BNQMJOHXBSNVQઓུͳͲΛͬͯ/FHBUJWF4BNQMJOHΛݻఆ͓ͯ͘͠ɻֶश͕3BOEBN /FHBUJWF4BNQMJOHʹൺͯ҆ఆ͠ͳ͍ ֶशதʹωΨςΟϒαϯϓϦϯά͕มԽ͍ͯ͘͠ͷ͕%ZOBNJD)BSE/FHBUJWF4BNQMJOH 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
ఏҊ 45"3 B4UBCMF5SBJOJOH"MHPSJUINGPSEFOTF3FUSJFWBM 4UBUJD)BSEOFHBUJWF XBSNVQख๏ ʹ/FHBUJWF3BOEPN4BNQMJOH߹Θͤͯ༻ֶͯ͠शϓϩηεΛ ҆ఆͤ͞ɺ4UBUJD/FHBUJWF4BNQMJOHͷ࠷ѱͷύλʔϯ ..3͕΄΅θϩʹͳΔՄೳੑ
Λճආ ͓·͚ʹ͢Ͱʹܭࢉͨ͠จॻϕΫτϧΛ࠶ར༻ͯ͠ޮΞοϓ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
ఏҊ "%03& "MHPSJUINGPS%JSFDUMZ0QUJNJ[JOH3BOLJOHQ&SGPSNBODF %ZOBNJD)BSE/FHBUJWF4BNQMJOHΛར༻ͯ͠ɺϥϯΩϯάύϑΥʔϚϯεΛ࠷దԽ ࣄલʹτϨʔχϯά͞ΕͨυΩϡϝϯτΤϯίʔμʔΛͬͯɺΫΤϦΤϯίʔμʔΛτϨʔχϯά ͍ΫΤϦͰυΩϡϝϯτͷ ຒΊࠐΈʹ͍ۙࢄදݱ͕ಘΒΕΔ
࣮ݧͰυΩϡϝϯτΤϯίʔμʹ45"3Ͱֶशͨ͠ϞσϧΛར༻ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
ઃఆ ࠷ۙɺใݕࡧʹ߹ΘͤͨࣄલτϨʔχϯάํ๏͕ݕ౼͞Ε͓ͯΓɺಉஶऀ͕͞·͟·ͳΞυϗοΫݕࡧϕϯνϚʔΫͰ405"Λୡ ͨ͠1301ͱ͍͏ख๏͕͋Δɻ 1301301 දޠਪఆ λεΫߏஙϓϩηεͰ࠾༻͞ΕͨݹయతͳϢχάϥϜݴޠϞσϧʹΑͬͯޮՌ੍͕ݶ͞Εͯ͠·͏ ಠཱੑ ͷԾఆ ɻ ΩʔΞΠσΞ
1301λεΫߏங༻ͷϢχάϥϜݴޠϞσϧΛ#&35Ͱஔ͖͑ #&35ͷ"UUFOUJPOΛ׆༻ͯ͠υΩϡϝϯτ͔Βදతͳ୯ޠΛαϯϓϦϯά͢Δ #1301#PPUTUSBQQFE1SFUSBJOJOHXJUI3FQSFTFOUBUJWF8PSET1SFEJDUJPOGPS"EIPD3FUSJFWBM
3FGFSFODF 13011SFUSBJOJOHXJUI3FQSFTFOUBUJWF8PSET1SFEJDUJPOGPS"EIPD3FUSJFWBM ઃఆ ࠓ·ͰΞυϗοΫݕࡧʹ͚ͨࣄલτϨʔχϯάϞσϧֶ श΄ͱΜͲͳ͍ ఏҊख๏ ΞυϗοΫݕࡧͷͨΊͷॏཁޠ༧ଌʢ301ʣʹΑΔࣄલτ ϨʔχϯάΛఏҊɻ1301ΫΤϦϞσϧ͕ϕʔεͷ ख๏ɻ
ϦϥϯΩϯάλεΫͰpOFUVOJOHͯ͠1SFWJPVT405"Λ ͑ͨɻ ΫΤϦϞσϧ σΟϦΫϨࣄલฏԽΛ༻ͨ͠ଟ߲ϢχάϥϜݴޠϞσϧ ୯ޠηοτ4ͷϖΞΛαϯϓϦϯά ΫΤϦͷ͞ϙΞιϯͰαϯϓϧ 5SBOTGPSNFSϞσϧΛࣄલֶश ͭͷ୯ޠηοτؒͷQBJSXJTFQSFGFSFODFΛ༧ଌ͢ΔΑ͏ʹ υΩϡϝϯτ%
#1301#PPUTUSBQQFE1SFUSBJOJOHXJUI3FQSFTFOUBUJWF8PSET1SFEJDUJPOGPS"EIPD3FUSJFWBM ͨͩͨͩ#&35Ͱஔ͖͑ͯҰൠతͳ୯ޠʢJOɺUIFɺPGͳͲʣΛ༏ઌͯ͠͠·͏ͷͰɺݕࡧͷͨΊͷࣄલֶशʹ͔ͳ͍ɻ ͦ͜ͰυΩϡϝϯτͷ༻ޠͷͱϥϯμϜͳ༻ޠͷͷؒͷΫϩεΤϯτϩϐʔΛܭࢉͯ͠ɺରরతͳ༻ޠͷΛऔಘ͢Δɻ
ิεϥΠυ
5*-%&5FSN*OEFQFOEFOU-JLFMJIPPENP%&MGPS1BTTBHF3FSBOLJOH
جૅࣝ -FBSOJOHUPSBOLͷతؔ ϥϯΩϯάֶशΛ࠷γϯϓϧʹهड़ͯ͠ΈΔɻRΫΤϦ EυΩϡϝϯτ ؔ࿈ؔ -ଛࣦؔ ࢦࣔ ؔͱ͢Δͱ
0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT ԼهͷతؔͰશͯͷEͰ࠷దԽ͢Δͷίετ͕๏֎ͳͷͰɺͲ͔͜Β/FHBUJWF%PDVNFOUΛαϯϓϦϯά͢Δ͔͕ ॏཁͱͳΔɻҟͳΔαϯϓϦϯάઓུɺ/FHBUJWF%PDVNFOU͝ͱʹҟͳΔॏΈX E Λઃఆ͢Δͷͱݟͳͯ͠తؔ ΛԼهͷΑ͏ʹܗࣜԽͰ͖Δɻ% ద߹จॻɺ%ඇద߹จॻɺXॏΈ
جૅࣝ /FHBUJWF4BNQMJOH ωΨςΟϒυΩϡϝϯτΛͲͷΑ͏ʹαϯϓϦϯά͢Δ͔Ͱ͋Γɺྫ͑ϥϯμϜαϯϓϦϯά͕͋͛Β ΕΔɻ 3BOEPNOFHBUJWFTBNQMJOHϖΞϫΠζΤϥʔͷ߹ܭΛ࠷খԽ͢Δ͜ͱʹؼண͢Δɻ ͔͠͠ɺК E E ͷυΩϡϝϯτҐஔɺ͕େ͖͍ͷ͕ࢧతʹͳΓɻ্ҐυΩϡϝϯτͷਫ਼্ʹد༩͠
ͮΒ͍ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
جૅࣝ )BSE/FHBUJWF4BNQMJOH ্Ґ,ͷυΩϡϝϯτΛωΨͱͯ͠αϯϓϦϯά͢ΔɻશମͷϖΞϫΠζΤϥʔͰͳ͘ɺUPQLͷϖΞϫΠζΤ ϥʔͷܭࢉʹͳΔɻϋʔυωΨςΟϒαϯϓϦϯάɺ্ҐͷύϑΥʔϚϯεΛڧௐ͠ɺϢʔβʔΤΫεϖϦΤ ϯεධՁࢦඪʹ΄ͱΜͲӨڹΛ༩͑ͳ͍ԼҐͷϖΞΛແࢹͰ͖Δɻ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT
جૅࣝ ੩తWTಈత )BSE/FHBUJWF4BNQMJOH͕༗༻͕ͩɺ͞Βʹ)BSE/FHBUJWFֶशதʹมԽ͢ΔͨΊʹʹ੩తͱಈతʹ͚Β ΕΔɻಈతֶशதʹ)BSE4BNQMJOH͕มΘ͍ͬͯ͘ɻ੩త3FUSJFWBSख๏ɺ·ͨΥʔϜΞοϓ%3ϞσϧΛ ༻ͯ͠ɺτϨʔχϯάதʹमਖ਼͞ΕͨϋʔυωΨͱ্ͯ͠ҐͷυΩϡϝϯτΛࣄલʹऔಘ͓ͯ͘͠ɻ جຊతʹಈతͷํ͕ϕετ 0QUJNJ[JOH%FOTF3FUSJFWBM.PEFM5SBJOJOHXJUI)BSE/FHBUJWFT