Parallel Decision Tree Framework for Large Dataset Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Building decision trees on large datasets is time-consuming and resource-intensive, and existing methods do not effectively support quick model building and classification tasks, especially when considering economic performance and quality of service constraints.

Innovation Solution

A scalable architecture that dynamically allocates resources and uses approximate histograms to improve decision tree building efficiency, incorporating auto-replicate, auto-distribute, auto-duplicate, and auto-allocate operations to optimize performance across multiple customers and jobs, while considering economic constraints and quality of service.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If traditional decision tree building methods are used on large datasets, then model quality and depth can be improved, but building time and resource consumption increase significantly

Engineering Contradiction:
Improvemodel qualityVSAvoidmodel building time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent segments the decision tree building process into multiple parallel tasks that can be executed concurrently on different data partitions. The system divides the large dataset into smaller chunks and processes them simultaneously using multiple workers, thereby reducing overall building time while maintaining model quality through coordinated aggregation of results.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-processing data into appropriate formats and structures before the actual model building begins. It also pre-allocates computational resources and sets up parallel processing frameworks in advance, which accelerates the subsequent model building process without compromising the final model quality.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If more hardware resources are allocated to build models faster, then productivity improves, but economic cost increases

Engineering Contradiction:
Improvemodel building speedVSAvoidcomputational resource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts resource allocation based on the actual progress and requirements of model building tasks. It monitors computational needs in real-time and scales resources up or down accordingly, rather than allocating fixed maximum resources. This dynamic approach maintains high productivity while optimizing resource consumption and reducing unnecessary energy waste.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes key parameters of the processing system adaptively, such as the number of parallel workers, batch sizes, and data partitioning strategies. By adjusting these parameters based on dataset characteristics and resource availability, the system achieves high productivity without consistently consuming maximum resources, thereby improving the productivity-to-cost ratio.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If the system supports multiple customers and concurrent tasks, then service coverage and quality of service improve, but system complexity increases

Engineering Contradiction:
Improvemulti-customer supportVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system implements a universal parallel processing framework that serves multiple customers and different types of machine learning tasks through a common architecture. The same infrastructure handles various customers' decision tree building needs concurrently, eliminating the need for separate systems for each customer and reducing overall system complexity while maintaining high adaptability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces intermediary components such as task queues, resource managers, and coordination layers that mediate between multiple customers and the underlying computational resources. These intermediaries abstract the complexity of managing concurrent tasks, allowing the system to support multiple customers efficiently without directly exposing the underlying system complexity to users.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If approximate histograms are used instead of exact data processing, then processing speed improves, but measurement precision decreases

Engineering Contradiction:
Improvedata processing speedVSAvoiddata accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system applies approximate histograms as a partial processing approach for certain computational steps, particularly in scenarios where exact precision is not critical for the final outcome. This partial use of approximation accelerates processing speed in non-critical paths while maintaining exact processing where needed, achieving a balance between speed and accuracy based on the specific requirements of different processing stages.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9558036B1Evolving parallel system to automatically improve the performance of multiple concurrent tasks on large datasets
Publication Date: 2017.01.31 BIGML
  • US9558036B1 patent drawing
  • US9558036B1 patent drawing
  • US9558036B1 patent drawing

AI summary

We describe a high-level computational framework especially well suited to parallel operations on large datasets. In a system in accordance with this framework, there is at least one, and generally several, instances of an architecture deployment as further described. We use the term “architecture deployment” herein to mean a cooperating group of processes together with the hardware on which the processes are executed. This is not to imply a one-to-one association of any process to particular hardware. To the contrary, as detailed below, an architecture deployment may dynamically spawn another deployment as appropriate, including provisioning needed hardware. The active architecture deployments together form a system that dynamically processes jobs requested by a user-customer, in accordance with customer's monetary budget and other criteria, in a robust and automatically scalable environment.