IP Library › Granted Patent US 12,541,572
Granted Patent B2
US 12,541,572 · App. 17/457,698 · Granted Feb 3, 2026

Accelerating decision tree inferences based on complementary tensor operation sets

Inventors: Nikolaos Papandreou (Thalwil, CH); Charalampos Pozidis (Thalwil, CH); Milos Stanisavljevic (Adliswil, CH); Jan Van Lunteren (Rüschlikon, CH); Thomas Parnell (Zürich, CH); Cedric Lichtenau (Stuttgart, DE); Andrew M. Sica (Oxford, CT)
Assignee: International Business Machines Corporation
G06F18/2323G06F18/2411G06N5/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,541,572
App. No.
17/457,698
Granted
Feb 3, 2026
Kind
B2
Abstract

A tensor representation of a machine learning inferences to be performed is built by forming complementary tensor subsets that respectively correspond to complementary subsets of one or more leaf nodes of one or more decision trees based on statistics of the one or more leaf nodes of the one or more decision trees and data capturing attributes of one or more split nodes of the one or more decision trees and the one or more leaf nodes of the decision trees. The complementary tensor subsets are ranked such that a first tensor subset and a second tensor subset of the complementary tensor subsets correspond to a first leaf node subset and a second leaf node subset of the complementary subsets of the one or more leaf nodes.

Claims (71)

1 . A computer-implemented method for performing machine learning inferences in a computer system including a hardware accelerator, the inferences performed on a set of input records and based on decision trees, the computer-implemented method comprising:

building, from data structures populated in a memory of a computerized unit of a computer system, tensor representations of machine learning inferences to be performed by forming complementary tensor subsets that respectively correspond to complementary subsets of leaf nodes of a plurality of decision trees based on statistics of the leaf nodes and on data capturing attributes of the leaf nodes and split nodes of the plurality of decision trees, wherein:

the complementary tensor subsets are ranked according to statistics reflecting a propensity of individual leaf nodes to be reached such that a first tensor subset and a second tensor subset correspond to a first leaf node subset and a second leaf node subset, respectively, of the complementary subsets of the leaf nodes, and

the individual leaf nodes of the first leaf node subset are the leaf nodes having a higher propensity to be reached than the leaf nodes of the second leaf node subset according to the statistics and according to the data capturing attributes of the split nodes and the leaf nodes;

causing, by the computerized unit, tensor operations to be processed by a hardware accelerator in network communication within the computer system;

processing, by the hardware accelerator, a set of input records by performing the tensor operations on the first tensor subset to obtain a first inference result for a first subset of input records of the set of input records in accordance with the leaf nodes of the first leaf node subset, whereby remaining input records, for which no inference result has yet been obtained, form a second subset of input records; and

processing, by the hardware accelerator, the second subset of input records by performing the tensor operations on the second tensor subset to obtain a second inference result for the second subset of the input records in accordance with the leaf nodes of the second leaf node subset.

2 . The method of claim 1 , wherein one or more operations required to process the input records are offloaded to a dedicated chip designed to perform tensor operations.

3 . The computer-implemented method of claim 1 , further comprising:

capturing feature values of the input records and further comprising:

populating from at least the feature values one or more first arrays with the feature values of the input records, one or more second arrays with attributes of the split nodes of the plurality of decision trees, and one or more third arrays with attributes of the leaf nodes; and

wherein:

the tensor operations are executed based on operands formed based at least on the one or more first arrays, the one or more second arrays, and the complementary tensor subsets, and

the complementary tensor subsets are formed based on the third arrays.

4 . The computer-implemented method of claim 3 , wherein:

one or more columns of the second arrays correspond to the split nodes and the one or more third arrays correspond to the leaf nodes,

the complementary tensor subsets are formed by reordering the columns of the one or more third arrays according to the statistics, and splitting the columns of the one or more third arrays as reordered to obtain one or more complementary subarrays,

the one or more complementary subarrays include one or more first subarrays and one or more second subarrays,

the first tensor subset is formed based on the one or more first subarrays, and

the second tensor subset is formed based on the one or more second subarrays.

5 . The computer-implemented method of claim 4 , wherein:

the tensor operations are based on 3D tensors, and

the 3D tensors are zero-padded according to maximal dimensions of the plurality of decision trees.

6 . The method of claim 4 , wherein the one or more third arrays, once reordered, are split according to at least one threshold value with respect to the statistics accessed for the leaf nodes.

7 . The computer-implemented method of claim 4 , wherein;

the one or more first arrays comprise an array x for each input record of the set of input records, the array x reflecting a row vector X encoding feature values of each input record;

the one or more second arrays comprise at least two arrays for each decision tree of the plurality of decision trees, the at least two arrays including an array a reflecting a matrix A having a number of columns corresponding to a number of split nodes of each decision tree and an array b reflecting a row vector B of first comparands,

