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
99
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
310
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
310
検索基盤移行時の思考
po3rin
0
4.2k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
5.8k
Elasticsearchを負荷から守るesguard
po3rin
0
260
Sudachi×Elasticsearchへの移行と医療検索システム精度改善
po3rin
1
860
eskeeperを使ったファイル定義によるindex管理
po3rin
2
480
Handling Temporal Query for Health Search with ja-timex
po3rin
3
330
医療検索における婉曲表現変換
po3rin
2
780
Other Decks in Programming
See All in Programming
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
180
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
120
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
160
Rubyと自由とAIと
yotii23
6
1.8k
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
27
7.4k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
240
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
310
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
55
19k
Learning Kotlin with detekt
inouehi
1
160
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
260
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
490
ソフトウェアエンジニアの成長
masuda220
PRO
12
2.1k
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Statistics for Hackers
jakevdp
797
220k
A Tale of Four Properties
chriscoyier
158
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
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