-
Notifications
You must be signed in to change notification settings - Fork 16
Introduction
It's a software that provides...
- 2D image and 3D volumetric data representations + file I/O
- 2D/3D data processing algorithms + development environments for new algorithms
- data processing framework to read/write/analyze/modify a large chunk of data with algorithms
- extensive Python interfaces that allow bindings to Python code (your jupyter notebook, caffe, TensorFlow, PyTorch)
Here are example cases larcv might be useful for you.
- Looking for machine learning (ML) projects using open data set.
- Interested in image/volumetric data processing software toolkit.
- Want to apply ML for data analysis but there is no related effort in collaboration.
- Need tools to bridge between non-ML software/data and open-source ML softwares.
- To keep data file size reasonable, I need a better format than mine = plain image format (like png) or zipped csv text file.
Here are example cases larcv is probably not for you.
- You (or your collaboration) already have necessary software tools to apply ML.
- I am happy with the way I have been working without larcv.
This is getting boring, but here are example cases we would love you to join
- You used larcv and have constructive criticism to it (please share!)
In case this could be a helpful guide for you here we introduce two ways to get started with larcv many of users ended up following.
If you want to have a concrete understanding of the software basics, start by following the sections in this wiki pages where we attempt to describe how larcv works in depth. Contact us to join our larcv slack channel. If you need some milestones for this long reading, here's some: FileIO, data products, running batch event loop, larcv visualization tool, larcv_threadio
.
If you prefer top-down learning, follow the quick start in our blog post. This tutorial is a minimal guidance to go over important larcv functionalities and get you ready to train some machine learning algorithms using public data. If you find something you want to learn more in depth, you can come back to a corresponding wiki page. Note, however, that the tutorials do not cover how to run batch event loop which is described in this wiki.
If this is helpful, here are 2 typical workflows most larcv users ended up following.
First, you want to learn larcv to the minimum level you can train an example machine learning algorithms. Second, apply to your project! If you are looking for a project, contact us! If you have a specific machine learning task in your mind, feel free to use our [open data](mailto:contact@deeplearnphysics.org]! If you don't find type of data you need in our list, you can send a request.
A few of us have gone through this path to adopt experiment's software. Here are the steps.
- Convince yourself that you want to do this (=larcv is for you). We recommend you go over tutorials at minimum. Know you can always consult with us.
- Decide what kind of machine learning task you want to attack (maybe this comes before step 0).
- Plan what kind of information you would like to store to train an algorithm for what you decide for step 1.
- Design how you write your code to extract necessary information from your experimental software/data into your larcv file (consult with us if needed).
- Loop over "write code" => "compile" => "run" => "orz" until it works the way you wish.
- Write your machine learning algorithm and code to train with your larcv file.