Described herein are systems and methods for correcting a data set and classifying the data set in an integrated manner. A training data set, a training class set, and a test data set are received. A first classifier is generated for the training data set by applying a machine learning technique to the training data set and the training class set, and a first test class set is generated by classifying the elements in the test data set according to the first classifier. For each of multiple iterations, the training data set is transformed, the test data set is transformed, and a second classifier is generated by applying a machine learning technique to the transformed training data set. A second test class set is generated according to the second classifier, and the first test class set is compared to the second test class set.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer-implemented method of classifying a data set into two or more classes executed by a processor, comprising: (a) receiving a training data set and a training class set, the training class set including a set of known labels, each known label identifying a class associated with each element in the training data set; (b) receiving a test data set; (c) generating a first classifier for the training data set by applying a first machine learning technique to the training data set and the training class set, (d) generating a first test class set by classifying the elements in the test data set according to the first classifier, (e) for each of a plurality of iterations: (i) transforming the training data set by shifting the elements in the training data set by an amount corresponding to a center of a set of training class centroids, wherein each training class centroid is representative of a center of a subset of elements in the training data set, (ii) transforming the test data set by shifting the elements in the test data set by an amount corresponding to a center of a set of test class centroids, wherein each test class centroid is representative of a center of a subset of elements in the test data set, (iii) generating a second test class set by classifying the elements in the transformed test data set according to a second classifier, wherein the second classifier is generated by applying a second machine learning technique to the transformed training data set and the training class set; (iv) when the first test class set and the second test class set differ, storing the second class set as the first class set and storing the transformed test data set as the test data set and return to step (i). 2. The method of claim 1, further comprising when the first test class set and the second test class set do not differ, outputting the second class set. 3. The method of claim 1, wherein the elements of the training data set represent gene expression data for a patient with a disease, for a patient resistant to the disease, or for a patient without the disease. 4. The method of claim 1, wherein the training data set is formed from a random subset of samples in an aggregate data set, and the test data set is formed from a remaining subset of samples in the aggregate data set. 5. The method of claim 1, wherein: the test data set includes a test set of known labels, each known label identifying a class associated with each element in the test data set; the first test class set includes a set of predicted labels for the test data set; and the second test class set includes a set of predicted labels for the transformed test data set. 6. The method of claim 1, wherein the shifting at step (i) includes applying a rotation, a shear, a linear transformation, or a non-linear transformation to the training data set to obtain the transformed training data set. 7. The method of claim 1, wherein the shifting at step (ii) includes applying a rotation, a shear, a linear transformation, or a non-linear transformation to the test data set to obtain the transformed test data set. 8. The method of claim 1, further comprising comparing the first test class set to the second test class set for each of the plurality of iterations. 9. The method of claim 1, further comprising generating the second classifier for the transformed training data set by applying a machine learning technique to the transformed training data set and the training class set for each of the plurality of iterations. 10. The method of claim 1, wherein the transforming at step (ii) is performed by applying the same transformation of step (i). 11. The method of claim 1, further comprising providing the second test class set to a display device, a printing device, or a storing device. 12. The method of claim 1, wherein the first test class set and the second test class set differ if any element of the first test class set differs from a corresponding element of the second test class set. 13. The method of claim 1, wherein the second test class set includes a set of predicted labels for the transformed test data set, the method further comprising evaluating the second classifier by computing a performance metric representative of a number of correct predicted labels in the second test class set divided by a total number of predicted labels. 14. A computer program product comprising computer-readable instructions that, when executed in a computerized system comprising at least one processor, cause said at least one processor to carry out a method comprising: (a) receiving a training data set and a training class set, the training class set including a set of known labels, each known label identifying a class associated with each element in the training data set; (b) receiving a test data set; (c) generating a first classifier for the training data set by applying a first machine learning technique to the training data set and the training class set, (d) generating a first test class set by classifying the elements in the test data set according to the first classifier, (e) for each of a plurality of iterations: (i) transforming the training data set by shifting the elements in the training data set by an amount corresponding to a center of a set of training class centroids, wherein each training class centroid is representative of a center of a subset of elements in the training data set, (ii) transforming the test data set by shifting the elements in the test data set by an amount corresponding to a center of a set of test class centroids, wherein each test class centroid is representative of a center of a subset of elements in the test data set, (iii) generating a second test class set by classifying the elements in the transformed test data set according to a second classifier, wherein the second classifier is generated by applying a second machine learning technique to the transformed training data set and the training class set; (iv) when the first test class set and the second test class set differ, storing the second class set as the first class set and storing the transformed test data set as the test data set and return to step (i). 15. A computerized system comprising at least one processor configured with non-transitory computer-readable instructions that, when executed, cause the processor to carry out a method of comprising: (a) receiving a training data set and a training class set, the training class set including a set of known labels, each known label identifying a class associated with each element in the training data set; (b) receiving a test data set; (c) generating a first classifier for the training data set by applying a first machine learning technique to the training data set and the training class set, (d) generating a first test class set by classifying the elements in the test data set according to the first classifier, (e) for each of a plurality of iterations: (i) transforming the training data set by shifting the elements in the training data set by an amount corresponding to a center of a set of training class centroids, wherein each training class centroid is representative of a center of a subset of elements in the training data set, (ii) transforming the test data set by shifting the elements in the test data set by an amount corresponding to a center of a set of test class centroids, wherein each test class centroid is representative of a center of a subset of elements in the test data set, (iii) generating a second test class set by classifying the elements in the transformed test data set according to a second classifier, wherein the second classifier is generated by applying a second machine learning technique to the transformed training data set and the training class set; (iv) when the first test class set and the second test class set differ, storing the second class set as the first class set and storing the transformed test data set as the test data set and return to step (i).