was announced last week at the 2018 Google IO conference. ML Kit is an SDK for machine learning on Android and iOS. It comes out of the box with 5 trained machines (Image labeling, Text recognition, Face detection, Barcode scanning, Landmark detection) with a sixth one coming soon (Smart Reply.) Here are five things that this means for enterprise machine learning.
Nothing new, but easier than ever before All of these machine learning applications have been available before but have never been delivered in such an easy package. For example, text recognition used to require lots of integration and some very complex opensource libraries. Google is solving some of those problems with this new SDK, and that really opens up ML to a wider audience.
A great place to start ML Kit supports both iOS and Android, which makes it a really good place to start with your machine learning. It also has useful out of box features and allows you to train your own model. The other thing that makes ML kit more accessible is that it provides a nice easy workflow to redeploy your machine learning model to get it out and in use on devices. This solves a lot of the pre-deployment issues or redeployment problems you see with Core ML and other libraries where that redeployment is left to the developer to implement.
Easier to use, means more restricted ML Kit is tied heavily into the Firebase mobile and web application development platform. This is limiting and because firebase may not meet your enterprise requirements. In theory, you could just use a portion of firebase to deploy your machine learning, but you would still have to bring in a bunch of more cumbersome frameworks for that.
Further defining the machine learning standards With ML Kit, Google is further cementing the machine learning standard as TensorFlow. TensorFlow is an environment to build and train models. It's place in ML Kit combined with its endorsement from Amazon (one of Google's competitors) has undoubtedly made it the de facto standard. If you're going to spend time on machine learning and how to train machines you should probably do it on TensorFlow. Right now, it's the owner of both mind share and market share in the machine learning world.
**Don't forget it's still probabilistic ** ML Kit is an easy way into machine learning, but you still need to remember that all machine learning is going to output is probabilities. In the case of image labeling: it's can't give you exact answers to what's in an image, but it can give you the probability. The question is, "How do you deal with those thresholds?" This sort of thing very much depends on use case, and that's where bringing in some expertise might be a big help because even though ML kit makes things easier to implement you still need strong data and other supporting services to get a satisfactory experience.