Scalable AI Model Architecture for Large Tabular Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing AI models, particularly Gradient-Boosted Trees like XGBoost, face challenges in scaling efficiently with large tabular datasets, leading to high computational burdens and inefficiencies in resource utilization, especially in dynamic and diverse hardware environments.
Innovation Solution
The solution involves integrating resource reduction techniques such as memory sharing, vector operations, and flexible use of processing units like AIP, GPU, TPU, and CPU, along with class-conditional scaling and multi-output XGBoost to enhance scalability and efficiency, optimizing data processing and resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If Gradient-Boosted Trees (XGBoost) are used for tabular data generation, then model performance on small datasets is improved, but scalability to large datasets deteriorates due to high computational burden
Solution Approach 1:
The patent segments the large dataset processing task into multiple smaller batches that can be processed independently and in parallel. The data is divided into chunks that fit within memory constraints, allowing the model to process large datasets incrementally without overwhelming computational resources.
Solution Approach 2:
The patent introduces distributed computing across multiple processors or machines as an additional dimension for scaling. By distributing the computational workload across multiple nodes in a cluster, the system achieves scalability beyond the limitations of a single processor's memory and computing power.
2Manufacturing precision
If larger datasets are processed to improve model accuracy, then model accuracy is improved, but memory usage increases leading to resource inefficiency
Solution Approach 1:
The patent processes data in partial batches rather than loading the entire dataset at once. Each batch is processed independently, and results are accumulated. This allows the model to eventually process the complete large dataset while maintaining low memory usage during each individual processing step.
Solution Approach 2:
The patent discards processed data from memory after each batch is processed and its contributions are accumulated. Memory is continuously recovered by releasing previously allocated memory blocks, allowing the same memory resources to be reused for subsequent batches, thereby handling large datasets with limited memory.
3Speed
If computational resources are increased to handle large datasets, then processing speed is improved, but resource efficiency deteriorates due to high computational burden
Solution Approach 1:
The patent merges multiple small processing tasks into a unified distributed computing framework. By combining the computational efforts of multiple workers processing different batches, the system achieves high processing speed for large datasets while maintaining efficiency through coordinated resource utilization and avoiding redundant computations.
Solution Approach 2:
The patent creates a universal processing framework that can handle both small and large datasets using the same incremental batch processing approach. The system is designed to be multi-functional, adapting its resource allocation dynamically based on dataset size, thereby maintaining computational efficiency across different scales without requiring specialized high-performance hardware.
Data Source
AI summary
An example operation includes at least one of loading an Artificial Intelligence (AI) model from a storage, receiving input data for the AI model, creating a multi-output Gradient Boosted Tree (GBT) based on the input data, creating a decision tree with a split objective guided by at least one output of the multi-output GBT, creating a Scalable AI (SAI) model comprising the AI model, the decision tree, and the multi-output GBT, reducing memory use of the SAI by at least one of: deallocating memory held by the SAI when no longer used, loading input data in shared memory for sharing between worker-processes of the AI model, or storing arrays in memory as memory mapped files, and reducing processor cycles use of the SAI by performing computations by at least one of: using 32-bit floating-point resolution, using 64-bit floating-point resolution, using a same floating-point resolution for all calculations, or using vector floating-point operations on at least one of Graphical Processing Units (GPUs), Tensor Processing Units (TPUs), Neural Processing Units (NPUs), Artificial Intelligence Processors (AIPs), or Central Processing Units (CPUs).


