IP Library Granted Patent US 12,682,253
Granted Patent B2
US 12,682,253 · App. 17/607,299 · Granted Jul 14, 2026

Method and device for constructing decision tree

Inventors: Yang Liu (Jiangsu, CN); Junbo Zhang (Jiangsu, CN); Mingxin Chen (Jiangsu, CN); Yingting Liu (Jiangsu, CN); Yu Zheng (Jiangsu, CN)
Assignee: Jingdong City (Nanjing) Technology Co., Ltd.
G06N5/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,682,253
App. No.
17/607,299
Granted
Jul 14, 2026
Kind
B2
Abstract

Disclosed in the embodiments of the present disclosure are a method and a device for constructing decision trees. A particular embodiment of the method comprises: sending, to at least one client, a request for acquiring statistical information of attribute information of a target category; receiving the statistical information of attribute information of the target category of samples stored by the clients; generating split point information according to the statistical information of attribute information of the target category of samples respectively stored by the clients, and sending the split point information to the at least one client.

Claims (63)

1 . A method for constructing a decision tree based on a plurality of data platforms under the premise of no exchange of original data information, the method comprising:

sending, by a control end that is hardware, to a plurality of client ends, a request for acquiring statistical information for attribute information of a target category;

receiving, by the control end and from the plurality of client ends, encrypted statistical information for attribute information of the target category of samples respectively stored at each client end of the plurality of client ends, wherein the encrypted statistical information is obtained by encrypting statistical information in a homomorphic encryption mode, and the statistical information comprises a maximum value and a minimum value for a tag of at least one category, a number of tags, and proportions of the tags;

decrypting the encrypted statistical information to obtain the statistical information of the plurality of client ends;

generating, by the control end, a split value and a split attribute based on maximum values and minimum values for the tag of the at least one category obtained from the plurality of client ends and numbers of the tags and proportions of the tags obtained from the plurality of client ends;

sending the split value and the split attribute to the plurality of client ends for constructing identical decision trees at the plurality of client ends, and

constructing, by the plurality of client ends, the identical decision trees based on the split value and the split attribute.

2 . The method according to claim 1 ,

wherein the generating the split value and the split attribute comprises:

integrating maximum values and minimum values of the attribute information of the target category of the samples respectively stored at the plurality of client ends, to obtain an overall maximum value and an overall minimum value of the attribute information of the target category; and

selecting the split value from between the overall minimum value and the overall maximum value.

3 . The method according to claim 2 ,

wherein the generating the split value and the split attribute further comprises:

for each candidate category in a candidate category set, obtaining a decreased value of an impurity of data split according to the each candidate category, based on statistical information of the plurality of client ends; and

determining a candidate category with a maximum decreased value as the split attribute.

4 . The method according to claim 3 , wherein the sending the request used for acquiring statistical information for the attribute information of the target category to the plurality of client ends comprises:

in response to there being no split attribute, selecting randomly a category from the candidate category set as the target category;

in response to there being the split attribute, determining the split attribute as the target category; and

sending the request for acquiring the statistical information for the attribute information of the target category to the plurality of client ends.

5 . The method according to claim 1 , further comprising:

communicating with the plurality of client ends in an encryption mode.

6 . An electronic device, comprising:

one or more processors; and

a storage apparatus, configured to store one or more programs,

wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method according to claim 1 .

7 . A non-transitory computer readable storage medium, storing a computer program, wherein the program, when executed by a processor, implements the method according to claim 1 .

8 . The method according to claim 1 , wherein the sending the split value and the split attribute to the plurality of client ends comprises:

sending the split value and the split attribute to the plurality of client ends until a preset tree construction termination condition is satisfied, wherein each client end repartitions the samples respectively stored at the each client end according to the split value and the split attribute to obtain nodes constituting a decision tree of the each client end, wherein each node of the decision tree corresponds to one split value, and reports statistical information to the control end in batches.

9 . The method according to claim 8 , wherein the tree construction termination condition comprises:

a sum of numbers of samples of identical nodes of the identical decision trees in the plurality of client ends being less than a predetermined parameter value.

