Decision Tree Training Using Database System
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Machine learning techniques like decision trees are resource-intensive and computationally costly due to the need for large amounts of training data and processing power, making them time-consuming for classification or regression tasks.
Innovation Solution
A method is described for training decision trees using a database system by selecting subsets of features and data, calculating information gain, and generating decision nodes in parallel, which reduces computational requirements and accelerates the training process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional decision tree training methods are used with large datasets and multiple features, then classification accuracy is improved, but computational cost and training time increase significantly
Solution Approach 1:
The patent divides the training process into multiple parallel workers that each handle subsets of features and data. Each worker independently calculates information gain for assigned features, allowing the overall training process to be segmented into concurrent tasks that reduce total training time while maintaining classification accuracy.
Solution Approach 2:
The patent calculates information gain for all features but selectively uses only the top-k features with highest information gain for actual decision node creation. This partial action approach computes more than needed (all features) but applies only the most valuable subset, reducing the effective computational burden while preserving accuracy.
2Measurement precision
If traditional decision tree training methods are used with large datasets and multiple features, then classification accuracy is improved, but computational resources and processing power requirements increase
Solution Approach 1:
The training workload is segmented across multiple worker processes, each responsible for calculating information gain for specific feature subsets. This segmentation distributes computational power requirements across multiple smaller tasks that can be executed in parallel, reducing the peak computational power needed by any single process.
Solution Approach 2:
The system computes information gain for all features but only utilizes the top-k features for building decision nodes. This selective application of computational effort reduces the overall computational power required while maintaining the accuracy benefits of comprehensive feature analysis.
3Measurement precision
If information gain is calculated for all features using traditional methods, then model accuracy is improved, but the complexity of the training process increases
Solution Approach 1:
The complex training process is segmented into distinct worker tasks, each handling specific feature calculations. This segmentation simplifies the overall process by breaking it into manageable, independent units that can be coordinated through a manager-worker architecture, reducing the perceived complexity while maintaining comprehensive feature analysis.
Solution Approach 2:
The system performs complete information gain calculation for all features but only applies the top-k results to decision node creation. This partial application simplifies the final model construction phase while retaining the accuracy benefits of comprehensive feature evaluation.
Data Source
AI summary
In an embodiment, a computer-implemented method for training a decision tree using a database system, the decision tree comprising a plurality nodes, comprises, by one or more computing devices: storing in a database input data for training the decision tree, the input data comprising a plurality of feature values corresponding to a plurality of features; generating a particular node of the plurality of decision nodes by: selecting a subset of the plurality of features and a subset of the input data; using one or more queries to the database system, for each feature of the subset of the plurality of features, calculating an information gain associated with the feature based on the subset of the input data; identifying a particular feature of the subset of the plurality of features associated with the highest information gain; associating the particular node with the particular feature, wherein the particular node causes the decision tree to branch based on the particular feature.


