Analyzing Network Output - Part 1, Training and Saving

Posted on Thu 12 April 2018 in Tutorial by Corey Adams
Tagged with MNIST, training, saving, minibatching, batch norm

I train a very simple and basic mnist classification network with a lot of overkill: I use minibatching, batch normalization, and save the network weights to disk. This tutorial can be done on a CPU. In Part 2, I restore the model, run on the validation set, and analyze the results.


Continue reading

Analyzing Network Output - Part 2, Restoring and Analyzing

Posted on Thu 12 April 2018 in Tutorial by Corey Adams
Tagged with MNIST, retoring, analysis, minibatching, batch norm

See Part 1 first! There, I trained an mnist classifier. Here, I restore the trained network, run the network on the validation script, and do some analysis on the output. This is meant as a template for new users to see "how do I actually use a trained network?" Lots of this information exists elsewhere too, I've just tried to consolidate the basics.


Continue reading

ThreadProcessor: speed

Posted on Tue 06 March 2018 in larcv by Kazuhiro Terao
Tagged with larcv, thread processor

Here's a report for a naive data rate profiling of ThreadProcessor, larcv's threaded data reader we often use for network training. Measured on my macbook pro early 2013 model (old!) but reproduced similar numbers on dell xps15 (9560).


Continue reading

Tutorials on Colaboratory

Posted on Fri 02 March 2018 in tutorial by Kazuhiro Terao
Tagged with python tutorial, DL tutorial, colaboratory, tensorflow

List of tutorials covering basics of tensorflow, slim, image classification and semantic segmentation using MNIST images. All notebooks can be run on free Google colaboratory with GPU. No need to own your own GPU machine!


Continue reading

PyTorch/LArCV Classification Example with Data Set (v0.1.0)

Posted on Tue 09 January 2018 in tutorial by Taritree
Tagged with resnet, pytorch, classification, example

An example of training a classification network on the 5-particle LArCV training data using pytorch.


Continue reading

Training Semantic-Segmentation Data Set (v0.1.0)

Posted on Fri 05 January 2018 in semantic segmentation by Kazuhiro Terao
Tagged with public data, semantic segmentation, u-resnet

A demonstration to train U-ResNet (convolutional neural network for semantic segmentation) for track/shower separation using a (practice) public data sample (v0.1.0). I show the network's learning curve as well as visualization of how the network's performance improved during the training on a specific track/shower sample image. This notebook can also serve as a generic example of configuring larcv IO to train a semantic segmentation network.


Continue reading

Browsing Semantic-Segmentation Data Set (v0.1.0)

Posted on Mon 01 January 2018 in public data by Kazuhiro Terao
Tagged with public data, analysis example

Browse through the file contents of the first semantic-segmentation data release (v0.1.0). I go over an introduction to semantic-segmentation image analysis task, sample generation configurations, and further cover information that can be used for training algorithms for object detection and even instance-wise semantic segmentation. I also show some physics of the included physics events.


Continue reading

Browsing Classification Data Set (v0.1.0)

Posted on Fri 29 December 2017 in public data by Kazuhiro Terao
Tagged with public data, analysis example

Browse through the file contents of the first classification data release (v0.1.0). I go over sample generation configurations, dump some images, and analyze particles' kinematic distributions. I cover an important aspect of image filtering that was a part of sample generation.


Continue reading

How to Implement Minibatching in Tensorflow

Posted on Fri 22 December 2017 in Minibatch by Ji Won Park
Tagged with MNIST, minibatch, tensorflow

A demonstration of minibatch implementation in Tensorflow, comparing training with and without minibatches with the MNIST dataset as an example


Continue reading

Generative Adversarial Networks: The Basics

Posted on Tue 19 December 2017 in Generative Adversarial Network by Corey Adams
Tagged with MNIST, GAN, generative, adversarial

An introduction to generative adversarial networks, covering the bare basics of how to build and train a GAN on mnist data.


Continue reading