Data for a plurality of entities that can be offered a plurality of products can be obtained. The data can include categorical data and numeric data. Based on business constraints, some of all of the data can be selected. The selected data can be converted to another set of numeric data, wherein the categorical values are converted to numeric values. Dimensions of the converted data can be reduced to generate another set of data. Based on this another set of data, clusters of entities can be formed. The products can be grouped by assigning a unique product identifier of each product to a corresponding cluster. This grouping of products can be used by a predictive model to predict a likelihood of an entity to purchase a particular product in a future time period. Related methods, apparatus, systems, techniques and articles are also described.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A non-transitory computer program product storing instructions that, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising: obtaining data for a plurality of entities that are offered a plurality of products, the data comprising a first set of categorical data and a first set of numeric data; converting the data to a first set of data, the first set of data comprising a second set of numeric data; selecting, from variables associated with the first set of data, one or more variables; reducing, based on the one or more variables, dimensions of the first set of data to generate a second set of data; generating, based on the second set of data, clusters associated with corresponding entities; assigning a unique product identifier of each product to a corresponding cluster to generate groupings of products; and predicting, using the groupings of products and for one or more entities, a likelihood of an entity to purchase a particular product in a time period in future. 2. The computer program product of claim 1, wherein the first set of categorical data comprises categorical values for categorical attributes comprising at least one of a gender and a residential status associated with one or more of a plurality of entities. 3. The computer program product of claim 1, wherein the first set of numeric data comprises numeric values for numeric attributes comprising at least one of credit score, risk score and credit line utilization associated with one or more of a plurality of entities. 4. The computer program product of claim 1, wherein the converting of the data to the first set of data comprises: associating a similarity value with the categorical values based on frequency of co-occurrence of categorical values in the data; and assigning numeric values to the categorical values based on the similarity value. 5. The computer program product of claim 1, wherein the converting of the data to the first set of data comprises: normalizing the first set of numeric data; determining, from the first set of categorical data, a base categorical attribute that is associated with a number of categorical values that is more than a number of categorical values associated with other categorical attributes; determining, from the first set of numeric data, a base numeric attribute that is associated with numeric values that have a sum of associated variances that is less than a sum of associated variances of numeric values of other numeric attributes; constructing, using co-occurrence of categorical values associated with categorical attributes and numeric values associated with numeric attributes, a co-occurrence matrix; calculating a similarity value associated with each pair of the categorical values; assigning, to each categorical value associated with the base categorical attribute and to produce at least a first portion of the first set of data, a mean of corresponding numeric values of the base numeric attribute; and assigning, to each categorical value associated with other categorical attributes and to produce at least a second portion of the first set of data, a value characterized by: Σi=1dai*vi, wherein: d is a number of base categorical values in the base categorical attribute, ai is the similarity value associated with the categorical value of the other categorical attributes and ith base categorical value of the base categorical attribute, and vi is the mean of corresponding numeric values of the base numeric attribute. 6. The computer program product of claim 5, wherein the similarity value is characterized by: D XY = m  ( X , Y ) m  ( x ) + m  ( Y ) - m  ( X , Y ) wherein: X is a first categorical value; Y is a second categorical value; DXY is a similarity value characterizing similarity between the first categorical value X and the second categorical value Y; m(X) is a number of occurrences of the first categorical value X; m(Y) is a number of occurrences of the second categorical value Y; and m(X,Y) is a number of simultaneous occurrences of the first categorical value X and the second categorical value Y. 7. The computer program product of claim 5, wherein the second set of numeric data comprises the first portion of the first set of data and the second portion of the first set of data. 8. The computer program product of claim 1, wherein the first set of data excludes categorical data. 9. The computer program product of claim 1, wherein the one or more variables characterize one or more characteristics of an entity. 10. The computer program product of claim 1, wherein the one of more variables characterize at least one of life-stage and lifestyle of an entity. 11. The computer program product of claim 1, wherein the reducing of the dimensions comprises: reducing, based on the one or more variables, duplicate data from the first set of data to generate the second set of data. 12. The computer program product of claim 11, wherein the reducing of the duplicate data from the first set comprises removing some data associated with two or more attributes that characterize common information. 13. The computer program product of claim 12, wherein the two or more attributes comprise income and value of property. 14. The computer program product of claim 1, wherein the generating of the clusters associated with corresponding entities comprises: generating a plurality of points in space such that distance between any two points is more than a threshold; allocating each entity to a corresponding cluster that is closest to the entity; generating a plurality of new points in space such that distance between any two new points is more than the threshold; and re-allocating each entity to a corresponding cluster that is closest to the entity to generate the clusters associated with the corresponding entities. 15. The computer program product of claim 14, wherein: the generating of the plurality of new points and the re-allocating is iteratively performed until location of the plurality of new points in two consecutive iterations is maintained; and the plurality of new points characterize centroids of the entities allocated to each cluster. 16. The computer program product of claim 14, wherein the closeness between an entity and a corresponding cluster is characterized by a difference between a numerical value of an entity and a mean numerical value associated with all entities of a cluster. 17. The computer program product of claim 1, wherein the unique product identifier is a stock keeping unit associated with a product. 18. The computer program product of claim 1, wherein the assigning of the unique product identifier of each product to a corresponding cluster comprises: assigning the unique product identifier of each product to a cluster associated with a highest value of relative transactions ratio that is characterized by mathematically dividing a numerator by a denominator, the numerator being a percentage of transactions of the product associated with unique product identifier by entities associated with a corresponding cluster, the denominator being a percentage of transactions of all products by entities associated with the corresponding cluster. 19. The computer program product of claim 18, wherein the assignment to the cluster associated with the highest value of relative transactions ratio is performed when the highest value is more than a threshold value. 20. The computer program product of claim 1, wherein the likelihood of the entity to purchase the particular product in the time period in future is a probability of the entity to purchase the particular product in the time period in future. 21. A method comprising: reducing dimensions of a first set of data to generate a second set of data; generating, based on the second set of data, clusters associated with a plurality of entities that are offered a plurality of products; assigning a unique product identifier of each product to a corresponding cluster to generate groupings of products. 22. The method of claim 21, further comprising: obtaining demographic data comprising a first set of categorical data and a first set of numeric data; and converting the demographic data to the first set of data, the first set of data comprising a second set of numeric data. 23. The method of claim 22, wherein the demographic data is associated with a plurality of dimensions. 24. The method of claim 22, wherein the first set of data characterizes continuous data. 25. The method of claim 22, wherein the converting comprises: associating a high similarity value with categorical values in the data that occur together for more than a particular number of times; and assigning close numeric values to the categorical values associated with the high similarity value, the close numeric values characterizing values that are within a predetermined value from each other. 26. The method of claim 21, wherein the reducing of the dimensions comprises: reducing, by removing some data associated with two or more attributes that characterize common information, duplicate data from the first set of data. 27. The method of claim 21, wherein the generating of the clusters associated with corresponding entities comprises: generating a plurality of points in space such that distance between any two points is more than a first threshold; allocating each entity to a corresponding cluster that is closest to the entity; generating a plurality of new points in space such that distance between any two new points is more than a second threshold, the plurality of new points being centroids of all entities allocated to each cluster; and re-allocating each entity to a corresponding cluster that is closest to the entity to generate the clusters associated with the corresponding entities, wherein the generating of the plurality of new points and the re-allocating is iteratively performed until location of the plurality of new points in two consecutive iterations is maintained. 28. The method of claim 21, wherein the assigning of the unique product identifier of each product to a corresponding cluster comprises: assigning the unique product identifier of each product to a cluster associated with a highest value of relative transactions ratio that is characterized by mathematically dividing a numerator by a denominator, the numerator being a percentage of transactions of the product associated with unique product identifier by entities associated with a corresponding cluster, the denominator being a percentage of transactions of all products by entities associated with the corresponding cluster, wherein the assignment to the cluster associated with the highest value of relative transactions ratio is performed when the highest value is more than a threshold value. 29. The method of claim 21, further comprising: predicting, using the groupings of products and for a particular entity, probability of occurrence of an event in a time period in future. 30. The method of claim 29, wherein the event characterizes a purchase of a particular product by an entity. 31. A system comprising: at least one programmable processor; and a machine-readable medium storing instructions that, when executed by the at least one processor, cause the at least one programmable processor to perform operations comprising: reducing dimensions of a first set of data to generate a second set of data; generating, based on the second set of data, clusters associated with a plurality of entities that are offered a plurality of products; assigning a unique product identifier of each product to a corresponding cluster to generate groupings of products. 32. The system of claim 31, further performing operations comprising: obtaining demographic data comprising a first set of categorical data and a first set of numeric data; and converting the demographic data to the first set of data, the first set of data comprising a second set of numeric data. 33. The system of claim 31, further performing operations comprising: predicting, using the groupings of products and for one or more entities, a likelihood of an entity to purchase a particular product in a time period in future.