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
2024/05/30 機械学習モデルの評価と改善 発表資料
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
田代真生
May 30, 2024
Technology
450
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
2024/05/30 機械学習モデルの評価と改善 発表資料
田代真生
May 30, 2024
More Decks by 田代真生
See All by 田代真生
検索リランキングを事業成果につなげる 評価・改善戦略
masakick07
4
600
Other Decks in Technology
See All in Technology
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.6k
【CEDEC2026】『GRANBLUE FANTASY: Relink - Endless Ragnarok』のバトル制作事例 ~最高のキャラゲーを目指して~
cygames
PRO
1
320
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
680
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
250
Genie Codeハンズオン基礎編
taka_aki
1
130
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
310
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
410
Kiro Crew入門 - 常駐エージェントの仕組みと使いどころ / Intro to Kiro Crew
k_adachi_01
1
320
20260804_Q4AzureUpdateBite_FabricDataAgentの精度を高める設計.pdf
matayuuu
1
140
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
220
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
6
1.4k
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
5
1.8k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Music & Morning Musume
bryan
47
7.3k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
210
Designing Powerful Visuals for Engaging Learning
tmiket
1
490
The Curious Case for Waylosing
cassininazir
1
460
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
860
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
210
Paper Plane
katiecoart
PRO
2
53k
Docker and Python
trallard
47
4.1k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
630
Transcript
1 DMMにおける 商品検索パーソナライゼーションの オフライン評価について 2024/05/30 合同会社DMM.com 田代真生
#dmm_databricks 2 自己紹介 田代 真生 - 仕事 - 2022年4月に合同会社DMM.comに新卒入社 -
複数サービスでの検索Growthプロジェクトを担当 - 研究(大学院) - PLM(事前学習済み言語モデル)における否定の理解 - 趣味 - サッカー、キャンプ、アイドル
#dmm_databricks 3 質問はSlidoにお願いします https://app.sli.do/event/nmvxCgircnNSMN85DXJT7e/live/questions
#dmm_databricks 4 アジェンダ - DMMにおける商品検索パーソナライゼーション - 商品検索パーソナライゼーションにおける課題 - オフラインテストの導入 -
まとめ
#dmm_databricks 5 アジェンダ - DMMにおける商品検索パーソナライゼーション - 商品検索パーソナライゼーションにおける課題 - オフラインテストの導入 -
まとめ
#dmm_databricks 6 DMMの商品検索 DMMでは様々なサービスにおいて商品検索機能が実装されており、サービス毎に 異なる検索施策を実装しています。 - 検索リクエストのサービス最適なパラメータチューニング - 検索リクエストの書き換え(パーソナライズ) -
検索レスポンスの並び替え(パーソナライズ) - 検索UIのパーソナライズ - …
#dmm_databricks 7 DMMの商品検索 DMMでは様々なサービスにおいて商品検索機能が実装されており、サービス毎に 異なる検索施策を実装しています。 - 検索リクエストのサービス最適なパラメータチューニング - 検索リクエストの書き換え(パーソナライズ) -
検索レスポンスの並び替え(パーソナライズ) - 検索UIのパーソナライズ - …
#dmm_databricks 8 DMMの商品検索パーソナライゼーション DMMの各サービスでは約数十万件の商品を扱っており、検索条件で絞っても数 千、数万件の商品が取得されてしまうためパーソナライゼーションを実施していま す。
#dmm_databricks 9 DMMの商品検索パーソナライゼーション 複数の施策(experiment)を同時に動かしており、それによって詳細なパーソナライ ゼーションを行っている。 { "query": { "q": "限定セール"
}, "boost": [ "if(termfreq(maker,'A出版'),3.0,1)", "if(termfreq(keyword,'ギャグ・コメディ'),0.1,1)" ] } A出版を上位に、ギャグ・コメディを出にくくするクエリ
#dmm_databricks 10 アジェンダ - DMMにおける商品検索パーソナライゼーション - 商品検索パーソナライゼーションにおける課題 - オフラインテストの導入 -
まとめ
#dmm_databricks 11 商品検索パーソナライゼーションにおける課題 ABテスト前に施策自体の良さを評価することが難しい。 元々オフライン(ABテスト前)で施策を評価していたが、、 - パラメータのチューニングが難しい(どこまでユーザーの属性によってブーストす べきか) - 施策が複数動き、クエリが複雑になるにつれてチューニングがより難しくなる
-> ABテストの勝率が低い "boost": [ "if(termfreq(maker,'A出版'),3.0,1)", "if(termfreq(keyword,'ギャグ・コメディ'),0.1,1)" ]
#dmm_databricks 12 商品検索パーソナライゼーションにおける課題 元々の評価は並び順の定性評価 + ロジック部分の定量評価 - 並び順は施策の意図通りになっているか - モデルが予測するユーザーの属性は正しいか
クエリ user_id 購買履歴 controlの並び順 testの並び順 hoge abc123 ['ddd'] ['aaa', 'ccc', 'bbb', 'ddd'] ['bbb', 'ddd', 'aaa', 'ccc'] ︙ ︙ ︙ ︙ ︙
#dmm_databricks 13 商品検索パーソナライゼーションにおける課題 並び順の定性評価 - パーソナライゼーションの細かな挙動を理解しやすい - 想定していなかったパーソナライゼーションの挙動を評価できる - 評価にコストがかかる(時間、ドメイン知識)
- モデル間の細かな差の比較が難しい - 主観が入るので評価者と異なる属性のユーザーに対する挙動の評価が難しい ロジック部分の定量評価 - モデルの比較が容易 - 評価にコストが抑えられる - 最終的に評価したい並び順で評価できない。ロジックをどう組み込むかが難しい
#dmm_databricks 14 アジェンダ - DMMにおける商品検索パーソナライゼーション - 商品検索パーソナライゼーションにおける課題 - オフラインテストの導入 -
まとめ
#dmm_databricks オフラインで施策による並び順の変化を定量的に調べる。 オフライン評価用の検索エンジンを立てるシステムを作成した。 - 検索エンジンへの負荷 - 検索エンジン内のインデックスの柔軟な変更 15 オフライン評価の導入 日次バッチ
DB 検索エンジンの インデックス 検索エンジン DB 検索エンジン内 のデータ 検索エンジン mount upload fetch create index query
#dmm_databricks 16 オフライン評価の導入 データ - 検索ログ、クリックログ、購買ログ - 各検索における表示商品に対して、それらがクリックされたか、購買されたかを 紐付ける 方法
- 各検索におけるクエリを施策によって書き換えた上でオフライン評価用のsolrに リクエストを投げて、新旧のレスポンスを比較する
#dmm_databricks 17 オフライン評価の導入 nDCG, mrr, recallなどの指標を用いて施策によって変化した検索結果そのものを 定量評価できるようになった。 - position biasの効果をIPW(inverse
probability weighting)で考慮した Bias on the web, https://cacm.acm.org/research/bias-on-the-web-2/ (参照 2024-05-28)
#dmm_databricks 18 オフライン評価導入の結果 - solrのパラメータのチューニングが容易になった - Control(50%), Test(50%)で二週間ABテストを実施。 - パーソナライズのブースト値を調整することでab
testにおいてARPUの増加を 確認できた(ブースト値を調整しなかった時にはARPUが減少する結果だった) "boost": [ "if(termfreq(maker,'A出版'),3.0,1)", "if(termfreq(keyword,'ギャグ・コメディ'),0.1,1)" ]
#dmm_databricks 19 まとめ - DMMの商品検索におけるパーソナライゼーションとその課題 - solrに送るリクエストをパーソナライズするために書き換える - いくつかの施策で書き換えが行われており、複雑化して評価が難しくなった -
オフライン評価基盤の作成 - オフライン評価用の検索システムを作成 - 位置バイアスを考慮したランキング指標を用いて ABテスト前に施策を評価、チューニ ング - ABテストを実施 - チューニングによってARPUの上昇を確認
#dmm_databricks 20 まとめ - オフライン評価の感想 - 定量評価によってモデルのチューニングができるのが便利 - 定性評価と組み合わせることで施策の効果がわかりやすくなる -
今後の課題 - オフライン評価の評価(オフライン評価がどの程度適切にできているかわかっていな い) - ABテスト前のモデルの性能は観測できるようになった。 ABテスト後の継続的にモデ ルの性能を観測したい。
#dmm_databricks 21 質問はSlidoにお願いします https://app.sli.do/event/nmvxCgircnNSMN85DXJT7e/live/questions