(58)【調査した分野】(Int.Cl.,DB名)
請求項1に記載のシステムであって、前記複数のサンプルペアの前記少なくとも一部に含まれる各サンプルペアに関連する各商品に対応する前記クエリワードに関連付けられている前記1セットの順位付け特徴に対応する前記複数の特徴スコア値を決定することは、
前記商品に関連する前記1セットの順位付け特徴に対応する1セットの属性値を抽出し、
前記1セットの属性値に少なくとも部分的に基づいて、前記商品について前記複数の特徴スコア値を計算することを含む、システム。
請求項1に記載のシステムであって、前記1セットの順位付け特徴に対応する前記1セットの重みを決定することは、前記複数の特徴スコア値と、前記複数のサンプルペアの各サンプルペアの商品のペアに対応する高順位付け優先度または低順位付け優先度の指示とに少なくとも部分的に基づいて、機械学習モデルをトレーニングすることを含む、システム。
請求項1に記載のシステムであって、前記クエリワードに関連付けられている前記1セットの順位付け特徴は、前記クエリワードが属するカテゴリに関連する、システム。
【背景技術】
【0003】
電子商取引ウェブサイトでは、検索順位付けの効果が、検索および買い物を行うユーザの体験に大きい影響を及ぼす。検索エンジンシステムでは、多くの要素が、検索結果の順位付けに影響する。かかる要素は、ユーザフィードバックおよびユーザ検索動作データを含み、それらは、商品順位付け技術を向上させるために、繰り返し収集および解析される。これらの要素は、特定の組み合わせの重みを用いたオンライン順位付け結果に影響する。従来、商品検索エンジンは、1つの順位付けモデルを用いて、任意の検索クエリに対して見つかった商品を順位付ける。順位付けモデルは、それぞれの特徴に関連付けられた重みを含む。
【0004】
通常、商品検索結果順位付けモデルでは、商品品質、商品テキストマッチング、商品カテゴリクリックマッチング、商品価格マッチング、および、商品売上高など、複数の順位付け特徴をターゲットに、評価メカニズムが確立される。各評価メカニズムの背後で、すべての商品が、アルゴリズムモデルまたは専門知識のいずれかによって評価され、それらの評価は、商品の順位付け特徴に関して特徴スコア値の形態で具体化される。スコア値は、順位付けモデルの基本的特徴を含む。
【0005】
これらの基本的特徴の実際の応用例におけるオンライン順位付け中、特定のクエリによって返された商品リストをターゲットとして、商品順位付けの基礎となる商品スコアが、商品順位付け特徴の特徴スコア値の加重和を決定することに基づいて取得される。異なる順位付け特徴の特徴スコア値は、異なる重みを有するので、重みの決定は、検索結果ページで商品をどのように順位付けるかを効果的に決定する。一例において、商品売上高および商品カテゴリの特徴スコア値は、それらの特徴がユーザの直接関心を持つ内容を表すので、より高い重みを有しうる。別の例において、テキストマッチングを評価する特徴スコア値には、より低い重みが割り当てられうる。
【0006】
従来、すべてのオンライン商品順位付けが、1セットの順位重みを同時に利用する。この順位重みのセットは、A/Bテストを用いて順位重みのオンライン検証を実行する専門家の専門知識を用いて選択される。検索エンジン順位付け結果の最適化において、A/Bテストとは、異なる最適化アルゴリズムの長所および短所を比較する技術のことである。例えば、システムにおける全クエリトラフィックが、複数の等しい部分に分割される。クエリトラフィックの1つの部分が、基本的テストトラフィックとして機能するよう選択され、既存のシステムアルゴリズムが、検索結果を順位付けるために呼び出される。次いで、既存のシステムアルゴリズムによる商品順位付けに関連するユーザフィードバック動作データが、既存のシステムアルゴリズム
の順位付け
効果を計算するために取得される。クエリトラフィックの他の等しい部分については、新たな最適化アルゴリズムが、検索結果を順位付けるために用いられる。次いで、ユーザフィードバック動作データが、新たな最適化アルゴリズムの順位付け効果を計算するために取得される。このように、ある期間での異なるアルゴリズムの比較テストを通して、異なる順位付けアルゴリズムの順位付け効果の比較結果を得ることができる。比較結果に基づいて、最高の順位付け効果を持つ検索順位付けアルゴリズムによって用いられる重みを実施できる。
【0007】
しかしながら、この重み選択技術は、少なくとも以下の欠点を有する。
【0008】
(1)現在は、既存の特徴のための重みが決定されると、それらの重みは、通常、その後の長期間にわたって調整されない。しかしながら、時間の経過と共に、以前に決定された重みは、検索結果内で順位付けされる現在の商品にもはや適合しなくなる場合がある。
【0009】
(2)商品の網羅範囲が大きくなるにつれ、1セットの一様なオンライン重みでは、すべての商品の順位付けをもはや満足できず、単一のモデルでは、すべてのカテゴリの商品について利益を十分に最大化することができない。換言すると、特定の業界またはカテゴリの商品に適切な重みが、別の業界またはカテゴリの商品には適切でない場合がある。
【0010】
(3)オンライン重みは、通常、専門家の既存の専門知識を用いて決定されるので、順位付けモデルは、自立的に学習することも自動的に更新することもできない。同時に、各セットの重みの決定は、複数回のA/Bテストを受けなければならず、経験および知識の欠如のために、過度に長いテスト時間または悪いテスト有効性につながりうる。さらに、この処理中、莫大な開発資源およびテスト資源が消費され、重みの調整およびテストが潜在的に検索結果全体に影響しうる。
【0011】
上記の3つの問題はすべて、悪い検索順位付け結果につながる可能性があり、それにより、オンライン取引に悪影響を及ぼしうる。
【発明を実施するための形態】
【0021】
本発明は、処理、装置、システム、物質の組成、コンピュータ読み取り可能な格納媒体上に具現化されたコンピュータプログラム製品、および/または、プロセッサ(プロセッサに接続されたメモリに格納および/またはそのメモリによって提供される命令を実行するよう構成されたプロセッサ)を含め、様々な形態で実装されうる。本明細書では、これらの実装または本発明が取りうる任意の他の形態を、技術と呼ぶ。一般に、開示された処理の工程の順序は、本発明の範囲内で変更されてもよい。特に言及しない限り、タスクを実行するよう構成されるものとして記載されたプロセッサまたはメモリなどの構成要素は、ある時間にタスクを実行するよう一時的に構成された一般的な構成要素として、または、タスクを実行するよう製造された特定の構成要素として実装されてよい。本明細書では、「プロセッサ」という用語は、1または複数のデバイス、回路、および/または、コンピュータプログラム命令などのデータを処理するよう構成された処理コアを指すものとする。
【0022】
以下では、本発明の原理を示す図面を参照しつつ、本発明の1または複数の実施形態の詳細な説明を行う。本発明は、かかる実施形態に関連して説明されているが、どの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定されるものであり、多くの代替物、変形物、および、等価物を含む。以下の説明では、本発明の完全な理解を提供するために、多くの具体的な詳細事項が記載されている。これらの詳細事項は、例示を目的としたものであり、本発明は、これらの具体的な詳細事項の一部または全てがなくとも特許請求の範囲に従って実施可能である。簡単のために、本発明に関連する技術分野で周知の技術要素については、本発明が必要以上にわかりにくくならないように、詳細には説明していない。
【0023】
商品検索結果の順位付けの実施形態について、本明細書に記載する。クエリワードに対応するサンプルペアが、クエリワードに関連する履歴ユーザ動作データに少なくとも部分的に基づいて決定される。各サンプルペアは、クエリワードを含む1または複数の以前の検索要求に対応した2つの商品を含む。各サンプルペアは、さらに、サンプルペアの商品の一方がより高い順位付け優先度に関連付けられるという指示を含む。クエリワードに関連する1セットの順位付け特徴に対応する1セットの重みを含む順位付けモデルが、少なくとも部分的にサンプルペアに基づいて決定される。順位付けモデルは、クエリワードを含むその後に受信された検索要求に対応する1または複数の商品を順位付けるために用いられる。
【0024】
図1は、商品検索結果を順位付けるためのシステムの一実施形態を示す図である。この例において、システム100は、クライアントデバイス102、クライアントデバイス104、クライアントデバイス106、ネットワーク108、商品順位付けサーバ110、および、データベース112を備える。ネットワーク108は、高速ネットワークおよび/またはデータネットワークを含む。クライアントデバイス102、104、および、106は、ネットワーク108を介して商品順位付けサーバ110と通信する。
【0025】
クライアントデバイス102、104、および、106は、例においてラップトップとして図示されているが、クライアントデバイス102、104、および、106の各々は、デスクトップコンピュータ、携帯デバイス、タブレットデバイス、スマートフォン、または、任意の他のコンピュータデバイスであってもよい。商品順位付けサーバ110は、電子商取引ウェブサイト(例えば、商品順位付けサーバ110または別個のウェブサーバによってサポートされうるウェブサイト)に関連する。クライアントデバイス(クライアントデバイス102、104、および、106など)を用いるユーザによって電子商取引ウェブサイト(例えば、その検索エンジン)で送信された検索要求に応答して、商品順位付けサーバ110は、(例えば、データベース112に格納された)商品検索結果を取得し、商品検索結果を順位付けし、順位付けした商品検索結果の少なくとも一部を返すよう構成されている。商品順位付けサーバ110は、クエリワードに関連する1セットの順位付け特徴を用いて、各商品から特徴スコア値を抽出し、各商品の特徴スコア値に基づいて順位付けスコアを決定し、商品に対応する順位付けスコアに基づいて商品を順位付けすることに少なくとも部分的に基づいて、商品を順位付ける。商品順位付けサーバ110は、さらに、検索結果の中に表示された商品に対するユーザ動作データに関するログ(例えば、選択ログ、アクセスログ、購入ログ)を格納する。商品順位付けサーバ110は、かかる履歴ユーザ動作データをデータベース112に格納できる。
【0026】
後に詳述するように、商品検索結果順位付けを最適化して、検索結果のクリックスルー率および/またはコンバージョン率を改善するために、商品順位付けサーバ110は、履歴ユーザ動作データを用いて、特定のクエリワードまたはクエリワードカテゴリに関連する1セットの順位付け特徴のそれぞれに対応する1セットの重みを決定することができる。特定のクエリワードまたはクエリワードカテゴリに関連する1セットの順位付け特徴のそれぞれに対応して決定された1セットの重みは、特定のクエリワードを含むかまたはクエリワードカテゴリに関連する後続の検索要求に対して返される商品検索結果の順位付けを改善するために、商品順位付けサーバ110によって利用されうる。
【0027】
図2は、商品検索結果を順位付けるための処理の一実施形態を示すフローチャートである。いくつかの実施形態において、処理200は、
図1のシステム100で実施される。
【0028】
工程202では、クエリワードに対応する複数のサンプルペアが決定され、ここで、複数のサンプルペアの内のサンプルペアは、クエリワードに対応する第1の商品および第2の商品に関連し、第1の商品および第2の商品の一方は、クエリワードに関連する履歴ユーザ動作データに少なくとも部分的に基づいて、より高い順位付け優先度を割り当てられる。
【0029】
クエリワードは、検索エンジンに提出された検索クエリに含まれうるワードを含む。例えば、検索エンジンは、電子商取引ウェブサイトに関連しており、検索クエリに対応し電子商取引ウェブサイトで入手可能な1または複数の商品を返すよう構成されうる。1または複数の対応する商品に関する情報が、(例えば、電子商取引ウェブサイトに関連する)検索結果ページで検索ユーザに提示される。クエリワードが検索エンジンで以前に検索されていたと仮定すると、クエリワードに関連する履歴ユーザ動作データが存在しており、リトリーブされる。クエリワードに関連する履歴ユーザ動作データは、クエリワードに基づいた検索に対して返された以前の検索結果ページに提示された商品に関してユーザが行った動作(例えば、選択、購入、アクセス)に関連するデータを含む。
【0030】
例えば、履歴ユーザ動作データは、検索エンジンのアクセスログ、選択(例えば、クリック)ログ、および、購入ログから決定されうる。アクセスログ、クリックログ、および/または、購入ログの各々は、ログが生成または格納された時刻に関連付けられている。いくつかの実施形態では、所定の履歴期間が、システム管理者によって設定される。所定の履歴期間内にクエリワードを含む検索クエリに対応した(例えば、一致すると決定された)各商品が、履歴ユーザ動作データから決定され、少なくとも1つの履歴計量値が、履歴ユーザ動作データに基づいて、かかる各商品に対して決定される。履歴計量値の例は、クリックスルー率およびコンバージョン率を含む。クエリワードに対応する商品の「クリックスルー率」とは、クエリワードに対して生成された検索結果ページでユーザによって商品が選択(例えば、クリック)された回数の、クエリワードを用いて行われた検索の総数に対する比のことである。クエリワードに対応する商品の「コンバージョン率」とは、クエリワードに対して生成された検索結果ページで商品を選択した後にユーザによって商品が購入(例えば、クリック)された回数の、クエリワードを用いて行われた検索の総数に対する比のことである。
【0031】
クエリワードを含む検索クエリに対応した商品の様々なペアが決定され、設定された条件を満たす各商品ペアが「サンプルペア」と見なされる。例えば、設定された条件は、ペア内の商品のそれぞれの履歴計量値(例えば、クリックスルー率またはコンバージョン率)の間の差が、設定された閾値を超えるという条件であってよい。高い方の履歴計量値に関連するサンプルペアの商品は、他方の商品よりも高い順位付け優先度を割り当てられ、低い方の履歴計量値に関連するサンプルペアの商品は、前者の商品によりも低い順位付け優先度であると見なされる。相対的な順位付け優先度は、両方の商品が、返される商品検索結果内にある場合に、サンプルペアの他方の商品よりも高い順位付け優先度を持つサンプルペアの商品が、サンプルペアの他方の商品よりも高く順位付けられるのが好ましいことを示す。したがって、各サンプルペアは、サンプルペアに関連する2つの商品の相対的な順位付け優先度を示すものである。
【0032】
例えば、サンプルペアが商品Aおよび商品Bを含むとする。この例において、商品Aは、商品Bよりも高い順位付け優先度を割り当てられる。したがって、サンプルペアは、商品AおよびBが、クエリワードに対して返される商品検索結果の中に含まれる場合に、商品Aが商品Bよりも高く順位付けられるのが好ましい(ただし、すぐ上の順位である必要はない)ことを示す。
【0033】
サンプルペアを決定する処理の一例については、
図3を参照して後述する。
【0034】
工程204では、クエリワードに関連する1セットの順位付け特徴に対応する複数の特徴スコア値が、複数のサンプルペアの少なくとも一部に含まれる各サンプルペアに関連する各商品について決定される。
【0035】
1セットの順位付け特徴は、各クエリワードまたは各クエリワードカテゴリに対して予め決定されてよい。いくつかの実施形態において、同じセットの順位付け特徴が、異なるクエリワードまたは異なるクエリワードカテゴリに関連してもよい。順位付け特徴は、クエリワードまたはカテゴリクエリワードに対応する商品の属性を記述する。順位付け特徴の例は、商品の品質、商品テキストマッチング、商品カテゴリクリックマッチング、商品価格マッチング、および、商品売上高を含む。商品からの順位付け特徴の抽出とは、商品、または、その順位付け特徴に対応する商品に関連するメタデータ、に少なくとも部分的に基づいて、属性値または複数の属性値の組み合わせ(属性値または属性値の組み合わせは、「特徴スコア値」とも呼ぶ)を決定することである。
【0036】
各サンプルペアについて、順位付け特徴セットの各順位付け特徴に対応する特徴スコア値が、サンプルペアの2つの商品の各々に対して決定される。例えば、5つの順位付け特徴がある場合、5つの対応する特徴スコア値が、サンプルペアの2つの商品の各々に対して、その商品に関連するメタデータに基づいて決定される。
【0037】
各サンプルペアの各商品に対して特徴スコア値を決定する処理の一例については、
図4を参照して後述する。
【0038】
工程206では、1セットの順位付け特徴に対応する1セットの重みが、複数のサンプルペアの少なくとも一部に対応する複数の特徴スコア値および順位付け優先度割り当てに少なくとも部分的に基づいて決定される。
【0039】
各商品に対応する特徴スコア値を含むサンプルペア情報と、その商品がサンプルペア内の2つの商品の高い方の順位付け優先度を割り当てられているのか低い方を割り当てられているのかに関連するデータが、順位付けモデルを決定するために、トレーニングデータおよび/またはテストデータとして用いられる。商品のどの順位付け特徴/特徴スコア値が、高い計量値につながり、したがって、より高い重み付けを割り当てられるのが好ましいのかを学習するために、様々な商品サンプルペアの特徴スコア値を含むサンプルペア情報と、履歴計量値(例えば、クリックスルー率またはコンバージョン率)に基づいて決定された各サンプルペアの2つの商品の間の相対的な順位付け優先度とで、モデルがトレーニングされる。サンプルペア内の2つの商品の相対的な順位付け優先度でモデルをトレーニングすることにより、モデルは、順位付け優先度の高い商品に関連する特徴スコア値を、順位付け優先度の低い商品の特徴スコア値と比較することができる。順位付けモデルは、クエリワードに関連する順位付け特徴値セットの各順位付け特徴に対応する重みを含む。順位付け特徴セットの中のそれぞれの順位付け特徴に対応する結果として得られた順位付けモデルの重みは、他の商品よりも高い履歴計量値(例えば、クリックスルー率またはコンバージョン率)および/または高い順位付け優先度と履歴的に関連する特徴スコア値を有する商品の順位付けスコアを高くするよう意図される。
【0040】
例えば、いくつかの実施形態では、順位付けサポートベクターマシン(順位付けSVM)の機械学習モデルが、所望の順位付けモデルを取得するために用いられる。順位付けSVMは、対になった入力を受信する。したがって、いくつかの実施形態において、順位付けSVMモデルは、周知の技術を用いて、サンプルペアに関連する情報でトレーニングされ、ここで、各サンプルペアに関連する情報は、順位付けモデルを取得するために、サンプルペアの各商品に対応する特徴スコア値および相対的な順位付け優先度を含む。別の実施形態では、他の機械学習モデルが用いられる。
【0041】
クエリワードに関連する1セットの順位付け特徴のそれぞれに対応する、結果として得られた1セットの重みが格納され、クエリワードを含む後続の検索要求に対して返される商品検索結果を順位付けるためにリトリーブされる。
【0042】
サンプルペアの各商品に対応する高い優先度または低い優先度の割り当ては、履歴クリックスルー率またはコンバージョン率に基づいて決定されるので、かかるサンプルデータを用いて機械学習モデルをトレーニングすることにより、結果として得られた1セットの重みが、クリックスルー率またはコンバージョン率が上がるように、検索結果商品の順位付けを最適化することが好ましい。
【0043】
いくつかの実施形態では、特定のクエリワードに関連するサンプルペアが、そのクエリワードのための順位付けモデルを取得するために用いられる。いくつかの実施形態では、特定のカテゴリに関連する1または複数のクエリワードに関連するサンプルペアが、そのクエリワードカテゴリのための順位付けモデルを取得するために用いられる。順位付けモデルが各クエリワードカテゴリにとって望ましい場合、トレーニングデータが異なるグループに分けられ、トレーニングデータの各グループは、特定のカテゴリの1または複数のクエリワードに関連するサンプルペアを含む。次いで、各カテゴリの特定のグループのトレーニングデータが、機械学習モデルをトレーニングして、そのカテゴリのための順位付けモデルを取得するために、別個に用いられる。
【0044】
1セットの順位付け特徴に対応する1セットの重みを決定する処理の一例については、
図5を参照して後述する。
【0045】
工程208では、クエリワードを含む後続の検索要求が受信される。
【0046】
クエリワードを含む後続の検索要求が、(例えば、電子商取引ウェブサイトに関連する検索エンジンで)受信される。検索要求内のクエリワードを受信したことに応答して、クエリワードに対応する1セットの商品が見いだされる。
【0047】
工程210では、クエリワードに対応する複数の商品が、1セットの重みに少なくとも部分的に基づいて順位付けられる。
【0048】
クエリワードに対応する1セットの商品は、ユーザのための検索結果ページで提供される。検索結果ページで商品を提示する前に、まず、商品が順位付けられる。様々な実施形態において、1セットの見いだされた商品は、特定のクエリワードまたはそのクエリワードに関連するカテゴリに関連する1セットの順位付け特徴のそれぞれに対応する格納済みの1セットの重みに少なくとも部分的に基づいて順位付けされる。1セットの見いだされた商品の内の各商品について、1セットの順位付け特徴のそれぞれに対応する特徴スコア値が決定される。次いで、かかる各特徴スコア値は、リトリーブされた重みのセットに含まれる対応する重みで重み付けされ(例えば、重みを掛けられ)、商品の重み付け済み特徴スコア値が合計されて、順位付けスコアになる。1セットの見いだされた商品は、これらの順位付けスコアに少なくとも部分的に基づいて順位付けされる。上位から所定の数の商品が、検索結果ページでユーザに返され、決定された順位に沿って提示される。
【0049】
図3は、クエリワードに関連するサンプルペアを決定する処理の一例を示すフローチャートである。いくつかの実施形態において、処理300は、
図1のシステム100で実施される。いくつかの実施形態において、
図2の処理200の工程202は、処理300を用いて実施される。
【0050】
処理300は、クエリワードに関してサンプルペアを決定する処理の一例を記載する。処理300は、(例えば、電子商取引ウェブサイトで)検索要求に以前に含められた複数のクエリワードの各々に対して繰り返されてよい。
【0051】
工程302では、クエリワードに対応する複数の商品が、履歴ユーザ動作データに少なくとも部分的に基づいて決定される。以前にクエリワードに対応した各商品が、履歴ユーザ動作データから決定されうる。履歴ユーザ動作データは、検索エンジンのアクセスログ、選択(例えば、クリック)ログ、および、購入ログを含む。いくつかの実施形態では、所定の過去の期間(例えば、過去7日間)に関連する履歴ユーザ動作データだけが、商品の決定に用いられる。
【0052】
工程304では、履歴計量値が、クエリワードに関連する履歴ユーザ動作データに少なくとも部分的に基づいて、複数の商品の各商品に対して決定される。いくつかの実施形態では、クエリワードに対して返された商品検索結果のクリックスルー率またはコンバージョン率を上げるために、クエリワードに関連する順位付け特徴セットの各順位付け特徴のための重みが最適化される。いくつかの実施形態では、トレーニングデータに基づいて様々な順位付け特徴のための重みを評価することによって、順位付け特徴および順位付け結果の関係モデルを確立するために、機械学習が用いられる。
【0053】
上述のように、クエリワードに対応する商品の「クリックスルー率」とは、クエリワードに対して生成された検索結果ページでユーザによって商品が選択(例えば、クリック)された回数の、クエリワードを用いて行われた検索の総数に対する比のことである。クエリワードに対応する商品の「コンバージョン率」とは、クエリワードに対して生成された検索結果ページで商品を選択した後にユーザによって商品が購入(例えば、クリック)された回数の、クエリワードを用いて行われた検索の総数に対する比のことである。
【0054】
機械学習モデルをトレーニングするために用いるサンプルセットは、改善目標に基づいて抽出される。例えば、主な目標が、クエリワードに対応する商品検索結果のクリックスルー率(「CTR」とも呼ばれる)を上げることである場合、サンプルペアを決定するための履歴計量値として、履歴ユーザ選択動作を用いることができる。別の例において、主な目標が、コンバージョン率を上げることであれば、サンプルペアを決定するための履歴計量値として、履歴ユーザ購入動作を用いることができる。
【0055】
履歴計量値は、クエリワードに以前に対応した各商品に対して決定される。いくつかの実施形態では、所定の過去の期間(例えば、過去7日間)に関連する履歴ユーザ動作データだけが、履歴計量値の決定に用いられる。履歴計量値は、ユーザ設定されてよい。例えば、履歴計量値は、主な目標が、商品検索結果順位を最適化することによってクリックスルー率を上げることなのかコンバージョン率を上げることなのかに応じて、それぞれ、クリックスルー率またはコンバージョン率でありうる。
【0056】
工程306では、複数ペアの商品が、複数の商品から決定される。様々な実施形態において、すべての可能なペアの商品(各々が、以前にクエリワードに対応した商品)が決定される。かかる商品ペアは、クエリワードのサンプルペアの候補である。
【0057】
工程308では、履歴計量値に関連する条件を満たす複数の商品ペアから複数のサンプルペアが決定される。商品のペアがサンプルペアと見なされるために満たす必要のある条件は、それらの商品の履歴計量値(例えば、クリックスルー率またはコンバージョン率)の間の比較に基づいてよい。いくつかの実施形態において、条件は、ペアの2つの商品のそれぞれの履歴計量値の間の差の絶対値がカットオフ閾値を超える場合に、商品のペアがクエリワードに関連するサンプルペアと見なされるという条件である。いくつかの実施形態において、カットオフ閾値は、すべてのペアの商品の差の絶対値の平均として決定される。
【0058】
以下は、カットオフ閾値の決定の一例であり、ここでは、履歴計量値としてクリックスルー率を用いており、サンプルペアの決定はカットオフ閾値を用いている。
【0059】
以前にクエリワードに対応した商品が、商品A、商品B、および、商品Cを含んで、このクエリワードに関連し、商品Aのクリックスルー率がCTR Aであり、商品Bのクリックスルー率がCTR Bであり、商品Cのクリックスルー率がCTR Cである場合、まず、CTR AおよびCTR Bの間の差、CTR AおよびCTR Cの間の差、および、CTR CおよびCTR Bの間の差が別個に計算され、これらの差の絶対値の平均が、カットオフ閾値として用いられる。
【0060】
商品のペア{A,B}、{A,C}、および、{B,C}は、ペアのそれぞれの商品のクリックスルー率の差の絶対値がカットオフ閾値を超える場合に、クエリワードに関連するサンプルペアと見なされる。例えば、商品ペア{A,B}は、|CTR A−CTR B|>カットオフ閾値である場合に、サンプルペアと見なされる。商品ペアのクリックスルー率の差の絶対値がカットオフ閾値を超えない場合、その商品ペアは、サンプルペアとは見なされないため、機械学習のためのトレーニングデータとしては利用されない。
【0061】
カットオフ閾値を決定し、カットオフ閾値を用いてサンプルペアを決定するための上記の例において、クリックスルー率の履歴計量値について説明したが、コンバージョン率などの他のタイプの履歴計量値にも、同じタイプの計算を適用できる。
【0062】
工程310では、より高い順位付け優先度が、サンプルペアの2つの商品に対応するそれぞれの履歴計量値に少なくとも部分的に基づいて、複数のサンプルペアの各サンプルペア内の1商品に割り当てられる。様々な実施形態において、より高い履歴計量値(例えば、より高いクリックスルー率またはより高いコンバージョン率)を有するサンプルペア内の商品が、サンプルペア内でより高い順位付け優先度を割り当てられる。サンプルペアの他方の商品、すなわち、より低い履歴計量値を持つ商品は、サンプルペア内でより低い順位付け優先度を割り当てられる。サンプルペア内で高い方の順位付け優先度を持つ商品は、ユーザの検索意図に近いと推定されるため、クエリワードとの相関が高い。サンプルペア内の商品の順位付け優先度が高いことは、その商品が、検索結果ページ内でサンプルペアの他方の商品よりも高く順位付けされることが好ましいことを示している。商品に高低の順位付け優先度を割り当てることは、サンプルペアごとに実行され、これは、第1の商品が、1つのサンプルペア内で、より高い順位付け優先度を割り当てられ、別のサンプルペアでは、より低い順位付け優先度を割り当てられうることを意味する。履歴的に、サンプルペアの他方の商品よりも低い順位付け優先度を割り当てられたサンプルペアの商品が、商品検索結果ページ内で他方の商品よりも実際に高く順位づけられていた可能性もある。複数のサンプルペアは、クエリワードのためのサンプルセットとして格納されてもよい。
【0063】
例えば、クエリワードに関連するサンプルセットの中のサンプルペアは、表現(query,product1,product2)を用いて表現可能であり、ここで、queryは、クエリワードを含み、商品product1およびproduct2は、queryを含んだ検索クエリに応答して商品検索結果ページに以前に含まれた2つの商品の識別子を含む。従来の順位付けモデルでは、サンプルに手作業でタグ付けすることにより、サンプルトレーニングが達成される。かかる実践の欠点は、面倒で非効率的なことである。本明細書に記載の実施形態は、ペアワイズ技術を用いるので、抽出されたサンプルペアは、サンプルペアの2つの商品のどちらがサンプルペアの他方の商品よりも高い順位付け優先度を有するかについて、タグ付けされるだけでよい。本明細書に記載の実施形態では、他のすべての商品に対して各商品の相対的な順位付け優先度を決定する必要はない。
【0064】
いくつかの実施形態では、クエリワードが属するカテゴリが予め決定される(例えば、システム管理者によって設定される)。いくつかの実施形態において、クエリワードに対して生成された各サンプルペアは、クエリワードに対して予め決定されたカテゴリに関連するカテゴリ識別子でタグ付けされてよい。したがって、いくつかの実施形態において、1セットの順位付け特徴に対応する1セットの重みが、(各クエリワードではなく)各クエリワードカテゴリについて、そのカテゴリに属する各クエリワードに対して生成されたサンプルペアに基づいて決定されてよい。
【0065】
図4は、サンプルペアの各商品に対応するクエリワードに関連する1セットの順位付け特徴に対応する特徴スコア値を決定するための処理の一例を示すフローチャートである。いくつかの実施形態において、処理400は、
図1のシステム100で実施される。いくつかの実施形態において、
図2の処理200の工程204は、処理400を用いて実施できる。
【0066】
工程402では、サンプルペアに関連するクエリワードに関連する1セットの順位付け特徴が決定される。処理400では、複数のサンプルペアがすでにクエリワードに対して決定されていると仮定する(例えば、
図3の処理300などの処理を用いて)。クエリワードに関連する順位付け特徴のセットは予め決定されてもよい。
【0067】
いくつかの実施形態において、サンプルペアがクエリワードに関連するカテゴリ識別子でタグ付けされている場合、クエリワード構文解析情報、クエリワードに対応するカテゴリ分布情報、および、クエリワードに対応するその他の情報が、ストレージからリトリーブされてもよい。
【0068】
工程404では、1セットの順位付け特徴に対応する第1のセットの属性値が、サンプルペアの第1の商品に関連するメタデータから抽出される。各商品に関連するメタデータのセットが、データベースに格納されてよい。いくつかの実施形態において、メタデータのセットは、対応する商品に関連する販売者ユーザによって提出された商品情報を含んでよい。いくつかの実施形態において、メタデータのセットは、対応する商品に関する履歴ユーザ動作(例えば、過去の購入回数、過去の閲覧回数)を含む。商品に関連するメタデータのセットは、商品に関連する様々な異なる属性値(例えば、数値)を含んでよい。属性の例は、価格、商品が発売されてからの日数、および、過去に商品が購入された回数を含む。いくつかの実施形態において、順位付け特徴セット内の1つの順位付け特徴が、商品のメタデータセット内の1または複数の属性値に対応しうる。商品の属性値と特定の順位付け特徴との間の対応関係は、予め決定されてよい。
【0069】
各順位付け特徴に対応する(サンプルペアの)第1の商品の属性値は、メタデータのセットから抽出され、第1の商品の対応するその順位付け特徴の特徴スコア値を計算するために用いられる。
【0070】
工程406では、1セットの順位付け特徴に対応する第2のセットの属性値が、サンプルペアの第2の商品に関連するメタデータから抽出される。各順位付け特徴に対応する(サンプルペアの)第2の商品の属性値は、メタデータのセットから抽出され、第2の商品の対応するその順位付け特徴の特徴スコア値を計算するために用いられる。
【0071】
工程408では、1セットの順位付け特徴に対応する第1のセットの特徴スコア値が、第1のセットの属性値に少なくとも部分的に基づいて、第1の商品に対して計算される。工程404に関して述べたように、サンプルペアの第1の商品の1または複数の対応する属性値が、各順位付け特徴に対して抽出されているため、その順位付け特徴の特徴スコア値は、1または複数の対応する属性値を組み合わせることに基づいて計算できる。
【0072】
工程410では、1セットの順位付け特徴に対応する第2のセットの特徴スコア値が、第2のセットの属性値に少なくとも部分的に基づいて、第2の商品に対して決定される。工程406に関して述べたように、サンプルペアの第2の商品の1または複数の対応する属性値が、各順位付け特徴に対して抽出されているため、その順位付け特徴の特徴スコア値は、1または複数の対応する属性値に基づいて計算できる。
【0073】
工程412では、サンプルペアの第1の商品が、第1のセットの特徴スコア値で置き換えられ、サンプルペアの第2の商品が、第2のセットの特徴スコア値で置き換えられる。サンプルペアは、以前、クエリワードと、サンプルペアの2つの商品の各々に対応する識別子とを含んでいた。しかしながら、サンプルペア内の第1の商品の識別子は、それに対応する計算済みの特徴スコア値によって置き換えられ、サンプルペア内の第2の商品の識別子は、それに対応する計算済みの特徴スコア値によって置き換えられる。
【0074】
例えば、サンプルペアの表現(query,product1,product2)について、第1の商品の識別子product1は、第1の商品の特徴スコア値(feature1_1,feature2_1,feature3_1,・・・,featureN_1)で置き換えられ、第2の商品の識別子product2は、第2の商品の特徴スコア値(feature1_2,feature2_2,feature3_2,・・・,featureN_2)で置き換えられ、ここで、N個の順位付け特徴がある。したがって、商品識別子が商品の特徴スコア値で置き換えられた結果として得られるサンプルペアの表現は、(query,(feature1_1,feature2_1,feature3_1,・・・,featureN_1),(feature1_2,feature2_2,feature3_2,・・・,featureN_2))でありうる。
【0075】
図5は、クエリワードに関連する1セットの順位付け特徴に対応する重みを決定する処理の一例を示すフローチャートである。いくつかの実施形態において、処理500は、
図1のシステム100で実施される。いくつかの実施形態において、
図2の処理200の工程206は、処理500を用いて実施される。
【0076】
工程502では、クエリワードに関連する複数のサンプルペアが、トレーニングサンプルセットおよびテストサンプルセットに分けられる。いくつかの実施形態において、順位付けモデルが構築される基礎となるサンプルセットは、所定の比(例えば、2:1、ただし、これに限定されない)に基づいて、トレーニングサンプルセットおよびテストサンプルセットに分けられる。サンプルセットの各サンプルペアは、クエリワードと、サンプルペアの両方の商品に対応する特徴スコア値とを含む。
【0077】
工程504では、機械学習モデルが、トレーニングサンプルセットでトレーニングされる。
【0078】
各サンプルペアに含まれる商品の様々な順位付け特徴に関する特徴スコア値と、トレーニングサンプル内の各サンプルペアに含まれる2つの商品のそれぞれの高低の順位付け優先度の指示とに基づいた機械学習モデルのトレーニングが、モデルの出力結果として各順位付け特徴に対応する重みを取得するために実行される。特定の順位付け特徴に対して決定された重みが大きいほど、その順位付け特徴がより重要であると判定される。
【0079】
工程506では、トレーニングを継続するか否かが判定される。機械学習モデルのトレーニングを継続すると判定された場合、制御は工程504に戻る。逆に、機械学習モデルをトレーニングしないと判定された場合、制御は工程508に移行する。
【0080】
いくつかの実施形態において、テストサンプルセットは、モデルの出力結果の精度テストを実行するために用いられる。モデルの出力結果が所望の条件を満たさないと判定された場合、制御は工程504に戻って、トレーニングサンプルセットによる機械学習モデル
のトレーニングを継続する。所望の条件(例えば、精度のレベル)が達成されるまで、工程504および506の反復が実行される。
【0081】
工程508では、クエリワードに関連する1セットの順位付け特徴に対応する1セットの重みを含む順位付けモデルが格納される。モデルをトレーニングする所望の条件が達成された時のモデルの出力結果が、順位付け特徴セットのための重みセットとして機能する。
【0082】
いくつかの実施形態において、順位付けサポートベクターマシン(順位付けSVM)が、トレーニングサンプルセットを用いてモデルをトレーニングするための技術として用いられてよいが、これに限定されない。順位付けSVMは、ペアワイズの順位付け・分類技術であり、クエリワードに関連する特徴スコア値の対になった順位付け済みのサンプルのセットから学習して、順位付けモデル(すなわち、1セットの順位付け特徴のそれぞれに対応する1セットの重み)を決定することができる。順位付けSVMは、サポートベクターマシン(SVM)技術に基づいて開発されたので、ガウスカーネル、多項式カーネル、および、線形カーネルを含む様々なカーネル関数を用いて分類をサポートする。ガウスカーネルおよび多項式カーネルは、モデルの精度を高めるために、低次元の問題を高次元の問題に変換できる。しかしながら、これら2つのカーネルのモデルに関しては、オンラインで予測する場合、トレーニング速度が比較的遅く、複雑さが高い。一方で、線形カーネルの一般化の能力は比較的弱いものの、トレーニング速度は比較的速く、線形順位付け方法は、現代のシステムに比較的容易に組み込まれる。したがって、本明細書に記載の実施形態は、線形カーネルを用いる。
【0083】
いくつかの実施形態において、多目的統合および最適化を得るためのリストワイズ技術が、モデル予測の精度を高めるためにモデルトレーニングで用いられてもよい。
【0084】
順位付けSVMを用いるいくつかの実施形態では、サンプルペアが、順位付けSVM技術によって必要とされる特定のサンプルフォーマットに変換される。順位付けSVM技術によって必要とされる特定のサンプルフォーマットに従うために、サンプルペアは、2つのエントリを持つリストに変換され、各エントリは、サンプルペアの一方の商品の特徴スコア値と、その商品に割り当てられた順位付け優先度がサンプルペアの他方の商品よりも高いか低いかに関連する指示とを含む。サンプルペアに含まれる2つの商品(product1およびproduct2)の順位付け特徴の特徴スコア値のリストの一例を、以下に示す。ここで、「1」および「0」は、サンプルペア内の2つの商品の相対的な順位を表現するために用いられる識別子である。順位付けSVMに関連するリストフォーマットに変換されたサンプルペアのフォーマットの以下の例において、識別子「1」を有する商品(product1)は、より高い順位付け優先度を割り当てられた商品であり、識別子「0」を有する商品(product2)は、より低い順位付け優先度を割り当てられた商品である。
【0085】
(1,feature1_1,feature2_1,feature3_1,・・・,featureN_1)
【0086】
(0,feature1_2,feature2_2,feature3_2,・・・,featureN_2)
【0087】
各サンプルペアは、順位付けSVM技術によって必要とされるサンプルフォーマットに変換され、所望の順位付けモデルを構築するために用いられる。
【0088】
いくつかの実施形態において、異なるクエリワードに関連するサンプルペアが順位付けモデルをトレーニングするために用いられる場合、各サンプルペアは、そのクエリワードのカテゴリの識別子でタグ付けされてよい。次いで、サンプルペアは、グループに分けられてよく、各グループは、異なるカテゴリに関連する。機械学習モデルは、サンプルペアの各カテゴリに基づいて別個にトレーニングされてよいので、異なる順位付けモデル(すなわち、異なるセットの重み)が、各カテゴリに対して決定および格納されてよい。したがって、異なるカテゴリに関連する異なる順位付けモデルによって順位付けされた同じ商品が、結果として異なる順位を持ちうる。
【0089】
図6は、検索要求に応答して商品検索結果の順位を提供する一例を示すフローチャートである。いくつかの実施形態において、処理600は、
図1のシステム100で実施される。いくつかの実施形態において、
図2の処理200の少なくとも工程208および210は、処理600を用いて実施される。
【0090】
工程602では、クエリワードを含む検索要求が受信される。例えば、検索結果は、電子商取引ウェブサイトに関連する検索エンジンで受信される。
【0091】
工程604では、クエリワードに関連する1セットの順位付け特徴がリトリーブされる。クエリワードまたはクエリワードに関連するカテゴリに関連する所定のセットの順位付け特徴が、ストレージからリトリーブされる。
【0092】
工程606では、クエリワードに関連する順位付けモデルが決定され、ここで、順位付けモデルは、1セットの順位付け特徴に対応する1セットの重みを含む。いくつかの実施形態において、順位付けモデルは、特定のクエリワードに対して決定されている。いくつかの実施形態において、順位付けモデルは、クエリワードに関連するように予め決定されたカテゴリに対して決定されている。例えば、クエリワードまたはクエリワードカテゴリのいずれかに関連するリトリーブされた順位付けモデルに関連する1セットの重みは、(weighting_1,weighting_2,weighting_3,・・・,weighting_N)と表現でき、ここで、Nはセット内の順位特徴の数を表す。
【0093】
工程608では、クエリワードに対応する複数の商品が決定される。例えば、電子商取引ウェブサイトで入手可能な商品が、データベースに格納されている。商品のデータベースは、クエリワードに対応する商品についてクエリされうる。
【0094】
工程610では、複数の商品の内の第1の商品に対して、対応する特徴スコア値が、その商品に関連するメタデータに少なくとも部分的に基づいて、順位付け特徴セットの各順位付け特徴について決定される。クエリワードに対応する各商品に対して、対応する特徴スコア値が、各順位付け特徴について決定される。例えば、商品の順位付け特徴に対応する特徴スコア値を決定するために、順位付け特徴に対応する商品のメタデータに含まれる1または複数の属性値が、最初に決定されてよい。次いで、1または複数の属性値を組み合わせて、特性スコア値を決定できる。例えば、リトリーブされた順位付けモデルの順位付け特徴のそれぞれに対応する商品の特徴スコア値は、(feature_1,feature_2,feature_3,・・・,feature_N)と表すことができ、ここで、Nはセット内の順位付け特徴の数を表す。
【0095】
工程612では、順位付けスコアが、対応する特徴スコア値および1セットの重みに少なくとも部分的に基づいて、第1の商品に対して決定される。各商品について、それに対応する特徴スコア値の各々に、それぞれの順位特徴の重みを乗算することで、重み付けされた特徴スコア値が決定される。各商品に対応する重み付けされた特徴スコア値は、その商品の順位付けスコアを決定するために合計される。
【0096】
以下は、商品の順位付けスコアを決定するための式の一例である。
【0098】
ここで、P
mは商品mを表し、Ranking_score_P
m は商品mの順位付けスコアを表し、feature_i_P
mは順位付け特徴iに対応する商品mの特徴スコア値を表し、weighting_i は順位付け特徴iの重み値を表し、Nは順位付け特徴の数を表す。
【0099】
工程614では、第1の商品は、順位付けスコアに少なくとも部分的に基づいて複数の商品の中で順位付けられる。順位付けスコアが商品に対して決定されると、それぞれの順位付けスコアに従って、商品を順位付けることができる。より高い順位付けスコアを持つ商品は、より低い順位付けスコアを持つ商品よりも、商品検索結果ページでユーザに対して早く表示されうる。順位付けされた商品の少なくとも一部が、ユーザに返されて提示されてよい。
【0100】
図7は、商品検索結果を順位付けるためのシステムの一実施形態を示す図である。いくつかの実施形態では、
図6の処理6は、システム700で実施されうる。例に示すように、クエリワードを含む検索要求が、(例えば、ウェブページの入力フィールドに入力することで)ユーザからクエリサーバ702で受信される。
図7の例において、クエリワードは、「携帯電話ハンドセット」である。クエリサーバ702は、検索要求に含まれる少なくともクエリワードを検索エンジン704に送信する。
図7の例において、検索エンジン704は、クエリワードに関連するカテゴリを最初に決定し、次いで、カテゴリと順位付けモデルとの間で予め決定された対応関係に基づいて、カテゴリに関連する順位付けモデルをリトリーブするよう構成されている。例えば、クエリワードのカテゴリは、異なる業界に関連しうる。異なるカテゴリに関連する順位付けモデルの例は、サービス業順位付けモデル、製造業順位付けモデル、および、小売業順位付けモデルを含む。別の例において、検索エンジン704は、クエリワードに関連する順位付けモデルをリトリーブするよう構成されている。検索エンジン704は、「携帯電話ハンドセット」に対応する商品を見いだし、リトリーブした順位付けモデルに基づいて、かかる商品を順位付け、順位付けした商品の少なくとも一部をユーザに提示するために返すよう構成されている。
【0101】
図8は、商品検索結果を順位付けるためのシステムの一実施形態を示す図である。この例において、システム800は、サンプル選択モジュール802、特徴スコア値リトリーブ(検索)モジュール804、モデルトレーニングモジュール806、および、順位付けモジュール808を備える。
【0102】
モジュールは、1または複数のプロセッサ上で実行されるソフトウェアコンポーネントとして、設計されたプログラム可能論理デバイスおよび/または特定用途向け集積回路などのハードウェアとして実装されてよく、要素は、コンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワーク装置など)に本発明の実施形態に記載された方法を実行させるための複数の命令など、不揮発性記憶媒体(光学ディスク、フラッシュ記憶装置、携帯用ハードディスクなど)に格納することができるソフトウェア製品の形態で具現化されてよい。モジュールは、単一のデバイス上に実装されてもよいし、複数のデバイスにわたって分散されてもよい。
【0103】
サンプル選択モジュール802は、クエリワードに対応する複数のサンプルペアを決定するよう構成されている。複数のサンプルペアの内のサンプルペアは、クエリワードに対応する第1の商品および第2の商品に関連し、第1の商品および第2の商品の一方は、クエリワードに関連する履歴ユーザ動作データに少なくとも部分的に基づいて、より高い順位付け優先度を割り当てられる。
【0104】
特徴スコア値リトリーブモジュール804は、複数のサンプルペアの少なくとも一部に含まれる各サンプルペアに関連する各商品に対応するクエリワードに関連する1セットの順位付け特徴に対応する複数の特徴スコア値を決定するよう構成されている。
【0105】
モデルトレーニングモジュール806は、複数の特徴スコア値を用いて機械学習モデルをトレーニングすることに少なくとも部分的に基づいて、クエリワードに関連する1セットの順位付け特徴に対応する1セットの重みを決定するよう構成されている。
【0106】
順位付けモジュール808は、クエリワードを含む後続の検索要求を受信するよう構成されている。順位付けモジュール808は、1セットの重みに少なくとも部分的に基づいて、少なくともクエリワードに対応する複数の商品を順位付けるよう構成されている。
【0107】
当業者であれば、上述した実施形態の工程の全部または一部が、関連するハードウェアに指示するプログラムを用いて実現されてよく、かかるプログラムが、読み出し専用メモリ、ハードディスク、または、コンパクトディスクなどのコンピュータ読み取り可能な記憶媒体に格納されうることを理解できる。任意選択的に、上述した実施形態の工程の全部または一部が、1または複数の集積回路を用いて実現されてもよい。したがって、上記の実施形態に含まれる様々なモジュール/ユニットも、ハードウェアまたはソフトウェア機能モジュールの形態で実現されてよい。このように、本願は、ハードウェアおよびソフトウェアの任意の特定の組み合わせに限定されない。
【0108】
本願は、様々な他の実施形態を有してよく、本願の精神および本質から逸脱することなく、当業者は、本願に基づいて様々な対応する変更例および変形例を生み出しうるが、これらの対応する変更例および変形例はすべて、本願の請求項の保護範囲内にある。
【0109】
上述の実施形態は、理解しやすいようにいくぶん詳しく説明されているが、本発明は、提供された詳細事項に限定されるものではない。本発明を実施する多くの代替方法が存在する。開示された実施形態は、例示であり、限定を意図するものではない。
適用例1:システムであって、
1または複数のプロセッサであって、
クエリワードに対応する複数のサンプルペアを決定し、前記複数のサンプルペアの中のサンプルペアは、前記クエリワードに対応する第1の商品および第2の商品に関連付けられており、前記第1の商品および前記第2の商品の一方は、前記クエリワードに関連付けられている履歴ユーザ動作データに少なくとも部分的に基づいて、前記第1の商品および前記第2の商品の他方よりも高い順位付け優先度を割り当てられ、
前記複数のサンプルペアの少なくとも一部に含まれる各サンプルペアに関連付けられている各商品について、前記クエリワードに関連付けられている1セットの順位付け特徴に対応する複数の特徴スコア値を決定し、
前記複数のサンプルペアの前記少なくとも一部に対応する前記複数の特徴スコア値および順位付け優先度割り当てに少なくとも部分的に基づいて、前記1セットの順位付け特徴に対応する1セットの重みを決定するよう構成されている、1または複数のプロセッサと、
前記1または複数のプロセッサに接続され、前記1または複数のプロセッサに命令を提供するよう構成されている1または複数のメモリと、
を備える、システム。
適用例2:適用例1に記載のシステムであって、前記1または複数のプロセッサは、さらに、
前記クエリワードを含む後続の検索要求を受信し、
前記1セットの重みに少なくとも部分的に基づいて、前記クエリワードに対応する少なくとも複数の商品を順位付け、
1または複数の順位付けられた商品検索結果を出力するよう構成されている、システム。
適用例3:適用例2に記載のシステムであって、前記少なくとも複数の商品を順位付けることは、
前記複数の商品の中の商品について、前記1セットの順位付け特徴の各順位付け特徴の対応する特徴スコア値を決定し、
前記対応する特徴スコア値および前記1セットの重みに少なくとも部分的に基づいて、前記商品の順位付けスコアを決定し、
前記順位付けスコアに少なくとも部分的に基づいて、前記複数の商品の中で前記商品を順位付けることを含む、システム。
適用例4:適用例1に記載のシステムであって、前記クエリワードに対応する前記複数のサンプルペアを決定することは、
前記履歴ユーザ動作データに少なくとも部分的に基づいて、前記クエリワードに対応する複数の商品を決定し、
前記クエリワードに関連する前記履歴ユーザ動作データに少なくとも部分的に基づいて、前記複数の商品の各商品に対して履歴計量値を決定し、
前記複数の商品から複数ペアの商品を決定し、
前記複数ペアの商品から前記複数のサンプルペアを決定し、前記複数のサンプルペアの各々は、前記履歴計量値に関連付けられている条件を満たし、
前記サンプルペアの前記2つの商品に対応するそれぞれの履歴計量値に少なくとも部分的に基づいて、前記複数のサンプルペアの各サンプルペア内の1商品に、より高い優先度を割り当てることを含む、システム。
適用例5:適用例4に記載のシステムであって、前記履歴計量値は、コンバージョン率およびクリックスルー率の一方または両方を含む、システム。
適用例6:適用例1に記載のシステムであって、前記複数のサンプルペアの前記少なくとも一部に含まれる各サンプルペアに関連する各商品に対応する前記クエリワードに関連付けられている前記1セットの順位付け特徴に対応する前記複数の特徴スコア値を決定することは、
前記商品に関連する前記1セットの順位付け特徴に対応する1セットの属性値を抽出し、
前記1セットの属性値に少なくとも部分的に基づいて、前記商品について前記複数の特徴スコア値を計算することを含む、システム。
適用例7:適用例1に記載のシステムであって、前記1セットの順位付け特徴に対応する前記1セットの重みを決定することは、前記複数の特徴スコア値と、前記複数のサンプルペアの各サンプルペアの商品のペアに対応する高順位付け優先度または低順位付け優先度の指示とに少なくとも部分的に基づいて、機械学習モデルをトレーニングすることを含む、システム。
適用例8:適用例1に記載のシステムであって、前記クエリワードに関連付けられている前記1セットの順位付け特徴は、前記クエリワードが属するカテゴリに関連する、システム。
適用例9:適用例1に記載のシステムであって、前記履歴ユーザ動作データは、アクセスログ、購入ログ、または、選択ログの内の1以上を含む、システム。
適用例10:方法であって、
クエリワードに対応する複数のサンプルペアを決定し、前記複数のサンプルペアの中のサンプルペアは、前記クエリワードに対応する第1の商品および第2の商品に関連付けられており、前記第1の商品および前記第2の商品の一方は、前記クエリワードに関連する履歴ユーザ動作データに少なくとも部分的に基づいて、前記第1の商品および前記第2の商品の他方よりも高い順位付け優先度を割り当てられ、
前記複数のサンプルペアの少なくとも一部に含まれる各サンプルペアに関連付けられている各商品について、前記クエリワードに関連する1セットの順位付け特徴に対応する複数の特徴スコア値を決定し、
前記複数のサンプルペアの前記少なくとも一部に対応する前記複数の特徴スコア値および順位付け優先度割り当てに少なくとも部分的に基づいて、前記1セットの順位付け特徴に対応する1セットの重みを決定すること、
を備える、方法。
適用例11:適用例10に記載の方法であって、さらに、
前記クエリワードを含む後続の検索要求を受信し、
前記1セットの重みに少なくとも部分的に基づいて、前記クエリワードに対応する少なくとも複数の商品を順位付け、
1または複数の順位付けられた商品検索結果を出力すること、
を備える、方法。
適用例12:適用例11に記載の方法であって、前記少なくとも複数の商品を順位付けることは、
前記複数の商品の中の商品について、前記1セットの順位付け特徴の各順位付け特徴の対応する特徴スコア値を決定し、
前記対応する特徴スコア値および前記1セットの重みに少なくとも部分的に基づいて、前記商品の順位付けスコアを決定し、
前記順位付けスコアに少なくとも部分的に基づいて、前記複数の商品の中で前記商品を順位付けること、
を含む、方法。
適用例13:適用例10に記載の方法であって、前記クエリワードに対応する前記複数のサンプルペアを決定することは、
前記履歴ユーザ動作データに少なくとも部分的に基づいて、前記クエリワードに対応する複数の商品を決定し、
前記クエリワードに関連付けられている前記履歴ユーザ動作データに少なくとも部分的に基づいて、前記複数の商品の各商品に対して履歴計量値を決定し、
前記複数の商品から複数ペアの商品を決定し、
前記複数ペアの商品から前記複数のサンプルペアを決定し、前記複数のサンプルペアの各々は、前記履歴計量値に関連付けられている条件を満たし、
前記サンプルペアの前記2つの商品に対応するそれぞれの履歴計量値に少なくとも部分的に基づいて、前記複数のサンプルペアの各サンプルペア内の1商品に、より高い優先度を割り当てること、
を含む、方法。
適用例14:適用例13に記載の方法であって、前記履歴計量値は、コンバージョン率およびクリックスルー率の一方または両方を含む、方法。
適用例15:適用例10に記載の方法であって、前記複数のサンプルペアの前記少なくとも一部に含まれる各サンプルペアに関連付けられている各商品に対応する前記クエリワードに関連する前記1セットの順位付け特徴に対応する前記複数の特徴スコア値を決定することは、
前記商品に関連する前記1セットの順位付け特徴に対応する1セットの属性値を抽出し、
前記1セットの属性値に少なくとも部分的に基づいて、前記商品について前記複数の特徴スコア値を計算すること、
を含む、方法。
適用例16:適用例10に記載の方法であって、前記1セットの順位付け特徴に対応する前記1セットの重みを決定することは、前記特徴スコア値と、前記複数のサンプルペアの各サンプルペアの商品のペアに対応する高順位付け優先度または低順位付け優先度の指示とに少なくとも部分的に基づいて、機械学習モデルをトレーニングすることを含む、方法。
適用例17:適用例10に記載の方法であって、前記クエリワードに関連付けられている前記1セットの順位付け特徴は、前記クエリワードが属するカテゴリに関連する、方法。
適用例18:適用例10に記載の方法であって、前記履歴ユーザ動作データは、アクセスログ、購入ログ、または、選択ログの内の1以上を含む、方法。
適用例19:コンピュータプログラム製品であって、持続性のコンピュータ読み取り可能な記憶媒体内に具現化され、
クエリワードに対応する複数のサンプルペアを決定するためのコンピュータ命令と、前記複数のサンプルペアの中のサンプルペアは、前記クエリワードに対応する第1の商品および第2の商品に関連付けられており、前記第1の商品および前記第2の商品の一方は、前記クエリワードに関連付けられている履歴ユーザ動作データに少なくとも部分的に基づいて、前記第1の商品および前記第2の商品の他方よりも高い順位付け優先度を割り当てられ、
前記複数のサンプルペアの少なくとも一部に含まれる各サンプルペアに関連付けられている各商品について、前記クエリワードに関連する1セットの順位付け特徴に対応する複数の特徴スコア値を決定するためのコンピュータ命令と、
前記複数のサンプルペアの前記少なくとも一部に対応する前記複数の特徴スコア値および順位付け優先度割り当てに少なくとも部分的に基づいて、前記1セットの順位付け特徴に対応する1セットの重みを決定するためのコンピュータ命令と、
を備える、コンピュータプログラム製品。