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 and community in cookpad 2019
Search
genta kaneyama
September 25, 2019
Programming
2k
2
Share
search and community in cookpad 2019
クックパッドのレシピ検索とレシピコミュニティ
cookpad product kitchen #4の発表資料です。
genta kaneyama
September 25, 2019
More Decks by genta kaneyama
See All by genta kaneyama
MOSHでの生成AI活用の取り組み
penguinco
0
230
行動ログでプロダクトを改善するには/exploit user behavior for product
penguinco
4
9.3k
Solr @ CROSS2015 C4
penguinco
1
1.4k
how to improve search
penguinco
8
2k
solrとelasticsearchの比較
penguinco
15
5.7k
Other Decks in Programming
See All in Programming
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
210
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
7
3k
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
310
今さら聞けないCancellationToken
htkym
0
210
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
2
640
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
460
Moments When Things Go Wrong
aurimas
3
140
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
430
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.5k
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.4k
Featured
See All Featured
Unsuck your backbone
ammeep
672
58k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Site-Speed That Sticks
csswizardry
13
1.2k
Design in an AI World
tapps
1
220
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
560
Building Applications with DynamoDB
mza
96
7.1k
Documentation Writing (for coders)
carmenintech
77
5.4k
Navigating Team Friction
lara
192
16k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
600
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
190
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Transcript
クックパッドのレシピ検索とレ シピコミュニティ 兼山 元太
自己紹介 兼山 元太 https://twitter.com/PENGUINANA_ 所属:Cookpad/会員事業部 担当:VP, Search
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
クックパッドのレシピ ・レシピ数: 約310万品 ・つくれぽ数: 2200万回 ・月間利用者数: 約5,400万人
クックパッドのレシピ検索 ・レシピ検索:年間 12億セッション ・検索語: 毎日 30万通り
クックパッドのレシピ ・ふつうの人が作った料理/工夫 ・食卓の定番になるレシピ ・目視でレビューされている 「その通りにやれば作れるか?」 「他者を不快にさせないか?」
コアとなる体験:投稿すると予想外の報酬 レシピをのせて、さがして、つくる 1)生活が変わるアイデアを発見できる 2)実際にやってみる 3)のせる人とさがす人がお互いの楽しいを増やせる
のせる人 と さがす人 ・つくれぽでつながる のせる人 と さがす人 ・作者さんの声 「私のレシピにつくれぽが来るとは 思ってなかったので素直に驚いた」
「来るのが嬉しくてレシピ投稿を続けてみた」
シンプルな材料のレシピ
ユーザによる多様なアレンジ
元となったレシピ
ユーザによる多様なアレンジ
コアとなる体験:献立が楽に決まる プレミアムサービスに一番期待していること: 1位 人気順や殿堂入りでレシピを検索できる:34% 2位 毎日の献立を決めるのが楽になる: 13% 3位 料理のレパートリーが増える: 11%
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
ランキング:コミュニティのための新着順 速く / できるだけ1on1 の つくれぽ(マッチ)を起こす
ランキング:コミュニティのための新着順 ・260万/316万品が見られた。 ・今年公開のレシピのクリック: ・有料ユーザー:12% ・フリーユーザー:88% 検索からのレシピクリック(直近1ヶ月)
ランキング:レシピがさがせる新着順 「見つかりそう」な印象が大事。 関連検索を利用し 先回りして検索。 リランクする。
ランキング:ジレンマ 先頭に関連性の高いレシピを集めると、 ポジションバイアスによって 見られるレシピが偏ってしまう。 多くのレシピを見てもらう機会が減る。
ランキング:人気順 人気度が大事。 クエリとレシピの関連性も大事。 前日のクリック情報で訂正。 リランクする。
いつもの検索語で、新しい発見ができる。
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
検索基盤:検索エンジン ・Apache Solr + Rails ・多様な検索オプション、ランキングを提供 ・フィールドの数:100以上 SQLでDWHからPULLして作成。
検索基盤:辞書 ・Rails Gem(Rails + GDBM) ・世にある検索フレーズの全てを知るテーブル ・MeCabのユーザー辞書も管理 ・GDBMでAppサーバーに同居、高速に参照
検索基盤:分かち書きの意義 ・分かち書きの意義 「鰹 vs 鰹節」問題 辞書で鰹節が「鰹」「節」になりにくくした。 (鰹節の綴り違いは主だったものだけで60通)
検索基盤:分かち書きの意義 結果: ・ヒット数:4,900→3,400品 ・CTR:0.27→0.52まで上昇。 人気順もTOP3が全部鰹節だったのが、 TOP30までみてもミスマッチは1品。
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
ログ分析:DWH(Redshift) ここまでの作業のほぼすべての前提! 全てのデータとログが一元化されたDWHが プロダクトのワンストップのソース。
Agenda クックパッドとコアの体験 ランキングの工夫 検索基盤 ログ分析 これからやりたいこと
これからやりたいこと: セッション分析の精緻化 ・遠いコンバージョンに対して どう最適化するのか? ・より多くのレシピ作者に 再び投稿してもらうにはどうすれば?
これからやりたいこと: コンテキストに合わせた検索 ・使っている人の属性 シーンの多様さに対応する