$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
検索失敗率のモニタリングから改善まで - Search Engineering Tech Ta...
Search
Jungwon Choi
May 26, 2024
Technology
6
1.6k
検索失敗率のモニタリングから改善まで - Search Engineering Tech Talk 2024 Spring
Search Engineering Tech Talk 2024 Spring
の LT枠の発表資料です。
Jungwon Choi
May 26, 2024
Tweet
Share
More Decks by Jungwon Choi
See All by Jungwon Choi
「ElasticsearchのReindexをするために試行錯誤して分かったこと」 50回 Elasticsearch勉強会
magicpieh28
1
1.4k
Other Decks in Technology
See All in Technology
総会員数1,500万人のレストランWeb予約サービスにおけるRustの活用
kymmt90
3
2.9k
Azure DevOps REST API活用とセキュリティのベストプラクティス-Workload Identity Federationのメリット
yutakaosada
0
100
MySQL 8.0 から PostgreSQL 16 への移行と RLS 導入までの道のりと学び
baseballyama
0
1k
12/4(水)のBedrockアプデ速報(re:Invent 2024 Daily re:Cap #3 with AWS Heroes)
minorun365
PRO
2
420
JAWS-UG 横浜支部 #76 AWS re:Invent 2024 宇宙一早い Recap LT3Amazon EKS Auto Modeと遊び(パーティ)の話
tjotjo
0
130
ナレッジベースはどのようにSQLを生成するのか / Knowledge Bases supports structed data retrieval
hayaok3
1
150
Kubeshark で Kubernetes の Traffic を眺めてみよう/Let's Look at k8s Traffic with Kubeshark
kota2and3kan
0
140
Oracle Database Release and Support Timelines 2024/12/11
wmo6hash
0
170
ミスが許されない領域にAIを溶け込ませる プロダクトマネジメントの裏側
t01062sy
8
8.4k
属人化したE2E自動テストを ひも解く
honamin09
1
110
つくってあそぼ! ユビキタス言語作文の紹介
ndadayo
1
150
Advancing the 3D Geospatial Ecosystem in Japan via Global Collaborations
osgeojp
0
180
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Making Projects Easy
brettharned
116
5.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
43
9.3k
Done Done
chrislema
181
16k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Optimising Largest Contentful Paint
csswizardry
33
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Building Applications with DynamoDB
mza
91
6.1k
Bash Introduction
62gerente
608
210k
Transcript
検索失敗率のモニタリングから 改善まで 2024/5/31 Search Engineering Tech Talk 2024 Spring NewsPicks
エンジニア / 崔 井源
崔 井源(ちぇ じょんうぉん) 自己紹介 • 韓国ソウル特別市出身 • 2020年に奈良先端科学技術大学院大学で修士課程を修了 • 2020年にNewsPicksに新卒入社
• 検索システムの開発を主に担当 (検索データの整形、インフラの開発・改善、検索機能の改 善など) 2 @jonlpstudy
3 検索失敗をモニタリングする | 01 |
課題を発見する 検索失敗モニタリング • ユーザーや社内からの要望 • ユーザーリサーチ、ユーザーインタビュー ▪ 要望にはない課題を発見できる ▪ ユーザーの行動(使っている、使っていないなど)の理由が分かる
• データ分析 ▪ 要望にはない課題を発見できる ▪ アドホックな(その場限りの)分析 ▪ 継続的な分析(モニタリング) 4
検索失敗とは 検索失敗モニタリング 「検索する」ということは、積極的に探したいものがあるということ。検索結果が表示されても、何も(記事や動 画)開かずに離脱したのであれば「検索に失敗している」とみなす。 5
検索失敗の例 検索失敗モニタリング 1. プッシュ通知の文言で検索して失敗 • 通知文言: 組織マネジメントに活かせる「なんでなんでゲーム」とは? • タイトル: 組織成長を加速させる「リフレクション」の扉
6
検索失敗の例 検索失敗モニタリング 1. サムネイル画像の言葉で検索して失敗 • サムネイル文言: 「ホリエモン大絶賛 小学生起業家の神プレゼン」 • タイトル:
メイクマネー U-24【前編】 7 ユーザは「ホリエモン 神プレゼン」 などと検索して失敗した
検索失敗の例 検索失敗モニタリング 3. 古いが人気のあるコンテンツを探したいが、見つからず失敗 • 9,000Pickを超えるほどの人気記事 • 「おすすめ順」の検索結果はPick数よりも公開日を重視するロジック • 1年以上経つと検索結果の上位に表示されないので探せない
8
9 検索失敗をもとに改善する | 02 |
DBに「検索用のキーワード」フィールドを設ける 検索改善の施策 プッシュ通知時に自動的に文言を「検索用キーワード」として登録し、検索できるようにすることで検索結果に ヒットさせる。コンテンツ制作チームでヒットして欲しいキーワードを手動で登録することも可能にすること で、内部で結果をコントロールできるようにした。 10 内部のデータ 検索結果
検索ホーム画面を作る 検索改善の施策 そもそもプッシュ通知されたコンテンツの検索件数や失敗率が高いのは、通知され たコンテンツをアプリで見つけることが難しいから。 であれば、検索する前段階で「ここにあるよ!」と教えた方がいいのではないか。 • プッシュ通知した記事を最上位に配置し、通知をタップしても探しやすくするこ とで、検索しなくてもアクセスできるように改善 ◦ プッシュ通知関連の検索件数が減少した
• 常に多く検索される「WEEKLY OCHIAI」や「HORIE ONE」を上位に配置するこ とで、検索しなくても最新話にアクセスできるように改善 ◦ ファーストビューに見えるコンテンツ関連の検索件数が減少した 11
ランキングロジックを改善 : 人気のコンテンツを上位に表示する 検索改善の施策 改善前の記事検索ロジックは公開日順の傾向が強かった。 NewsPicksのコンテンツは、ユーザがブックマーク1)・おすすめ2)・コメント3)をすることができ、それらで表す 「Pick数」がそのコンテンツの人気度合いを表す。改善後のロジックは以下のような加算と減衰を行い、「公開し てからの経過日数」と「人気度合い(Pick数)」をバランスよく考慮した順序にしている。 12 1)
他ユーザには非公開に保存するためのリアクション 2) フォロワーなどにおすすめするためのリアクションで、旧Pickのコメントなしバージョン 3) コメントをするリアクションで、旧Pickのコメントありバージョン • Pick数が多いほど加算 • 古い記事ほど減衰 想定イメージ • 0日後の1Pick = 100日後の10Pick • 0日後の10Pick = 100日後の100Pick • 0日後の100Pick = 100日後の1000Pick
13 まとめ | 03 |
まとめ 毎週検索失敗率モニタリングを行うことで、ユーザが現在困っているポイントにすぐ気づくことができた。 それらをもとにいろんな改善を行い、ユーザが探したいコンテンツに出会える機会を増やすことができた。 • プッシュ通知文言で探せない問題 ⇒ DBに「検索用キーワード」フィールドを設け、検索にヒットさせる ⇒ 検索の最初の段階に見せる「検索ホーム画面」を作り、通知済みコンテンツを検索しなくても探せるよう にする
• サムネイル画像のテキストで探せない問題 ⇒ コンテンツ制作チームが手動で「検索用キーワード」を登録し、検索にヒットさせる (自動化は課題として残っている) • 人気のある古いコンテンツが探せない問題 ⇒ 「おすすめ順」を、「公開順」X「人気順」のランキングにする 14
最後までご清聴ありがとうございました。 Thank you 15