Everything you need to know to train great machine learning models with Lobe.
Machine learning is software that learns to perform a task from a collection of examples rather than through a person explicitly defining rules and formulas. This learning software is called a model. Teaching a model through examples is called training.
Learn more in this beginner crash course.
This version of Lobe learns to look at images using image classification - categorizing an image into a single label overall. We are working to expand to more types of problems and data in future versions.
Image classification is categorizing an image into a single label to represent its content. Apps using image classification could:
Lobe is not doing any reasoning or understanding of the content in your images. Image classification learns to find any patterns from your images - things like textures, colors, and shapes - that can be used to separate your labels.
See Label to help Lobe learn the correct patterns.
A model is a piece of code. You can export your model into a variety of industry-standard formats to run on Mac and Windows, the web, or mobile and edge devices. You can also export and use your model in Power Platform. See our GitHub for sample projects and other tools for working with Lobe. We are also working on a collection of apps and integrations to help run your model without any code.
See more in Export
Lobe is free and runs entirely on your computer.
No machine learning knowledge is necessary. Lobe follows best practices while automatically building and training a model for you.
Yes, all of your images and models stay private on your computer. Lobe runs and trains machine learning models entirely on your own device. Your project images and models are never uploaded to the cloud or visible to us.
If you opt-in to app analytics, learn more about what is collected.
Labeling is assigning categories to your images to create examples hat teach Lobe. These examples are commonly known as a dataset. From this dataset, Lobe will learn to automatically predict a label for a given image.
Import and label your images in Lobe.
Import an existing dataset.
You can create new labels or edit existing ones by using the text box in the bottom corner of each image.
Note
Lobe can only learn the patterns that exist in the images you provide as examples. Collect images from the same source you expect to use with your exported model.
Try to capture all the variations that naturally occur by collecting images in different conditions. Try different backgrounds, lighting, orientations, or zoom. This helps Lobe learn what parts of the image are useful for making predictions and what is noise.
While training your model, Lobe crops the center square of your images.
Training is how your model learns to predict the correct labels from your examples. You can think of your examples as a collection of flashcards. During training, your model will continually look through the flashcards and try to find similar patterns that help it guess the right answers.
Read moremachine learning basics
Read more aboutlabeling your examples
Lobe automatically starts training when your examples meet the minimum requirements. To start training, you need:
Lobe will also follow best practices to continue training when you make changes to your examples. If you make large changes or add/remove labels, Lobe will reset training and start training a new model.
After automatic training has completed, you can manually optimize your model to train for longer for better real-world performance (File > Optimize Model).
Training time is quite variable and depends on how hard it is to distinguish between the labels in your examples and how many examples you have. It can take anywhere from minutes to hours, and sometimes days for very large problems.
You can hover over the training progress to see a time estimate. This training time estimate is updated every few seconds based on your progress and computer’s current processing speed. You may see it fluctuate if you are performing other tasks on your computer as available CPU and memory change.
Your results show you which images your model is predicting correctly and incorrectly. Correct predictions have green labels and incorrect predictions have red labels. The width of the label bar represents how confident the model was in that prediction.
Hovering over a predicted label will show the true label you gave that image. The more correct the predictions, the better the model is performing.
You can view and sort your images in different ways to check:
Select your individual labels in the sidebar to see results specific to that label. Lobe will show you which other labels are commonly confused with this one.
Try to spot what similarities exist between the images that confuse the model and the images in the true label. For example, you may notice the same background color across the confused images and the images in your label. If you notice these patterns, try to collect varying images that look like the confused image to better teach Lobe what patterns to ignore. In this example, collect more images in your selected label with varying background colors.
To see where your model is most confused, look at the most confident incorrect predictions and the least confident correct predictions.
Collect more variations of images that have similar patterns to these two cases to help your model improve.
Use images from your computer or use the webcam as a video feed to test your model on new images live. Try to actively trick your model and see patterns where it is getting images incorrect. Help improve you model by giving feedback on its predictions.
To give your model feedback, you can edit the prediction text box directly and add the image and label as an example. Alternatively, click the correct or incorrect buttons on the image to add it as an example. Lobe will automatically train with these new examples to continually improve.
Currently, you can only view a single image at a time or use your webcam as a video feed.
Many factors can cause your model to not perform well when playing with new images. Check out Improving for tips on what to look for and how to improve your model.
Your model is a collection of files that other programs can load to run predictions. These files store both the structure of your model and the weights that are a result of training.
You can directly upload your model to Power Platform to use in Power Apps or Power Automate. You can also use the model files locally in your own app or in most major cloud platforms to create an API. Lobe also hosts your model as a local API to help kickstart your app development.
Lobe provides a few workflows for using models: no-code apps on Microsoft’s Power Platform, calling a local API, adapting starter projects, or working with model files directly.
If you want to quickly build an app or automation flow without needing to write code, export your model to AI Builder in the Power Platform for use in Power Apps or Power Automate flows. You can connect your model in your app or flow to other external services, including many Microsoft integrations, for easily creating complex end-to-end apps for you or your organization.
We are continually expanding the ways you can use your model. Current recommendations:
Export your model to Power Platform for use in no-code app development with Power Apps and Power Automate, and to connect with many other Microsoft or external services. Use the Speed model from File > Project Settings if you need fast inference speed or if want to use solutions with Application Lifecycle Management (ALM).
Your examples are your model’s source of truth about the world. Here are some best practices for building successful projects:
Compare the images in Use with the images in your examples:
Lobe will always predict one of your labels even if your image does not contain any related content. If you expect your model to see these types of images, create a ‘None’ label and add variations of these images as examples. You can use this ‘None’ label as a placeholder when waiting for relevant predictions.
Follow announcements on our website and social media:
Watch our intro tour for a tutorial.
Global
Training is a very computation-heavy process. Lobe will use a lot of memory and CPU bandwidth to train as quickly as possible. This generally means your computer will have less CPU and memory available for other apps to use.