10 . The method according to claim 1 , wherein the method further comprises: acquiring, by the control end, a number of samples under each node in nodes constituting a decision tree constructed at each client end, wherein each node of the decision tree corresponds to one split value;

in response to a number of samples under a node in a client end is null, receiving, by the client end, the split value and the split attribute broadcasted from a client end whose number of samples is not null and continuing constructing the decision tree using the received split value and the received split attribute.

11 . A method for constructing a decision tree based on a plurality of data platforms under the premise of no exchange of original data information, the method comprising:

receiving, from a control end that is hardware, a request for acquiring statistical information for attribute information of a target category;

performing, based on the target category, tree construction operations: encrypting, in a homomorphic encryption mode, statistical information for attribute information of the target category of samples stored locally to obtain encrypted statistical information, sending the encrypted statistical information to the control end, wherein the statistical information comprises a maximum value and a minimum value for a tag of at least one category, a number of tags, and proportions of the tags; receiving a split value and a split attribute returned by the control end, splitting the samples respectively stored according to the split value and the split attribute, and storing a node obtained by the splitting to build a decision tree; and outputting the decision tree in response to the node satisfying a preset tree construction termination condition; and

in response to the node not satisfying the preset tree construction termination condition, updating the target category according to the split value and the split attribute, and continuing to perform the tree construction operations based on the updated target category,

wherein the split value and the split attribute are generated by the control end based on maximum values and minimum values for the tag of the at least one category obtained from a plurality of client ends and numbers of the tags and proportions of the tags obtained from the plurality of client ends, and decision trees constructed at the plurality of client ends are identical to each other.

12 . The method according to claim 11 , wherein the tree construction termination condition comprises at least one of:

a sum of numbers of samples under identical nodes in the plurality of client ends being less than a predetermined parameter value.

13 . The method according to claim 11 , further comprising:

in response to a number of samples of the node being null, receiving an information broadcast from another node a number of samples thereof being not null, to continue to build the decision tree.

14 . The method according to claim 11 , wherein

the method further comprises:

encrypting the number of tags and the proportions of the tags.

15 . The method according to claim 11 , further comprising:

selecting randomly different sample subsets to generate at least one decision tree; and

combining the at least one decision tree into a random forest model.

16 . An electronic device, comprising:

one or more processors; and

a storage apparatus, configured to store one or more programs,

wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method according to claim 11 .

17 . A non-transitory computer readable storage medium, storing a computer program, wherein the program, when executed by a processor, implements the method according to claim 11 .

18 . A system for constructing a decision tree based on a plurality of data platforms under the premise of no exchange of original data information, the system comprising a control end and a plurality of client ends, wherein

the control end is a hardware and is configured to implement first operations, the first operations comprising:

sending, to the plurality of client ends, a request for acquiring statistical information for attribute information of a target category;

receiving encrypted statistical information for attribute information of the target category of samples respectively stored at each client end of the plurality of client ends, wherein the encrypted statistical information is obtained by encrypting statistical information in a homomorphic encryption mode, and the statistical information comprises a maximum value and a minimum value for a tag of at least one category, a number of tags, and proportions of the tags;

decrypting the encrypted statistical information to obtain the statistical information of the plurality of client ends;

generating a split value and a split attribute based on maximum values and minimum values for the tag of the at least one category obtained from the plurality of client ends and numbers of the tags and proportions of the tags obtained from the plurality of client ends;

sending the split value and the split attribute to the plurality of client ends for constructing identical decision trees at the plurality of client ends; and

the plurality of client ends are configured to implement second operations, the second operations comprising:

receiving, from the control end, the request for acquiring statistical information for attribute information of the target category;

performing, based on the target category, tree construction operations: sending the encrypted statistical information for the attribute information of the target category of the samples stored locally to the control end; receiving the split value and the split attribute returned by the control end, splitting the samples respectively stored according to the split value and the split attribute, and storing a node obtained by the splitting to build a decision tree; and outputting the decision tree in response to the node satisfying a preset tree construction termination condition; and

in response to the node not satisfying the preset tree construction termination condition, updating the target category according to the split value and the split attribute, and continuing to perform the tree construction operations based on the updated target category.