IP Library Granted Patent US 11,995,519
Granted Patent B2
US 11,995,519 · App. 16/000,977 · Granted May 28, 2024

Method of and server for converting categorical feature value into a numeric representation thereof and for generating a split value for the categorical feature

Inventor: Andrey Vladimirovich Gulin (Moscow region, RU)
Assignee: Direct Cursus Technology L.L.C
G06N20/00G06F16/9027G06N5/045
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 11,995,519
App. No.
16/000,977
Granted
May 28, 2024
Kind
B2
Abstract

There is disclosed a method of and a system for training and using a Machine Learning Algorithm (MLA), the MLA using a decision tree model having a decision tree. During training a training object being associated with a categorical feature and is processed at a node of the decision tree. The method comprises calculating a numeric representation of the categorical feature and the value of the splits for the node “in-line” with generating a given iteration of the decision tree.

Claims (41)

1. A method of converting a value of a categorical feature into a numeric representation thereof, the categorical feature being associated with a training object used for training a Machine Learning Algorithm (MLA), the MLA being executable by a first server to predict a target value for an in-use object, the MLA comprising a set of models hosted by a plurality of second servers, each model of the set of models being based on an ensemble of decision trees, the training object being processed in a node of a given level of a decision tree of the ensemble of decision trees, the decision tree having at least one prior level of the decision tree, the at least one prior level having at least one prior training object having at least one prior categorical feature value having been converted to a prior numeric representation thereof for the at least one prior level of the decision tree, the MLA executable by an electronic device to predict a value for an in-use object, the method comprising:

accessing, from a non-transitory computer-readable medium of the first server, a set of training objects, wherein each training object of the set of training objects contains a document and an event indicator associated with the document, and wherein each document is associated with a categorical feature;

organizing the set of training objects into an ordered list of training objects, wherein when the training objects are associated with an inherent temporal order, the ordered list of training objects are ordered in accordance with the temporal order and when the training objects do not have an inherent temporal order, generating the ordered list of training objects in a random order of the training objects to be used as the ordered list of training objects;

storing the set of training objects in a plurality of databases, wherein each database of the plurality of databases comprises a copy of the set of training objects, and wherein each second server of the plurality of second servers is associated with a respective database of the plurality of databases;

generating, by the plurality of second servers operating in parallel, each second server accessing the set of training objects on its respective database of the plurality of databases, the set of models for the MLA, wherein generating each model of the set of models comprises generating the numeric representation of the categorical feature value by:

retrieving the prior numeric representation of the at least one prior categorical feature value for a given object of the set of training objects at the at least one prior level of the decision tree;

generating, for each combination of the at least one prior categorical feature value at the at least one prior level of the decision tree and at least one of the categorical feature values of the set of training objects, a current numeric representation for the given level of the decision tree, the generating the current numeric representation being done while generating the decision tree, wherein the current numeric representation is generated by:

(i) counting a first number of training objects that precede the training object in the ordered list and have both the at least one of the categorical feature values and event indicators with positive outcomes,

(ii) counting a second number of total training objects that precede the training object in the ordered list with the at least on of the categorical feature values, and

(iii) dividing the first number by the second number; and

after building the set of models for the MLA, transmitting, by the plurality of second servers and to the first server, indications that the set of models for the MLA has been generated.

2. The method of claim 1 , wherein,

for each given training object in the ordered list of training objects there is at least one of:

(i) a preceding training object that occurs before the given training object and

(ii) a subsequent training object that occurs after the given training object, and wherein

the at least one of the categorical feature values are those categorical features values associated with training objects that appear earlier in the ordered list of training objects.

3. The method of claim 1 , wherein the generating the current numeric representation is executed for those prior categorical feature values that have been generated at the at least one prior level of the decision tree.

4. The method of claim 1 , wherein the generating the current numeric representation is executed for those prior categorical feature values that have been generated at the at least one prior level of the decision tree and at least one previous iteration of the decision tree.

