JP7754592B2 - Systems and methods for ranking objects - Google Patents
Systems and methods for ranking objectsInfo
- Publication number
- JP7754592B2 JP7754592B2 JP2022074971A JP2022074971A JP7754592B2 JP 7754592 B2 JP7754592 B2 JP 7754592B2 JP 2022074971 A JP2022074971 A JP 2022074971A JP 2022074971 A JP2022074971 A JP 2022074971A JP 7754592 B2 JP7754592 B2 JP 7754592B2
- Authority
- JP
- Japan
- Prior art keywords
- objects
- function
- ranking
- fairness
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Operations Research (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
[関連出願の相互参照]
本出願(対応米国出願)は、2021年5月6日に出願された仏国特許出願第FR2104801号に基づき35 USC 119に従う優先権を主張し、その内容が参照により本明細書に組み込まれる。
CROSS-REFERENCE TO RELATED APPLICATIONS
This application (corresponding U.S. application) claims priority under 35 U.S.C. 119 to French Patent Application No. FR2104801, filed May 6, 2021, the contents of which are incorporated herein by reference.
本出願(対応米国出願)は、2021年11月8日に出願された欧州特許出願第EP21306565号に基づき35 USC 119に従う優先権をさらに主張し、その内容が参照により本明細書に組み込まれる。 This application (corresponding U.S. application) further claims priority under 35 U.S.C. 119 to European Patent Application No. EP 21306565, filed November 8, 2021, the contents of which are incorporated herein by reference.
本発明の分野は情報検索及び推薦(recommendation)である。より具体的には、本発明の実施例は、検索されるオブジェクト(object)の公正な順位付けのためのコンピュータ具現化方法及びシステムに関する。 The field of the present invention is information retrieval and recommendation. More specifically, embodiments of the present invention relate to computer-implemented methods and systems for unbiased ranking of retrieved objects.
一般に、情報検索及び推薦は2つのステップから構成される。第1のステップは、複数の結果の候補セットを検索するのに焦点を当て、第2のステップは、複数の結果の候補セットを順位付けするのに焦点を当てる。 Information retrieval and recommendation generally consists of two steps: the first step focuses on searching a candidate set of multiple results, and the second step focuses on ranking the candidate set of multiple results.
複数の結果の候補セットは、検索結果(例えば、クエリ(query)に応じた検索結果からの文書に対するリンクのリスト)及び、推薦(例えば、識別された位置に応じた関心地点の推薦リスト、或いは、ジャンル選択に応じた歌の推薦リストなど)を含むことができる。 The candidate set of results may include search results (e.g., a list of links to documents from search results in response to a query) and recommendations (e.g., a list of recommended points of interest in response to an identified location, or a list of recommended songs in response to a genre selection, etc.).
例えば、情報検索のために第1のステップの検索器にクエリを入力でき、これはクエリを(例えば、関連性に基づいて)プロセスすることにより、複数の文書のセットを検索する。次いで、第2のステップ又はランカー(ranker)(或いは、リランカー(reranker))は、検索された複数の文書のセットを順位付けし、順位付けした文書のセットを出力するが、ここで、その数が第1のセットと同一又はさらに少ないことができる。 For example, for information retrieval, a query can be input to a first-step searcher, which processes the query (e.g., based on relevance) to retrieve a set of documents. A second-step or ranker (or reranker) then ranks the retrieved set of documents and outputs a ranked set of documents, which may be the same or smaller in number than the first set.
ユーザ(例えば、コンテンツ消費者)は、最も関連性の高い結果が最も多く露出されることを期待するが、提供者(例えば、コンテンツ生産者)は、自分のコンテンツに対して公正(または公平)に露出されることを追求する。したがって、第2のステップにおいて、複数の結果の候補セットを順位付けする際に、順位付け方法は、効用性(複数の結果のセットにアクセスするユーザを示す)及び公正性(複数の結果のセットを構成する提供者を示す)間のバランスを維持することが望ましい。 While users (e.g., content consumers) expect the most relevant results to be exposed, providers (e.g., content producers) seek fair (or impartial) exposure to their content. Therefore, in the second step, when ranking the candidate sets of results, it is desirable for the ranking method to maintain a balance between utility (representing users accessing the set of results) and fairness (representing providers composing the set of results).
効用性(utility)及び公正性(fairness)のバランスを維持する一部の順位付け方法は存在するが、一般にその方法の複雑性により現実的なシナリオにおける使用が禁止される。したがって、例えば、ウェブ規模の公正性-効用性の順位付けを可能にするために、既存の方法に比べて複雑性が減少された(例えば、正確な最適のソリューションを計算できる)最適の方法に対するニーズが続いている。 While some ranking methods exist that maintain a balance between utility and fairness, the complexity of the methods generally prohibits their use in realistic scenarios. Thus, there is a continuing need for optimal methods with reduced complexity relative to existing methods (e.g., capable of computing an exact optimal solution), e.g., to enable web-scale fairness-utility ranking.
本発明の例示的な方法は、第1の様態による複数のオブジェクトのセットを順位付けするためのコンピュータ具現化方法を提供し、方法は、複数のオブジェクトのセット及び複数の目標関数のセットを受信するステップ;ペルムトヘドロン(permutohedron)を用いて、n個の決定変数を有する決定空間を定義するステップ、ここで、nは順位付けするオブジェクトの数であり、ペルムトヘドロンの頂点は、対応する順位によりセット内のオブジェクトに提供される露出の順列を示す;複数の目標関数のセットに対するパレート(Pareto)セットを決定するステップ;パレート最適地点をパレートセット内とし、決定空間を用いて、セット内のオブジェクトに関する順位に対する分布を決定するステップ、ここで、前記分布内の各々の順位及び比率が関連付けられる;比率により順位に対する分布からセット内のオブジェクトに関する順位のシーケンスを選択するステップ;及び、選択された順位のシーケンスを出力するステップ;を含む。 An exemplary method of the present invention provides a computer-implemented method for ranking a set of objects according to a first aspect, the method including the steps of receiving a set of objects and a set of objective functions; defining a decision space having n decision variables using a permutohedron, where n is the number of objects to be ranked and the vertices of the permutohedron represent permutations of exposure provided to objects in the set with corresponding ranks; determining a Pareto set for the set of objective functions; determining a Pareto optimal point within the Pareto set and using the decision space to determine a distribution over ranks for the objects in the set, where each rank and a ratio within the distribution are associated; selecting a sequence of ranks for the objects in the set from the distribution over ranks by ratio; and outputting the selected sequence of ranks.
第1の様態による方法の好ましいが非制限的な様態は、次の通りである。 A preferred, but non-limiting, embodiment of the method according to the first embodiment is as follows:
複数の目標関数のセットは、2次関数及び線形関数を含むことができ、
2次関数は公正性関数であり得、線形関数は効用性関数であり得、
公正性関数は、決定変数から構成されるベクトルとターゲットベクトルとの間の差の自乗L2-normのような正規化した差であり得、
方法は、セット内の各々のオブジェクトに対する関連性点数及び順位と各々関連付けられた、セット内のオブジェクトに提供される露出のリスト、順位付け公正性目標関数及び順位付け効用性目標関数を受信するステップをさらに含むことができ、
複数の目標関数のセットに対するパレートセットを決定するステップは、順位付け公正性目標関数及び順位付け効用性目標関数を考慮して、決定空間内でパレートセットを計算するステップを含むことができ、決定空間を用いて、セット内のオブジェクトに関する順位に対する分布を決定するステップは、決定空間内でセット内のオブジェクトにわたってターゲット露出に変換されるパレートセット内の特定地点を受信するステップ、及び、ターゲット露出を用いて、セット内のオブジェクトに対するターゲット露出を平均的に達成する順位に対する分布を決定するステップを含むことができ、順位に対する分布の各々の順位は決定空間内の頂点に対応し、
決定空間を用いて、セット内のオブジェクトに関する順位に対する分布を決定するステップは、セット内のオブジェクトの数に対し、
(i)決定空間の任意の頂点を決定するステップ;
(ii)線が決定空間の面と交差するまで、ターゲット露出により任意の頂点から始まる線を描くステップ;及び、
(iii)新しく交差された面が頂点となるまで、ターゲット露出の代わりに、新しい交差地点を用いて決定空間の交差された面上において、(i)及び(ii)を繰り返すステップ;をさらに含むことができ、
公正性関数は、能力主義(Meritocratic)公正性又は人口統計学的公正性に基づくことができ、
決定空間を用いて、セット内のオブジェクトに関する順位に対する分布を決定するステップは、GLS(Grotschel,Lovasz and Schrijver)手順を使用でき、
セット内のオブジェクトに関する順位のシーケンスを選択するステップは、確率的(stochastic)サンプリング、低不一致シーケンス(Low-Discrepancy Sequences)、加算繰り返しシーケンス(additive-recurrence sequences)、ストライドスケジューリング(Stride Scheduling)またはm-バランス(m-balancing)の一つ以上を含むことができ、
セット内のオブジェクトは、複数のクエリを含むことができ、
セット内のオブジェクトは、クエリに応じて識別されることができ、
セット内のオブジェクトは、複数の推薦を含むことができ、
セット内のオブジェクトは、地図位置に応じて識別されることができ、
出力するステップは、選択された順位のシーケンスにより順位付けする複数のオブジェクトのセットの少なくともサブセットを、デバイスのディスプレイ上にディスプレイするために提供するステップを含むことができ、
少なくとも複数のオブジェクトのセットのサブセットは、検索エンジン結果ページ上に提供されることができる。
The set of multiple objective functions may include quadratic and linear functions;
The quadratic function may be a fairness function, and the linear function may be a utility function;
The fairness function may be a normalized difference, such as the L2-norm squared difference, between a vector composed of decision variables and a target vector,
The method may further include receiving a list of exposures to be provided to the objects in the set, each associated with a relevance score and a rank for each object in the set, a ranking fairness objective function, and a ranking utility objective function;
Determining a Pareto set for a set of multiple objective functions may include calculating a Pareto set in a decision space given a ranking fairness objective function and a ranking utility objective function; and using the decision space to determine a distribution over ranks for the objects in the set may include receiving specific points in the Pareto set that are translated into target exposures across the objects in the set in the decision space; and using the target exposures to determine a distribution over ranks that on average achieves the target exposures for the objects in the set, wherein each rank in the distribution over ranks corresponds to a vertex in the decision space;
The step of using the decision space to determine a distribution for ranks for the objects in the set includes determining a distribution for the number of objects in the set by:
(i) determining an arbitrary vertex of the decision space;
(ii) drawing a line starting from any vertex with the target exposure until the line intersects with a face of the decision space; and
(iii) repeating (i) and (ii) on the intersected face of the decision space using the new intersection point instead of the target exposure until the new intersected face becomes a vertex;
The fairness function can be based on meritocratic fairness or demographic fairness;
The step of determining a distribution for ranks of objects in the set using the decision space can use a GLS (Grotschel, Lovasz and Schrijver) procedure;
selecting a sequence of rankings for the objects in the set may include one or more of stochastic sampling, low-discrepancy sequences, additive-recurrence sequences, stride scheduling, or m-balancing;
An object in a set can contain multiple queries,
The objects in the set can be identified in response to a query;
An object in the set can contain multiple recommendations,
The objects in the set can be identified according to map location;
The outputting step may include providing at least a subset of the set of objects ranked according to the selected ranking sequence for display on a display of the device;
At least a subset of the set of objects may be provided on a search engine results page.
第2、第3、第4及び第5の様態の各々によれば、本発明は、コード命令語を含むコンピュータプログラム製品、ここで、コード命令語は、プログラムがコンピュータ上で実行される際に、コンピュータが本発明の第1の様態による方法を遂行するようにする;コンピュータプログラム製品が保存されたコンピュータ読取り可能な媒体;本発明の第1の様態による方法を遂行するように構成されたプロセッサを含むデータプロセシングデバイス;及び/又は、クエリを受信し、複数のオブジェクトのセットを生成するように構成されたコンピュータ具現化の第1のステップの検索器と、本発明の第1の様態により複数のオブジェクトのセットを順位付けするように構成されたコンピュータ具現化の第2のステップのランカーとを含む情報検索のためのシステムを提供できる。 According to each of the second, third, fourth and fifth aspects, the present invention may provide a computer program product including code instructions that, when executed on a computer, cause the computer to perform a method according to the first aspect of the present invention; a computer-readable medium having the computer program product stored thereon; a data processing device including a processor configured to perform a method according to the first aspect of the present invention; and/or a system for information retrieval including a computer-implemented first step searcher configured to receive a query and generate a set of objects, and a computer-implemented second step ranker configured to rank the set of objects according to the first aspect of the present invention.
添付図面は、実施例の原理を説明するために本明細書に統合される。図面は、本発明を例示して記述した実施例だけに制限したり、それらを製造して使用する方式に制限したりするものと解釈してはならない。追加の特徴及び利点は、添付図面に例示したように、次の実施例の説明及びより具体的な部分で明確になる。
1.アーキテクチャ
オブジェクトを順位付けするための開示のコンピュータ具現化方法及び実施例は、データ交換のためにインターネットのようなネットワーク104(無線及び/又は有線)を介して通信するサーバー100及び一つ以上のクライアントデバイス102を含む、図1に示すようなアーキテクチャ(例えば、ネットワークやシステムアーキテクチャ)内で具現化できる。サーバー100及びクライアントデバイス102は、データプロセッサ112及びメモリ113、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスク、ソリッドステートディスク、または他の不揮発性保存媒体を含むが、これに制限されるものではない。また、メモリ113は、データプロセッサ112と通信する外部メモリ又はストレージにより全体的又は部分的に提供され得る。クライアントデバイス102は、サーバー100と通信する任意のデバイスであり得る。
1. Architecture The disclosed computer-implemented methods and embodiments for ranking objects can be implemented within an architecture (e.g., network or system architecture) such as that shown in FIG. 1 , which includes a server 100 and one or more client devices 102 communicating over a network 104 (wireless and/or wired), such as the Internet, for exchanging data. The server 100 and the client devices 102 include a data processor 112 and memory 113, such as, but not limited to, random access memory (RAM), read-only memory (ROM), a hard disk, a solid-state disk, or other non-volatile storage medium. Additionally, the memory 113 can be provided in whole or in part by external memory or storage in communication with the data processor 112. The client devices 102 can be any device in communication with the server 100.
本明細書で提供される例示的な方法は、データプロセッサ112またはサーバー100及び/又はクライアントデバイス102での他のプロセッサのようなプロセッサにより具現化できる。データプロセッサ112は、単一のプロセッサ、或いは、直列又は並列に動作する多重プロセッサを含むことができる。例示的な方法に使用されるメモリは、例えば、サーバー100、クライアントデバイス102b~102e内のメモリ113及び/又は適切なストレージ、連結されたリモートストレージ、または任意の組合せにより実施できる。メモリは、メモリ類型及び/又は位置の組合せを含んで一つ以上のメモリ又はメモリ要素や構造を含むことができる。メモリのデータは、データ検索及びプロセシングに対する任意の適切な形式で保存できる。 The exemplary methods provided herein may be implemented by a processor, such as data processor 112 or other processors in server 100 and/or client device 102. Data processor 112 may include a single processor or multiple processors operating in serial or parallel. Memory used in the exemplary methods may be implemented, for example, by memory 113 and/or suitable storage within server 100, client devices 102b-102e, connected remote storage, or any combination. Memory may include one or more memories or memory elements or structures, including a combination of memory types and/or locations. Data in memory may be stored in any suitable format for data retrieval and processing.
サーバー100は、専用サーバー、クラウド基盤サーバー、またはこれらの組合せ(例えば、共有型)を含むことのできるが、これらに制限されるものではない。データストリームは、サーバー100及び/又はクライアントデバイス102b~102eから通信され/通信されたり、それにより受信され/受信されたり、それにより生成され得る。 Server 100 may include, but is not limited to, a dedicated server, a cloud-based server, or a combination thereof (e.g., shared). Data streams may be communicated/communicated to, received/received by, or generated by server 100 and/or client devices 102b-102e.
クライアントデバイス102b~102eは、任意のプロセッサ基盤デバイスや端末などであり/であったり、プロセッサ基盤デバイスなどにより実行可能なクライアントアプリケーションで具現化できる。クライアントデバイスは、サーバー100の内部に配置され/配置されたり(ローカル又はリモート、または任意の組合せ)、サーバーの外部に配置されて、サーバーと通信できる。例示的なクライアントデバイス102b~102eは、例えば、自律走行車102b、ロボット102c、コンピュータ102d、スマートフォン102eのようなモバイル通信デバイス(例えば、スマートフォンやタブレットPCなど)だけでなく、VR(virtual reality)、AR(augmented reality)またはMR(mixed reality)デバイス、ウェアラブルコンピュータなどのような、図1に示していない多様なプロセッサ基盤デバイスを含むが、これに制限されるものではない。クライアントデバイス102b~102eは、サーバー100にデータを転送し/転送したり、それからデータを受信するように構成できるが、必ずしもそうである必要はなくて、サーバーによりディスプレイするために提供される特定方法の結果を表示、発表又は印刷するためのディスプレイ、スピーカー、プリンタなどのような一つ以上の出力デバイスを含むことのできるが、これに制限されるものではない。クライアントデバイスは、クライアントデバイスの組合せを含むことができる。 Client devices 102b-102e may be any processor-based device, terminal, or the like, or may be embodied as a client application executable by a processor-based device, etc. The client devices may be located within server 100 (locally, remotely, or any combination), or may be located outside the server and communicate with the server. Exemplary client devices 102b-102e include, but are not limited to, various processor-based devices not shown in FIG. 1, such as autonomous vehicle 102b, robot 102c, computer 102d, and mobile communication devices (e.g., smartphones, tablet PCs, etc.) such as smartphone 102e, as well as virtual reality (VR), augmented reality (AR) or mixed reality (MR) devices, wearable computers, etc. Client devices 102b-102e may, but are not necessarily, configured to transmit/receive data to/from server 100 and may include one or more output devices such as, but not limited to, a display, speaker, printer, etc. for displaying, presenting, or printing the results of a particular method provided for display by the server. A client device may include a combination of client devices.
2.複数のオブジェクトのセットを順位付けするための方法
本明細書に提供される例示的な方法は、最適化/決定変数のセットを用いて、最適の公正性-効用性順位付けポリシー(policy)を效率的に設計するという問題を解決する。例示的な方法の第1の特徴は、理想的な順位を構成する重要な目標、特に、典型的にユーザまたは消費者の観点を示す効用性目標、及び、典型的に提供者または供給者の観点を示す公正性目標の間の核心リンクとして役割を果たす「リストの露出」変数を最適化/決定変数として選択する。
2. Method for Ranking a Set of Multiple Objects The exemplary method provided herein solves the problem of efficiently designing an optimal fairness-utility ranking policy using a set of optimization/decision variables. A first feature of the exemplary method is to select as an optimization/decision variable the key objectives that constitute the ideal ranking, in particular the "listing exposure" variable, which serves as the core link between the utility objective, which typically represents the user or consumer's perspective, and the fairness objective, which typically represents the provider or supplier's perspective.
有利には、例示的な方法の第2の特徴は、一般化したペルムトヘドロンである(例えば、それにより表現され得る)決定空間においてn個の決定変数だけで最適化問題を表現できるが(ここで、nは順位付けするオブジェクトの数である)、効用性及び公正性の目標を個別的かつ正確に完全統制するためのポリシーの表現性を維持する。開示の例示的なペルムトヘドロンの頂点は、対応する順位と関連付けられた露出を示すことができ、このようなペルムトヘドロンは、本明細書において「エキスポヘドロン」として称する。ペルムトヘドロン(例えば、エキスポヘドロン)によって提供される決定空間による順位に対する(または同義語として順列に対する)任意の分布(または凸結合)を示し、この空間において効用性-公正性のトレードオフ(trade-off)を解決するために幾何学的に推論できる。特に、多重目標最適化(Multi-objective Optimization、MOO)問題の全体パレートセットは、明示的なスカラー化技術を経ることなしに容易に得られるので、必要なプロセシング時間及びリソースを低減できる。 Advantageously, a second feature of the exemplary method is a generalized permutohedron, which allows optimization problems to be expressed in a decision space with only n decision variables (where n is the number of objects to be ranked), while maintaining policy expressibility for precise and complete control of utility and fairness objectives. The vertices of the disclosed exemplary permutohedron can indicate exposures associated with corresponding rankings; such permutohedrons are referred to herein as "expohedrons." Any distribution (or convex combination) of rankings (or, synonymously, permutations) through the decision space provided by the permutohedron (e.g., expohedron) can be represented, and geometric reasoning can be used to resolve utility-fairness tradeoffs in this space. In particular, the entire Pareto set of a multi-objective optimization (MOO) problem can be easily obtained without explicit scalarization techniques, thereby reducing required processing time and resources.
例示的な方法は、オブジェクトに対する均一な推定品質を有する関連性点数の偏らない推定、及び、公知の構造や媒介変数を有する露出モデルを用いて最適のポリシーを決定できる。 The exemplary method can determine optimal policies using unbiased estimates of relevance scores with uniform estimation quality for objects and exposure models with known structure and parameters.
例示的な方法は、O(n2 log n)の複雑性として動作する。このような方法は幾何学的推論を適用できる。方法の大部分のステップは閉鎖型方程式により表現できる。方法の他のステップは動作を整列することにより提供できる。また、全体パレートセットは、例えば、全体境界をスキャンするスカラー化技法によらず、分析的かつ幾何学的に生成できる。 Exemplary methods operate with O(n 2 log n) complexity. Such methods are amenable to geometric reasoning. Most steps of the methods can be expressed by closed-form equations. Other steps of the methods can be provided by ordering operations. Also, the global Pareto set can be generated analytically and geometrically, without relying on scalarization techniques that scan the global boundary, for example.
図2は、複数のオブジェクトのセットを順位付けするための開示の方法の一実施例を説明するフローチャートである。図2の実施例による方法は、サーバー100で遂行され、例示的な方法がサーバー100と関連付けられて記述される。しかしながら、方法は、同様に、クライアントデバイス102により、或いは、サーバー100及びクライアントデバイス102の組合せにより、遂行できることを理解すべきである。 FIG. 2 is a flowchart illustrating one embodiment of the disclosed method for ranking a set of objects. The method according to the embodiment of FIG. 2 is performed by a server 100, and the exemplary method is described in connection with the server 100. However, it should be understood that the method may equally be performed by a client device 102, or by a combination of the server 100 and the client device 102.
ステップ202において、サーバー100は、外部及び/又は内部のソースを含む任意の適切なソース(複数可)から、複数のオブジェクトのセット、複数のオブジェクトのセット内の各々のオブジェクトに対する(例えば、偏らない(unbasied))関連性点数、各々が順位と関連付けられる露出のリスト、順位付け公正性目標関数及び順位付け効用性目標関数を含む目標関数を受信する。ステップ204において、サーバー100は、n個の決定変数を有するペルムトヘドロンを用いて決定空間を定義し、ここで、nは順位付けするオブジェクトの数であり、ペルムトヘドロンの頂点は、対応する順位によりセット内のオブジェクトに提供される露出の順列を示す。 In step 202, server 100 receives, from any suitable source(s), including external and/or internal sources, a set of objects, a (e.g., unbiased) relevance score for each object in the set of objects, a list of exposures, each associated with a rank, and objective functions, including a ranking fairness objective function and a ranking utility objective function. In step 204, server 100 defines a decision space using a permutohedron with n decision variables, where n is the number of objects to rank, and the vertices of the permutohedron indicate permutations of exposures to be provided to the objects in the set with corresponding ranks.
ステップ206において、順位付け公正性目標関数及び順位付け効用性目標関数を用いて、サーバー100は、最適公正性を示す第1の地点と最適効用性を示す第2の地点との間の露出のリストにより定義された決定空間内において、パレートセット(すなわち、すべての目標関数に対してさらに良い他のソリューションがない、例えばさらに大きい効用性及びさらに良い公正性を同時に提供する露出がない非支配ソリューションのセット)を計算する。例示的な方法から最適の公正性類型は、例えば、人口統計学的公正性及び能力主義公正性を含むことができる。後述するように、人口統計学的公正性に対する理想的な露出は同等な露出を許容するのに対し、能力主義公正性の場合、露出は関連性に基づいて定義できる(例えば、関連性ベクトルを用いて定義できる)。また他の実施例において、最適の公正性類型は(例えば、支払われる賞金を割り当てるために)公正性とは異なる既定の比率に基づいて付加的又は代替的にカスタマイゼーションできる。 In step 206, using the ranked fairness objective function and the ranked utility objective function, server 100 calculates a Pareto set (i.e., a set of non-dominated solutions for which there are no better solutions for all objective functions, e.g., no exposures that simultaneously provide greater utility and greater fairness) within the decision space defined by the list of exposures between the first point exhibiting optimal fairness and the second point exhibiting optimal utility. From an exemplary method, optimal fairness types can include, for example, demographic fairness and meritocratic fairness. As described below, ideal exposures for demographic fairness allow for equal exposures, whereas for meritocratic fairness, exposures can be defined based on relevance (e.g., using a relevance vector). In other embodiments, the optimal fairness type can additionally or alternatively be customized based on a predetermined ratio different from fairness (e.g., to allocate prize money).
例示的な公正性類型は、グループ公正性と対照的に個別公正性を考慮する。個別公正性は個別オブジェクトの水準から公平性を保証しようとするのに対し、グループ公正性はオブジェクトがグループと関連付けられ、公平性がグループ水準から保証されると仮定して、典型的に一部のグループが不利益を受けることを防止する。 An exemplary fairness typology considers individual fairness as opposed to group fairness. While individual fairness seeks to ensure fairness from the level of individual objects, group fairness assumes that objects are associated with groups and fairness is ensured from the group level, typically preventing some groups from being disadvantaged.
ステップ207において、サーバー100は、パレートセットを意思決定者に(内部的又は外部的に)出力する。ステップ208において、サーバー100は、パレートセットの地点を(内部的又は外部的に)受信し、これは決定空間内のターゲット露出に変換される。このターゲット露出はセット内のオブジェクトにわたった露出に対応する。一実施例においてターゲット露出は定義された効用性/公正性トレードオフを設定する、サーバー100の内部又は外部の意思決定者により定義され、これはケース別または一般的に固定された制約により設定される(例えば、公正性が既定の閾値の以下に低下しないという制約を設定する)。一部の実施例において意思決定者は管理者であり得る。他の実施例において意思決定者は自動化したシステムであり得る。管理者及び自動化システムの組合せも使用できる。 In step 207, server 100 outputs the Pareto set to a decision maker (internally or externally). In step 208, server 100 receives (internally or externally) the points of the Pareto set, which are converted to target exposures in the decision space. This target exposure corresponds to the exposure across the objects in the set. In one embodiment, the target exposure is defined by a decision maker, internal or external to server 100, who sets a defined utility/fairness trade-off, which is set with case-by-case or general fixed constraints (e.g., setting a constraint that fairness does not fall below a predefined threshold). In some embodiments, the decision maker can be a human administrator. In other embodiments, the decision maker can be an automated system. A combination of a human administrator and an automated system can also be used.
ステップ210において、パレートセットから最適のトレードオフとして意思決定者により受信されたターゲット露出を用いて、サーバー100は、セット内のオブジェクトに対するターゲット露出を平均的に達成する順位(例えば、加重された順位のセット)に対する分布を決定し、ここで、順位に対する分布の各々の順位は決定空間内の頂点に対応する。一実施例において、順位に対する分布を決定することは次の通り遂行できる:(i)決定空間の任意の頂点が決定され;(ii)線が決定空間の面と交差するまで、意思決定者から受けたターゲット露出により任意の頂点から始まる線を描き(例えば、計算し);(iii)新しく交差された面が頂点となるまで、意思決定者のターゲット露出の代わりに交差地点を用いて、決定空間の交差された面において、ステップ(i)及びステップ(ii)を繰り返す。ステップ(i)乃至ステップ(iii)は、ステップ(iii)において交差点が頂点であることにより、セット内のオブジェクトの数だけ遂行できる。決定空間の各々の頂点は関連付けられた比率を有する。 In step 210, using the target exposure received by the decision maker as the optimal tradeoff from the Pareto set, the server 100 determines a distribution for ranks (e.g., a set of weighted ranks) that will, on average, achieve the target exposure for the objects in the set, where each rank in the distribution for ranks corresponds to a vertex in the decision space. In one embodiment, determining the distribution for ranks can be performed as follows: (i) an arbitrary vertex of the decision space is determined; (ii) a line is drawn (e.g., calculated) starting from the arbitrary vertex with the target exposure received from the decision maker until the line intersects with a face of the decision space; (iii) steps (i) and (ii) are repeated on the intersected face of the decision space, substituting the decision maker's target exposure for the intersection point, until the newly intersected face becomes a vertex. Steps (i) through (iii) can be performed for as many objects in the set, with the intersection point in step (iii) being a vertex. Each vertex of the decision space has an associated ratio.
ステップ212において、サーバー100は、それらの比率により、順位に対する分布から複数のオブジェクトのセットに関する順位のシーケンスを選択することで、順位に対する分布を配布(distribution:配信)する。 In step 212, the server 100 distributes the distribution of ranks by selecting a sequence of ranks for the set of objects from the distribution of ranks according to their ratios.
他の実施例において、前述したように、図2の実施例による方法は、クライアントデバイス102から部分的又は完全に遂行できる。また他の実施例において、方法は、分散方式により異なるサーバーやクライアントデバイス又は複数のサーバー上で遂行できる。 In other embodiments, as previously described, the method according to the embodiment of FIG. 2 may be performed partially or completely from the client device 102. In still other embodiments, the method may be performed on different servers or client devices or multiple servers in a distributed manner.
例示的な一実施例において、個人化しないクエリ(例えば、匿名のユーザにより作成されたクエリ)は、既定の地図位置から一般的な関心地点に対して繰り返し受信される。この例示的な実施例において、複数のオブジェクトのセットは、レストラン、博物館、商店及びガソリンスタンドのような一般的な関心地点のリストであり得る。他の例示的な実施例において、個人化しないキーワードクエリは、検索エンジンにより繰り返し受信される。この例示的な実施例において、複数のオブジェクトのセットは、ウェブページのような文書に対するリンクのリストであり得る。時間の経過によりこのようなクエリが繰り返されることで、ターゲット露出を達成するための各順位のシーケンスにより複数のオブジェクトのセットの順序が変化することになる。 In one exemplary embodiment, a non-personalized query (e.g., a query generated by an anonymous user) is repeatedly received for general points of interest from a predefined map location. In this exemplary embodiment, the set of objects may be a list of general points of interest, such as restaurants, museums, stores, and gas stations. In another exemplary embodiment, a non-personalized keyword query is repeatedly received by a search engine. In this exemplary embodiment, the set of objects may be a list of links to documents, such as web pages. Repeated such queries over time result in a varying order of the set of objects, with each ranking sequence achieving target exposure.
ステップ212において、選択された順位のシーケンスに基づいて、複数のオブジェクトのセットの一つ、全部またはサブセットが、例えば、提示(例えば、表示、発表、印刷、インポート(importing)、エクスポート(exporting)、保存など)のために用意して外部又は内部のデバイスに提供される、例えば、転送される検索エンジン結果ページ(SERP)で提示され得る。例えば、複数のオブジェクト(このようなオブジェクトは選択されたシーケンス内で決定された順位に基づいて各々位置する)の一つ、サブセット又は全部を含むSERPが生成されてディスプレイ上にディスプレイするために、サーバー100又はクライアントデバイス102の端末に転送され得る。複数のオブジェクトの一つ又はサブセットが、すべてのオブジェクトの代わりにSERPに提示される場合、このような提示されたオブジェクトは、例えば複数のオブジェクトのセット内の他のオブジェクトよりも、選択されたシーケンスで各々さらに高い順位を持つオブジェクトであり得る。 In step 212, based on the selected ranking sequence, one, all, or a subset of the set of objects may be presented in a search engine results page (SERP), e.g., forwarded to an external or internal device for presentation (e.g., display, publication, printing, importing, exporting, saving, etc.). For example, a SERP including one, a subset, or all of the objects (each positioned based on the determined ranking within the selected sequence) may be generated and forwarded to the server 100 or the client device 102 for display on a display. If one or a subset of the objects is presented in the SERP instead of all objects, such presented objects may be, for example, objects that each have a higher ranking in the selected sequence than other objects in the set of objects.
3.露出(Exposure:表示)
情報検索(IR)分野において、「注意(attention)」または「検査(examination)」としても知らされた露出は、ユーザが検索エンジン結果ページ(SERP)の特定位置で(例えば、これに制限されないが、文書などのような)オブジェクトを検査する確率として定義できる。(例えば、図2のステップ202の(iii)において受信された露出のリストの一部を形成する)露出値は、アイトラッキング研究のような方法又は仲裁的収集(例えば、同一のクエリに対して同一の文書を二つの異なる順位に配置)によりキャプチャできるが、これに制限されるものではない。また、露出値は、情報検索技術分野から分かるような(例えば、Chuklinなどの“Click models for web search”(Synthesis Lectures on Information Concepts、Retrieval、and Services、7(3):1-115、July 2015に公開)に開示されたような)「クリックモデル」(すなわち、ユーザブラウジングモデル)を使用する方法により決定され得る。大部分の場合、このようなモデルは、2つのステップの自然なシーケンスによりクリック動作を説明しようとするが、まず、リストやその代表スニペット(snippet)を検査(またはそれに自分の注意を払う)した後、興味深い場合にそれをクリックする。
3. Exposure (display)
In the field of information retrieval (IR), exposure, also known as "attention" or "examination," can be defined as the probability that a user examines an object (such as, but not limited to, a document) at a particular location on a search engine results page (SERP). Exposure values (e.g., forming part of the list of exposures received in step 202(iii) of FIG. 2) can be captured by methods such as, but not limited to, eye-tracking studies or arbitration collection (e.g., placing the same document in two different rankings for the same query). Exposure values can also be determined by methods using "click models" (i.e., user browsing models) known in the field of information retrieval (e.g., as disclosed by Chuklin et al. in "Click models for web search" (Synthesis Lectures on Information Concepts, Retrieval, and Services, 7(3):1-115, July 2015). For the most part, such models attempt to explain clicking behavior through a natural sequence of two steps: first, inspect (or pay your attention to) a list or its representative snippets, and then click on it if it is interesting.
消費者(すなわち、ユーザ)の観点において、消費者は、SERPの見えにくい位置で関連オブジェクトを探すのに時間を消費しないために、より多くの関連オブジェクトがより高い露出を受けることを所望する。消費者のこのような欲求は、順位の効用性を露出ベクトル(すなわち、各々のオブジェクトに関する順位により提供される露出値から構成されるベクトル)、及び、利得ベクトル(すなわち、各々のオブジェクトの利得から構成されるベクトル、ここで、オブジェクトの利得はオブジェクトの関連性点数の任意の単調増加関数により定義される)間のドット積(dot product)で定義することで、例示的な方法により表現できる。これに制限されず、DCG(Discounted Cumulative Gain)及びERR(Expected Reciprocal Rank)のような公知の情報検索効用性測定は、この公式を露出モデル媒介変数の特定選択と共に反映する。例えば、DCGは、順位(k)からオブジェクトの露出が1/log2(1+k)で与えられ、利得関数g(d)は、g(d)=2rel(d)で与えられると仮定し、ここでrel(d)はdの関連性点数である。ERR測定は、カスケード(cascade)モデルに基づいて、露出がリスト内の以前オブジェクトの関連性によって変化すると仮定し、特に、ユーザがオブジェクトに満足する場合、リスト内の次のオブジェクトの露出は0になる。 From the consumer's (i.e., user's) perspective, the consumer desires that more relevant objects receive higher exposure in order to avoid wasting time searching for relevant objects in obscure locations in the SERP. This consumer desire can be expressed in an exemplary manner by defining the ranking utility as the dot product between an exposure vector (i.e., a vector composed of the exposure values provided by the ranking for each object) and a gain vector (i.e., a vector composed of the gain of each object, where the gain of an object is defined by an arbitrary monotonically increasing function of the object's relevance score). Known information retrieval utility measures, such as, but not limited to, Discounted Cumulative Gain (DCG) and Expected Reciprocal Rank (ERR), reflect this formula along with a specific selection of exposure model parameters. For example, DCG assumes that the exposure of an object from rank (k) is given by 1/ log2 (1+k), and the gain function g(d) is given by g(d) = 2rel(d) , where rel(d) is the relevance score of d. ERR measurement is based on a cascade model, assuming that exposure varies depending on the relevance of the previous object in the list; in particular, if a user is satisfied with an object, the exposure of the next object in the list will be 0.
供給者の観点において、供給者は、自分のオブジェクトがSERPでさらに高い露出を有することを所望する。しかしながら、提供者が多いため、ユーザに提供されるオブジェクトに対する非差別的(non-disparate)処理が望ましい。 From a provider's perspective, they would like their objects to have higher exposure in the SERP. However, because there are so many providers, non-disparate treatment of the objects offered to users is desirable.
各々「効用性」目標及び「公正性」基準に対応する消費者及び提供者の観点は、両方とも「露出」の観点から本明細書に開示された例示的な方法により表現できる。露出は、理想的な順位の目標、すなわち効用性目標(例えば、ユーザ又は消費者の観点を示す)と公正性基準(例えば、オブジェクト提供者又は供給者の観点を示す)との間のリンクとして機能する。 The consumer and provider perspectives, corresponding to the "utility" goal and "fairness" criterion, respectively, can both be expressed in terms of "exposure" in the exemplary methods disclosed herein. Exposure serves as a link between the ideal ranking goal, i.e., the utility goal (e.g., representing the user or consumer's perspective) and the fairness criterion (e.g., representing the object provider or supplier's perspective).
4.ペルムトヘドロン(permutohedron)
例示的なペルムトヘドロンは、ポリトープ(polytope)であり、ここで、各々の頂点はn個のオブジェクト(例えば、文書)に関する特定順位又は順列に対応し、ポリトープはこのような頂点の凸包(convex hull:凸多面体)である。このポリトープは、n次元空間に含まれているが、実際には(n-1)次元である。例えば、図3は、n=4オブジェクトの場合において3次元オブジェクト300を示し、これは、六角形及び正四角形のファセット(facet)が混合された球のように見える。302における頂点(4312)を考慮する。これは、d1を順位4、d2を順位3、d3を順位1、d4を順位2に置く順位を示す。302における頂点(4312)と、304における頂点(3412)とを連結するエッジ306をさらに考慮する。これは、2つの順位に対する任意の分布(又は凸結合)を示す。
4. Permutohedron
An exemplary permutohedron is a polytope, where each vertex corresponds to a particular ranking or permutation of n objects (e.g., documents), and the polytope is a convex hull of such vertices. This polytope is contained in n-dimensional space, but is actually (n-1)-dimensional. For example, FIG. 3 shows a three-dimensional object 300 for n=4 objects, which appears like a sphere with a mixture of hexagonal and square facets. Consider vertex 4312 in 302. This indicates a ranking that places d1 at rank 4, d2 at rank 3 , d3 at rank 1, and d4 at rank 2. Further consider edge 306 connecting vertex 4312 in 302 with vertex 3412 in 304. This indicates an arbitrary distribution (or convex combination) of the two rankings.
また、3次元オブジェクト300のすべてのファセットは、n個のオブジェクトを2つのグループに部分順序化することを示す。例えば、頂点(4312)、(3412)、(2413)、(2314)、(3214)及び(4213)を含むファセット308は、d3が常に第一(すなわち、d3@順位1)であり、3つの他の文書が任意の順序に後続する部分順序を示し;頂点(3214)、(2314)、(1324)、(1234)、(2134)及び(3124)を含むファセット310は、d4が常に最後(すなわち、d4@順位4)であり、3つの他の文書が順序と無関係に前にくる部分順序を示し;頂点(2413)、(1423)、(1324)及び(2314)を含む正四角形ファセット312は、d1及びd3が最初2つの位置に対して任意の順序であり、d2及びd4が最後2つの位置に対して任意の順序に後続する(すなわち、(d2及びd4)の前に(d1及びd3)である)部分順序を示す。 Also, all facets of the three-dimensional object 300 represent a partial ordering of the n objects into two groups. For example, facet 308 containing vertices (4312), (3412), (2413), (2314), (3214), and (4213) indicates a partial order in which d3 is always first (i.e., d3 @ order 1) and can be followed by three other documents in any order; facet 310 containing vertices (3214), (2314), (1324), (1234), (2134), and (3124) indicates a partial order in which d4 is always last (i.e., d4 @ order 4) and can be preceded by three other documents in any order; square facet 312 containing vertices (2413), (1423), (1324), and (2314) indicates a partial order in which d1 and d3 can be in any order for the first two positions and d2 and d4 can be followed in any order for the last two positions (i.e., (d2 and d4 ) ) before (d 1 and d 3 ).
一般に、次元が減少する階層(例えば、n=4の場合、ファセット→エッジ→頂点)に沿ってファセットの概念を一般化する次元(n-k)の各々の面は、n個のオブジェクトのkグループへの所定の部分的順序化と関連して、できるだけすべての分布(または凸結合)を示す。また、図3に示すように、302における頂点(4312)と、304における頂点(3412)とを連結するエッジ306は、次の部分順序に対応する:d3が第一、d4が第二、d1及びd2が任意の順序に後続する。 In general, each facet of dimension (n−k), which generalizes the concept of facets along a hierarchy of decreasing dimensionality (e.g., facet → edge → vertex for n=4), represents all possible distributions (or convex combinations) associated with a given partial ordering of n objects into k groups. Also, as shown in FIG. 3, the edge 306 connecting the vertex (4312) in 302 with the vertex (3412) in 304 corresponds to the following partial ordering: d 3 first, d 4 second, d 1 and d 2 follow in any order.
5.分解
カラテオドリの定理(Caratheodory’s theorem)によれば、d次元空間に含まれたm個の地点(vi)から構成されるセット
5. Decomposition According to Caratheodory's theorem, a set consisting of m points (v i ) contained in d-dimensional space
ペルムトヘドロンを特別な場合と見なす際に、ペルムトヘドロン(これは、d=(n-1)、nはオブジェクトの数を示す)のd次元オブジェクトである)の任意の地点は、最大n個の順位に対する分布に分解できる。一実施例において、GLS手順(Grotschel、Lovasz and Schrijver)として知らされた手順を用いて、一つのこのような分解を決定できる(一般に、ただ一つよりも多い分解が可能である)。GLS手順の例(文献[Grotschel et al.、“Geometric Algorithms and Combinatorial Optimization”(Springer Science & Business Media、December 2012に公開)]参照)は、本明細書に開示された方法に適用されるn=3ポリトープを示す図4に例示している。 Considering the permutohedron as a special case, any point on the permutohedron (which is a d-dimensional object with d = (n-1), where n is the number of objects) can be decomposed into distributions for up to n ranks. In one embodiment, a procedure known as the GLS procedure (Grotschel, Lovasz, and Schrijver) can be used to determine one such decomposition (although generally, more than one decomposition is possible). An example of the GLS procedure (see Grotschel et al., "Geometric Algorithms and Combinatorial Optimization," Springer Science & Business Media, published December 2012) is illustrated in Figure 4, which shows an n = 3 polytope applied to the method disclosed herein.
図4の(a)は、402において分解される地点(x)を示す。図4の(b)に示すように、手順はポリトープ400(n=3)の404において任意の頂点(v1)を選択し、次元(n-2)の面と交差するまでv1からx(分解される地点402)に向かって線分を延長することにより始まる。これは、新しい地点(x’)を提供し、ここで、xはv1及びx’の凸結合(すなわち、x=λ1v1+(1-λ1)x’)で表現される。 Figure 4(a) shows a point (x) to be decomposed at 402. As shown in Figure 4(b), the procedure begins by selecting an arbitrary vertex (v 1 ) at 404 of polytope 400 (n=3) and extending a line segment from v 1 towards x (the point to be decomposed 402) until it intersects with a face of dimension (n-2). This provides a new point (x'), where x is expressed as a convex combination of v 1 and x' (i.e., x = λ 1 v 1 + (1-λ 1 ) x').
図4の(c)に示すように、(n-2)次元面上の地点(x’)はx’の面に属する任意の頂点(v2と称する)を選択し、次元(n-3)の面と交差するまで線分(v2-x’)を延長することで、同じ手順により自体的に分解できる。図4の(c)に示す例の場合、n=3であるので、この面が頂点(v3)であり、手順がこの地点で中止され、初期地点(x)は3つの頂点の凸結合で表現される(すなわち、x=λ1v1+(1-λ1)λ2v2+(1-λ1)(1-λ2)v3)。一般に、nの値が高いほど、このような再帰ステップが繰り返され、毎度次元(0)の面(すなわち、頂点)に到達するまで減少する次元の面を考慮する。 As shown in Figure 4(c), a point (x') on an (n-2)-dimensional surface can be decomposed using the same procedure by selecting an arbitrary vertex (called v2 ) belonging to the x' surface and extending the line segment ( v2 -x') until it intersects with a surface of dimension (n-3). In the example shown in Figure 4(c), since n=3, this surface is vertex ( v3 ), and the procedure stops at this point, with the initial point (x) being represented as a convex combination of three vertices (i.e., x= λ1v1 +( 1 - λ1 ) λ2v2 +(1- λ1 )(1- λ2 ) v3 ). In general, the higher the value of n, the more times this recursive step is repeated, each time considering surfaces of decreasing dimension until a surface (i.e., a vertex) of dimension (0) is reached.
6.表記法
本明細書で説明された例示的な順位付け方法をより詳細に記述する。次の表記法が例示的な方法の特徴を公式的に記述するために使用される:
a)qは単一(例えば、匿名)のユーザ(例えば、消費者)により無限繰り返されるクエリであり;クエリは、一般の「情報検索」の意味のテキストクエリである必要はなくて、広い意味で理解されるべきであり;例えば、クエリは、また「推薦」設定において、任意のトリガコンテキスト(trigger context)を含むことができる。
6. Notation Describing the exemplary ranking method described herein in more detail, the following notation is used to formally describe features of the exemplary method:
a) q is a query repeated infinitely by a single (e.g., anonymous) user (e.g., consumer); the query need not be a text query in the general "information retrieval" sense, but should be understood in a broad sense; for example, the query can also include any trigger context in a "recommendation" setting.
b)クエリ(q)に対し、n個のオブジェクト(例えば、文書、関心地点(POI)、推薦など)の固定候補セット、D = (d1,…,dn)があり、ここで、クエリ(q)に対する関連性点数はρ = (ρ1,…, ρn)で表され;
c)順位付けポリシー(π(q))は、m個の順位に対する分布(例えば、凸結合)であり、m<=n σi (i = 1,…,m)であり:
b) For a query (q), there is a fixed candidate set of n objects (e.g., documents, points of interest (POIs), recommendations, etc.), D = (d 1 ,...,d n ), where the relevance score for query (q) is denoted by ρ = (ρ 1 ,...,ρ n );
c) A ranking policy (π(q)) is a distribution (e.g., a convex combination) over m ranks, m<=n σ i (i = 1,...,m):
7.順位付けポリシーの最適化
例示的な方法は、本明細書においてπ(q)で表される順位付けポリシーを使用でき、これは、全部(例えば、消費者向け効用性及び供給者向け公正性)を単一のセットの決定/最適化変数の側面で表現することで、有用かつ公正であり、これらの変数は本明細書において「制御レバ」として称する。制御レバは、
7. Optimizing Ranking Policies An exemplary method can use a ranking policy, denoted herein as π(q), that is useful and fair by expressing everything (e.g., utility for consumers and fairness for providers) in terms of a single set of decision/optimization variables, referred to herein as "control levers." The control levers are:
このような最適化問題は多重目標最適化問題として表現できる。パレートセット(すなわち、実行可能な非支配ソリューションのセット)は幾何学的推論により決定できる。次いで、この決定されたパレートセットの特定トレードオフは、例えば、意思決定者により選択又は決定されることができ、ここで、トレードオフは決定空間内の一つのターゲット地点(すなわち、ターゲット露出)である。この地点は、前述したカラテオドリの定理から知られる通り、最大n個の順位の凸結合として分解できる。 Such optimization problems can be expressed as multi-objective optimization problems. A Pareto set (i.e., the set of feasible non-dominated solutions) can be determined by geometric reasoning. A particular tradeoff in this determined Pareto set can then be selected or determined, for example, by a decision maker, where the tradeoff is a single target point (i.e., target exposure) in the decision space. This point can be decomposed as a convex combination of up to n ranks, as known from Carathéodory's theorem mentioned above.
一旦、このような組合せが決定される場合、これ(すなわち、順位に対する分布からの複数のオブジェクトのセットの順序化)は、公正なスケジューリング戦略により配布でき、これは、一実施例において黄金比低不一致シーケンスのような低不一致シーケンスを使用する(2020年6月インターネット上においてdemofox.orgに公開された“Weighted Round Robin(Weighted Random Integers)Using the Golden Ratio Low Discrepancy Sequence”参照)。当業者は、これに制限されず、m-バランスワード(m-balanced word)または同等にストライドスケジューリングと類似なアルゴリズム(これに制限されない)のような代替的な実施例において、他のスケジューリング戦略が使用され得ることを理解すべきである。 Once such combinations are determined, they (i.e., the ordering of the set of objects from the distribution relative to the rank) can be distributed using a fair scheduling strategy, which in one embodiment uses a low-discrepancy sequence such as a golden ratio low-discrepancy sequence (see "Weighted Round Robin (Weighted Random Integers) Using the Golden Ratio Low Discrepancy Sequence," published on the Internet at demofox.org in June 2020). Those skilled in the art should understand that other scheduling strategies can be used in alternative embodiments, such as, but not limited to, m-balanced word or similar algorithms similar to stride scheduling.
例示的な方法の利点は、幾何学的推論を用いて、様々なステップ又は大部分のステップを遂行できるという点であり、これは、実際に簡単な代数的閉鎖型ソリューションにつながる。例示的な方法の追加の利点は、これらがO(n2 log(n))の時間複雑性を与えるという点である。例示的な方法のまた他の利点は、これらが例えばn!次元空間やn2次元空間の代りに、n次元空間で動作するという点である。結果として、例示的な方法により使用された決定/最適化変数の数はnより大きくなく、これは最大n個の順位に対する分布として任意の最適ソリューションを具現化できるようにする。 An advantage of the exemplary methods is that they can perform various steps, or most of the steps, using geometric reasoning, which in practice leads to simple algebraically closed-form solutions. An additional advantage of the exemplary methods is that they offer a time complexity of O(n 2 log(n)). Another advantage of the exemplary methods is that they operate in n-dimensional space instead of, for example, n ! -dimensional space or n2 - dimensional space. As a result, the number of decision/optimization variables used by the exemplary methods is no greater than n, which allows any optimal solution to be realized as a distribution over up to n ranks.
「位置基盤モデル(Position-Based Model、PBM)」として称する一般の種類の露出モデルに関する例示的な方法が提供され得る。このような系列のモデルは、オブジェクトの露出がその順位のみに依存すると仮定する。次いで、各々の順位(k)は媒介変数(γk)と関連付けられ、これはこの順位がユーザにより検査される確率を示す。他の種類のモデルが例示的な方法を用いてプロセスできる。 An exemplary method can be provided for a general type of exposure model referred to as a "Position-Based Model" (PBM). This type of model assumes that an object's exposure depends only on its rank. Each rank (k) is then associated with a parameter (γk), which indicates the probability that this rank will be inspected by a user. Other types of models can be processed using the exemplary method.
8.PBMモデルと関連付けられたエキスポヘドロン
実施例において、例示的な方法は、n個の媒介変数の固定セット
8. Expohedrons Associated with PBM Models In an embodiment, the exemplary method uses a fixed set of n parameters.
図5に示すエキスポヘドロン内の任意の地点は特定露出ベクトルを示し、このベクトルは最大3個の異なる順列または順位の分布により実現できる。六角形500の重心502は、各々のオブジェクト(例えば、文書)に対する同じ露出(すなわち、人口統計学的公正性)に対応し、但し、3個の異なる順位にわたって均一な分布として実現できる。 Any point within the expohedron shown in Figure 5 represents a specific exposure vector, which can be realized with up to three different permutation or rank distributions. The centroid 502 of the hexagon 500 corresponds to the same exposure (i.e., demographic fairness) to each object (e.g., document), but can be realized as a uniform distribution across the three different ranks.
地点がエキスポヘドロンに属するか否かを確認する簡単な数学的方法があり、この方法は、本明細書に説明されたような例示的な方法として活用される。これは、数学において主要化(majorization)条件として称し、∈がγにより主要化するとき(これは、 There is a simple mathematical method to determine whether a point belongs to an expohedron, and this method will be utilized as an exemplary method described herein. In mathematics, this is known as the majorization condition, and when ∈ is majored by γ (which means that
主要化の数学的定義は、次の通りである: The mathematical definition of primalization is as follows:
本明細書で使用される「領域」は、同じ順序の座標(すなわち、露出)を有する地点のセットとして定義される。より具体的に、このような地点は、昇順に整列された成分のインデックスが同一であるようにベクトルに対応できる。例えば、pythonの場合、これは、argsort関数の出力が同じアレイに対応する。エキスポヘドロンには、頂点の数だけの領域があり、各々の領域が一つの頂点だけを含む。例示的な領域は、無限(unbounded)ピラミッドとして、その頂点は重心であり、その半軸(semi-axis)は、エキスポヘドロンの重心と、領域が含む固有な頂点に隣接した各々のファセットの重心とを連結する線に対応する。 As used herein, a "region" is defined as a set of points with coordinates (i.e., exposures) in the same order. More specifically, such points can correspond to vectors such that the indices of their components, sorted in ascending order, are identical. For example, in Python, this corresponds to arrays in which the output of the argsort function is the same. An expohedron has as many regions as vertices, with each region containing only one vertex. An exemplary region can be viewed as an unbounded pyramid, with its vertices being its centroid and its semi-axes corresponding to the lines connecting the expohedron's centroid to the centroids of each facet adjacent to a unique vertex that the region contains.
この決定空間で順位付けポリシー(π(q))の効用性を定義し;
この決定空間で順位付けポリシーに対して異なる公正性測定を定義し;
多重目標最適化(Multi-objective Optimization、MOO)問題に対応するパレートセット(非支配ポリシーのセット)を決定して効用性及び公正性のバランスを維持し;
このパレートセットに対する意思決定者によるターゲット露出の特定選択を最大n個の順位に対する分布として分解し;
効率的かつ効果的なスケジューリング戦略により最大n個の順位に対する分布を配布する。
Define the utility of a ranking policy (π(q)) in this decision space;
Define different fairness measures for ranking policies in this decision space;
Determine the Pareto set (a set of non-dominated policies) for multi-objective optimization (MOO) problems to maintain a balance between utility and fairness;
decomposing the decision maker's specific choice of target exposure for this Pareto set as a distribution over up to n ranks;
An efficient and effective scheduling strategy distributes distributions for up to n ranks.
9.PBM-エキスポヘドロンにおける効用性
例示的な効用性基準は、関連性点数が高いか、或いは、より一般的に利得の高いオブジェクトがさらに高い露出を有さなければならないと規定する。一般性を喪失せず、ρは、
9. Utility in PBM-Expohedron An exemplary utility criterion specifies that objects with high relevance scores, or more generally high gain, should have higher exposure. Without loss of generality, ρ is
効用性は、例えば、関連性ベクトル及び露出ベクトル間のドット積で表現できる: Utility can be expressed, for example, as the dot product between the relevance vector and the exposure vector:
このような効用性の数学的表現が与えられる場合、エキスポヘドロンの最大効用性順位付けポリシーは、ρに対する投影、すなわち Given this mathematical expression of utility, the expohedron's maximum utility ranking policy is its projection onto ρ, i.e.,
関連性ベクトルがタイ(tie)を有する場合(すなわち、関連性ベクトルの少なくとも2つの要素が同じ場合)、図8にタイと共に示すように(関連性ベクトル[0.7、0.7、0.4]に示すように)、全体面802は、最大効用性ソリューションのセットを構成する。 When the relevance vectors have ties (i.e., when at least two elements of the relevance vectors are the same), the overall surface 802 constitutes the set of maximum utility solutions, as shown in Figure 8 with ties (as shown by the relevance vector [0.7, 0.7, 0.4]).
10.PBM-エキスポヘドロンにおける公正性
エキスポヘドロンフレームワークにおいて例示的な公正性基準が表現される。個別人口統計学的公正性の基準は、理想的にすべてのオブジェクト(例えば、文書)が同じ露出を有さなければならないと明示する。露出の和が常数であるので、これは人口統計学的公正性ポリシーのターゲット露出がエキスポヘドロンの重心であることを意味する:
10. Fairness in PBM-Expohedron An exemplary fairness criterion is expressed in the expohedron framework. The individual demographic fairness criterion specifies that ideally, all objects (e.g., documents) should have the same exposure. Since the sum of exposures is a constant, this means that the target exposure of the demographic fairness policy is the centroid of the expohedron:
したがって、公正性の基準は、2次関数、例えば重心に対する近接性(または、距離縮小)として定義できる: Therefore, the fairness criterion can be defined as a quadratic function, e.g., proximity (or distance reduction) to the center of gravity:
能力主義公正性を考慮すれば、理想的な露出ベクトルは、関連性ベクトル又は一般的にρ'で表されるメリット(merit)ベクトルに比例しなければならず、ここで、オブジェクトのメリットは、このオブジェクトの関連性点数または同等にその利得の単調増加関数として定義される( Considering meritocratic fairness, the ideal exposure vector should be proportional to the relevance vector or merit vector, commonly denoted ρ', where the merit of an object is defined as a monotonically increasing function of this object's relevance score or, equivalently, its gain (
ρ及びρ'が同一に選択された、図9に示すようにエキスポヘドロン(n=3)900において、人口統計学的公正性902及び能力主義公正性904に対し、等価公正性表面はβ又はρを中心とした超球体であり、最適の人口統計学的及び能力主義公正性の等価公正性曲線は、各々最適の公正性地点902、904を囲む円であり、ここで、ベクトル906は関連性ベクトルである。 In an expohedron (n=3) 900 as shown in Figure 9, where ρ and ρ' are chosen to be equal, for demographic fairness 902 and meritocratic fairness 904, the equivalent fairness surface is a hypersphere centered at β or ρ, and the equivalent fairness curves for optimal demographic and meritocratic fairness are circles surrounding the optimal fairness points 902, 904, respectively, where vector 906 is the relevance vector.
メリットベクトルがエキスポヘドロンの外部にある場合、すなわち、 If the merit vector is outside the expohedron, i.e.,
図10は、メリットベクトル1002により識別される最適地点1004がエキスポヘドロン1000の外部にあるため、実行不可能な例を示す。この新しい実現可能なターゲットベクトルは地点1006に表示される。これは、次の通り計算できる: Figure 10 shows an example where the optimal point 1004 identified by the merit vector 1002 is outside the expohedron 1000 and is therefore infeasible. This new feasible target vector is displayed at point 1006. This can be calculated as follows:
関連性ベクトル軸及びエキスポヘドロンの境界の交差点は、正規化したメリット The intersection of the relevance vector axis and the expohedron boundary is the normalized advantage.
実行可能な能力主義公正性の地点を選択するためのアフィン変換に対する代替的なソリューションは、直交投影を計算するものであり、これに関して、図10に示す例に対する結果が地点1008に表示される。 An alternative solution to the affine transformation for selecting a viable meritocratic fairness point is to compute an orthogonal projection, the results of which for the example shown in Figure 10 are displayed at point 1008.
11.PBM-エキスポヘドロンにおけるパレートセット
効用性と公正性を個別的に計算する方法及び最適化する方法を決定すれば、多重目標効用性-公正性問題の完全なパレートセットを計算できる。
11. Pareto Sets in PBM-Expohedron Once we determine how to compute and optimize utility and fairness separately, we can compute the complete Pareto set of a multi-objective utility-fairness problem.
方法を直観的かつ幾何学的に説明すれば、例示的な計算方法は、パレートセットの一つの極端(extreme:エクストリーム)、すなわち「全的に公正な」ソリューションから始まる。次いで、全体のパレートセットを描く(例えば、計算する)ために、利得ベクトルの方向に(計算的に)沿う。これらのすべての地点は、エキスポヘドロンの他の地点により支配されず、公正性及び効用性間の最適のトレードオフに対応することがわかる。利得ベクトルの方向を常に沿う場合、エキスポヘドロンの境界が必ず特定地点で交差することになり、これは、ソリューションがそれ以上実現不可能であることを意味する。次いで、直に交差した(n-2)次元ファセット上に投影された利得ベクトルの方向に(計算的に)沿う。この新しい方向に沿うことで、今度は(n-3)次元である新しい面が交差され、もう一度その新しい面上に投影された利得ベクトルの方向に沿うことになる。任意の面の利得ベクトルの投影を探すことは、閉形式表現(closed-form expression)に該当する。この経路追跡手順は、最終的に非支配最大効用性ソリューションに到達するまで計算的に再度繰り返される。その経路に沿ってすべての地点は、効用性-公正性トレードオフの強力な非支配ソリューションに対応し、換言すれば、経路はパレートセットである。 To explain the method intuitively and geometrically, an exemplary computational method starts from one extreme of the Pareto set, i.e., the "totally fair" solution. Then, to draw (e.g., compute) the entire Pareto set, we (computationally) follow the payoff vector direction. It turns out that all these points are not dominated by other points in the expohedron and correspond to the optimal tradeoff between fairness and utility. If we always follow the payoff vector direction, the boundary of the expohedron will necessarily intersect at a certain point, meaning the solution is no longer feasible. Next, we (computationally) follow the payoff vector direction projected onto the directly intersected (n-2)-dimensional facet. Following this new direction results in a new facet, now (n-3) dimensional, being intersected, and we once again follow the payoff vector direction projected onto the new facet. Finding the projection of the payoff vector on any facet corresponds to a closed-form expression. This path-tracing procedure is computationally repeated again until we finally arrive at a non-dominated maximum-utility solution. Every point along the path corresponds to a strongly non-dominated solution of the utility-fairness trade-off; in other words, the path is a Pareto set.
前述した経路追跡手順がn=3及び恒等関数(すなわち、文書のメリット及び利得がその関連性点数と同一である)として選択された利得及びメリット関数に関して図11に例示している。パレートセットは、人口統計学的公正性の基準が使用される場合に1102から1110まで、能力主義公正性の基準が使用される場合に1106から1110まで、定義される。人口統計学的公正性の基準が使用される場合、パレートセットはグラフの重心1102から始まり、線分1104の方向(これは利得ベクトル軸である)に沿うが、これはグラフ上の能力主義公正性地点1106を通過して、オブジェクト(例えば、文書)d1及びd2が最初2つの順位で順列される混合順位に対応するエッジ1108またはファセットと交差し、次いで、グラフ上で星1110で表示される最大効用性ソリューションに到達するまで、このファセットに沿う。能力主義公正性の基準が使用される場合、パレートセットは地点1106から始まるべきである。 The path-tracing procedure described above is illustrated in FIG. 11 for n=3 and the gain and merit functions chosen as identity functions (i.e., a document's merit and gain are the same as its relevance score). Pareto sets are defined from 1102 to 1110 when the demographic fairness criterion is used, and from 1106 to 1110 when the meritocratic fairness criterion is used. When the demographic fairness criterion is used, the Pareto set starts from the graph's centroid 1102, follows the direction of line segment 1104 (which is the gain vector axis), passes through meritocratic fairness point 1106 on the graph, intersects with edge 1108, or facet, corresponding to the mixed ranking where objects (e.g., documents) d1 and d2 are initially permuted in two ranks, and then follows this facet until it reaches the maximum utility solution, represented on the graph by star 1110. When the meritocratic fairness criterion is used, the Pareto set should start from point 1106.
より公式的に記述すれば、パレート最適セットは、i = 1,...,(n-1)である場合、 More formally, the Pareto optimal set is i = 1,...,(n-1),
パレートセット構築方法の一実施例が意思コードとして図12に説明されている。より具体的に、図12は、パレートセット識別のための意思コードを説明し、これは(一般性を喪失せず)利得ベクトル One example of a Pareto set construction method is illustrated in Figure 12 as an intention code. More specifically, Figure 12 illustrates an intention code for Pareto set identification, which (without loss of generality) is a payoff vector.
12.PBM-エキスポヘドロンにおけるGLS分解
本明細書に説明されたように、例えば、意思決定者により選択され得るパレートセット内の一つの地点は、決定空間内でターゲット露出に変換できる。パレートセット内のこの地点は最大n個の順位の凸結合に分解できる。この分解問題を始まるために、例示的な方法は、前述した一般GLS手順を特殊化し、エキスポヘッドのポリトープの構造に適用できる。
12. GLS Decomposition in PBM-Expohedrons As described herein, for example, a point in the Pareto set that can be selected by a decision maker can be transformed into a target exposure in the decision space. This point in the Pareto set can be decomposed into a convex combination of up to n ranks. To address this decomposition problem, an exemplary method specializes the general GLS procedure described above and applies it to the construction of the expohedron polytope.
分解を実現するための一実施例が、図6の意思コードとして説明される。図6の分解方法は、一つの地点がファセット(または、さらに低い次元の面)にある場合、このファセット(または面)上の頂点は、地点が位置した領域の頂点を選択することにより(これは地点の成分を整列して遂行され得る)、探すことができるという事実を利用する(図6の5行参照)。このステップは、O(n log n)の複雑性を有することに注意する。 One example of how to achieve decomposition is illustrated as the code in Figure 6. The decomposition method in Figure 6 takes advantage of the fact that if a point is on a facet (or a plane of lower dimensionality), then vertices on this facet (or plane) can be found by selecting the vertices of the region in which the point is located (this can be done by sorting the components of the point) (see line 5 in Figure 6). Note that this step has a complexity of O(n log n).
図6の9行で例示的な方法は、ファセット(すなわち、面)に到達するまで、v(i) → x(i)線分を延長する地点を探し、この交差地点(x(i+1))は再帰的に分解される新しい地点を定義する。ループの各々の繰り返しにおいて、新しい地点(x(i+1))は次元(n-i)の面上にあり、これは最終地点が常に頂点(次元=0)となることを意味する。交差点を探すことは、「主要化(Majorization)」条件の根(すなわち、条件値が真から偽に行く地点)を探すものと同一であるので、図6の9行で主要化基準を使用して二分法(Bisection method)(すなわち、提供された関数の根を探す数値的方法)が適用されて方法の中止時点を感知する。また、主要化基準は、面(λ)との交差点で効率的な上端終点を探すために活用できる(ここで、効率的な上端終点は「真の交差点からあまり遠くない」ことを意味するために本明細書で使用される)。この終点の計算は、図6の6行乃至8行で遂行される。 The exemplary method in line 9 of FIG. 6 searches for a point by extending the v (i) → x (i) line segment until a facet (i.e., a surface) is reached, and this intersection point (x (i+1) ) defines a new point for recursive decomposition. In each iteration of the loop, the new point (x (i+1) ) is on a surface of dimension (n-i), meaning that the final point is always a vertex (dimension = 0). Since searching for an intersection point is the same as searching for the root of a "majorization" condition (i.e., the point where the condition value goes from true to false), line 9 of FIG. 6 uses the majorization criterion to apply a bisection method (i.e., a numerical method for searching for the root of a provided function) to determine when to stop the method. The majorization criterion can also be used to search for an efficient upper endpoint at the intersection with the surface (λ) (here, efficient upper endpoint is used herein to mean "not too far from the true intersection point"). This endpoint calculation is performed in lines 6 through 8 of FIG. 6.
二分法そのものは、nと独立的な多数の繰り返し(例えば、5乃至10回の繰り返し)を有する。二分法内で主要化条件を確認しようとすれば、O(n log n)複雑度が必要なので、この方法の全体の複雑度はO(n2 log n)である。 The bisection itself has a number of iterations (e.g., 5-10 iterations) that is independent of n. Checking the majorization condition within the bisection requires O(n log n) complexity, so the overall complexity of the method is O(n 2 log n).
13.低不一致シーケンスによるポリシー配布
ターゲット露出を順位による分布に分解する場合、順位のシーケンスの形態で分布を配布するために、様々な方法のうち、任意の方法を単独または組合せにより使用できる。
13. Policy Distribution with Low Discrepancy Sequences When target exposures are decomposed into rank-order distributions, any of a variety of methods can be used, alone or in combination, to distribute the distributions in the form of rank sequences.
例えば、確率的サンプリング(すなわち、乱数生成器)が順位に対する分布を配布するのに使用できる。他の実施例において、低不一致シーケンスが使用され得る(例えば、文献[Martin Roberts、“The unreasonable effectiveness of quasirandom sequences”、Apr 2018参照)。 For example, stochastic sampling (i.e., a random number generator) can be used to distribute the distribution for the ranks. In other embodiments, low-discrepancy sequences can be used (see, e.g., Martin Roberts, "The unreasonable effectiveness of quasirandom sequences," Apr 2018).
低不一致シーケンス(LDS)は、すべてのtに対して順位R1,R2,…,Rtの下位シーケンスが低不一致を有するように提供される(すなわち、順位の比率が所望の比率、すなわち無限シーケンスの比率に近い)。低不一致シーケンスは、典型的に均一分布にできるだけ近い[0、1]間隔の類似乱数シーケンスであり、[0、1]にあるこのような浮動小数点シーケンスは、生成された浮動小数点を比率の累積値と比較することで、所望の比率を有する順位のシーケンスに変換できる。 A low discrepancy sequence (LDS) is provided such that the subsequences of ranks R1 , R2 , ..., Rt for all t have low discrepancy (i.e., the ratio of ranks is close to the desired ratio, i.e., the ratio of infinite sequences). A low discrepancy sequence is typically a quasi-random sequence in the interval [0, 1] that is as close as possible to a uniform distribution, and such a floating-point sequence in [0, 1] can be converted into a ranked sequence with the desired ratio by comparing the generated floating-point with the cumulative value of the ratio.
無理数(クロネッカー(Kronecker)、ワイル(Weyl)又はリヒトマイヤー(Richtmyer)シーケンスであると称する)に基づいた加法-再帰シーケンスの使用は、実施例において、特に一部の意味で最も無理数である黄金費に対して使用され得る。シーケンスの一般的な再帰形式は、次の通りである: The use of additive-recursive sequences based on irrational numbers (referred to as Kronecker, Weyl, or Richtmyer sequences) can be used in embodiments, particularly for the golden number, which is in some sense the most irrational number. The general recursive form of the sequence is as follows:
低不一致シーケンスの以外の効率的なサンプリング戦略の系列が、代替的又は付加的に使用され得る。例えば、ストライドスケジューリングまたは同等にm-バランスワードに基づいた戦略も使用でき、非常に類似の性能を提供できる。 A range of efficient sampling strategies other than low-discrepancy sequences can alternatively or additionally be used. For example, stride scheduling or equivalently m-balanced word-based strategies can also be used, providing very similar performance.
例示的な問題に関して表現すれば、m-バランスワードの生成器は、同じ長さの下位シーケンスの任意の対から、任意の順位の頻度が最大mだけ変化する順位のシーケンスを生成する。換言すれば、この生成器は、生成されたシーケンスがターゲット比率に最大限近い比率を有する順位を算出するように保証する。理論に拘束されることを希望しないが、理論上に最も良い達成可能なmは、例示の場合に最大n-1である。特定分布の順位の分布が提供される場合、順位のm-バランスシーケンスを效率的に生成できる例示的なアルゴリズムが、文献[Shinya Sano、Naoto Miyoshi、and Ryohei Kataoka.2004.m-Balanced words:A generalization of balanced words. Theoretical Computer Science 314、1-2(Feb.2004)、97-120.https://doi.org/10.1016/j.tcs.2003.11.021]のアルゴリズム(1)に提供される。この生成器は、例えば、文献[C.A.Waldspurger及びE.Weihl.W.1995.Stride Scheduling:Deterministic Proportional-Share Resource Management.Technical Report.Massachusetts Institute of Technology、USA]に記述されたように、同時プロセスに対するリソース(CPU)管理で公正なシーケンスを生成するのに使用される、公知のストライドスケジューリングアルゴリズムと同様である。 Expressed in terms of an example problem, the m-balanced word generator generates a sequence of ranks from any pair of subsequences of the same length, where the frequency of any rank varies by at most m. In other words, the generator ensures that the generated sequence produces ranks with a ratio as close as possible to the target ratio. While not wishing to be bound by theory, the theoretically best achievable m is at most n-1 in the example case. An example algorithm that can efficiently generate an m-balanced sequence of ranks, given a specific distribution of ranks, is provided in Algorithm (1) of the reference [Shinya Sano, Naoto Miyoshi, and Ryohei Kataoka. 2004. m-Balanced words: A generalization of balanced words. Theoretical Computer Science 314, 1-2 (Feb. 2004), 97-120. https://doi.org/10.1016/j.tcs.2003.11.021]. This generator is similar to known stride scheduling algorithms used to generate fair sequences in resource (CPU) management for concurrent processes, for example as described in the literature [C.A. Waldspurger and E. Weihl. W. 1995. Stride Scheduling: Deterministic Proportional-Share Resource Management. Technical Report. Massachusetts Institute of Technology, USA].
14.コンピュータプログラム製品
オブジェクトを順位付けするために説明された例示的な方法は、コンピュータプログラム製品として提供でき、これは(例えば、サーバー100及びクライアントデバイス102のデータプロセッサ112を使用して)、この方法を実行するためのコード命令語、及びこのようなコード命令語を保存するためにこのコンピュータプログラム製品と共に提供されるコンピュータ装備(例えば、サーバー100及びクライアントデバイス102のメモリ113を使用する)により読み取り可能な保存手段を含むことができる。
14. Computer Program Product The exemplary method described for ranking objects may be provided as a computer program product, which may include code instructions for executing the method (e.g., using the data processor 112 of the server 100 and the client device 102), and storage means readable by computer equipment provided with the computer program product (e.g., using the memory 113 of the server 100 and the client device 102) for storing such code instructions.
15.一般
前述した説明は、本質的に例示的なものだけであり、本開示内容、そのアプリケーションまたは使用を制限するものではない。本開示内容の広範囲な教示は多様な形態で具現化できる。したがって、本開示内容は特定例を含むが、本開示内容の真の範囲はそれらに制限されるものではない。これは図面、明細書及び特許請求の範囲の研究により他の変形が明白になるからである。方法内の一つ以上のステップは、本開示内容の原理を変更せず、異なる順序に(または同時に)実行され得ることを理解しなければならない。また、各々の実施例は、所定の特徴を持つものと前述されたが、本開示内容の任意の実施例と関連して記述されたこれらの特徴のうち、任意の一つ以上は任意の他の実施例の特徴で具現化され/具現化されたり結合され得るが、その組合せは明示的に記述されない。換言すれば、記述された実施例は相互排他的でなく、一つ以上の実施例の互いの順列は本開示内容の範囲内にある。本明細書に引用された任意の文献は、これらの文献が先行技術を構成するということを認定せず、その全体が参考としてここに含まれる。
15. General The foregoing description is merely exemplary in nature and is not intended to limit the present disclosure, its application, or uses. The broad teachings of the present disclosure can be embodied in a variety of forms. Accordingly, while the present disclosure includes specific examples, the true scope of the present disclosure should not be limited thereto. This is because other variations will become apparent upon study of the drawings, the specification, and the claims. It should be understood that one or more steps within a method may be performed in a different order (or simultaneously) without altering the principles of the present disclosure. Also, although each embodiment is described above as having certain features, any one or more of these features described in connection with any embodiment of the present disclosure may be embodied/embodied with or combined with features of any other embodiment, although such combinations are not expressly stated. In other words, the described embodiments are not mutually exclusive, and permutations of one or more embodiments with each other are within the scope of the present disclosure. Any references cited herein are incorporated herein by reference in their entirety without any admission that such references constitute prior art.
各モジュールは、一つ以上のインタフェース回路を含むことができる。一部の例において、インタフェース回路は、近距離通信網(LAN)、インターネット、広域通信網(WAN)またはこれらの組合せにより連結された有線又は無線インタフェースを含むことができる。本開示内容の任意の提供されたモジュールの機能は、インタフェース回路により連結された多数のモジュールに分散できる。例えば、多数のモジュールが負荷バランス(load balancing)を許容することができる。他の例において、サーバー(リモート又はクラウドと知らされる)モジュールは、クライアントモジュールの代わりに一部の機能を達成できる。各々のモジュールは、コードを用いて具現化できる。前記使用された用語コードは、ソフトウェア、ファームウエア及び/又はマイクロコードを含むことができ、プログラム、ルーチン、機能、クラス、データ構造及び/又はオブジェクトを称することができる。 Each module may include one or more interface circuits. In some examples, the interface circuits may include wired or wireless interfaces connected via a local area network (LAN), the Internet, a wide area network (WAN), or a combination thereof. The functionality of any provided module in this disclosure may be distributed across multiple modules connected by interface circuits. For example, multiple modules may allow for load balancing. In other examples, a server (remote or cloud) module may perform some functionality on behalf of a client module. Each module may be embodied using code. The term code, as used herein, may include software, firmware, and/or microcode and may refer to programs, routines, functions, classes, data structures, and/or objects.
本明細書のメモリ回路は、コンピュータ読取り可能な媒体のサブセットである。本明細書のコンピュータ読取り可能な媒体は(例えば、搬送波上において)、媒体を介して伝播される一時的な電気又は電磁気信号を含まず;したがって、コンピュータ読み取り可能な媒体は、類型及び非一時的なものとみなすことができる。非一時的及び類型のコンピュータ読取り可能な媒体の非制約的な例は、不揮発性メモリ回路(例えば、フラッシュメモリ回路、消去可能なプログラム可能読取り専用メモリ回路、またはマスク読取り専用メモリ回路)、揮発性メモリ回路(例えば、静的ランダムアクセスメモリ回路、動的ランダムアクセスメモリ回路)、磁気保存媒体(例えば、アナログ又はデジタル磁気テープまたはハードディスクドライブ)、及び、光学保存媒体(例えば、CD、DVDまたはブルーレイディスク)を含む。 Memory circuits herein are a subset of computer-readable media. Computer-readable media herein do not include transient electrical or electromagnetic signals propagated through a medium (e.g., on a carrier wave); therefore, computer-readable media can be considered both a type and a non-transitory type. Non-limiting examples of non-transitory and types of computer-readable media include non-volatile memory circuits (e.g., flash memory circuits, erasable programmable read-only memory circuits, or masked read-only memory circuits), volatile memory circuits (e.g., static random access memory circuits, dynamic random access memory circuits), magnetic storage media (e.g., analog or digital magnetic tape or hard disk drives), and optical storage media (e.g., CDs, DVDs, or Blu-ray discs).
本出願に説明されたシステム及び方法は、コンピュータプログラムで具現化された一つ以上の特定機能を実行するように、汎用コンピュータを構成することにより生成された特殊目的コンピュータにより部分的又は完全に具現化できる。前述した機能ブロック、フローチャート構成要素及びその他の要素は、熟練された技術者又はプログラマの日常的な作業により、コンピュータプログラムに変換できるソフトウェア仕様として役割を果たす。 The systems and methods described in this application may be implemented, in part or in whole, by a special-purpose computer created by configuring a general-purpose computer to perform one or more specific functions embodied in a computer program. The functional blocks, flowchart components, and other elements described above serve as software specifications that can be converted into a computer program by the routine work of a skilled engineer or programmer.
コンピュータプログラムは、少なくとも一つのプロセッサ実行可能な命令語を含む。コンピュータプログラムは、また、保存されたデータを含むか、或いは、それに依存し得る。コンピュータプログラムは、特殊目的コンピュータのハードウェアと相互作用する基本入/出力システム(BIOS)、特殊目的コンピュータの特定デバイスと相互作用するデバイスドライバ、一つ以上の運営体制、ユーザアプリケーション、背景サービス、背景アプリケーションなどを含むことができる。 A computer program includes at least one processor-executable instruction. A computer program may also include or rely on stored data. A computer program may include a basic input/output system (BIOS) that interacts with hardware in a special-purpose computer, device drivers that interact with specific devices in a special-purpose computer, one or more operating systems, user applications, background services, background applications, etc.
前述した実施例の変形例及び他の特徴及び機能、またはその代替を、好ましくは多くの異なるシステムまたは応用により組合わせることができる。また、現在予測不可能な多様な代替、修正、変形、または改善が、当業者により後続的になされることができ、これらは前記説明及び特許請求の範囲内に属するものと理解しなければならない。 Variations of the above-described embodiments and other features and functions, or alternatives thereof, can be preferably combined in many different systems or applications. It should be understood that various presently unforeseeable alternatives, modifications, variations, or improvements may subsequently be made by those skilled in the art and are within the scope of the foregoing description and the following claims.
Claims (23)
前記コンピュータのプロセッサが、前記複数のオブジェクトのセット及び複数の目標関数のセットを受信するステップ;
前記プロセッサが、位置基板モデル(position-Based Model, PBM)に関連付けられたパームトヘドロン(permutohedron)を用いて、n個の決定変数を有する決定空間を定義するステップであって、前記決定変数は情報検索結果に対応するオブジェクトの露出の順位付けについて最適化の対象になる変数であり、前記決定空間は前記決定変数によって規定される空間であり、nは順位付けするオブジェクトの数である、ステップ;
前記プロセッサが、前記複数の目標関数のセットに対する、多重目標最適化(Multi-objective Optimization, MOO)問題に対応するパレートセットを決定するステップであって、前記パレートセットは、前記決定空間から関連する露出の順位付けの凸結合に基づいて決定されたファセットの重心からエッジに交差し、前記ファセットの頂点に到達する経路であり、前記決定するステップは、幾何学的推論を使用して決定される、ステップ;
前記プロセッサが、パレート点を前記パレートセット内として、前記決定空間を用いて、前記セット内の前記オブジェクトに関する順位に対する分布を、GLS(Grotschel、Lovasz and Schrijver)手順を使用して決定するステップであって、前記分布内の各々の順位に係数が関連付けられる、ステップ;
前記プロセッサが、係数により前記順位に対する分布から前記セット内の前記オブジェクトに関する一連の順位を選択するステップであって、前記セット内の前記オブジェクトに関する一連の順位を選択するステップには、確率的サンプリング、低不一致シーケンス、加算繰り返しシーケンス、ストライドスケジューリングまたはm-バランスの一つ以上を使用するステップが含まれる、ステップ;
前記プロセッサが、前記選択された一連の順位を出力するステップ;及び、
前記プロセッサが、前記セット内の各々のオブジェクトに対する関連性点数及び順位と各々関連付けられた、前記セット内の前記オブジェクトに提供される露出のリスト、順位付け公正性目標関数、及び順位付け効用性目標関数を受信するステップ;を含み、
前記複数の目標関数のセットは、2次関数及び線形関数を含み、
前記2次関数は公正性関数を含み、前記線形関数は効用性関数を含み、前記公正性関数は、前記決定変数から構成されるベクトルとターゲットベクトルとの間の差の正規化した関数であり、前記効用性関数は、ユーザが結果のセットにアクセスする関連性点数が高いことを示す線形関数である、コンピュータで実施される方法。 1. A computer-implemented method for ranking a set of objects, comprising:
a processor of the computer receiving the set of objects and a set of objective functions;
the processor using a permutohedron associated with a position-based model (PBM) to define a decision space having n decision variables, the decision variables being variables to be optimized for ranking the exposure of objects corresponding to information search results, the decision space being a space defined by the decision variables, n being the number of objects to be ranked;
determining a Pareto set corresponding to a multi-objective optimization (MOO) problem for the set of multiple objective functions, the Pareto set being a path from a centroid of a facet determined based on a convex combination of associated exposure rankings from the decision space, intersecting edges and reaching a vertex of the facet, the determining step being determined using geometric reasoning;
the processor using the decision space to determine a distribution for ranks for the objects in the set using a GLS (Grotschel, Lovasz and Schrijver) procedure, with Pareto points in the Pareto set, wherein a coefficient is associated with each rank in the distribution;
the processor selecting a set of ranks for the objects in the set from a distribution for the ranks by a coefficient , wherein selecting a set of ranks for the objects in the set includes using one or more of stochastic sampling, low discrepancy sequences, additive repeat sequences, stride scheduling, or m-balance;
the processor outputting the selected set of rankings; and
the processor receiving a list of exposures to be provided to the objects in the set, each associated with a relevance score and a rank for each object in the set, a ranking fairness objective function, and a ranking utility objective function;
the set of objective functions includes a quadratic function and a linear function;
The computer-implemented method, wherein the quadratic function comprises a fairness function, the linear function comprises a utility function, the fairness function being a normalized function of the difference between a vector composed of the decision variables and a target vector, and the utility function being a linear function that indicates a high relevance score for a user accessing a set of results.
(i)前記プロセッサが、前記決定空間の任意の頂点を決定するステップ;
(ii)前記プロセッサが、線が前記決定空間の面と交差するまで、ターゲット露出により前記任意の頂点から始まる前記線を描くステップ;及び、
(iii)前記プロセッサが、新しく交差された前記面が頂点となるまで、前記ターゲット露出の代わりに、前記新しい交差地点を用いて、前記決定空間の前記交差された面上において、(i)及び(ii)を繰り返すステップ;をさらに含み、
前記決定空間の各々の頂点は、前記順位に対する分布において関連付けられた係数を有する、請求項5に記載のコンピュータで実施される方法。 The step of the processor determining a distribution for the ranks for the objects in the set using the decision space includes, with respect to the number of objects in the set:
(i) the processor determining an arbitrary vertex of the decision space;
(ii) the processor drawing the line starting from the arbitrary vertex with a target exposure until the line intersects a face of the decision space; and
(iii) the processor repeats (i) and (ii) on the intersected face of the decision space using the new intersection point in place of the target exposure until the newly intersected face becomes a vertex;
The computer-implemented method of claim 5 , wherein each vertex of the decision space has an associated coefficient in the distribution for the rank.
前記公正性関数は、正規化した関連性ベクトルに対する近接性として定義できる能力主義公正性に基づく、請求項1に記載のコンピュータで実施される方法。 the set of objective functions includes a fairness function and a utility function;
The computer-implemented method of claim 1 , wherein the fairness function is based on meritocratic fairness, which can be defined as proximity to a normalized relevance vector.
前記公正性関数は、各々のオブジェクトに対する同じ露出に対応する人口統計学的公正性に基づく、請求項1に記載のコンピュータで実施される方法。 the set of objective functions includes a fairness function and a utility function;
The computer-implemented method of claim 1 , wherein the fairness function is based on demographic fairness corresponding to equal exposure to each object.
前記プロセッサが、前記選択された順位のシーケンスにより順位付けされた前記複数のオブジェクトのセットの少なくともサブセットを、デバイスのディスプレイ上にディスプレイするために提供するステップを含む、請求項1に記載のコンピュータで実施される方法。 The step of outputting by the processor includes:
2. The computer-implemented method of claim 1, further comprising the step of: the processor providing at least a subset of the set of objects ranked according to the selected ranking sequence for display on a display of a device.
前記命令語は、コンピュータ上で実行されると、前記コンピュータのプロセッサが以下の方法を遂行するようにし、前記方法は:
複数のオブジェクトのセット及び複数の目標関数のセットを受信するステップ;
位置基板モデル(position-Based Model, PBM)に関連付けられたパームトヘドロンを用いて、n個の決定変数を有する決定空間を定義するステップであって、前記決定変数はオブジェクトの露出の順位付けについて最適化の対象になる変数であり、前記決定空間は情報検索結果に対応する前記決定変数によって規定される空間であり、nは順位付けするオブジェクトの数である、ステップ;
前記複数の目標関数のセットに対する、多重目標最適化(Multi-objective Optimization, MOO)問題に対応するパレートセットを決定するステップであって、前記パレートセットは、前記決定空間から関連する露出の順位付けの凸結合に基づいて決定されたファセットの重心からエッジに交差し、前記ファセットの頂点に到達する経路であり、前記決定するステップは、幾何学的推論を使用して決定される、ステップ;
パレート点を前記パレートセット内とし、前記決定空間を用いて、前記セット内の前記オブジェクトに関する順位に対する分布を、GLS(Grotschel、Lovasz and Schrijver)手順を使用して決定するステップであって、前記分布内の各々の順位に係数が関連付けられる、ステップ;
係数により前記順位に対する分布から前記セット内の前記オブジェクトに関する一連の順位を選択するステップであって、前記セット内の前記オブジェクトに関する一連の順位を選択するステップには、確率的サンプリング、低不一致シーケンス、加算繰り返しシーケンス、ストライドスケジューリングまたはm-バランスの一つ以上を使用するステップが含まれる、ステップ;
前記選択された一連の順位を出力するステップ;及び、
前記セット内の各々のオブジェクトに対する関連性点数及び順位と各々関連付けられた、前記セット内の前記オブジェクトに提供される露出のリスト、順位付け公正性目標関数、及び順位付け効用性目標関数を受信するステップ;を含む、コンピュータプログラム。 A computer program comprising non-transitory machine-readable instructions,
The instructions, when executed on a computer, cause a processor of the computer to perform the following method, which method includes:
receiving a set of a plurality of objects and a set of a plurality of objective functions;
defining a decision space having n decision variables using a palmtohedron associated with a position-based model (PBM), the decision variables being variables to be optimized for ranking the exposure of objects, the decision space being a space defined by the decision variables corresponding to information search results, n being the number of objects to be ranked;
determining a Pareto set corresponding to a multi-objective optimization (MOO) problem for the set of multiple objective functions, the Pareto set being a path from a centroid of a facet determined based on a convex combination of associated exposure rankings from the decision space, intersecting edges to reach a vertex of the facet, the determining step being determined using geometric reasoning;
taking Pareto points within the Pareto set and using the decision space to determine a distribution for ranks for the objects in the set using a GLS (Grotschel, Lovasz and Schrijver) procedure , wherein a coefficient is associated with each rank in the distribution;
selecting a set of ranks for the objects in the set from a distribution for the ranks by a coefficient , wherein selecting a set of ranks for the objects in the set includes using one or more of stochastic sampling, low discrepancy sequences, additive repeat sequences, stride scheduling, or m-balance;
outputting the selected set of rankings; and
receiving a list of exposures to be provided to the objects in the set, each associated with a relevance score and a ranking for each object in the set, a ranking fairness objective function, and a ranking utility objective function.
前記方法は、
前記プロセッサが、複数のオブジェクトのセット及び複数の目標関数のセットを受信するステップ;
前記プロセッサが、位置基板モデル(position-Based Model, PBM)に関連付けられたパームトヘドロンを用いて、n個の決定変数を有する決定空間を定義するステップであって、前記決定変数は情報検索結果に対応するオブジェクトの露出の順位付けについて最適化の対象になる変数であり、前記決定空間は前記決定変数によって規定される空間であり、nは順位付けするオブジェクトの数である、ステップ;
前記プロセッサが、前記複数の目標関数のセットに対する、多重目標最適化(Multi-objective Optimization, MOO)問題に対応するパレートセットを決定するステップであって、前記パレートセットは、前記決定空間から関連する露出の順位付けの凸結合に基づいて決定されたファセットの重心からエッジに交差し、前記ファセットの頂点に到達する経路であり、前記決定するステップは、幾何学的推論を使用して決定される、ステップ;
前記プロセッサが、パレート点を前記パレートセット内とし、前記決定空間を用いて、前記セット内の前記オブジェクトに関する順位に対する分布を、GLS(Grotschel、Lovasz and Schrijver)手順を使用して決定するステップであって、前記分布内の各々の順位に係数が関連付けられるステップ;
前記プロセッサが、係数により前記順位に対する分布から前記セット内の前記オブジェクトに関する一連の順位を選択するステップであって、前記セット内の前記オブジェクトに関する一連の順位を選択するステップには、確率的サンプリング、低不一致シーケンス、加算繰り返しシーケンス、ストライドスケジューリングまたはm-バランスの一つ以上を使用するステップが含まれる、ステップ;
前記プロセッサが、前記選択された一連の順位を出力するステップ;及び、
前記プロセッサが、前記セット内の各々のオブジェクトに対する関連性点数及び順位と各々関連付けられた、前記セット内の前記オブジェクトに提供される露出のリスト、順位付け公正性目標関数、及び順位付け効用性目標関数を受信するステップ;を含む、データプロセシングデバイス。 1. A data processing device including a processor configured to perform a method, comprising:
The method comprises:
the processor receiving a set of a plurality of objects and a set of a plurality of goal functions;
the processor using a palmtohedron associated with a position-based model (PBM) to define a decision space having n decision variables, the decision variables being variables to be optimized for ranking the exposure of objects corresponding to information search results, the decision space being a space defined by the decision variables, n being the number of objects to be ranked;
determining a Pareto set corresponding to a multi-objective optimization (MOO) problem for the set of multiple objective functions, the Pareto set being a path from a centroid of a facet determined based on a convex combination of associated exposure rankings from the decision space, intersecting edges and reaching a vertex of the facet, the determining step being determined using geometric reasoning;
the processor taking Pareto points within the Pareto set and using the decision space to determine a distribution for ranks for the objects in the set using a GLS (Grotschel, Lovasz and Schrijver) procedure , wherein a coefficient is associated with each rank in the distribution;
the processor selecting a set of ranks for the objects in the set from a distribution for the ranks by a coefficient , wherein selecting a set of ranks for the objects in the set includes using one or more of stochastic sampling, low discrepancy sequences, additive repeat sequences, stride scheduling, or m-balance;
the processor outputting the selected set of rankings; and
A data processing device comprising: the processor receiving a list of exposures to be provided to the objects in the set, each associated with a relevance score and a ranking for each object in the set, a ranking fairness objective function, and a ranking utility objective function.
クエリを受信し、複数のオブジェクトのセットを生成するように構成されたコンピュータで実施される第1のステップの検索器;及び、
コンピュータで実施される第2のステップのランカー;を含み、前記コンピュータで実施される第2のステップのランカーは、
前記複数のオブジェクトのセット及び複数の目標関数のセットを受信し、
位置基板モデル(position-Based Model, PBM)に関連付けられたパームトヘドロンを用いて、n個の決定変数を有する決定空間を定義することであって、前記決定変数は情報検索結果に対応するオブジェクトの露出の順位付けについて最適化の対象になる変数であり、前記決定空間は前記決定変数によって規定される空間であり、nは順位付けするオブジェクトの数であり、
前記複数の目標関数のセットに対する、多重目標最適化(Multi-objective Optimization, MOO)問題に対応するパレートセットを決定することであって、前記パレートセットは、前記決定空間から関連する露出の順位付けの凸結合に基づいて決定されたファセットの重心からエッジに交差し、前記ファセットの頂点に到達する経路であり、前記決定することは、幾何学的推論を使用して決定され、
パレート点を前記パレートセット内とし、前記決定空間を用いて、前記セット内の前記オブジェクトに関する順位に対する分布を、GLS(Grotschel、Lovasz and Schrijver)手順を使用して決定することであって、前記分布内の各々の順位に係数が関連付けられ、
係数により前記順位に対する分布から前記セット内の前記オブジェクトに関する一連の順位を選択することであって、前記セット内の前記オブジェクトに関する一連の順位を選択するステップには、確率的サンプリング、低不一致シーケンス、加算繰り返しシーケンス、ストライドスケジューリングまたはm-バランスの一つ以上を使用することが含まれ、
前記選択された一連の順位を出力し、
前記セット内の各々のオブジェクトに対する関連性点数及び順位と各々関連付けられた、前記セット内の前記オブジェクトに提供される露出のリスト、順位付け公正性目標関数、及び順位付け効用性目標関数を受信するように構成される、情報検索システム。 An information retrieval system, comprising:
a first-step searcher implemented on a computer configured to receive a query and generate a set of a plurality of objects; and
a computer-implemented second step ranker; wherein the computer-implemented second step ranker comprises:
receiving the set of objects and the set of objective functions;
using a palmtohedron associated with a position-based model (PBM) to define a decision space having n decision variables, the decision variables being variables to be optimized for ranking the exposure of objects corresponding to information search results, the decision space being a space defined by the decision variables, n being the number of objects to be ranked;
determining a Pareto set corresponding to a multi-objective optimization (MOO) problem for the set of multiple objective functions, the Pareto set being a path from a centroid of a facet determined based on a convex combination of associated exposure rankings from the decision space, intersecting an edge, and reaching a vertex of the facet, the determining being determined using geometric reasoning;
determining a distribution for ranks for the objects in the set using a GLS (Grotschel, Lovasz and Schrijver) procedure, with Pareto points in the Pareto set and using the decision space , wherein a coefficient is associated with each rank in the distribution;
selecting a set of ranks for the objects in the set from a distribution for the ranks by a coefficient , wherein selecting a set of ranks for the objects in the set includes using one or more of stochastic sampling, low discrepancy sequences, additive repeat sequences, stride scheduling, or m-balance;
outputting the selected series of rankings;
An information retrieval system configured to receive a list of exposures to be provided to the objects in the set, each associated with a relevance score and a rank for each object in the set, a ranking fairness objective function, and a ranking utility objective function.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2025102074A JP2025131864A (en) | 2021-05-06 | 2025-06-18 | Systems and methods for ranking objects |
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2104801 | 2021-05-06 | ||
| FRFR2104801 | 2021-05-06 | ||
| EP21306565.9A EP4086789A1 (en) | 2021-05-06 | 2021-11-08 | System and method for ranking objects |
| EP21306565.9 | 2021-11-08 | ||
| US17/655,049 US20220374489A1 (en) | 2021-05-06 | 2022-03-16 | System and method for ranking objects |
| US17/655049 | 2022-03-16 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025102074A Division JP2025131864A (en) | 2021-05-06 | 2025-06-18 | Systems and methods for ranking objects |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2022173114A JP2022173114A (en) | 2022-11-17 |
| JP7754592B2 true JP7754592B2 (en) | 2025-10-15 |
| JP7754592B6 JP7754592B6 (en) | 2025-10-31 |
Family
ID=84042076
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022074971A Active JP7754592B6 (en) | 2021-05-06 | 2022-04-28 | Systems and methods for ranking objects |
| JP2025102074A Pending JP2025131864A (en) | 2021-05-06 | 2025-06-18 | Systems and methods for ranking objects |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2025102074A Pending JP2025131864A (en) | 2021-05-06 | 2025-06-18 | Systems and methods for ranking objects |
Country Status (2)
| Country | Link |
|---|---|
| JP (2) | JP7754592B6 (en) |
| KR (1) | KR20220151548A (en) |
-
2022
- 2022-04-26 KR KR1020220051538A patent/KR20220151548A/en active Pending
- 2022-04-28 JP JP2022074971A patent/JP7754592B6/en active Active
-
2025
- 2025-06-18 JP JP2025102074A patent/JP2025131864A/en active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| JP7754592B6 (en) | 2025-10-31 |
| KR20220151548A (en) | 2022-11-15 |
| JP2022173114A (en) | 2022-11-17 |
| JP2025131864A (en) | 2025-09-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7343568B2 (en) | Identifying and applying hyperparameters for machine learning | |
| US11232152B2 (en) | Efficient processing of neighborhood data | |
| JP6508661B2 (en) | Data processing system, computing node and data processing method | |
| US12079214B2 (en) | Estimating computational cost for database queries | |
| Bladt et al. | Calculation of ruin probabilities for a dense class of heavy tailed distributions | |
| US11109085B2 (en) | Utilizing one hash permutation and populated-value-slot-based densification for generating audience segment trait recommendations | |
| Wei et al. | Autoias: Automatic integrated architecture searcher for click-trough rate prediction | |
| US11741101B2 (en) | Estimating execution time for batch queries | |
| CN112417169A (en) | Entity alignment method and device of knowledge graph, computer equipment and storage medium | |
| US11914593B2 (en) | Generate digital signature of a query execution plan using similarity hashing | |
| WO2022251573A1 (en) | Graph embeddings via node-property-aware fast random projection | |
| US9465854B2 (en) | In-database connectivity components analysis of data | |
| de Klerk et al. | On semidefinite programming bounds for graph bandwidth | |
| JP7754592B6 (en) | Systems and methods for ranking objects | |
| Liu et al. | Unifying explicit and implicit feedback for top-N recommendation | |
| CN112470172A (en) | Computational efficiency of symbol sequence analysis using random sequence embedding | |
| Lu et al. | A case study to select an optimal split-plot design for a mixture-process experiment based on multiple objectives | |
| Zhang et al. | Stochastic localization methods for convex discrete optimization via simulation | |
| Zhang et al. | Approximate resolution of stochastic choice-based discrete planning | |
| US20220374489A1 (en) | System and method for ranking objects | |
| US20230185791A1 (en) | Prioritized data cleaning | |
| CN115858915A (en) | Product recommendation method, device, computer equipment and storage medium | |
| CN106919946A (en) | A kind of method and device of audience selection | |
| CN117634751B (en) | Data element evaluation method, device, computer equipment and storage medium | |
| Patil et al. | Comparative Knowledge Discovery with Partial Orders and Composite Indicators: Multi-indicator Systemic Ranking, Advocacy, and Reconciliation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220620 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230718 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230801 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231031 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20240109 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240509 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20240520 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20240614 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250206 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250618 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250930 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7754592 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |