Chapter 8. Deploying Predictive Systems

Building models that can make predictions was hard work. We had to extract the features of our training data from our raw data, vectorize those features, combine those vectors, create an experiment, and then train, test, and evaluate a statistical model. Fun stuff, but a lot of work!

At this point, it is important to understand that most predictions never make it out of the lab. This point is as far as they ever get. Nobody ever sees them on a website or even indirectly feels their output in any way. Most predictions die in the laboratory where they were created, and a big reason is that the people who build them don’t know how to deploy them. Deploying predictions is our topic in this chapter, and for the aforementioned reason it is an essential one for a practicing data scientist to master.

Code examples for this chapter are available at Agile_Data_Code_2/ch08. Clone the repository and follow along!

git clone https://github.com/rjurney/Agile_Data_Code_2.git

Deploying a scikit-learn Application as a Web Service

Deploying a scikit-learn application as a web service is fairly direct. Having created the model, we save it to disk. Then we load the model during the startup of a web application that provides a RESTful API.

Before we do that, we need to define our API and work backward from it to reach the properties of our model’s input. We must map from our API’s input to our model’s input, and it is rarely the case that the API will receive all the ...

Get Agile Data Science 2.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.