Introducing Classificationbox: Easily build your own text/image/data machine learning classifier inside a Docker container

We have just released Classificationbox as a Developer Preview. Classificationbox is a general purpose machine learning classification utility designed and built for scale.

Classificationbox lets you use machine learning to automatically classify various types of data, such as text, images, structured and unstructured data

With a relatively small set of training data, you can build a model that is able to automatically categorise input data into one or more classes.


  • Use any programming language to teach the model and make predictions via the simple APIs
  • Everything exists inside a Docker container, so your data is safe and stays with you
  • Classify any combination of text, images, or structured data
  • Live teaching — no need for long training cycles or GPUs (also called online learning)
  • Deploy anywhere — in their cloud or yours — or in your data center
  • Share the learning across multiple boxes to run at planet-scale

What can Classificationbox do for you?

A classifier is a machine learning model that analyses input data, and based on what it has learned, assigns a category to that data.

This has a wide range of utilities, including but not limited to:

  • Learn about how your company is perceived by grouping tweets into positive and negative
  • Automatically group photos of food into cuisines (Italian, Indian, Chinese, Japanese, etc)
  • Group emails into spam and non-spam categories
  • Build a classifier to detect the language of a piece of text based on previously taught examples

These are just some examples, get in touch if you’d like to understand how Classificationbox might help your business.

How it works

Once you have spun up a new instance of Classificationbox (with one line of code), you have access to a set of simple APIs that developers of every level can use.

New instances of Classificationbox don’t know anything, and it is up to you to teach them with your own data.

Teaching involves providing some examples of the kinds of classification you want to do. For example, if you want to build a classifier that can tell the difference between spam and non-spam emails, you would give it a set of example spam emails, and a set of example emails that are real.

The models are better when they have an equal amount of examples for each class, but unlike some classifiers, Classificationbox lets you continuously add more examples to further teach and enhance the models at runtime.

Once the model has been taught, you can then give it information it has never seen before, and ask it to predict which class it falls into.

This can be done automatically and at unlimited scale — you just add boxes horizontally to cope with demand.

Join the Developer Preview

Head over to the Machine Box website and get yourself an MB_KEY, then use it to spin up a box with this single line of code in the terminal:

docker run -p 8080:8080 -e "MB_KEY=$MB_KEY" machinebox/classificationbox

Go to localhost:8080 and you’ll see that the built-in website provides all the API documentation you need to get started.

Use the Teach API to teach a classifier, and the Predict API to make predictions on new data.

Let us know what you build, by tweeting or emailing us.