📜 ⬆️ ⬇️

How to become a super-mega-pro machine learning in 15 minutes

image

Recently on Habré skipped a post vfdev-5 about DIGITS . Let's take a closer look at what it is and what it is eaten with. If in a nutshell. This is an environment that allows you to solve 30-50% of the problems of machine learning on the knee within 5 minutes. Without programming skills. Well, if you have a base, of course. And more or less adequate cards from NVIDIA.

Where to get


Official page . Then it all sways from here . Same instructions. Ubuntu 14 and Ubuntu 16 are officially supported. There is a deb package for Ubuntu 14 and a docker for it. Under the 16th - assembly instructions . Collect first need caffe, then DIGITS. Sometime for a couple of hours.

What is in three words


DIGITS is a visual Front-end wrapper for well-known frameworks (caffe and Torch 7). Allows out of the box to train / to train well-known / their nets. There are a large number of cases prepared.
')
According to the form factor, this is a web service that runs in the terminal and is then available at the address “ localhost : 5000 /” on the local machine. looks like this:


For some reason casts Jupiter. Plus, it looks like TensorBoard . Unfortunately, I did not work with him much to compare.

How to work with this miracle


On the main there are only two big buttons. We need them. First you need to poke in the "New Dataset":


By default, DIGITS can work with datasets sharpened under:

  1. Classification - learns to recognize the belonging of N classes of images
  2. Find Objects - learns to search for a rectangle of an object in an image. Tomorrow I will publish a more detailed article about this piece.
  3. Segmentation - pixel segmentation of the image. There is a tutorial , but I did not understand.
  4. Processing - Do not quite understand what it is. There are no tutorials either.

Consider the classification as the simplest of options.



At the preparation stage, datasets digits clamps the base into a convenient format for them to quickly work with it, without straining hard millions of requests. In principle, everything is clear:


The result of creating a database will be dynamically displayed . And also the final database statistics will be displayed:


Creating a database is complete! You can go to the training. Go to the main menu and instead of "New Dataset" poke "New Model". Again choose Classification. Here, the parameters a little more (1,2). Be sure to choose:


There are a lot of more advanced settings:


You can see what the current mesh looks like:


Run


Your computer hangs dead. But you see beautiful online graphs of ongoing training, assessment of time, current result, etc.:



After completing the training, a menu appears that allows you to save the final model, to recognize one / several images. Build statistics.



You can send in production;)

What else


DIGITS still has a good mesh for detecting objects (descriptions: 1 , 2 ). Tomorrow I will post a separate short article on her account. There, unfortunately, not everything is as good as you want.




It is possible to configure the correct pixel segmentation . But I now have customized solutions - this is not very interesting. And so, a whole example of working with DICOM images:

image

The solution is positioned as suitable for medical data segmentation tasks.

findings


The level of knowledge necessary to work with neural networks is slowly falling below the baseboard. Surely there are other analogues, or will appear in the near future. The same TensorBoard .

This does not mean that the resulting solution is a quality one. But it can work quite well in some situations. Of course, good tuning, method compilation, manual network configuration can significantly improve performance. But to show the prototype, DIGITS may be enough.

For me, it turned out to be a very suitable wrapper. But, something his nvidia is not particularly PR and does not support much.

Source: https://habr.com/ru/post/311832/


All Articles