検索において提案されている様々なクリックモデルはユーザーの関連性判断や行動パターンが同質的であるという仮定を置いている。今回、Click Model Personalization framework (CMP)を提案し、特定のユーザーやクエリにおいてパーソナライズすることで性能向上を達成した。
今回の論文はクリックモデルに関する話で、L2R(learning to rank)とか、two-phase/two-stage検索(検索候補を取得したあとにリランキング)、transformerでembeddingを取ってsemantic searchとかの話題は出てきません。
検索ログデータによって学習されるクリックの確率モデル
ex1) カスケードモデル
検索結果のうち、アイテム3でクリックされたということは、 ユーザーの評価は、アイテム3>アイテム1,アイテム2 であり、アイテム4,アイテム5は比較検討もしていないという前提でモデリング。
参考: https://www.m3tech.blog/entry/cascade-model-bandits
ex2) dynamic Bayesian network
検索結果全体に対して、ドキュメントの類似度も評価に加える。 例えば、アイテム1,2のクエリ適合度(クエリマッチ度)が高かった場合に、アイテム3がクリックされる確率は低くなる。また、アイテム1,2のクエリ適合度が低かった場合に、アイテム3がクリックされる確率は高くなる、といった条件をモデリング。
ex3) Dependent Click Model
クリックしたアイテムに満足しなければ検索に戻り、別の検索候補をクリックする。(複数回クリックが発生する)
参考: https://www.researchgate.net/publication/221520228_Efficient_multiple-click_models_in_web_search
参考までに、こういうライブラリがあります
https://github.com/markovi/PyClick
上記で挙げた例のように、色々なクリックモデルが提案されているが、基本的にクリックモデルはクエリと検索結果の組み合わせによる評価によってモデリングされたもので、クリックモデルをパーソナライズ化(ユーザーの特徴を考慮)させた先行研究はあまりない。(多少あるが実用的なものはない)
また、上記のモデルのようにユーザー行動について様々な前提が考えられる中でいずれかの判断(検索結果の選択)をしており、一律でユーザー行動を定義するのはベストな選択ではない。
グローバルモデル: 全ユーザーの行動ログからモデルを作成
ローカルモデル: 各ユーザーの行動ログだけでモデルを作成(他のユーザーのログは見ない。学習において干渉されない)
この論文では、パーソナライズモデル=ローカルモデルとして表現している。
モデルは2つのパラメータを持つ
2つのパラメータについて3つの最適化戦略が考えられる。(どれが最適?)
パーソナライズするべきか(いつ最適?)
商用検索エンジンにおける1249ユーザー分の検索ログを利用
train/test: 時系列で3:1の割合で分割
Perplexity, LogLikelihood: うまく予測出来るかを計測
Perplexityが小さくて、LogLikelihoodが大きければ予測精度が高い
クリック確率:
閲覧(行動)確率:
適合確率:
閲覧確率(閲覧される表示位置か)と適合確率(クエリに対してドキュメントが相応しいか)はそれぞれ独立しており、以下のように設定できる。
モデルは、閲覧確率と適合確率を予測してクリック確率を算出するのが目的
閲覧確率は表示位置のみに依存する 適合確率はクエリとドキュメントの関連性のみに依存する それぞれは独立
Q1. どのパラメータ最適化戦略が優れているか(=行動か適合度か)
Perplexityが小さくて、LogLikelihoodが大きければ予測精度が高い
- 行動確率を最適化(CMP^B)する戦略を取るとbaseline(NOP)を大きく上回る。 - 適合度の最適化をする場合は戦略によって精度低下につながる(queryとdocumentの類似度はそもそもpersonalize化できず、データ量の少なさによるデメリットが影響してそう)
Q2. どのタイミングでパーソナライズしたほうがいいか(=貪欲、慎重、oracle)
- greedy戦略では、行動確率最適化においては精度が大きく改善するが、他の最適化においてはbaselineを上回らない。精度が安定していない。 - 慎重戦略は安定した精度を出すことが出来る
Q3. 今回の提案モデルは既存モデルより優れているか
改善されました(詳細は省略)
Q4. どんなユーザーグループに対してパーソナライズが有効か
- ユーザーごとのクエリエントロピー(多様性)を計測したところ、エントロピーが小さい(似たようなクエリばかり検索している)ケースでパーソナライズの効果が大きいことがわかった。
Q5. パーソナライズしたクリックモデルはユーザーごとの行動パターンを推定できるか
- kMeansでクラスタリングしたら、傾向は少し見えた - 表示位置の効果が大きい/小さいユーザー - 最初の結果だけみて検索セッションを終えるユーザー - 中間の位置を好んで閲覧するユーザー
クリックモデルにおける行動確率(閲覧確率)を慎重に入れ替えると(過去クエリの実績に基づいて)、予測性能が改善される。
同じようなクエリを複数回検索しているユーザーに対しては特に有効