Batched Machine Learning Pipeline Training via Resource-Aware Task Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for training machine learning pipelines with multiple operators on large datasets are inefficient due to memory constraints, as they only address training one operator at a time, necessitating an optimization approach for the entire pipeline.

Innovation Solution

A resource usage-aware approach is implemented to identify and order tasks within a machine learning pipeline, creating a task graph that prioritizes partial-fit tasks over transform tasks and minimizes unnecessary data loading and spilling, allowing for efficient batched training across multiple operators.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If batch-wise training is used for a single machine-learning operator, then memory constraints are resolved by splitting data into smaller batches, but the training of entire pipelines with multiple operators cannot be optimized

Engineering Contradiction:
Improvedata batch sizeVSAvoidpipeline training capability
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent segments the machine learning pipeline training into multiple independent tasks that can be executed in different orders. Each task represents a specific operation (e.g., partial-fit, transform) on specific data batches, allowing the system to process pipeline training as a series of manageable, reorderable units rather than a fixed sequential process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic task ordering based on resource availability and data locality. The execution order of tasks is not fixed but adapts based on which data batches are currently loaded in memory, allowing the system to dynamically adjust the training sequence to maximize memory utilization and minimize data loading overhead.

Inventive Principle:
Principle #15Dynamics

2Productivity

If all data batches are loaded into local memory simultaneously, then processing efficiency is improved, but memory usage exceeds available capacity

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent pre-loads data batches into memory before they are needed for task execution. By anticipating which batches will be required and loading them in advance, the system reduces the need for frequent data loading during task execution, thereby improving processing efficiency without requiring all batches to be simultaneously present in memory.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a memory management strategy where data batches are discarded from memory after being processed and can be reloaded when needed again. This allows the system to reuse memory space for different batches at different times, maintaining high processing efficiency while keeping peak memory usage within available capacity.

Inventive Principle:
Principle #34Discarding and recovering

3Quantity of substance

If data is frequently loaded and spilled during pipeline training, then memory constraints are managed, but processing overhead increases

Engineering Contradiction:
Improvememory managementVSAvoidprocessing overhead
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent incorporates feedback mechanisms that monitor memory usage and task execution progress to dynamically adjust data loading and spilling decisions. The system continuously evaluates the current state of memory resources and task dependencies, using this feedback to optimize when to load or spill data batches, thereby minimizing unnecessary I/O operations and reducing processing overhead.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12118400B2Performing batched training for machine-learning pipelines
Publication Date: 2024.10.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12118400B2 patent drawing
  • US12118400B2 patent drawing
  • US12118400B2 patent drawing

AI summary

A computer-implemented method according to one embodiment includes identifying a machine learning pipeline and a plurality of training data batches; creating a plurality of tasks, based on the machine learning pipeline; and determining an order in which the plurality of tasks is executed, utilizing a resource usage-aware approach.