This is material for any Go developer, data scientist, analyst, or statistician who wishes to learn how to build robust machine learning (ML) applications in Go. This class provides an intensive, comprehensive and idiomatic view on training, utilizing, evaluating, and deploying machine learning models using Go. We believe this class is perfect for anyone wishing to build data-driven applications that produce valuable insights, have reproducible behavior, and can be deployed within modern architectures.
- Slides from the class
- Instructors
- Daniel Whitenack - author of Machine Learning with Go, website/blog, online courses, twitter, github
- Diana Ortega - twitter
- Prerequisties/getting started:
- You will need to ssh into a cloud instance. Remind yourself of how to do that and install a client if needed:
- On a Mac or Linux machine, you should be able to ssh from a terminal (see these Mac instructions and Linux instructions).
- On a Windows machine, you can either install and use an ssh client (I recommend PuTTY) or use the WSL.
- You will also need to work a bit at the command line. If you are new to the command line or need a refresher, look through this quick tutorial.
- You will need to ssh into a cloud instance. Remind yourself of how to do that and install a client if needed:
- If you need further help productionizing Go ML/AI workflows, want to bring this class to your company, or just have ML/AI related questions, Ardan Labs is here to help! Reach out to the instructor using the links above or via the Ardan Labs website.
Note: This material has been designed to be taught in a classroom environment. The code is well commented but missing some of the contextual concepts and ideas that will be covered in class.
This material introduces the basics of machine learning and the workflow that should be used when developing and utilizing machine learning models. Once you are done with this material, you will be exposed to the most commonly used machine learning techniques and you will understand the significance of data profiling, training, evaluation, validation, and inference.
This material introduces some Go packages and frameworks that will help us implement ML in Go. Once you are done with this material, you will know where to look to find ML-related packages for Go, have some hands-on experience working with these packages, and understand the utility of Go for ML.
This material walks you through a lab in which you will implement a full ML workflow with Go, from data ingress to training to evaluation to inference. Once you are done with this material, you know how to implement and deploy the stages of the ML workflow in Go (for at least one type of ML model and data), and you will be able to transfer this workflow scaffolding to other problems.
Building a complete Go-based ML workflow
All material is licensed under the Apache License Version 2.0, January 2004.