Scaling machine learning using approximate counting
First Claim
Patent Images
1. A method comprising:
- storing, by a computer device and in a plurality of memory locations in a memory, values relating to a feature of a feature set;
subjecting, by the computer device, a string, associated with the feature, to multiple, different hash functions to generate multiple, different hash values;
identifying, by the computer device and for each of the multiple, different hash values, a respective memory location, of the plurality of memory locations, in the memory;
reading, by the computer device, the values stored at the respective memory locations;
performing, by the computer device, an operation on the read values, from the respective memory locations, to obtain updated values, the performing including;
identifying a value from the read values,updating the value, andreplacing each of the read values with the updated value; and
using, by the computer device, the updated values to make a prediction regarding particular data.
1 Assignment
0 Petitions
Accused Products
Abstract
A system may track statistics for a number of features using an approximate counting technique by: subjecting each feature to multiple, different hash functions to generate multiple, different hash values, where each of the hash values may identify a particular location in a memory, and storing statistics for each feature at the particular locations identified by the hash values. The system may generate rules for a model based on the tracked statistics.
36 Citations
20 Claims
-
1. A method comprising:
-
storing, by a computer device and in a plurality of memory locations in a memory, values relating to a feature of a feature set; subjecting, by the computer device, a string, associated with the feature, to multiple, different hash functions to generate multiple, different hash values; identifying, by the computer device and for each of the multiple, different hash values, a respective memory location, of the plurality of memory locations, in the memory; reading, by the computer device, the values stored at the respective memory locations; performing, by the computer device, an operation on the read values, from the respective memory locations, to obtain updated values, the performing including; identifying a value from the read values, updating the value, and replacing each of the read values with the updated value; and using, by the computer device, the updated values to make a prediction regarding particular data. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more devices comprising:
-
one or more processors; and one or more memories including a plurality of instructions that, when executed by the one or more processors, cause the one or more processors to; store, in a plurality of memory locations in a memory, values relating to a feature of a feature set; subject a string, associated with the feature, to multiple, different hash functions to generate multiple, different hash values; identify, for each of the multiple, different hash values, a respective memory location, of the plurality of memory locations, in the memory; read the values stored at the respective memory locations; perform an operation on the read values, from the respective memory locations, to obtain updated values, the one or more processors, when performing the operation, being to; identify a value from the read values, update the value, and replace each of the read values with the updated value; and use the updated values to make a prediction regarding particular data. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium storing instructions, the instructions comprising:
one or more instructions which, when executed by at least one processor, cause the at least one processor to; store, in a plurality of memory locations in a memory, values relating to a feature of a feature set; subject a string, associated with the feature, to multiple, different hash functions to generate multiple, different hash values; identify, for each of the multiple, different hash values, a respective memory location, of the plurality of memory locations, in the memory; read the values stored at the respective memory locations; perform an operation on the read values, from the respective memory locations, to obtain updated values, the one or more instructions to perform the operation including one or more instructions which, when executed by the at least one processor, cause the at least one processor to; identify a value from the read values, update the value, and replace each of the read values with the updated value; and use the updated values to make a prediction regarding particular data. - View Dependent Claims (16, 17, 18, 19, 20)
Specification