Come and learn, share, grow, meet new people, and visit old friends at our monthly meeting! We'll be talking about the Python programming language and anything that intersects it, and the cool stuff you can do with it.
This month, Jeff Klukas will be presenting "Machine Learning in Production with Scikit-learn".
We'll be discussing Simple's implementation of a Python microservice for classifying incoming chat messages by subject category, enabling our customer relations agents to develop specializations and onboard more quickly.
We'll walk through a bit of the code for our model and what the interface looks like in scikit-learn for training a model, persisting it to disk, and requesting a prediction.
Once we understand the shape of interacting with scikit-learn, we'll take a look at wrapping it in a Flask app and the concerns about understanding how that application is behaving in production. This includes performance metrics, logging results to a database, and degrading gracefully when things go wrong.
We'll then switch gears to talk about all the work that needs to happen outside of the application itself. We use a separate framework to execute scheduled jobs, periodically retraining the model on new records in our data warehouse or testing out a new iteration of the model code. We evaluate the performance of the models based on historical data, and then update the model running in production when we find a better-performing configuration.
Finally, we'll discuss how other companies approach the problem of serving predictive models in production. Varying concerns around performance needs, security constraints, and technical expertise can vastly change the shape of the solution.
Afterwards we'll be heading to Brazenhead on 5th.