GPU Distributed Graph Model Training Acceleration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current machine learning model training processes are time-consuming and inefficient, especially for real-time applications, as they require extensive data processing and are not adaptable to changing patterns and trends.
Innovation Solution
The method employs a distributed approach using multiple graphics processing units (GPUs) to accelerate machine learning model building, scoring, and tree traversal, leveraging graph learning algorithms to identify communities in data and merge results based on similarity scores, thereby reducing model build and score time while maintaining accuracy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional machine learning training methods are used, then model accuracy can be achieved through extensive data processing, but training time becomes excessively long (weeks required)
Solution Approach 1:
The patent divides the machine learning training process into multiple independent tasks that can be executed simultaneously on different GPUs. The graph learning algorithm processes different portions of the computational graph in parallel, segmenting the training workload to reduce total training time while maintaining accuracy through comprehensive data processing.
Solution Approach 2:
The patent introduces a parallel processing dimension by deploying multiple GPUs to handle the training workload. This transitions from sequential CPU-based training to parallel GPU-based training, adding a temporal dimension to the processing and significantly reducing training time from weeks to much shorter durations.
2Reliability
If extensive data processing is performed to ensure accurate models, then model reliability improves, but processing speed decreases making real-time applications difficult
Solution Approach 1:
The patent segments the data processing tasks across multiple GPUs, allowing different datasets or different aspects of the same dataset to be processed simultaneously. This maintains comprehensive data processing for reliability while achieving real-time processing speeds through parallel execution.
Solution Approach 2:
The system performs preliminary graph learning and community detection tasks during the training phase using multiple GPUs, preparing processed results that can be quickly applied to new data. This preliminary processing enables fast real-time predictions without requiring extensive processing at prediction time.
3Measurement precision
If graph learning algorithms process large datasets to identify patterns, then prediction accuracy improves, but computation time increases significantly
Solution Approach 1:
The patent segments the large dataset into portions that can be processed simultaneously on multiple GPUs. Each GPU processes a subset of the data to identify local patterns, which are then combined to form comprehensive predictions. This maintains prediction accuracy through thorough data analysis while reducing computation time through parallel processing.
Solution Approach 2:
The patent adds a parallel processing dimension by distributing the graph learning computations across multiple GPUs. This transforms a single long computation into multiple shorter concurrent computations, maintaining comprehensive pattern identification while significantly reducing total computation time.
4Productivity
If traditional single-GPU or CPU processing is used, then system complexity remains low, but processing capability for large datasets is insufficient
Solution Approach 1:
The patent employs a multi-GPU system where each GPU performs multiple functions: processing different portions of data, executing different graph learning operations, and contributing to the overall model training. This universal approach increases processing capability for large datasets while managing system complexity through standardized parallel processing architecture.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for accelerating machine learning using a plurality of graphics processing units (GPUs), involving receiving data for a graph to generate a plurality of random samples, and distributing the random samples across a plurality of GPUs is disclosed. The method may comprise determining a plurality of communities from the random samples using unsupervised learning performed by each GPU. A plurality of sample groups may be generated from the communities and may be distributed across the GPUs, wherein each GPU merges communities in each sample group by converging to an optimal degree of similarity. In addition, the method may also comprise generating from the merged communities a plurality of subgraphs dividing each sub-graph into a plurality of overlapping clusters, distributing the plurality of overlapping clusters across the plurality of GPUs, and scoring each cluster in the plurality of overlapping clusters to train an AI model.