Many tasks are impossible to solve without machine learning. But let's take a step back for a moment and see how you would classify these images without a machine learning model. So if we were to write an algorithm to classify these images probably a series of if statements, what are some things we might look for? If you thought about color, you're on the right track. So we could look at the color of the pixels in the image. If the majority of the pixels in the image are red, we would output apple as the classification. If the majority of the pixels were orange, we would output orange. This would work really well in this example. But what if the images were varied slightly? What if we had gray scale images? Then we would need to look for a different feature. Maybe the presence of a stem or the texture of the image. So we need to start writing our algorithm again to output accurate classification for these images. What if we got crazy and added a third fruit to the equation? What if we added a mango? You get the idea. Then we'd have to start our classification algorithm all over again. But these images are all pretty similar. They're all circular. They're all fruits. So if we had two images that we wanted to classify that looks nothing alike, the classification task should be pretty simple. So what if we had images of a dog and images of a mop? This should be really easy to classify, right? The dog is living and breathing. The mop has no eyes, nose or mouth. So this should be a relatively easy classification task. But you'll find that this is actually pretty difficult. Here we have four photos of sheep dogs and four photos of mops, and it's kind of hard even for the human eye to distinguish between the two. So you get the idea, we don't want to write specific code to identify every possible type of thing we might see in our images. Instead, we want to write code that will find these rules for us. We might not just have images. We might have other types of unstructured data that we want to classify as well. So what I want to talk about today is two ways the Google Cloud Platform can help you add machine learning to your applications. On the left-hand side, we have tools to help you build custom machine learning models. TensorFlow is an open source library provided by the Google Brain team that lets you build and train your own machine learning models using your own data. If you want to run TensorFlow models on managed Google infrastructure, we have a tool called Cloud Machine Learning Engine to help with that. What I want to focus on today is the right-hand side, and this is what I like to call friendly machine learning. These are a set of pre-trained APIs to give you access to pre-trained machine learning models with a single REST API request. I'm going to be talking about each of the APIs in detail along with some live demos.