There are a lot of really great Machine-Learning-as-a-Service (MLaaS) providers out there; Azure, Google, Rekognition, etc. But for those of us who can’t send our data to the cloud, who need to train and tune models locally, and who need more control and ownership over our machine learning models, we have to look to a MLaaS that runs on-premise (on prem).
Live Machine Learning
Traditionally, the problem with running machine learning on premise is that neural networks require a lot of GPU acceleration to run, especially when you’re doing training. The benefit to the cloud is that you only pay for what you use, so in a world where training happens all at once, it makes sense to outsource that cost to a cloud vendor.
However, machine learning doesn’t benefit from being trained one time, all up front. The best and most accurate applications of machine learning from come doing online learning, which really just means doing training on-the-fly with your own data.
For example, if I have a closed circuit security system and I want to run facial recognition on the video, I have to not only run it in the same closed circuit system (meaning on prem), but I also have to be able to teach it new people to recognize as time goes on. Perhaps I’m adding new employees who were hired after I put them system into place. I should also have a very simple method of correcting recognition errors by simply showing it a new photo of the person’s face with the correct label.
It isn’t feasible to go the traditional machine learning as a service approach where I would have to upload the new face images to some cloud service, run training again, and then redeploy the model.
This is why we build Machine Box. Each model is wrapped into a Dockercontainer that can be deployed and scaled anywhere. You can truly have machine learning on premise, without any internet connection. No knowledge of machine learning engineering is required, just integrate with a simple API.
Furthermore, you can teach the models live or on-the-fly, without halting anything or having to retrain or redeploy a model.
And the best part? You don’t need big heavy servers to run it. Each box is incredibly lightweight, requires no GPU, and can truly scale functionality without scaling cost.
Prevent Vendor Lock-in
The future of machine learning is in highly tunable models that can train on your own data, but can also be deployed anywhere. Today you may want to deploy it on some servers in your facility, but tomorrow you might want to run it in AWS. Your models, your training, your machine learning models go with you, wherever your stack lives.