* @return The trained method.
*/
public MLMethod crossvalidate(int k, boolean shuffle) {
KFoldCrossvalidation cross = new KFoldCrossvalidation(
this.trainingDataset, k);
cross.process(shuffle);
int foldNumber = 0;
for (DataFold fold : cross.getFolds()) {
foldNumber++;
report.report(k, foldNumber, "Fold #" + foldNumber);