Workshop documents are available on GitHub
Applied machine learning workflows should maintain a high level of integrity in production and be able to fit into the modern infrastructure that is being utilized across industry and research. As it turns out, much of this modern infrastructure is being driven by the open source Go programming language, especially as related to distributed systems, and an increasing number of individuals and companies (Dell/EMC, The New York Times, and more) are writing their mission critical ML systems in Go.
This workshop will help attendees understand how Go can help them be productive and innovative in machine learning, and we will learn how to leverage Go to build robust and valuable applications. To this end, the workshop will clearly introduce the technical aspects of building predictive models in Go, but it will also help attendees understand how and why Go-based machine learning workflows are being applied in real-world scenarios.
Roadmap:
(1) Introduction to Go - Here, we will introduce the Go programming language and environment, but we will do so in the context of machine learning. We will emphasize how the Go programming language itself along with the philosophy of so-called "gophers" can help overcome common challenges in applied machine learning.
(2) Data Gathering/Organization in Go - Next, we will explore how to parse, organize, and represent data sets in Go. This is be important as we provide data to Go-based models and manipulate data into training/test sets.
(3) Building an ML Model in Go - Once we have our data ready, we will jump into the building of a model in Go. Specifically, we will utilize linear/multiple regression to predict diabetes disease progression.
(4) Deploying/Utilizing the ML Model - Go's strength's really come into play when we start thinking about productionizing our ML model. As such, we will illustrate how to easily deploy and scale a Go-based ML workflow.
Participants will gain a basic understanding of Go and it's strengths for machine learning. They will also build and deploy their own Go-based ML workflows that will serve as a pattern for future work.
Beginner level
- a laptop with Go installed
- ability to ssh into a remote machine