TL;DR

Think-to-Personalize(TTP)は、EC検索において、ユーザーの購入履歴をLLMに推論させ、曖昧なクエリを意図補完したクエリに書き換えてから埋め込み検索する手法です。SFTとGRPOによる2段階学習で推論と検索を統合し、オフライン・オンライン双方で効果を確認しました。

解説

AMI HAPPY

ねえ智也くん、このブログのタイトル、『Think-to-Personalize』って何か面白そう!でも、検索クエリの意図を推論で補完って、どういうこと?

TOMOYA NEUTRAL

ああ、これはECサイトの商品検索の話だよ。ユーザーが曖昧な検索ワードを入れたとき、その人の購入履歴を使って、LLMに「この人は何を探してるんだろう?」って推論させるんだ。

AMI CURIOUS

へー、例えばどんな曖昧なクエリ?

TOMOYA NEUTRAL

例えば「プレゼント」って検索したとする。でも、その人が過去にコーヒー豆を買ってたら、コーヒー関連のプレゼントを探してる可能性が高いよね。TTPはそういうのを推論して、クエリを「コーヒー プレゼント」みたいに書き換えるんだ。

AMI SURPRISED

なるほど!でも、なんでわざわざクエリを書き換えるの?そのまま検索すればいいんじゃない?

TOMOYA NEUTRAL

普通の埋め込み検索だと、曖昧なクエリはベクトルがぼやけちゃって、精度が落ちるんだ。だから、具体的なクエリに書き換えてから埋め込み検索することで、より関連性の高い商品を出せるようにしてる。

AMI CURIOUS

なるほどね。で、どうやってLLMに推論させるの?

TOMOYA NEUTRAL

2段階の学習をするんだ。まずSFT(教師ありファインチューニング)で、正しい推論の仕方を学ばせる。それからGRPOっていう強化学習で、検索結果が良くなるようにさらに最適化する。

AMI SURPRISED

GRPOって何?強化学習の一種?

TOMOYA NEUTRAL

うん、グループ単位で報酬を比較する強化学習手法だよ。検索結果の関連性を報酬にして、推論の質を上げる感じ。

AMI CURIOUS

それで、実際に効果はあったの?

TOMOYA HAPPY

オフラインの評価でも、オンラインのA/Bテストでも、従来の手法より良い結果が出てる。特に、ユーザー履歴がある場合の精度が上がったみたい。

AMI CURIOUS

すごい!でも、何か課題とか限界はないの?

TOMOYA NEUTRAL

そうだね。まず、ユーザー履歴が少ない新規ユーザーには効果が薄いかもしれない。あと、LLMの推論に時間がかかるから、リアルタイム検索には向かない可能性もある。

AMI HAPPY

あー、確かに。でも、履歴がたくさんあるユーザーにはめっちゃ便利そう!私もECサイトで「プレゼント」って検索するとき、過去の買い物から推論してくれたら助かるなー。

TOMOYA NEUTRAL

でも、君の履歴だと「お菓子」って検索しても、全部チョコレートになりそうだね。

AMI HAPPY

あはは、それも悪くないかも!でも、たまには新しい発見も欲しいから、ほどほどにしてね!

TOMOYA NEUTRAL

まあ、その辺は今後の研究に期待だね。