the one or more third arrays comprise three arrays for said each decision tree, the three arrays including an array c reflecting a matrix C having a number of columns corresponding to a number of leaf nodes of each decision tree, an array d reflecting a row vector D of second comparands, and an array e reflecting a matrix E encoding potential inference results.

8 . The computer-implemented method of claim 1 , further comprising:

training the plurality of decision trees based on a training set of input records; and

running the plurality of decision trees based on one of the training set of input records and a validation set of input records to obtain the statistics.

9 . The computer-implemented method of claim 1 , further comprising:

updating the statistics upon obtaining one or more of the first inference results and the second inference results; and

building an updated tensor representation based on the updated statistics.

10 . The computer-implemented method of claim 1 , wherein:

the decision trees form an ensemble model; and

further comprising:

obtaining an ensemble inference result for each of the input records based on each of the first inference results and the second inference results.

11 . The computer-implemented method of claim 1 , wherein:

each of the decision trees is a binary tree, and

each inference result of each of the first set of inference results and the second set of inference results is obtained as a classification result or a regression result.

12 . The computer-implemented method of claim 1 , wherein:

the tensor representation is built by forming at least three complementary tensor subsets, these including a third tensor subset corresponding to a third leaf node subset of the complementary leaf node subsets, wherein, according to the statistics reflecting the propensity of individual leaf nodes to be reached, the leaf nodes of the second leaf node subset have a higher propensity to be reached than the leaf nodes of the third leaf node subset;

remaining input records, for which no inference result has yet been obtained after processing the input records of the second subset by performing the tensor operations on the second tensor subset, form a third subset of the set of input records; and

further comprising:

processing the input records of the third subset by performing the tensor operations on the third tensor subset to obtain third inference results for the third subset of the input records in accordance with the leaf nodes of the third leaf node subset.

13 . The method of claim 1 , wherein at least one decision tree of the decision trees has a depth that is larger than or equal to six.

14 . The computer-implemented method of claim 1 , wherein the statistics are based on respective numbers of times the leaf nodes of corresponding of decision trees are reached upon running the plurality of decision trees.

15 . The computer-implemented method of claim 1 , wherein the statistics are based on decision paths in the plurality of decision trees, which are translated into individual statistics of sole leaf nodes.

16 . The computer-implemented method of claim 1 , wherein the propensity of individual leaf nodes to be reached is based on a ranking of available decision paths to a given leaf node from most probably path to least probable path.

17 . A computer system for performing machine learning inferences, the inferences performed on a set of input records and based on decision trees, the computer system comprising:

one or more computerized units including one or more computer processors;

a hardware accelerator in network communication with the one or more computerized units;

one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising:

program instructions to build, from data structures populated in a memory of a computerized unit of the computer system, tensor representations of machine learning inferences to be performed by forming complementary tensor subsets that respectively correspond to complementary subsets of leaf nodes of a plurality of decision trees based on statistics of the leaf nodes and on data capturing attributes of the leaf nodes and split nodes of the plurality of decision trees, wherein:

the complementary tensor subsets are ranked according to statistics reflecting a propensity of individual leaf nodes to be reached such that a first tensor subset and a second tensor subset correspond to a first leaf node subset and a second leaf node subset, respectively, of the complementary subsets of the leaf nodes, and

the individual leaf nodes of the first leaf node subset are the leaf nodes having a higher propensity to be reached than the leaf nodes of the second leaf node subset according to the statistics and according to the data capturing attributes of the split nodes and the leaf nodes;

program instructions to cause, by the computerized unit, tensor operations to be processed by the hardware accelerator;

program instructions to process, by the hardware accelerator, a set of input records by performing the tensor operations on the first tensor subset to obtain a first inference result for a first subset of input records in accordance with the leaf nodes of the first leaf node subset, whereby remaining input records, for which no inference result has yet been obtained, form a second subset of input records; and

program instructions to process, by the hardware accelerator, the second subset of input records by performing the tensor operations on the second tensor subset to obtain a second inference result for the second subset of the input records in accordance with the leaf nodes of the second leaf node subset.

18 . The computer system of claim 17 , wherein the hardware accelerator includes a dedicated chip, designed for tensor operations.

19 . A computer program product for performing machine learning inferences in a computer system including a hardware accelerator, the inferences performed on a set of input records and based on decision trees, the computer program product comprising:

one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media, the program instructions comprising:

program instructions to build, from data structures populated in a memory of a computerized unit of a computer system, tensor representations of machine learning inferences to be performed by forming complementary tensor subsets that respectively correspond to complementary subsets of leaf nodes of a plurality of decision trees based on statistics of the leaf nodes and on data capturing attributes of the leaf nodes and split nodes of the plurality of decision trees, wherein:

