IP Library Granted Patent US 12,393,865
Granted Patent B2
US 12,393,865 · App. 17/223,680 · Granted Aug 19, 2025

Method and server for training machine learning algorithm for ranking objects

Inventor: Aleksey Ivanovich Ustimenko (Ivanovo, RU)
Assignee: Y.E. Hub Armenia LLC
G06N20/00G06F16/24578G06N5/01
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,393,865
App. No.
17/223,680
Granted
Aug 19, 2025
Kind
B2
Abstract

Method and server for training a Machine Learning Algorithm (MLA) for ranking objects in response to a query are disclosed. The training includes use of a ranking quality metric function that is one of a flat and a discontinuous function to determine a performance score of the MLA. The method includes generating relevance scores for a set of training objects based on data associated with the set of training objects and a training query, generating noise-induced relevance scores for the set of training objects by combining the relevance scores and noise values, generating the performance score for the MLA based on the noise-induced relevance scores, determining a policy gradient value for adjusting relevance scores to be generated by the MLA for the in-use objects in response to the in-use query, and applying the policy gradient value for training the MLA to rank in-use objects in response to an in-use query.

Claims (175)

1. A computer-implemented method for training a Machine Learning Algorithm (MLA) for ranking objects in response to a query, the MLA being executed by a server having access to the objects and the query, the training including use of a ranking quality metric function that is one of a flat and a discontinuous function to determine a performance score of the MLA, the method executable by the server, the method comprising:

generating, by the server executing the MLA, relevance scores for a set of training objects based on data associated with (i) the set of training objects and (ii) a training query,

the relevance scores being indicative of an estimated relevance of a respective training object to the training query;

generating, by the server, noise-induced relevance scores for the set of training objects by combining the relevance scores and noise values,

the noise values having been generated based on a noise-inducing function having a pre-determined distribution;

generating, by the server, the performance score for the MLA based on the noise-induced relevance scores,

the performance score being indicative of a ranking quality of the MLA if the training objects from the set of training objects are ranked in accordance with the respective noise-induced relevance scores;

determining, by the server, a policy gradient value for adjusting relevance scores to be generated by the MLA, wherein the policy gradient value is determined as:

d

i

=

1

K

j

=

1

K

j

-

f

(

r

+

n

j

i

)

2

n

j

i

wherein:

d i is a policy gradient value for training object i in the set of training objects;

K is a number of noise-induced relevance score samples;

j is a given noise-induce relevance score sample;

j is a performance score for a jth noise-induced relevance score sample;

r is a vector representative of the set of relevance scores for the set of training objects, including the training object i;

n j is a vector representative of a set of noise values for the set of training objects, including the training object i, during the given sample j;

n j i is a vector representative of a set of noise values for the set of training objects, including the training object i, where a sign of a noise value for the training object i during the given sample j is inversed;

n ji is a noise value for the training object i during the given sample j; and

f( ) is the ranking quality metric function; and

applying, by the server, the policy gradient value for training the MLA to rank in-use objects in response to an in-use query.

2. The method of claim 1 , wherein the generating the performance score based on the noise-induced relevance scores allows the determining the policy gradient value.

3. The method of claim 1 , wherein the applying the policy gradient value comprises:

applying, by the server, a weighted policy gradient value for training the MLA,

the weighted policy gradient being determined as a combination of (i) the policy gradient value and (ii) a pre-determined weight value.

4. The method of claim 1 , wherein the MLA is a decision-tree-based algorithm having a set of decision trees, and wherein the applying the policy gradient value comprises at least one of:

generating, by the server, an additional decision-tree for the MLA based on the policy gradient value; and

modifying, by the server, at least one of the set of decision-trees of the MLA based on the policy gradient value.

5. The method of claim 1 , wherein the applying the policy gradient value for training directly optimizes the ranking quality of the MLA.

6. The method of claim 1 , wherein the determining the policy gradient value comprises estimating, by the server, the policy gradient value by employing a coordinate-wise antithetic sampling method.

7. The method of claim 1 , wherein the applying the policy gradient value is performed by the server in an off-line mode.

8. The method of claim 1 , wherein the applying the policy gradient value is performed by the server prior to employing the MLA in an in-use phase.

9. The method of claim 1 , wherein the pre-determined distribution is at least one of:

a Gaussian distribution;

a Cauchy distribution; and

a Laplace distribution.

10. The method of claim 1 , wherein the ranking quality metric function is one of:

a Normalized Discounted Cumulative Gain (NDCG) quality metric function;

an Expected reciprocal Rank (ERR) quality metric function;

a Mean Average Precision (MAP) quality metric function; and

a Mean Reciprocal Rank (MRR) quality metric function.

11. The method of claim 1 , wherein the training objects are electronic documents and the training query is a previously submitted query to a search engine, the search engine being hosted on the server.

12. The method of claim 1 , wherein the method further comprises:

ranking, by the server, the in-use objects in response to the in-use query; and

triggering, by the server, display of a Search Engine Results Page (SERP) to a user associated with the in-use query, the SERP listing the in-use objects in a ranked order.

13. A server for training a Machine Learning Algorithm (MLA) for ranking objects in response to a query, the MLA being executed by the server having access to the objects and the query, the training including use of a ranking quality metric function that is one of a flat and a discontinuous function to determine a performance score of the MLA, the server comprising at least one processor and memory comprising executable instructions which, when executed by the at least one processor, cause the server to:

