Search in sources :

Example 6 with LabeledObject

use of com.simiacryptus.util.test.LabeledObject in project MindsEye by SimiaCryptus.

the class ImageCategoryDatasetDemo method run.

/**
 * Test.
 *
 * @param log the log
 */
public void run(@Nonnull NotebookOutput log) {
    log.h3("Loading Data");
    List<LabeledObject<SupplierWeakCache<BufferedImage>>> testData = getTrainingStream(log).sorted(getShuffleComparator()).collect(Collectors.toList());
    log.h3("Categories");
    log.code(() -> {
        testData.stream().collect(Collectors.groupingBy(x -> x.label, Collectors.counting())).forEach((k, v) -> ImageCategoryDatasetDemo.logger.info(String.format("%s -> %d", k, v)));
    });
    log.h3("Sample Data");
    log.p(log.code(() -> {
        return testData.stream().map(labeledObj -> {
            @Nullable BufferedImage img = labeledObj.data.get();
            img = TestUtil.resize(img, 224, true);
            return log.image(img, labeledObj.label);
        }).limit(20).reduce((a, b) -> a + b).get();
    }, 256 * 1024));
}
Also used : LabeledObject(com.simiacryptus.util.test.LabeledObject) BufferedImage(java.awt.image.BufferedImage) Nullable(javax.annotation.Nullable)

Aggregations

LabeledObject (com.simiacryptus.util.test.LabeledObject)6 Nonnull (javax.annotation.Nonnull)5 Tensor (com.simiacryptus.mindseye.lang.Tensor)4 LinkedHashMap (java.util.LinkedHashMap)4 Nullable (javax.annotation.Nullable)4 DAGNetwork (com.simiacryptus.mindseye.network.DAGNetwork)3 TableOutput (com.simiacryptus.util.TableOutput)3 NotebookOutput (com.simiacryptus.util.io.NotebookOutput)3 IOException (java.io.IOException)3 ArrayList (java.util.ArrayList)3 List (java.util.List)3 ArrayTrainable (com.simiacryptus.mindseye.eval.ArrayTrainable)2 SampledArrayTrainable (com.simiacryptus.mindseye.eval.SampledArrayTrainable)2 Layer (com.simiacryptus.mindseye.lang.Layer)2 PipelineNetwork (com.simiacryptus.mindseye.network.PipelineNetwork)2 TrainingMonitor (com.simiacryptus.mindseye.opt.TrainingMonitor)2 ValidatingTrainer (com.simiacryptus.mindseye.opt.ValidatingTrainer)2 StepRecord (com.simiacryptus.mindseye.test.StepRecord)2 TestUtil (com.simiacryptus.mindseye.test.TestUtil)2 Format (guru.nidi.graphviz.engine.Format)2