SCALABLE, MEMORY-EFFICIENT MACHINE LEARNING AND PREDICTION FOR ENSEMBLES OF DECISION TREES FOR HOMOGENEOUS AND HETEROGENEOUS DATASETS
First Claim
1. A method of implementing a learning ensemble of decision trees in a single machine computing environment, comprising:
- implementing, within a single-machine computing environment comprised of hardware and software components that include at least one processor, the steps of;
inlining relevant statements to integrate function code into a caller'"'"'s code so that repetitive pushing and popping of register content to and from a stack at each compilation is eliminated;
implementing a contiguous buffer arrangement for register content to be compiled in a plurality of buffers; and
defining and enforcing a plurality of type constraints on programming interfaces that access and manipulate at least one machine learning data set so that a plurality of procedures for inducing a forest induction, a tree induction, and a node induction are instantiated for classes implementing the at least one machine learning data set in learning an ensemble of decision trees.
0 Assignments
0 Petitions
Accused Products
Abstract
Optimization of machine intelligence utilizes a systemic process through a plurality of computer architecture manipulation techniques that take unique advantage of efficiencies therein to minimize clock cycles and memory usage. The present invention is an application of machine intelligence which overcomes speed and memory issues in learning ensembles of decision trees in a single-machine environment. Such an application of machine intelligence includes inlining relevant statements by integrating function code into a caller'"'"'s code, ensuring a contiguous buffering arrangement for necessary information to be compiled, and defining and enforcing type constraints on programming interfaces that access and manipulate machine learning data sets.
12 Citations
37 Claims
-
1. A method of implementing a learning ensemble of decision trees in a single machine computing environment, comprising:
-
implementing, within a single-machine computing environment comprised of hardware and software components that include at least one processor, the steps of; inlining relevant statements to integrate function code into a caller'"'"'s code so that repetitive pushing and popping of register content to and from a stack at each compilation is eliminated; implementing a contiguous buffer arrangement for register content to be compiled in a plurality of buffers; and defining and enforcing a plurality of type constraints on programming interfaces that access and manipulate at least one machine learning data set so that a plurality of procedures for inducing a forest induction, a tree induction, and a node induction are instantiated for classes implementing the at least one machine learning data set in learning an ensemble of decision trees. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system comprising:
-
a computer processor; and at least one computer-readable storage medium operably coupled to the computer processor and having program instructions stored therein, the computer processor being operable to execute the program instructions to optimize machine intelligence for implementing a learning ensemble of decision trees in a single-machine environment in a plurality of data processing modules, the plurality of data processing modules configured to integrate function code into a caller'"'"'s code by inlining relevant statements so that repetitive pushing and popping of register content to and from a stack at each compilation is eliminated, implement a contiguous arrangement for register content to be compiled in a plurality of buffers, and define and enforce type constraints on programming interfaces that access and manipulate machine learning data sets so that a plurality of procedures for inducing a forest induction, a tree induction, and a node induction are instantiated for classes implementing the machine learning data sets in a process for implement the learning ensemble of decision trees. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method of implementing a learning ensemble of decision trees in a single-machine computing environment, comprising:
-
implementing, within a single-machine computing environment comprised of hardware and software components that include at least one processor, a compiler optimization routine that determines run time compilation requirements by copying compiled code for a function into a caller'"'"'s compiled code so that function call overhead from pushing and popping register content and local variables to a stack for each function call is eliminated; aligning buffers comprising a plurality of caches to place bytes required for compilation in a contiguous arrangement so that fewer pages of data are pulled from memory to blocks in the plurality of caches, the plurality of caches including a feature buffer cache that copies dis-contiguous feature values comprised of all instances with respect to a specific feature dimension into the contiguous arrangement, and an instance buffer cache that copies a dis-contiguous feature vector for an instance into the contiguous arrangement; and applying one or more of class and function templates to target specific datasets by enforcing type constraints on programming interfaces that access and manipulate at least one machine learning data set so that a plurality of procedures for inducing a forest induction, a tree induction, and a node induction are instantiated for classes implementing the at least one machine learning data set in learning an ensemble of decision trees. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
Specification