5. The method of claim 1 , wherein the event indicator indicates either a positive outcome or a negative outcome.

6. The method of claim 2 , wherein the set of training objects are organized into the ordered list of training objects at a point in time prior to the generating of the numeric representation.

7. The method of claim 2 , further comprising organizing a plurality of sets of ordered lists of training objects and wherein the method further comprises, prior to the generating of the numeric representation selecting a given one of the plurality of sets of ordered lists.

8. A system configured to execute a Machine Learning Algorithm (MLA), the system comprising a first server, a plurality of second servers, and a plurality of databases associated with the plurality of second servers, the MLA executable by the first server to predict a target value for an in-use object, the MLA comprising a set of models hosted by the plurality of second servers, each model of the set of models being based on an ensemble of decision trees, the decision trees being configured to process a categorical feature value by converting it into a numeric representation thereof, the categorical feature being associated with a training object used for training the MLA, the training object being processed in a node of a given level of a decision tree of the ensemble of decision trees, the decision tree having at least one prior level of the decision tree, the at least one prior level having at least one prior training object having at least one prior categorical feature value having been converted to a prior numeric representation thereof for the at least one prior level of the decision tree, the first server comprising:

at least one non-transitory computer-readable medium comprising executable instructions;

at least one processor coupled to the at least one non-transitory computer-readable medium, wherein the instructions, when executed by the at least one processor, cause the first server to:

access, from a non-transitory computer-readable medium of the system, a set of training objects, wherein each training object of the set of training objects contains a document and an event indicator associated with the document, and wherein each document is associated with a categorical feature;

organizing the set of training objects into an ordered list of training objects, wherein when the training objects are associated with an inherent temporal order, the ordered list of training objects are ordered in accordance with the temporal order and when the training objects do not have an inherent temporal order, generating the ordered list of training objects in a random order of the training objects to be used as the ordered list of training objects;

and

send, to the plurality of second servers, the set of training objects;

the plurality of second servers comprising:

at least one non-transitory computer-readable medium comprising executable instructions; and

at least one processor coupled to the at least one non-transitory computer-readable medium, wherein the instructions, when executed by the at least one processor of the plurality of second servers, cause the plurality of second servers to:

store the set of training objects in the plurality of databases, wherein each database of the plurality of databases comprises a copy of the set of training objects, and wherein each second server of the plurality of second servers is associated with a respective database of the plurality of databases;

generate, by operating in parallel, each second server accessing the set of training objects on its respective database of the plurality of databases, the set of models for the MLA, wherein generating each model of the set of models comprises generating the numeric representation of the categorical feature value by:

retrieving the prior numeric representation of the at least one prior categorical feature value for a given object of the set of training objects at the at least one prior level of the decision tree; and

generating, for each combination of the at least one prior categorical feature value at the at least one prior level of the decision tree and at least one of the categorical feature values of the set of training objects, a current numeric representation for the given level of the decision tree, wherein the current numeric representation is generated by:

(i) counting a first number of training objects that precede the training object in the ordered list and have both the at least one of the categorical feature values and event indicators with positive outcomes,

(ii) counting a second number of total training objects that precede the training object in the ordered list with the at least on of the categorical feature values, and

(iii) dividing the first number by the second number;

the generating the current numeric representation being done while generating the decision tree; and

send, to the first server, the set of models.

9. The method of claim 1 , wherein numeric representations are calculated only for combinations of categorical features that occur in the set of training objects.

Assignments (4)
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/0384 →
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 Jun 6, 2018
From: GULIN, ANDREY VLADIMIROVICH
To: YANDEX LLC
Reel/Frame 045996/0394 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2018
From: YANDEX LLC
To: YANDEX EUROPE AG
Reel/Frame 046002/0393 →
Priority Claims (1)
RU RU2017140973 · Nov 24, 2017 · national
Continuity (1)
Related Publication 20190164085A1 · May 30, 2019
Cited By (1)
US 12,659,130