𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Machine Learning with Go Quick Start Guide: Hands-on techniques for building supervised and unsupervised machine learning workflows

✍ Scribed by Michael Bironneau, Toby Coleman


Publisher
Packt Publishing
Year
2019
Tongue
English
Leaves
159
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


This quick start guide will bring the readers to a basic level of understanding when it comes to the Machine Learning (ML) development lifecycle, will introduce Go ML libraries and then will exemplify common ML methods such as Classification, Regression, and Clustering

Key Features

  • Your handy guide to building machine learning workflows in Go for real-world scenarios
  • Build predictive models using the popular supervised and unsupervised machine learning techniques
  • Learn all about deployment strategies and take your ML application from prototype to production ready

Book Description

Machine learning is an essential part of today's data-driven world and is extensively used across industries, including financial forecasting, robotics, and web technology. This book will teach you how to efficiently develop machine learning applications in Go.

The book starts with an introduction to machine learning and its development process, explaining the types of problems that it aims to solve and the solutions it offers. It then covers setting up a frictionless Go development environment, including running Go interactively with Jupyter notebooks. Finally, common data processing techniques are introduced.

The book then teaches the reader about supervised and unsupervised learning techniques through worked examples that include the implementation of evaluation metrics. These worked examples make use of the prominent open-source libraries GoML and Gonum.

The book also teaches readers how to load a pre-trained model and use it to make predictions. It then moves on to the operational side of running machine learning applications: deployment, Continuous Integration, and helpful advice for effective logging and monitoring.

At the end of the book, readers will learn how to set up a machine learning project for success, formulating realistic success criteria and accurately translating business requirements into technical ones.

What you will learn

  • Understand the types of problem that machine learning solves, and the various approaches
  • Import, pre-process, and explore data with Go to make it ready for machine learning algorithms
  • Visualize data with gonum/plot and Gophernotes
  • Diagnose common machine learning problems, such as overfitting and underfitting
  • Implement supervised and unsupervised learning algorithms using Go libraries
  • Build a simple web service around a model and use it to make predictions

Who this book is for

This book is for developers and data scientists with at least beginner-level knowledge of Go, and a vague idea of what types of problem Machine Learning aims to tackle. No advanced knowledge of Go (and no theoretical understanding of the math that underpins Machine Learning) is required.

Table of Contents

  1. Introducing Machine Leaning with Go
  2. Setting Up the Development Environment
  3. Supervised Learning
  4. Unsupervised Learning
  5. Using Pretrained Models
  6. Deploying Machine Learning Applications
  7. Conclusion - Successful ML Projects

✦ Table of Contents


