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
検索失敗率のモニタリングから改善まで - Search Engineering Tech Ta...
Search
Jungwon Choi
May 26, 2024
Technology
6
1.8k
検索失敗率のモニタリングから改善まで - 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.5k
Other Decks in Technology
See All in Technology
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
150
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.3k
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.9k
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
3
1.3k
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
440
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
110
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
370
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
100
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
150
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Site-Speed That Sticks
csswizardry
4
380
Being A Developer After 40
akosma
89
590k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
GitHub's CSS Performance
jonrohan
1030
460k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Documentation Writing (for coders)
carmenintech
67
4.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
330
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
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