generate, by executing the MLA, relevance scores for a set of training objects based on data associated with (i) the set of training objects and (ii) a training query,

the relevance scores being indicative of an estimated relevance of a respective training object to the training query;

generate noise-induced relevance scores for the set of training objects by combining the relevance scores and noise values,

the noise values having been generated based on a noise-inducing function having a pre-determined distribution;

generate the performance score for the MLA based on the noise-induced relevance scores,

the performance score being indicative of a ranking quality of the MLA if the training objects from the set of training objects are ranked in accordance with the respective noise-induced relevance scores;

determine a policy gradient value for adjusting relevance scores to be generated by the MLA, wherein the policy gradient value is determined as:

d

i

=

1

K

j

=

1

K

j

-

f

(

r

+

n

j

i

)

2

n

ji

wherein:

d i is a policy gradient value for training object i in the set of training objects;

K is a number of noise-induced relevance score samples;

j is a given noise-induce relevance score sample;

j is a performance score for a jth noise-induced relevance score sample;

r is a vector representative of the set of relevance scores for the set of training objects, including the training object i;

n j is a vector representative of a set of noise values for the set of training objects, including the training object i, during the given sample j;

n j i is a vector representative of a set of noise values for the set of training objects, including the training object i, where a sign of a noise value for the training object i during the given sample j is inversed;

n ji is a noise value for the training object i during the given sample j; and

f( ) is the ranking quality metric function; and

apply the policy gradient value for training the MLA to rank in-use objects in response to an in-use query.

14. The server of claim 13 , wherein to apply the policy gradient value comprises the server configured to:

apply a weighted policy gradient value for training the MLA,

the weighted policy gradient being determined as a combination of (i) the policy gradient value and (ii) a pre-determined weight value.

15. The server of claim 13 , wherein the MLA is a decision-tree-based algorithm having a set of decision trees, and wherein to apply the policy gradient value comprises the server configured to at least one of:

generate an additional decision-tree for the MLA based on the policy gradient value; and

modify at least one of the set of decision-trees of the MLA based on the policy gradient value.

16. The server of claim 13 , wherein to apply the policy gradient value for training directly optimizes the ranking quality of the MLA.

17. The server of claim 13 , wherein to determine the policy gradient value comprises the server being configured to estimate the policy gradient value by employing a coordinate-wise antithetic sampling method.

18. The server of claim 13 , wherein the server is further configured to:

rank the in-use objects in response to the in-use query; and

trigger display of a Search Engine Results Page (SERP) to a user associated with the in-use query, the SERP listing the in-use objects in a ranked order.

19. A non-transitory computer-readable medium having stored thereon computer-executable instructions for training a Machine Learning Algorithm (MLA) for ranking objects in response to a query, the MLA being executed by a server having access to the objects and the query, the training including use of a ranking quality metric function that is one of a flat and a discontinuous function to determine a performance score of the MLA, the instructions, when executed, cause:

generating, by the server executing the MLA, relevance scores for a set of training objects based on data associated with (i) the set of training objects and (ii) a training query,

the relevance scores being indicative of an estimated relevance of a respective training object to the training query;

generating, by the server, noise-induced relevance scores for the set of training objects by combining the relevance scores and noise values,

the noise values having been generated based on a noise-inducing function having a pre-determined distribution;

generating, by the server, the performance score for the MLA based on the noise-induced relevance scores,

the performance score being indicative of a ranking quality of the MLA if the training objects from the set of training objects are ranked in accordance with the respective noise-induced relevance scores;

determining, by the server, a policy gradient value for adjusting relevance scores to be generated by the MLA, wherein the policy gradient value is determined as:

d

i

=

1

K

j

=

1

K

𝒫

j

-

f

(

r

+

n

j

i

)

2

n

ji

wherein:

d i is a policy gradient value for training object i in the set of training objects;

K is a number of noise-induced relevance score samples;

j is a given noise-induce relevance score sample;

j is a performance score for a jth noise-induced relevance score sample;

r is a vector representative of the set of relevance scores for the set of training objects, including the training object i;

n j is a vector representative of a set of noise values for the set of training objects, including the training object i, during the given sample j;

n j i is a vector representative of a set of noise values for the set of training objects, including the training object i, where a sign of a noise value for the training object i during the given sample j is inversed;

n ji is a noise value for the training object i during the given sample j; and

f( ) is the ranking quality metric function; and

applying, by the server, the policy gradient value for training the MLA to rank in-use objects in response to an in-use query.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: DIRECT CURSUS TECHNOLOGY L.L.C
To: Y.E. HUB ARMENIA LLC
Reel/Frame 068534/0619 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2023
From: YANDEX EUROPE AG
To: DIRECT CURSUS TECHNOLOGY L.L.C
Reel/Frame 065692/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2022
From: USTIMENKO, ALEKSEY IVANOVICH
To: YANDEX.MARKET LLC
Reel/Frame 062034/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2022
From: YANDEX LLC
To: YANDEX EUROPE AG
Reel/Frame 062034/0005 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2022
From: YANDEX.MARKET LLC
To: YANDEX LLC
Reel/Frame 062034/0018 →