Cover
Title Page
Copyright and Credits
About Packt
Contributors
Table of Contents
Preface
Chapter 1: Introducing Machine Learning with Go
What is ML?
Types of ML algorithms
Supervised learning problems
Unsupervised learning problems
Why write ML applications in Go?
The advantages of Go
Go's mature ecosystem
Transfer knowledge and models created in other languages
ML development life cycle
Defining problem and objectives
Acquiring and exploring data
Selecting the algorithm
Preparing data
Training
Validating/testing
Integrating and deploying
Re-validating
Summary
Further readings
Chapter 2: Setting Up the Development Environment
Installing Go
Linux, macOS, and FreeBSD
Windows
Running Go interactively with gophernotes
Example – theΒ most common phrases in positive and negative reviews
Initializing the example directory and downloading the dataset
Loading the dataset files
Parsing contents into a Struct
Loading the data into a Gota dataframe
Finding the most common phrases
Example – exploring body mass index data with gonum/plot
Installing gonum andΒ gonum/plot
Loading the data
Understanding the distributions of the data series
Example – preprocessing data with Gota
Loading the data into Gota
Removing and renaming columns
Converting a column into a different type
Filtering out unwanted data
Normalizing the Height, Weight, and Age columns
Sampling to obtain training/validation subsets
Encoding data with categorical variables
Summary
Further readings
Chapter 3: Supervised Learning
Classification
A simple model – the logistic classifier
Measuring performance
Precision and recall
ROC curves
Multi-class models
A non-linear model – the support vector machine
Overfitting and underfitting
Deep learning
Neural networks
A simple deep learning model architecture
Neural network training
Regression
Linear regression
Random forest regression
Other regression models
Summary
Further readings
Chapter 4: Unsupervised Learning
Clustering
Principal component analysis
Summary
Further readings
Chapter 5: Using Pretrained Models
How to restore a saved GoML model
Deciding when to adopt a polyglot approach
Example – invoking a Python model using os/exec
Example – invoking a Python model using HTTP
Example – deep learning using the TensorFlow API for Go
Installing TensorFlow
Import the pretrained TensorFlow model
CreatingΒ inputs to the TensorFlow model
Summary
Further readings
Chapter 6: Deploying Machine Learning Applications
The continuous delivery feedback loop
Developing
Testing
Deployment
Dependencies
Model persistence
Monitoring
Structured logging
Capturing metrics
Feedback
Deployment models for ML applications
Infrastructure-as-a-service
Amazon Web Services
Microsoft Azure
Google Cloud
Platform-as-a-Service
Amazon Web Services
Amazon Sagemaker
Amazon AI Services
Microsoft Azure
Azure ML Studio
Azure Cognitive Services
Google Cloud
AI Platform
AI Building Blocks
Summary
Further readings
Chapter 7: Conclusion - Successful ML Projects
When to use ML
Typical stages in a ML project
Business and data understanding
Data preparation
Modelling and evaluation
Deployment
When to combine ML with traditional code
Summary
Further readings
Other Books You May Enjoy
Index


πŸ“œ SIMILAR VOLUMES


Machine Learning with Go Quick Start Gui
✍ Michael Bironneau πŸ“‚ Library πŸ“… 2019 πŸ› Packt Publishing 🌐 English

Machine Learning with Go Quick Start Guide: Hands-on techniques for building supervised and unsupervised machine learning workflows This quick start guide will bring the readers to a basic level of understanding when it comes to the Machine Learning (ML) development lifecycle, will introduce Go M

Machine Learning Foundations: Supervised
✍ Taeho Jo πŸ“‚ Library πŸ“… 2021 πŸ› Springer 🌐 English

<p>This book provides conceptual understanding of machine learning algorithms though supervised, unsupervised, and advanced learning techniques. The book consists of four parts: foundation, supervised learning, unsupervised learning, and advanced learning. The first part provides the fundamental mat

Hands-On Machine Learning with scikit-le
✍ Tarek Amr πŸ“‚ Library πŸ“… 2020 πŸ› Packt Publishing Ltd 🌐 English

Integrate scikit-learn with various tools such as NumPy, pandas, imbalanced-learn, and scikit-surprise and use it to solve real-world machine learning problems Key Features Delve into machine learning with this comprehensive guide to scikit-learn and scientific Python Master the art of data-driven p

Hands-On Machine Learning with scikit-le
✍ Tarek Amr πŸ“‚ Library πŸ“… 2020 πŸ› Packt Publishing Ltd 🌐 English

Integrate scikit-learn with various tools such as NumPy, pandas, imbalanced-learn, and scikit-surprise and use it to solve real-world machine learning problems Key Features Delve into machine learning with this comprehensive guide to scikit-learn and scientific Python Master the art of data-driven p

Statistics for Machine Learning: Techniq
✍ Pratap Dangeti πŸ“‚ Library πŸ“… 2017 πŸ› Packt Publishing 🌐 English

<h4>Key Features</h4><ul><li>Learn about the statistics behind powerful predictive models with p-value, ANOVA, and F- statistics.</li><li>Implement statistical computations programmatically for supervised and unsupervised learning through K-means clustering.</li><li>Master the statistical aspect of

Statistics for Machine Learning: Techniq
✍ Pratap Dangeti πŸ“‚ Library πŸ“… 2017 πŸ› Packt Publishing 🌐 English

<h4>Key Features</h4><ul><li>Learn about the statistics behind powerful predictive models with p-value, ANOVA, and F- statistics.</li><li>Implement statistical computations programmatically for supervised and unsupervised learning through K-means clustering.</li><li>Master the statistical aspect of