the complementary tensor subsets are ranked according to statistics reflecting a propensity of individual leaf nodes to be reached such that a first tensor subset and a second tensor subset correspond to a first leaf node subset and a second leaf node subset, respectively, of the complementary subsets of the leaf nodes, and

the individual leaf nodes of the first leaf node subset are the leaf nodes having a higher propensity to be reached than the leaf nodes of the second leaf node subset according to the statistics and according to the data capturing attributes of the split nodes and the leaf nodes;

program instructions to cause, by the computerized unit, tensor operations to be processed by a hardware accelerator in network communication within the computer system;

program instructions to process, by the hardware accelerator, a set of input records by performing the tensor operations on the first tensor subset to obtain a first inference result for a first subset of input records in accordance with the leaf nodes of the first leaf node subset, whereby remaining input records, for which no inference result has yet been obtained, form a second subset of input records; and

program instructions to process, by the hardware accelerator, the second subset of input records by performing the tensor operations on the second tensor subset to obtain a second inference result for the second subset of the input records in accordance with the leaf nodes of the second leaf node subset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2021
From: PAPANDREOU, NIKOLAOS; POZIDIS, CHARALAMPOS; STANISAVLJEVIC, MILOS; VAN LUNTEREN, JAN; PARNELL, THOMAS; LICHTENAU, CEDRIC; SICA, ANDREW M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058305/0205 →
Continuity (1)
Related Publication 20230177120A1 · Jun 8, 2023
References Cited (32)
US 10762517B2 · Vadakattu · 2020 [cited by examiner]
US 20070053563A1 · Tu · 2007 [cited by applicant]
US 20070253624A1 · Becker · 2007 [cited by examiner]
US 20110307423A1 · Shotton · 2011 [cited by examiner]
US 20130339158A1 · Xie · 2013 [cited by examiner]
US 20150117450A1 · Thibaut · 2015 [cited by examiner]
US 20170061327A1 · Dong · 2017 [cited by examiner]
US 20190197141A1 · Gomez · 2019 [cited by applicant]
US 20200167654A1 · Guo · 2020 [cited by applicant]
US 20200258057A1 · Farahat · 2020 [cited by examiner]
US 20200311613A1 · Ma · 2020 [cited by applicant]
US 20200377105A1 · Murashkin · 2020 [cited by applicant]
US 20230177351A1 · Papandreou et al. · 2023 [cited by applicant]
CN 105389585A · 2016 [cited by applicant]
CN 111125628A · 2020 [cited by applicant]
CN 111798003A · 2020 [cited by applicant]
CN 111639243B · 2021 [cited by applicant]
CN 111898694A · 2021 [cited by applicant]
CN 108388904B · 2022 [cited by applicant]
WO 2020050886A1 · 2020 [cited by applicant]
WO 2023105348A1 · 2023 [cited by applicant]
WO 2023105359A1 · 2023 [cited by applicant]
Dudek et al., “Efficient Contraction of Large Tensor Networks for Weighted Model Counting Through Graph Decompositions”, ARxIV:190804381V2 [CS.Ds], Apr. 27, 2020, 31 Pgs. [cited by applicant]
Jiang et al., “Efficient Nonmyopic Bayesian Optimization via One-Shot Multi-Step Trees”, ARxIV:2006.15779V1 [cs.LG], Jun. 29, 2020, p. 16. [cited by applicant]
Lin et al., “Hard-ODT: Hardware-Friendly Online Decision Tree Learning Algorithm and System”, IEEE Dec. 11, 2020, arXiv:2012.06272v1 [csLG], 14 Pgs. [cited by applicant]
Nakandala et al., “A Tensor Compiler for Unified Machine Learning Prediction Serving”, Oct. 19, 2020, arXiv:2010.04804v3 [cs.LG], 19 Pgs. [cited by applicant]
Owaida et al., “Scalable Inference of Decision Tree Ensembles: Flexible Design for CPU-FPGA Platforms”, Sep. 4, 2017, 10.23919/FPL.2017.8056784, IEEEE Xplore, 8 Pgs. [cited by applicant]
IBM Appendix P., “List of IBM Patents or Patent Applications to be Treated as Related”, Dated Herewith, 2 pages. [cited by applicant]
Papandreou et al;, “Accelerating Decision Tree Inferences Based On Complementary Tensor Operation Sets”, Filed Dec. 6, 2021, U.S. Appl. No. 17/457,698, 37 Pgs. [cited by applicant]
“Patent Cooperation Treaty PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration”, International application No. PCT/IB20… [cited by applicant]
“Patent Cooperation Treaty PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration”, International application No. PCT/IB20… [cited by applicant]
Essen et al., “Accelerating a Random Forest Classifier: Multi-Core, GP-GPU, or FPGA?”, 2012 IEEE 20th International Symposium on Field-Programmable Custom Computing Machines, Jul. 2012, 10 pages, https://ieeexplore.ieee… [cited by applicant]