Pages

Friday, July 27, 2018

Hot Dog, Not Hot Dog - How to create your own deep learning neural network for image recognition without any programming

The Bot Libre platform is not just a bot platform, but also a platform for artificial intelligence and deep learning. With Bot Libre you can create your own deep learning neural network for image recognition, audio and speech recognition, object detection, games, prediction, data analysis, and more.

You may think that creating a "deep learning neural networks" sounds like a very complex thing to do, but with Bot Libre it is very simple, and requires no programming or data science experience. This article we walk you through the steps to create your own image recognition network.

Step 1 - Find Sample Images

First you need to decide what types of images you want your network to recognize. You can train a network to recognize and classify any type of images, as long as you have some sample images. The more sample images the better, but around 30 is normally enough for a basic network.

For this article, we will train a network to recognize images of "hot dogs". We could train it to recognize many different food types, but for the sake of simplicity we will train the network to classify images as just "hot dog" or "not hot dog".

First you need to find some sample images of hot dogs, just perform a Google image search for "hot dog", and save some of the images by right clicking on them (small images are fine, images will be scaled to 299x299 anyway). You will also need some images for "not hot dog", just find a random set of images for this.

Step 2 - Create Analytic

Next we need to create our analytic on Bot Libre.

  • Click browse analytics on Bot Libre
  • Click on New Analytic
  • Enter a name and category and click "Create"

Step 3 - Configure Analytic

Next we need to configure the analytic.

  • Click on the analytic's "Admin Console" button or menu.
  • Click on "Analytic Network"
  • Under "Analytic Type" select "mobilenet_0.50"
  • It will auto-fill the other settings, click the Save button

The other analytic type settings let you create different types of networks. Mobilenet is the smallest, and faster network for image classification. You could also choose Inception, this will be slower and much larger, but will have slightly better accuracy.

Step 4 - Upload Images

Next we need to upload our sample images.

  • Click on the "Media Repository" button, menu, or link in the analytic's Admin Console
  • Click on add label (green plus), enter "hot dog", click add again and enter "not hot dog"
  • Select the "hot dog" label and click the upload button, select all your hot dog images
  • Select the "not hot dog" label and click the upload button, select all your "not hot dog" images

Step 5 - Train Network

Next we need to train the network.

  • Click on the "Train Network" button, menu, or link in the analytic's Admin Console
  • Click on "Train", this may take a while

Step 6 - Test Network

Now you can test your network.

  • Click on the "Test Network" button from the analytic's main page
  • Upload an image to test
  • It will return you if the image is a "hot dog" or "not hot dog"

Try testing the network with images that you did not train it with. If it gives you the wrong result, then add the image to your train set and train your network again.

Your Done

You can now access your analytic from Bot Libre's website and share it with your friends. You can also access your analytic through the Bot Libre web API from your own website or app. You can download your network as a ".pb" (protocol buffer) file for usage with Tensorflow.

Bot Libre will be adding support for training more network types in the coming months. You can also train your network manually using python and Tensorflow, this is very complicated and requires some development and python experience. We can also develop a deep learning neural network for you through the Bot Libre AI development services, contact sales@botlibre.biz.

No comments:

Post a Comment