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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
田代真生
May 30, 2024
Technology
430
1
Share
2024/05/30 機械学習モデルの評価と改善 発表資料
田代真生
May 30, 2024
More Decks by 田代真生
See All by 田代真生
検索リランキングを事業成果につなげる 評価・改善戦略
masakick07
2
400
Other Decks in Technology
See All in Technology
個人AIからチームAIへ:開発における品質と生産性の再設計
moongift
PRO
0
310
脅威をエンジニアリングの糧にして:恐怖を乗り越えた先にあったもの / Turn threats into fuel for engineering: what lay beyond overcoming fear
nrslib
1
350
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
160
人が担う「価値」とは?これからの「QA」とは / Human Value and the Future of Quality Assurance
bitkey
PRO
0
140
Fabric-cicd によるAzure DevOps デプロイ
ryomaru0825
0
140
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.7k
自称宇宙最速で不合格となったAIP-C01にリベンジを果たすべくAIで問題集アプリを作ってみた。
yama3133
0
240
APIテストとは?
nagix
0
160
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
260
「使われるデータ基盤」を目指してデータアナリストとワークショップをやった話
jackojacko_
2
930
シンデレラなんかになりたくない!ガラスの靴が割れた時代にどう歩く?
nomizone
0
220
Datadog 認定試験の概要と対策
uechishingo
0
190
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
470
Ruling the World: When Life Gets Gamed
codingconduct
0
240
Game over? The fight for quality and originality in the time of robots
wayneb77
1
180
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Building AI with AI
inesmontani
PRO
1
1k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Believing is Seeing
oripsolob
1
130
Google's AI Overviews - The New Search
badams
0
1k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
190
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