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
noteの記事レコメンドについて
Search
Akira Midorikawa
February 21, 2019
Programming
1
680
noteの記事レコメンドについて
Akira Midorikawa
February 21, 2019
Tweet
Share
More Decks by Akira Midorikawa
See All by Akira Midorikawa
pixivFACTORYのプレビューを支える技術
redcap97
0
15k
Other Decks in Programming
See All in Programming
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
0
290
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
1.1k
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
550
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
830
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
550
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
380
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
710
GraphRAGの仕組みまるわかり
tosuri13
8
500
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
160
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
520
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
0
360
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
1k
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Docker and Python
trallard
44
3.5k
Facilitating Awesome Meetings
lara
54
6.4k
How STYLIGHT went responsive
nonsquared
100
5.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Navigating Team Friction
lara
187
15k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
noteͷهࣄϨίϝϯυ ʹ͍ͭͯ note engineer meetup #2
ࣗݾհ • ߊ (Akira Midorikawa) • 20188݄ೖࣾ • αʔόαΠυͷ։ൃΛ͖ͬͯͨ •
࠷ۙɺٳαφʹΑ͘ߦͬͯΔ
noteͷهࣄϨίϝϯυͱ
noteͷهࣄΛݟͯҰ൪Լ·Ͱ Ҡಈ͢Δͱग़ͯ͘Δػೳ
None
Ϩίϝϯυͷ͘͠Έ • noteʹςΩετ͕ओମͷهࣄ͕ଟ͍ • هࣄͷςΩετ͔Βࣅ͍ͯΔهࣄΛϢʔβʹ ͓͢͢Ί͍ͯ͠Δ
Ϩίϝϯυͷ͘͠Έ • ࣅ͍ͯΔهࣄΛ୳͢ͷʹPythonͷϥΠϒϥϦ ͷgensim (Doc2Vec)Λར༻͍ͯ͠Δ
Ϩίϝϯυͷ͘͠Έ • ͓͢͢Ίʹ༻͢Δهࣄɺਓ͕Λ௨ͯ͠ ΫΦϦςΟͷߴ͍هࣄΛબΜͰ͍Δ • શʹϗϫΠτϦετܗࣜʹͳ͍ͬͯΔ
͜ͷػೳ20184݄ʹ ϦϦʔε͞Ε·ͨ͠
͔͠͠ॏେͳΛ ๊͍͑ͯͨ
ͦͦϨίϝϯυͷ ਫ਼͕͗͢Δ
Ϩίϝϯυͷਫ਼͕͍ • શવɺࣅ͍ͯΔهࣄΛϨίϝϯυͰ͖ͯͳ͍ • ͖͋Β͔ʹக໋తͳ • લऀ͕طʹࣙΊͯͨͷͰγεςϜͷશମ૾ ΛͬͯΔਓ͍ͳ͍
ͦΜͳঢ়گ͔Β Ϩίϝϯυͷվળ͕࢝·Δ
·ͣΛऔΔ
ΛͱΔ • ϨίϝϯυͷදࣔͱΫϦοΫͷৄࡉΛͱΕΔ ΈΛͭ͘Δ • SQLͰूܭͰ͖Δ • RedashͰμογϡϘʔυ࡞ͬͯຖݟΔ
ΛݟͯϥϯμϜͳ Ϩίϝϯυ͕ඇৗʹଟ͍͜ͱ ͕͔Δ
ϥϯμϜͳϨίϝϯυ? • Pythonͷόον͕Ϩίϝϯυ݁ՌΛੜ͢Δ ·ͰʹهࣄΛϥϯμϜʹද͍ࣔͯͨ͠ • ͔͠ϥϯμϜͰද͍ࣔͯ͠Δظ͕ؒҟ༷ʹ ͍͜ͱʹؾͮ͘ • ͕͢͞ʹϥϯμϜදࣔCTR͕ͱ͍ͯͷͰ ظؒΛॖΊ͍ͨ
࠷ऴతʹΈΛ1͔Β࡞Γ ͢͜ͱʹͳΔ
APIαʔόΛͭ͘Δ • Ϩίϝϯυ݁ՌΛฦ͢APIαʔόΛFlaskͰ ࡞͢Δ • هࣄ͕ެ։͞ΕͨλΠϛϯάͰAPIαʔόʹϦ ΫΤετΛૹͬͯϨίϝϯυ݁ՌΛड͚औͬ ͯDBʹอଘ͢Δ
OPUFBQQ 3BJMT +PC 4JEFLJR .-"1* 'MBTL %#
APIαʔόΛͭ͘Δ • ͜ΕʹΑͬͯϥϯμϜͳϨίϝϯυ͕දࣔ͞Ε Δ͜ͱ΄΅ͳ͘ͳͬͨ • શମͷΫϦοΫ, CTR্͕ঢ͢Δ
Ϩίϝϯυͷਫ਼Λ্͛Δ
Ϩίϝϯυͷਫ਼Λ্͛Δ • ͜Εύϥϝʔλͷௐͨ͠ΓɺABςετ͠ ͨΓͯ͠ࢼߦࡨޡͯ͠·͢ • ͦͷதͰҰ൪ޮՌ͕͋ͬͨͷίʔύεͷ αΠζΛ૿͢͜ͱ
Ϩίϝϯυͷਫ਼Λ্͛Δ • ͓͢͢Ί͢ΔهࣄϗϫΠτϦετܗࣜͳͷ Ͱ1ສهࣄ͙Β͍͔͠ͳ͍ • Doc2Vecͷ୯ޠͷࢄදݱΛेʹֶश͢Δ ʹσʔλྔ͕Γͯͳ͍
Ϩίϝϯυͷਫ਼Λ্͛Δ • ຊ൛WikipediaͱnoteͰެ։͞Ε͍ͯΔ શهࣄΛDoc2Vecͷ୯ޠͷࢄදݱΛֶश͢ Δͷʹ༻͢Δ • ͜ΕʹΑͬͯΑΓ͍ۙهࣄΛϨίϝϯυͰ͖ ΔΑ͏ʹͳͬͨ
ֶशʹ༻͢ΔίʔύεΛ ૿ͨ͠ޮՌΛൺֱ͢Δ
None
Ϩίϝϯυͷൺֱ (ఆੑධՁ)
Ϩίϝϯυͷൺֱ (ఆੑධՁ) ϑΣϯωϧΛϋʔϒͱ͔߳ຯࡊͱ͍ۙ୯ޠͱ ֶश͍ͯ͠Δͷ͔ͦ͏͍ͬͨهࣄͷྨࣅ্͕ ͕͍ͬͯΔ
Ϩίϝϯυͷൺֱ (CTR, ABςετ)
վળͷਐḿ
CTR: +4% ΫϦοΫ: 3~4ഒ
CTR, ΫϦοΫͱ ॱௐʹ৳ͼ͍ͯΔ✨
͋Γ͕ͱ͏͍͟͝·ͨ͠!