Gradient Boosted Trees Data Parallel Ensemble Training

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Gradient Boosted Trees (GBT) in machine learning are computationally expensive due to high I/O and communication costs in existing parallel implementations, which limit their performance.

Innovation Solution

Implementing data-parallel ensemble training for GBT by splitting the training dataset into portions assigned to thread groups, allowing each thread group to train and validate decision trees in parallel, with point-to-point data transfer and repeated iterations until a predetermined threshold is satisfied, resulting in faster execution and diverse tree ensembles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data parallel implementation is used for GBT, then training speed is improved through parallel processing, but I/O and communication costs increase due to collective reduction operations

Engineering Contradiction:
Improvetraining speedVSAvoidI/O and communication costs
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent divides the training process into distinct segments: data parallel segmentation where the dataset is split across multiple processors, and tree ensemble segmentation where multiple tree ensembles are built independently. Each processor works on a portion of the data and builds local tree ensembles, avoiding the need for frequent collective reduction operations while maintaining parallel processing efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-splitting the dataset into partitions and pre-assigning them to different processors before training begins. This allows each processor to independently process its assigned data partition without requiring communication or coordination during the actual tree building process, thereby reducing I/O and communication costs.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If feature parallel implementation is used for GBT, then computational efficiency is improved through parallel processing, but communication overhead increases due to collective reduction operations

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidcommunication overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent segments the feature space by building multiple diverse tree ensembles that process different aspects of the data. Each ensemble processes features independently, and the final prediction is obtained by averaging the outputs of all ensembles. This segmentation approach allows parallel processing without requiring frequent communication or collective reduction operations between processors.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If sequential GBT training is used, then model accuracy is maintained through thorough data processing, but training time increases due to lack of parallelization

Engineering Contradiction:
Improvemodel accuracyVSAvoidtraining time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the training task into multiple independent segments that can be processed in parallel. Each processor builds a complete tree ensemble on its assigned data partition, ensuring thorough processing similar to sequential training. The final model combines results from all segments, maintaining accuracy while achieving parallel speedup.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates multiple copies of the tree ensemble structure across different processors, with each processor building and maintaining a complete ensemble on its local data. This copying approach allows parallel processing of complete models rather than partial models, preserving the thoroughness of sequential training while enabling parallelization.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11948056B2Communication-efficient data parallel ensemble boosting
Publication Date: 2024.04.02 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11948056B2 patent drawing
  • US11948056B2 patent drawing
  • US11948056B2 patent drawing

AI summary

Data-parallel ensemble training using gradient boosted trees includes training an ensemble of trees. The training includes splitting a training dataset into several data portions. Each data portion is assigned to each thread group from a set of thread groups. The training further includes executing a stage, in which each thread group, in parallel, trains a respective ensemble of decision trees. Executing the stage includes performing, by each thread group, in parallel, machine learning operations for the respective ensemble of decision trees using the data portion assigned to each thread group. Further, each thread group validates, in parallel, the respective ensemble of decision trees using a data portion assigned to another thread group. Execution of the stage is repeated until a predetermined threshold is satisfied. Further, a prediction is inferenced using the ensemble of decision trees that is formed using the respective ensemble of trees from each of the thread groups.