public void load(int batchSize, int numExamples, int numLabels, PathLabelGenerator labelGenerator, double splitTrainTest, Random rng) { if (!imageFilesExist()) { if (!fullDir.exists() || fullDir.listFiles() == null || fullDir.listFiles().length == 0) { fullDir.mkdir(); if (useSubset) { log.info("Downloading {} subset...", localDir); downloadAndUntar(lfwSubsetData, fullDir); } else { log.info("Downloading {}...", localDir); downloadAndUntar(lfwData, fullDir); downloadAndUntar(lfwLabel, fullDir); } } } FileSplit fileSplit = new FileSplit(fullDir, ALLOWED_FORMATS, rng); BalancedPathFilter pathFilter = new BalancedPathFilter(rng, ALLOWED_FORMATS, labelGenerator, numExamples, numLabels, 0, batchSize, null); inputSplit = fileSplit.sample(pathFilter, numExamples * splitTrainTest, numExamples * (1 - splitTrainTest)); }