Core technology disclosure of search model
1. 背景と意義
ユーザーモデリングは検索とレコメンデーションモデルのコア技術です。Taobao 検索のランキング計算の対象はトリプレットです。サンプル特徴の表現の観点から見ると、商品は比較的密で安定した部分です。大規模なサンプル環境では、ほとんどの情報を ID 埋め込みで表現できます。一方でユーザーはトリプレットの中で比較的疎な部分であり、ユーザーの記述には多くの汎化特徴が必要となります。
モデル分類の観点から見ると、ユーザーと商品の静的特徴の役割はモデルの汎化性を高めることです。ユーザーのリアルタイムな行動の導入とモデリングにより、サンプル間の識別性を大幅に高め、モデルの分類精度を著しく向上できます。我々はユーザーモデリングのプロセスを、ユーザーに関する情報を抽象化し整理するプロセスと捉えています。
情報の抽象化の観点から、モデリング手法の継続的な最適化と拡充を進めています。
ユーザープロファイルはユーザーの静的属性情報を表現するために使用されます。
嗜好タグのマイニングにより、行動からユーザーの一般的な嗜好を予測します。
リアルタイム行動モデリングにより、現在のリクエストにおける関心をより詳細に特徴付けし記述します。
情報の整理の観点から、行動周期と行動内容の両面からユーザー行動データを合理的に整理しています。
行動周期の観点から、行動系列を短期と長期に分割し、異なるタイムスパンで異なる粒度の関心を記述します。
行動内容の観点から、直接的な行動フィードバック商品と露出商品を用いて、ユーザーの意図を明示的および暗示的に表現します。同時に、ユーザー行動データを従来の EC 商品から幅広いコンテンツ情報へと拡張しています。
ユーザー行動モデリングは、レコメンデーションや広告など多くのチームの研究対象でもあります(広告チームの DIN、DIEN、Practice on Long Sequential User Behavior Modeling、レコメンデーションチームの MIND、DSIN など、優れた研究成果があります)。我々は実際の応用を出発点として、検索シナリオでのユーザーモデリングの実践的な知見を共有します。同時に、観測された現象や課題を記録し、皆様の議論と交流を歓迎します。以降の記事の内容は以下の通りです。
大規模モデルの全体モデル構造を簡潔に紹介します。
ユーザーデータと行動系列の整理と処理。
モデル構造の改善点。
モデル実験と分析、関連する実践的な課題の研究と議論。
2. モデル構造
我々のモデル構造はおおよそ図の通りです。ユーザープロファイル、複数のユーザー行動系列特徴、スコアリング対象の商品特徴、その他のリアルタイムコンテキスト特徴(天気、ネットワーク、時間など)を最終的に concat した後、DNN 分類器に入力します。ユーザー行動系列モデリングはモデルの中で最も重要な部分の一つであり、特にユーザーの関心のリアルタイムな描写に重要です。ここではセルフアテンションとアテンションプーリングを使用して系列モデリングを行います。セルフアテンションは行動間の関係を記述し、アテンションプーリングは行動とターゲットのマッチングと活性化を行い、統合を実現します。これが汎用的な系列モデリングコンポーネントの一つです。このモデルフレームワークに基づいて、今年の最適化作業とその実装の詳細をさらに紹介します。
3. ユーザーデータとモデル
ユーザープロファイルは比較的静的なユーザー特徴であり、これらの静的特徴は user_id の補完と汎化として使用されます。近年、セッションベースレコメンデーションに代表されるユーザーのリアルタイムな関心を理解するモデルが広く研究されており、レコメンデーションの精度を大幅に向上できることが多くの実験で示されています。特に、ユーザーの直近の行動ほど、ユーザーの現在の関心状態をよく表します。ユーザーが行動した商品を使ってユーザーを表現することで、ユーザーの関心の動的変化をリアルタイムに捉えることができます。さらに、グラフの観点から見ると、ユーザーと商品で構成されるグラフでは、商品は密なノードであり、ユーザーは疎なノードであり、密なノードは疎なノードの表現に適しています。
以下に示すように、統一された行動スキーマを定義します。
これは商品自体の属性特徴と、ユーザーの商品に対する行動特徴の 2 つの部分から構成されています。属性特徴には item_id、seller_id、および商品を記述する一連の特徴が含まれます。行動特徴にはユーザーの行動タイプ、行動時間、系列内位置などの商品の特性が含まれます。
3.1 短期・中期周期
データと特徴:昨年の Starship プロジェクトでは、ユーザーの異なる行動タイプの短期行動についてグローバルモデリングを実施しました。この系列には、ネットワーク全体でのユーザーのリアルタイムクリック、購入、お気に入りなどの行動が含まれます。ユーザーの豊富な過去の行動に対して、系列長には上限があるため(L_max=50)、クエリの予測カテゴリを使用して、現在の意図カテゴリとより関連性の高い過去の行動を選択します。ユーザーが能動的にクエリを入力することが、検索とレコメンデーションの最大の違いです。クエリ理解に関しては、クエリ理解チームが多くの作業を行っており、ここではクエリ理解の結果を利用して、クエリの予測末端カテゴリでユーザー行動系列をフィルタリングします。
モデル構造:
トランスフォーマーモデルは自然言語処理(NLP)分野で非常に優れた成果を上げており、セルフアテンション機構を用いて系列内の依存関係を捉えています。同時に並列計算が可能で、トレーニングと予測の速度向上も実現しています。CTR モデルでは、アイテム系列の処理にセルフアテンションを幅広く活用しており、既存のセルフアテンションに対して以下の 2 つの改善を加えています。
元のドット積 + スケールダウンの代わりにコサイン類似度 + スケールアップを使用して(レイヤー正規化の追加も可能です)、K と Q の類似度を計算し、ソフトマックスのロジット出力値の識別性を向上させます。元のセルフアテンションを適用した際に、いくつかの問題を発見しました。(1) ソフトマックスのロジット値が非常に小さく、アテンションの重みが常に均等状態になってしまう。(2) アテンション構造で勾配消失が発生し、ほとんど学習できない。我々の CTR モデルの埋め込みは 0 から初期化され、ランダム初期化ではないため、小さな勾配ではセルフアテンションの学習が困難です。そこで、ドット積の代わりにコサイン値を使用して K と Q の距離を計算します。以下に示します。
セルフアテンションの出力に対してクエリアテンションプーリングを実行しました。短期系列は現在の意図とのカテゴリ一致性を確保するよう努めていますが、クエリとの一致性をさらに保証するため、短期系列に対してクエリアテンションプーリングを実行し、現在のクエリの意図とセマンティクスに合致する過去の行動を活性化します。後続の実験では、ここで一般的なターゲットアテンションを使用しない理由もさらに分析します。
短期行動モデリング全体のモデル構造を以下の図に示します。セルフアテンション + クエリアテンションプーリングです。
ここで、コンテキストマスク埋め込みは e1+c1 として演算されます。
3.2 長期周期
データと特徴:短期・中期行動系列では、限られた長さの中でネットワーク全体のユーザーの短期行動を考慮していますが、当然ながらユーザーのより初期の行動は系列に含まれていない可能性があります。昨年の Starship プロジェクトでは、ユーザーの長期嗜好の静的特徴をオフラインで集計してこの情報を補完していましたが、この方法ではユーザーの現在の意図やコンテキストと組み合わせて関連する嗜好情報を選択することができません。
ユーザーの長期行動をエンドツーエンドでモデリングしたいと考えています。第一に、ユーザーの長期嗜好を導入できます。第二に、現在の意図に基づいて長期行動をモデリングでき、静的に嗜好ラベルを抽出するのではなく、動的に処理できます。第三に、昨年の同じシーズンのデータを活用することで、パーソナライズされたシーズン変化のコールドスタート問題を解決できます。
ユーザーの長期行動を以下のように定義します。過去 2 年間のユーザーの取引行動。クリックなど他のタイプは現時点では考慮しません。ユーザーは昨年に購入したものは覚えていても、注文したものまでは覚えていないと言われます。また、他のタイプのデータは量が多すぎます。
具体的には、2 年間の行動データを四半期ごとに 8 つの四半期系列に分割し、各四半期系列は長さ N の部分系列として、各四半期の行動が保持されるようにします。切り捨てによってある四半期の行動情報がすべて失われる可能性があるため、ユーザーの多面的な情報をできる限り保持する必要があります。同時に、系列に対してカテゴリ関連のフィルタリングは行っていません。短期行動と比較して、長期行動ではブランドやストアの用語などへの嗜好がより重要です。
モデル構造:
以下の図に示すように、まず長期行動の商品レベル埋め込み特徴に対して、コンテキストレベルの埋め込みを用いて add_mask を実行します。つまり e1+c1 です。次に多層モデリング手法を用いて、四半期系列内で最適化されたセルフアテンションを通じて特徴抽出と部分系列のアテンションプーリングを行い、該当四半期のユーザー嗜好表現を取得します。最後に異なる四半期間で concat を行います(アテンションプーリングも試しましたが、効果は concat より若干劣りました)。ユーザーの最終的な長期嗜好表現が得られます。この利点は、シーズンに敏感な検索意図に対して、現在の四半期に適合する嗜好情報をより適切に抽出できることです。
ここでのアテンションプーリングは、shortseq_vec をクエリとして使用します。shortseq_vec はユーザーの意図とユーザーのリアルタイムな嗜好を組み合わせた表現であり、元の検索語のみを使用する(ユーザーの検索意図のみを表現する)よりも、現在の検索に対する過去のトリガーの重要性をより包括的に評価できます。同時に、短期系列も系列に属するため、ベクトル空間が比較的近いという利点もあります。
3.3 端末側クリック
前述の 2 つの部分は長期と短期からそれぞれユーザーの行動商品と対応するコンテキスト情報を取得していますが、実際のユーザー行動はクリックや購入だけではありません。検索結果ページでの商品一覧の露出やユーザーの閲覧とスワイプ、詳細ページでの動画視聴やパラメータ比較など、ユーザーにはまだ注目されていない非常に豊富な行動があります。これらの特徴の一部はサーバーログから取得できず、また UT ログ経由では遅延が大きいためオンラインでの活用が困難です。そこでエッジコンピューティングを活用してクライアント側でこれらのデータ特徴を収集し、サーバーに転送します。同時にレスポンス時間をミリ秒単位に短縮できます。以降の 2 つの部分では、端末上のクリック系列と端末上の露出系列モデリングを紹介します。
データと特徴:端末上のクリック系列のモデリングと短期・中期系列のクリック行動のモデリングにはいくつかの違いがあります。より詳細なユーザー行動を捉えるため、詳細ページの各ブロックでのユーザーの滞在時間やクリックされたボタンなどを記録します。第三に、系列に対してクエリ相関フィルタリングを行わず、クロスカテゴリ行動から有用な情報を導入し、短期・中期系列へのさらなる補完として機能させ、重複を避けます。ユーザー行動はインスタンスレベルでは各行動に一定の重要性がありますが、特徴レベルでは各行動の重要性がブランド、ストア、用語などの特徴とターゲット商品とのマッチングの度合いにも依存し、行動がクエリのカテゴリ予測と一致するかどうかを強調するだけではありません。
モデル構造:端末上のクリック系列のモデリング手法は短期系列のモデリングと類似しており、最適化されたセルフアテンション + アテンションプーリングを通じてユーザーの嗜好表現を捉えます。同様に、取得した詳細ページの行動もコンテキスト情報として、商品レベルの埋め込みに add_mask を適用できます。ここでのアテンションプーリングも shortseq_vec をクエリとして使用します。
3.4 端末側露出
これまではユーザー嗜好のモデリングについて紹介しました。基本的にはユーザーの能動的な行動から出発し、ユーザーのお気に入りの商品を使ってユーザーを記述し理解するアプローチです。では、ユーザーが好まない側面からもユーザーを記述できるでしょうか。そこで、ユーザーが露出されたがクリックしなかった商品を収集・モデリングし、大規模モデルに統合します。他の商品系列と異なり、露出商品には非常に重要な特性があります。それは、現在のユーザー + クエリ + コンテキストの下で実際に検索可能な最も正確な商品であるということです。ある意味で、露出商品は今回の検索の豊富な情報を総合しており、ユーザーやクエリを効果的に表現できます。
データと特徴:ユーザーのクリックや購入と比較して、PV 露出データの量は非常に多いため、リアルタイムで igraph に書き込んで読み取る方式は採用せず、端末側で分散的に保存します。検索リクエスト時に直接送信することで、保存の問題を回避しデータのリアルタイム性を確保します。具体的には、ユーザーが「ワンピース」と検索すると、クライアントは最近の「ワンピース」検索時に露出されたがクリックされなかった 50 個の商品情報をサーバーにアップロードします。たとえば 2 ページ目のランキング計算時に、1 ページ目の露出商品を取得できます。
モデル構造:露出系列のモデリング手法は比較的シンプルで、平均プーリングを通じて露出表現を取得します。ただし、正例表現と露出表現を区別するため、まず正例表現と露出表現のそれぞれとターゲット商品との距離 d1 と d2 を計算し、補助損失を追加して 2 つの距離が以下の条件を満たすようにします。ターゲット商品が正例に対応する場合は d1 + M < d2、ターゲット商品が負のサンプルに対応する場合は d1 > d2 + M です。モデリング手法は以下の図に示す通りです。
4. 実験と分析
データセット:オンラインの露出とクリックデータをサンプルとして使用し、過去 N 日間のサンプルをトレーニングサンプルとして収束までトレーニングし、翌日のサンプルをテストサンプルとします。
評価指標:翌日のサンプルをテストサンプルとして使用し、主にトレーニングセット上の AUC を評価します。同時にトレーニングセット上の AUC やその他の指標も観察します。ここでの AUC ギャップはオンライン全体のモデルに対する AUC の改善です。
効果比較:いくつかのベースラインと比較実験を行います。Q/U/P Attention を使用する LSTM が DUPN(kdd '18)です。結果を以下の表に示します。
効果分析:ここでの AUC ギャップはオンライン収束バージョンに対する改善です。行動系列モデルの最適化により AUC が約 0.3% 向上します。異なる問題に対して、新しい系列特徴の導入と対応するモデリングの最適化により AUC が約 0.7% 向上します。
4.1 短期・中期系列
アテンションウェイト分析:テンソルボードでアテンションマップを出力し、グリッド (i, j) は i 番目の商品と j 番目の商品のアテンション重みを表します。以下の現象を観測できます。
図に示すように、グリッドの色が薄いほど重みが大きいことを示します。トレーニング初期はセルフアテンションが商品系列の内部相関を捉える役割を発揮しておらず、単に一部の行動情報を学習しているだけです。つまり、前の商品(最も最近行動した商品)が重要であるということです。トレーニングが進むにつれて、商品間の相関が徐々に現れ、直接的な表れとして対角線付近の重みが大きくなります。最終的には、商品の関連性と行動情報の両方に影響されるアテンションマップが呈されます。さらに、アテンションプーリング層では、系列の各位置での重み情報を監視しています。全体的に、商品系列の位置は近い方から遠い方へ順番に減少しており、期待通りです。
セルフアテンションの役割:セルフアテンション層を削除し、系列に直接アテンションプーリングを適用したところ、AUC の絶対値が 0.001 安定的に低下しました。セルフアテンションは 2 つの側面から理解できます。1. 一般的な説明として、商品系列内の依存関係をモデリングし、商品表現をより正確にしています。2. セルフアテンションの過程で、ユーザーの最近の行動商品がユーザー意図に最も近い表現として、系列全体のキーとして使用され、得られたベクトルが最終的なアテンションプーリングで最も大きな割合を占める情報となります。
検索でターゲットアテンションを使用しない理由:ターゲットアテンションはレコメンデーションシナリオで一般的に使用される手法です。検索でも試しましたが、最終的には採用しませんでした。理由は 2 つあります。1. 検索シナリオではユーザーが能動的にクエリを入力し、クエリは既にユーザーの現在の意図(カテゴリ意図など)を強く表現できます。この時点でターゲット商品を追加しても収益ははるかに小さく、AUC の改善はわずかです。さらに、ユーザー系列はクエリで予測された業界やカテゴリで事前にフィルタリングされています。2. 最終的な精密ランキングでは、ターゲットアテンションは各ドキュメントごとにアテンションプーリングを計算する必要があり、追加の計算オーバーヘッドが発生します。一方、クエリアテンションは 1 回計算するだけで済み、パフォーマンスが優れています。検索シナリオでは収益が少ないものの、ターゲットアテンションはレコメンデーションシナリオでは依然として最も効果的な手法です。
4.2 その他の系列モデリング
長期系列の実験:
長期周期が前年の同じシーズンのパーソナライズされたコールドスタートの役割を果たせるかどうかを分析するため、簡単な実験を行います。長期周期の 8 つの四半期系列を 1 つの系列としてまとめ、セルフアテンションを使用して四半期間の系列相関性を観察します。図に示すように、横軸は seq_index で、色が薄いほど重みが大きいことを示します。短期・中期行動系列と同様の現象が見られ、最終的には商品の関連性と行動情報の両方に影響されるアテンションマップが呈されます。1 列目は前方位置の行動がより重要で、5 列目は現在の四半期と同じ行動で 2 番目に重要、対角線は自身とのアテンション値を表します。
端末側クリック系列の実験:
同様に端末上のクリック系列のアテンションマップを可視化できます。図に示すように、トレーニング初期の重要性は主に行動コンテキストに左右され、位置が高いほど重要です。最終的な結果は短期・中期系列とは少し異なり、最も重要なのは対角線とその周辺です。対角線は理解しやすく、その周辺の色も比較的薄く、前後にクリックされた商品間に明確な相関があると理解できます。
露出商品:AUC の結果から、露出商品を特徴として使用したモデルが大幅に改善されていることがわかります。AUC の絶対値は +0.002 です。クリックされていない商品として、ユーザーが好まない商品をある程度表現できます。同時に、現在のクエリでリコール可能な商品として、クエリのより十分な表現にもなっています。
5. まとめと展望
Taobao 検索の CTR/CVR モデルのユーザーモデリング部分について詳しく紹介しました。ユーザーを包括的に認識し、より多くのユーザープロファイル、より包括的でリアルタイムな行動データでユーザーを記述し、より深くユーザーを理解し、より精緻で合理的なモデルでユーザーの意図を抽象化します。メイン検索の独身の日ビジネスにおいて、Optimus Prime プロジェクトの一環として、ユーザーモデリングの取り組みを全面的に開始しました。アルゴリズムベンチマークと比較して、全体的な検索で GMV が大幅に改善されました。今後の展望として、より詳細なユーザーデータの認識、より科学的なユーザーデータの整理、より適切なモデル構造について、探求と解決すべき多くの課題が残されています。
ユーザーモデリングは検索とレコメンデーションモデルのコア技術です。Taobao 検索のランキング計算の対象はトリプレットです。サンプル特徴の表現の観点から見ると、商品は比較的密で安定した部分です。大規模なサンプル環境では、ほとんどの情報を ID 埋め込みで表現できます。一方でユーザーはトリプレットの中で比較的疎な部分であり、ユーザーの記述には多くの汎化特徴が必要となります。
モデル分類の観点から見ると、ユーザーと商品の静的特徴の役割はモデルの汎化性を高めることです。ユーザーのリアルタイムな行動の導入とモデリングにより、サンプル間の識別性を大幅に高め、モデルの分類精度を著しく向上できます。我々はユーザーモデリングのプロセスを、ユーザーに関する情報を抽象化し整理するプロセスと捉えています。
情報の抽象化の観点から、モデリング手法の継続的な最適化と拡充を進めています。
ユーザープロファイルはユーザーの静的属性情報を表現するために使用されます。
嗜好タグのマイニングにより、行動からユーザーの一般的な嗜好を予測します。
リアルタイム行動モデリングにより、現在のリクエストにおける関心をより詳細に特徴付けし記述します。
情報の整理の観点から、行動周期と行動内容の両面からユーザー行動データを合理的に整理しています。
行動周期の観点から、行動系列を短期と長期に分割し、異なるタイムスパンで異なる粒度の関心を記述します。
行動内容の観点から、直接的な行動フィードバック商品と露出商品を用いて、ユーザーの意図を明示的および暗示的に表現します。同時に、ユーザー行動データを従来の EC 商品から幅広いコンテンツ情報へと拡張しています。
ユーザー行動モデリングは、レコメンデーションや広告など多くのチームの研究対象でもあります(広告チームの DIN、DIEN、Practice on Long Sequential User Behavior Modeling、レコメンデーションチームの MIND、DSIN など、優れた研究成果があります)。我々は実際の応用を出発点として、検索シナリオでのユーザーモデリングの実践的な知見を共有します。同時に、観測された現象や課題を記録し、皆様の議論と交流を歓迎します。以降の記事の内容は以下の通りです。
大規模モデルの全体モデル構造を簡潔に紹介します。
ユーザーデータと行動系列の整理と処理。
モデル構造の改善点。
モデル実験と分析、関連する実践的な課題の研究と議論。
2. モデル構造
我々のモデル構造はおおよそ図の通りです。ユーザープロファイル、複数のユーザー行動系列特徴、スコアリング対象の商品特徴、その他のリアルタイムコンテキスト特徴(天気、ネットワーク、時間など)を最終的に concat した後、DNN 分類器に入力します。ユーザー行動系列モデリングはモデルの中で最も重要な部分の一つであり、特にユーザーの関心のリアルタイムな描写に重要です。ここではセルフアテンションとアテンションプーリングを使用して系列モデリングを行います。セルフアテンションは行動間の関係を記述し、アテンションプーリングは行動とターゲットのマッチングと活性化を行い、統合を実現します。これが汎用的な系列モデリングコンポーネントの一つです。このモデルフレームワークに基づいて、今年の最適化作業とその実装の詳細をさらに紹介します。
3. ユーザーデータとモデル
ユーザープロファイルは比較的静的なユーザー特徴であり、これらの静的特徴は user_id の補完と汎化として使用されます。近年、セッションベースレコメンデーションに代表されるユーザーのリアルタイムな関心を理解するモデルが広く研究されており、レコメンデーションの精度を大幅に向上できることが多くの実験で示されています。特に、ユーザーの直近の行動ほど、ユーザーの現在の関心状態をよく表します。ユーザーが行動した商品を使ってユーザーを表現することで、ユーザーの関心の動的変化をリアルタイムに捉えることができます。さらに、グラフの観点から見ると、ユーザーと商品で構成されるグラフでは、商品は密なノードであり、ユーザーは疎なノードであり、密なノードは疎なノードの表現に適しています。
以下に示すように、統一された行動スキーマを定義します。
これは商品自体の属性特徴と、ユーザーの商品に対する行動特徴の 2 つの部分から構成されています。属性特徴には item_id、seller_id、および商品を記述する一連の特徴が含まれます。行動特徴にはユーザーの行動タイプ、行動時間、系列内位置などの商品の特性が含まれます。
3.1 短期・中期周期
データと特徴:昨年の Starship プロジェクトでは、ユーザーの異なる行動タイプの短期行動についてグローバルモデリングを実施しました。この系列には、ネットワーク全体でのユーザーのリアルタイムクリック、購入、お気に入りなどの行動が含まれます。ユーザーの豊富な過去の行動に対して、系列長には上限があるため(L_max=50)、クエリの予測カテゴリを使用して、現在の意図カテゴリとより関連性の高い過去の行動を選択します。ユーザーが能動的にクエリを入力することが、検索とレコメンデーションの最大の違いです。クエリ理解に関しては、クエリ理解チームが多くの作業を行っており、ここではクエリ理解の結果を利用して、クエリの予測末端カテゴリでユーザー行動系列をフィルタリングします。
モデル構造:
トランスフォーマーモデルは自然言語処理(NLP)分野で非常に優れた成果を上げており、セルフアテンション機構を用いて系列内の依存関係を捉えています。同時に並列計算が可能で、トレーニングと予測の速度向上も実現しています。CTR モデルでは、アイテム系列の処理にセルフアテンションを幅広く活用しており、既存のセルフアテンションに対して以下の 2 つの改善を加えています。
元のドット積 + スケールダウンの代わりにコサイン類似度 + スケールアップを使用して(レイヤー正規化の追加も可能です)、K と Q の類似度を計算し、ソフトマックスのロジット出力値の識別性を向上させます。元のセルフアテンションを適用した際に、いくつかの問題を発見しました。(1) ソフトマックスのロジット値が非常に小さく、アテンションの重みが常に均等状態になってしまう。(2) アテンション構造で勾配消失が発生し、ほとんど学習できない。我々の CTR モデルの埋め込みは 0 から初期化され、ランダム初期化ではないため、小さな勾配ではセルフアテンションの学習が困難です。そこで、ドット積の代わりにコサイン値を使用して K と Q の距離を計算します。以下に示します。
セルフアテンションの出力に対してクエリアテンションプーリングを実行しました。短期系列は現在の意図とのカテゴリ一致性を確保するよう努めていますが、クエリとの一致性をさらに保証するため、短期系列に対してクエリアテンションプーリングを実行し、現在のクエリの意図とセマンティクスに合致する過去の行動を活性化します。後続の実験では、ここで一般的なターゲットアテンションを使用しない理由もさらに分析します。
短期行動モデリング全体のモデル構造を以下の図に示します。セルフアテンション + クエリアテンションプーリングです。
ここで、コンテキストマスク埋め込みは e1+c1 として演算されます。
3.2 長期周期
データと特徴:短期・中期行動系列では、限られた長さの中でネットワーク全体のユーザーの短期行動を考慮していますが、当然ながらユーザーのより初期の行動は系列に含まれていない可能性があります。昨年の Starship プロジェクトでは、ユーザーの長期嗜好の静的特徴をオフラインで集計してこの情報を補完していましたが、この方法ではユーザーの現在の意図やコンテキストと組み合わせて関連する嗜好情報を選択することができません。
ユーザーの長期行動をエンドツーエンドでモデリングしたいと考えています。第一に、ユーザーの長期嗜好を導入できます。第二に、現在の意図に基づいて長期行動をモデリングでき、静的に嗜好ラベルを抽出するのではなく、動的に処理できます。第三に、昨年の同じシーズンのデータを活用することで、パーソナライズされたシーズン変化のコールドスタート問題を解決できます。
ユーザーの長期行動を以下のように定義します。過去 2 年間のユーザーの取引行動。クリックなど他のタイプは現時点では考慮しません。ユーザーは昨年に購入したものは覚えていても、注文したものまでは覚えていないと言われます。また、他のタイプのデータは量が多すぎます。
具体的には、2 年間の行動データを四半期ごとに 8 つの四半期系列に分割し、各四半期系列は長さ N の部分系列として、各四半期の行動が保持されるようにします。切り捨てによってある四半期の行動情報がすべて失われる可能性があるため、ユーザーの多面的な情報をできる限り保持する必要があります。同時に、系列に対してカテゴリ関連のフィルタリングは行っていません。短期行動と比較して、長期行動ではブランドやストアの用語などへの嗜好がより重要です。
モデル構造:
以下の図に示すように、まず長期行動の商品レベル埋め込み特徴に対して、コンテキストレベルの埋め込みを用いて add_mask を実行します。つまり e1+c1 です。次に多層モデリング手法を用いて、四半期系列内で最適化されたセルフアテンションを通じて特徴抽出と部分系列のアテンションプーリングを行い、該当四半期のユーザー嗜好表現を取得します。最後に異なる四半期間で concat を行います(アテンションプーリングも試しましたが、効果は concat より若干劣りました)。ユーザーの最終的な長期嗜好表現が得られます。この利点は、シーズンに敏感な検索意図に対して、現在の四半期に適合する嗜好情報をより適切に抽出できることです。
ここでのアテンションプーリングは、shortseq_vec をクエリとして使用します。shortseq_vec はユーザーの意図とユーザーのリアルタイムな嗜好を組み合わせた表現であり、元の検索語のみを使用する(ユーザーの検索意図のみを表現する)よりも、現在の検索に対する過去のトリガーの重要性をより包括的に評価できます。同時に、短期系列も系列に属するため、ベクトル空間が比較的近いという利点もあります。
3.3 端末側クリック
前述の 2 つの部分は長期と短期からそれぞれユーザーの行動商品と対応するコンテキスト情報を取得していますが、実際のユーザー行動はクリックや購入だけではありません。検索結果ページでの商品一覧の露出やユーザーの閲覧とスワイプ、詳細ページでの動画視聴やパラメータ比較など、ユーザーにはまだ注目されていない非常に豊富な行動があります。これらの特徴の一部はサーバーログから取得できず、また UT ログ経由では遅延が大きいためオンラインでの活用が困難です。そこでエッジコンピューティングを活用してクライアント側でこれらのデータ特徴を収集し、サーバーに転送します。同時にレスポンス時間をミリ秒単位に短縮できます。以降の 2 つの部分では、端末上のクリック系列と端末上の露出系列モデリングを紹介します。
データと特徴:端末上のクリック系列のモデリングと短期・中期系列のクリック行動のモデリングにはいくつかの違いがあります。より詳細なユーザー行動を捉えるため、詳細ページの各ブロックでのユーザーの滞在時間やクリックされたボタンなどを記録します。第三に、系列に対してクエリ相関フィルタリングを行わず、クロスカテゴリ行動から有用な情報を導入し、短期・中期系列へのさらなる補完として機能させ、重複を避けます。ユーザー行動はインスタンスレベルでは各行動に一定の重要性がありますが、特徴レベルでは各行動の重要性がブランド、ストア、用語などの特徴とターゲット商品とのマッチングの度合いにも依存し、行動がクエリのカテゴリ予測と一致するかどうかを強調するだけではありません。
モデル構造:端末上のクリック系列のモデリング手法は短期系列のモデリングと類似しており、最適化されたセルフアテンション + アテンションプーリングを通じてユーザーの嗜好表現を捉えます。同様に、取得した詳細ページの行動もコンテキスト情報として、商品レベルの埋め込みに add_mask を適用できます。ここでのアテンションプーリングも shortseq_vec をクエリとして使用します。
3.4 端末側露出
これまではユーザー嗜好のモデリングについて紹介しました。基本的にはユーザーの能動的な行動から出発し、ユーザーのお気に入りの商品を使ってユーザーを記述し理解するアプローチです。では、ユーザーが好まない側面からもユーザーを記述できるでしょうか。そこで、ユーザーが露出されたがクリックしなかった商品を収集・モデリングし、大規模モデルに統合します。他の商品系列と異なり、露出商品には非常に重要な特性があります。それは、現在のユーザー + クエリ + コンテキストの下で実際に検索可能な最も正確な商品であるということです。ある意味で、露出商品は今回の検索の豊富な情報を総合しており、ユーザーやクエリを効果的に表現できます。
データと特徴:ユーザーのクリックや購入と比較して、PV 露出データの量は非常に多いため、リアルタイムで igraph に書き込んで読み取る方式は採用せず、端末側で分散的に保存します。検索リクエスト時に直接送信することで、保存の問題を回避しデータのリアルタイム性を確保します。具体的には、ユーザーが「ワンピース」と検索すると、クライアントは最近の「ワンピース」検索時に露出されたがクリックされなかった 50 個の商品情報をサーバーにアップロードします。たとえば 2 ページ目のランキング計算時に、1 ページ目の露出商品を取得できます。
モデル構造:露出系列のモデリング手法は比較的シンプルで、平均プーリングを通じて露出表現を取得します。ただし、正例表現と露出表現を区別するため、まず正例表現と露出表現のそれぞれとターゲット商品との距離 d1 と d2 を計算し、補助損失を追加して 2 つの距離が以下の条件を満たすようにします。ターゲット商品が正例に対応する場合は d1 + M < d2、ターゲット商品が負のサンプルに対応する場合は d1 > d2 + M です。モデリング手法は以下の図に示す通りです。
4. 実験と分析
データセット:オンラインの露出とクリックデータをサンプルとして使用し、過去 N 日間のサンプルをトレーニングサンプルとして収束までトレーニングし、翌日のサンプルをテストサンプルとします。
評価指標:翌日のサンプルをテストサンプルとして使用し、主にトレーニングセット上の AUC を評価します。同時にトレーニングセット上の AUC やその他の指標も観察します。ここでの AUC ギャップはオンライン全体のモデルに対する AUC の改善です。
効果比較:いくつかのベースラインと比較実験を行います。Q/U/P Attention を使用する LSTM が DUPN(kdd '18)です。結果を以下の表に示します。
効果分析:ここでの AUC ギャップはオンライン収束バージョンに対する改善です。行動系列モデルの最適化により AUC が約 0.3% 向上します。異なる問題に対して、新しい系列特徴の導入と対応するモデリングの最適化により AUC が約 0.7% 向上します。
4.1 短期・中期系列
アテンションウェイト分析:テンソルボードでアテンションマップを出力し、グリッド (i, j) は i 番目の商品と j 番目の商品のアテンション重みを表します。以下の現象を観測できます。
図に示すように、グリッドの色が薄いほど重みが大きいことを示します。トレーニング初期はセルフアテンションが商品系列の内部相関を捉える役割を発揮しておらず、単に一部の行動情報を学習しているだけです。つまり、前の商品(最も最近行動した商品)が重要であるということです。トレーニングが進むにつれて、商品間の相関が徐々に現れ、直接的な表れとして対角線付近の重みが大きくなります。最終的には、商品の関連性と行動情報の両方に影響されるアテンションマップが呈されます。さらに、アテンションプーリング層では、系列の各位置での重み情報を監視しています。全体的に、商品系列の位置は近い方から遠い方へ順番に減少しており、期待通りです。
セルフアテンションの役割:セルフアテンション層を削除し、系列に直接アテンションプーリングを適用したところ、AUC の絶対値が 0.001 安定的に低下しました。セルフアテンションは 2 つの側面から理解できます。1. 一般的な説明として、商品系列内の依存関係をモデリングし、商品表現をより正確にしています。2. セルフアテンションの過程で、ユーザーの最近の行動商品がユーザー意図に最も近い表現として、系列全体のキーとして使用され、得られたベクトルが最終的なアテンションプーリングで最も大きな割合を占める情報となります。
検索でターゲットアテンションを使用しない理由:ターゲットアテンションはレコメンデーションシナリオで一般的に使用される手法です。検索でも試しましたが、最終的には採用しませんでした。理由は 2 つあります。1. 検索シナリオではユーザーが能動的にクエリを入力し、クエリは既にユーザーの現在の意図(カテゴリ意図など)を強く表現できます。この時点でターゲット商品を追加しても収益ははるかに小さく、AUC の改善はわずかです。さらに、ユーザー系列はクエリで予測された業界やカテゴリで事前にフィルタリングされています。2. 最終的な精密ランキングでは、ターゲットアテンションは各ドキュメントごとにアテンションプーリングを計算する必要があり、追加の計算オーバーヘッドが発生します。一方、クエリアテンションは 1 回計算するだけで済み、パフォーマンスが優れています。検索シナリオでは収益が少ないものの、ターゲットアテンションはレコメンデーションシナリオでは依然として最も効果的な手法です。
4.2 その他の系列モデリング
長期系列の実験:
長期周期が前年の同じシーズンのパーソナライズされたコールドスタートの役割を果たせるかどうかを分析するため、簡単な実験を行います。長期周期の 8 つの四半期系列を 1 つの系列としてまとめ、セルフアテンションを使用して四半期間の系列相関性を観察します。図に示すように、横軸は seq_index で、色が薄いほど重みが大きいことを示します。短期・中期行動系列と同様の現象が見られ、最終的には商品の関連性と行動情報の両方に影響されるアテンションマップが呈されます。1 列目は前方位置の行動がより重要で、5 列目は現在の四半期と同じ行動で 2 番目に重要、対角線は自身とのアテンション値を表します。
端末側クリック系列の実験:
同様に端末上のクリック系列のアテンションマップを可視化できます。図に示すように、トレーニング初期の重要性は主に行動コンテキストに左右され、位置が高いほど重要です。最終的な結果は短期・中期系列とは少し異なり、最も重要なのは対角線とその周辺です。対角線は理解しやすく、その周辺の色も比較的薄く、前後にクリックされた商品間に明確な相関があると理解できます。
露出商品:AUC の結果から、露出商品を特徴として使用したモデルが大幅に改善されていることがわかります。AUC の絶対値は +0.002 です。クリックされていない商品として、ユーザーが好まない商品をある程度表現できます。同時に、現在のクエリでリコール可能な商品として、クエリのより十分な表現にもなっています。
5. まとめと展望
Taobao 検索の CTR/CVR モデルのユーザーモデリング部分について詳しく紹介しました。ユーザーを包括的に認識し、より多くのユーザープロファイル、より包括的でリアルタイムな行動データでユーザーを記述し、より深くユーザーを理解し、より精緻で合理的なモデルでユーザーの意図を抽象化します。メイン検索の独身の日ビジネスにおいて、Optimus Prime プロジェクトの一環として、ユーザーモデリングの取り組みを全面的に開始しました。アルゴリズムベンチマークと比較して、全体的な検索で GMV が大幅に改善されました。今後の展望として、より詳細なユーザーデータの認識、より科学的なユーザーデータの整理、より適切なモデル構造について、探求と解決すべき多くの課題が残されています。
Related Articles
-
A detailed explanation of Hadoop core architecture HDFS
Knowledge Base Team
-
What Does IOT Mean
Knowledge Base Team
-
6 Optional Technologies for Data Storage
Knowledge Base Team
-
What Is Blockchain Technology
Knowledge Base Team
Explore More Special Offers
-
Short Message Service(SMS) & Mail Service
50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00
