Nora Ambroz | February 14, 2019
5 Minutes Read
Machine learning (ML) has been around for decades, but at first, it was nearly as unapproachable for businesses as rocket science. Building artificial intelligence (AI) that could recognize pictures or make predictions about a new product’s success required serious investment. The first neural networks were more mathematical experiments than solutions applicable to real-life problems. For a long time, the lack of available knowledge and powerful hardware needed prevented AI from becoming widely accessible.
But the trends are changing and the Google Machine Learning solutions are playing a great part.
An immense amount of information is being processed constantly while free online courses teach the basics of data science. To launch an ML initiative, you don’t have to start from scratch. There are at least four great competitors who provide Machine Learning as a Service (MLaas) that is simple to utilize.
Google Machine Learning services, Microsoft’s Azure ML, IBM’s Watson, and Amazon Web Services AI are leading the market. MLaaS covers the infrastructural solutions offered by cloud-based platforms and takes them one step further with AI capabilities. Besides processing and storing data, automatic classifications and predictions become possible. Assembling a custom model, then training and deploying it, requires only a small team of data scientists. Using a prebuilt, trained model is even easier and may not require coding skills.
From the leading MLaaS providers this blog post gives an overview of the various options Google Machine Learning services offer.
Google Machine Learning
Google has been one of the pioneers of AI research. The tech giant strengthened its position further in 2014 with the acquisition of DeepMind. The British ML company brought a great concentration of AI talent to Google, allowing them to pursue about a thousand deep learning projects. Most of them are incorporated in Google’s well-known services like Gmail, YouTube, Maps, Translator and – of course – Search. Others are part of MLaaS products and are usable parallel with the infrastructure provided by Google Cloud Platform.
An earlier, highly automated service, was the Prediction API, which made basic classification and regression models deployable through REST API. This solution became deprecated on April 30, 2018, because it lacked popularity and was outpaced by other services. The Cloud Machine Learning Engine along with Cloud AI took its place. They cater mostly to data scientists with their highly customizable options, while a more simple-to-use solution, AutoML, is also around the corner.
Machine Learning Engine
The ML Engine is a powerful set of tools for data scientists and engineers. It utilizes the TensorFlow open-source library and also supports scikit-learn, Keras, and XGBoost. While TensorFlow greatly enhances the ML Engine’s flexibility, it lost some of its predecessor’s ease of use. To make up for it, TensorFlow makes the ML Engine capable of deep learning; it’s also highly customizable and optimized. The software library’s developers, the Google Brain team, aimed to simplify creating ML and numerical computation models.
Mastering the neural network framework may not have been an instant success; the learning curve is dramatic and steep. But since the advanced mathematical and optimization algorithms are ready to use, it’s much easier to implement a customized model. Previous experience with AI comes in handy, but it’s not necessary as this Japanese cucumber farmer’s example shows. Makoto Koike, a former embedded-systems designer, learned to use TensorFlow from tutorials and sample code. Soon he applied his own deep-learning model to sorting cucumbers into price categories based on their size, shape, and distortion.
Along with the rich documentation, TensorFlow Hub also allows some shortcuts to great results. The library offers a wide selection of reusable ML modules and Transfer Learning (TL). The TL process makes the training phase faster and works on a smaller dataset.
But the ML Engine is much more than just TensorFlow. The HyperTune tool simplifies, automates, and speeds up training and lets you manage your models in groups. The platform offers great scalability up to monumental amounts of data, thanks to Google infrastructure’s automated load-balancing.
And finally, one of the ML Engine’s unique selling points is its integration with Google Cloud Dataflow. The interconnection of these two services enables you to include Google Cloud Storage, BigQuery, or other cloud-based storage in your infrastructure. For example, data is readable from these sources and the result is writable with the same simplicity. Neither batches nor streams are an obstacle.
Cloud AI APIs
Besides the high level of customization that the Google Machine Learning Engine offers, there are options prepackaged for use. Cloud AI provides various REST APIs that serve as building blocks for smart applications. The models are implemented, optimized, pretrained, and tested, but when the demand arises, they still offer customization options.
We’ll look at personalizing models with AutoML’s capabilities later in the post. Both the APIs and AutoML allow you to infuse your project with AI without prior ML expertise.
Cloud AI’s blocks are divisible into three categories, each corresponding to human-like abilities. Sight consists of the Cloud Vision API and the Video Intelligence API. Language covers Translations and Natural Language, while Conversation takes care of text and speech conversions and building conversational interfaces. Let’s look at some interesting use cases for single modules and their combinations.
Cloud Vision API
Wouldn’t it be cool if you could point your phone at a jacket you fancy and immediately know its brand and price?
The Cloud Vision API is not only able to classify pictures like cute cats, old ladies, or violent content. It can also recognize facial expressions and detect fear as accurately as it tells apart a banana and a croissant. Besides quality controlling a production line for faulty pieces and checking customer satisfaction, Vision API can read handwritten text.
Try scanning a street sign abroad! Paired with Translation API your application can translate that mysterious text and help you find your way.
Cloud Video Intelligence API
The Cloud Video Intelligence API similarly labels videos and generates searchable metadata. It makes it easier to find the exact moment an accident took place in hundreds of hours of surveillance data.
Entity detection tells you whether a black Cadillac was present in the parking lot without ever looking at the video. Or you could just jump back to the Stan Lee cameo, if you missed it in a Marvel movie.
Cloud Translation API
The Cloud Translation API does exactly what its name says: It detects the language and translates it into another. The most exciting use cases come when the translator cooperates with another API. For example, Speech-To-Text creates subtitles to a video that gets translated to Spanish. Then with Text-To-Speech you can even give sound to the freshly made translation. At the same time, the Natural Language API could add a detailed analysis of the topics mentioned and the speaker’s sentiment.
Although the APIs meet many demands, it is still possible that they don’t fit a more complex need. Without a data engineering team, a TensorFlow-based project is maybe out of reach. In this case, AutoML comes to the rescue.
With AutoML’s services still based on the generic implementations of the prebuilt Google Machine Learning APIs, they also have a graphical user interface (GUI). Through the GUI, you can feed the model training data specific to your industry. The process has no need for any ML knowledge, but the accuracy of the results greatly increases.
AutoML is in beta state right now and extends the Vision, Natural Language, as well as the Translation APIs. During its short life since February 2018, some interesting use cases have already emerged. One of the initial, alpha release participants was the retailer, Urban Outfitters. They used Vision AutoML to refine search options in their online catalog. Visual cues like necklines and fabric patterns usually don’t show up in item descriptions. And the standard Vision API is unable to recognize them. But they still affect customer choices, so it’s a great improvement that they’ve become searchable features with AutoML.
Another service worth mentioning in Google’s AI suite is BigQuery ML, which is targeted at analysts. The beta release enables you to create ML models through standard SQL statements. This eliminates the need for coding and speeds up the progress, since data doesn’t have to be moved. BigQuery ML is available through the web UI, REST API, command-line, and external tools with simple regression and classification options.
These Google Machine Learning services prove that CEO Sundar Pichai is deadly serious when he talks about democratizing AI. With the ML Engine and TensorFlow, Google offers fine-grained solutions to data engineers. The Cloud AI APIs cater to developers and data scientists with prepackaged, easily deployable services. BigQuery ML opens up possibilities to analysts, while AutoML pushes the boundaries out to any user. Soon more and more businesses will benefit from ML as it becomes increasingly available.
5 Good Reasons to Move to a Cloud-based Data Warehouse
3 Minutes Read
Now, let me walk you through the benefits of cloud-based data warehouses, one by one.
Google BigQuery materialized view test drive
3 Minutes Read
I have tested the BigQuery materialized views against the documentation. While most of the functionality and limitations are accurate, there are a few gotchas you need to be aware of.
Part 1: Customer lifetime value estimation via probabilistic modeling
15 Minutes Read
Customer lifetime value (CLV) is the total worth of a customer to a company over the length of their relationship. In practice, this "worth" can be defined as revenue, profit, or any metric of an analyst's choosing.