1. A computer-implemented method of generating a compatibility score for a grouping of objects based on correlations between attributes of the objects, comprising: for each of a plurality of pairs of objects where each pair includes a first object and a second object, receiving a first feature vector of attributes associated with the first object, a second feature vector of attributes associated with the second object, and a label indicative of a correlation between the first and second objects; generating multiple datasets by compiling, for each of a plurality of pairs of objects, the first feature vector of attributes, the second feature vector of attributes, and the label into a data structure, wherein each dataset corresponds to one of the plurality of pairs of objects and is a data row of the data structure; shuffling the multiple datasets within the data structure into a shuffled order; loading the shuffled multiple datasets into a model training system for training a model that generates the compatibility score for a grouping of objects based on correlations between attributes of the objects; receiving, by the model training system, the multiple datasets including a first dataset and a second dataset, the first and second datasets received by the model training system in the shuffled order; processing each of the first and second datasets in multiple stages to update weight values of a weight matrix, a selected stage of the multiple stages having a set of data independent processing instances that are capable of parallel execution, thereby enabling the selected stage to be multi-threaded in processing the first and second datasets, where the first and second datasets are processed in the shuffled order received by the model training system to reduce a likelihood of collision when updating parameters of the model; and generating the compatibility score for the grouping of the first and second objects based on the weight matrix.
1. A computer-implemented method of generating a compatibility score for a grouping of objects based on correlations between attributes of the objects, comprising: for each of a plurality of pairs of objects where each pair includes a first object and a second object, receiving a first feature vector of attributes associated with the first object, a second feature vector of attributes associated with the second object, and a label indicative of a correlation between the first and second objects; generating multiple datasets by compiling, for each of a plurality of pairs of objects, the first feature vector of attributes, the second feature vector of attributes, and the label into a data structure, wherein each dataset corresponds to one of the plurality of pairs of objects and is a data row of the data structure; shuffling the multiple datasets within the data structure into a shuffled order; loading the shuffled multiple datasets into a model training system for training a model that generates the compatibility score for a grouping of objects based on correlations between attributes of the objects; receiving, by the model training system, the multiple datasets including a first dataset and a second dataset, the first and second datasets received by the model training system in the shuffled order; processing each of the first and second datasets in multiple stages to update weight values of a weight matrix, a selected stage of the multiple stages having a set of data independent processing instances that are capable of parallel execution, thereby enabling the selected stage to be multi-threaded in processing the first and second datasets, where the first and second datasets are processed in the shuffled order received by the model training system to reduce a likelihood of collision when updating parameters of the model; and generating the compatibility score for the grouping of the first and second objects based on the weight matrix. 8. The computer-implemented method of claim 1 , wherein the label is a binary value.