<p><b>Infuse an extra layer of intelligence into your Go applications with machine learning and AI</b></p> <h4>Key Features</h4> <ul><li>Build simple, maintainable, and easy to deploy machine learning applications with popular Go packages </li> <li>Learn the statistics, algorithms, and techniques to
Machine Learning With Go: Leverage Go's powerful packages to build smart machine learning and predictive applications, 2nd Edition
✍ Scribed by Daniel Whitenack, Janani Selvaraj
- Publisher
- Packt Publishing
- Year
- 2019
- Tongue
- English
- Leaves
- 314
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
Infuse an extra layer of intelligence into your Go applications with machine learning and AI
Key Features
- Build simple, maintainable, and easy to deploy machine learning applications with popular Go packages
- Learn the statistics, algorithms, and techniques to implement machine learning
- Overcome the common challenges faced while deploying and scaling the machine learning workflows
Book Description
This updated edition of the popular Machine Learning With Go shows you how to overcome the common challenges of integrating analysis and machine learning code within an existing engineering organization.
Machine Learning With Go, Second Edition, will begin by helping you gain an understanding of how to gather, organize, and parse real-world data from a variety of sources. The book also provides absolute coverage in developing groundbreaking machine learning pipelines including predictive models, data visualizations, and statistical techniques. Up next, you will learn the thorough utilization of Golang libraries including golearn, gorgonia, gosl, hector, and mat64. You will discover the various TensorFlow capabilities, along with building simple neural networks and integrating them into machine learning models. You will also gain hands-on experience implementing essential machine learning techniques such as regression, classification, and clustering with the relevant Go packages. Furthermore, you will deep dive into the various Go tools that help you build deep neural networks. Lastly, you will become well versed with best practices for machine learning model tuning and optimization.
By the end of the book, you will have a solid machine learning mindset and a powerful Go toolkit of techniques, packages, and example implementations
What you will learn
- Become well versed with data processing, parsing, and cleaning using Go packages
- Learn to gather data from various sources and in various real-world formats
- Perform regression, classification, and image processing with neural networks
- Evaluate and detect anomalies in a time series model
- Understand common deep learning architectures to learn how each model is built
- Learn how to optimize, build, and scale machine learning workflows
- Discover the best practices for machine learning model tuning for successful deployments
Who this book is for
This book is primarily for Go programmers who want to become a machine learning engineer and to build a solid machine learning mindset along with a good hold on Go packages. This is also useful for data analysts, data engineers, machine learning users who want to run their machine learning experiments using the Go ecosystem. Prior understanding of linear algebra is required to benefit from this book
Table of Contents
- Gathering and Organizing Data
- Matrices, Probability, and Statistics
- Evaluating and Validating
- Regression
- Classification
- Clustering
- Time Series and Anomaly Detection
- Neural Networks
- Deep Learning
- Deploying and Distributing Analyses and Models
- Appendix: Algorithms/Techniques Related to Machine Learning
✦ Table of Contents
Cover
Title Page
Copyright and Credits
About Packt
Contributors
Table of Contents
Preface
Sections 1: Analysis in Machine Learning Workflows
Chapter 1: Gathering and Organizing Data
Handling data – Gopher style
Best practices for gathering and organizing data with Go
CSV files
Reading in CSV data from a file
Handling unexpected fields
Handling unexpected data types
Manipulating CSV data with data frames
Web scraping
JSON
Parsing JSON
JSON output
SQL-like databases
Connecting to an SQL database
Querying the database
Modifying the database
Caching
Caching data in memory
Caching data locally on disk
Data versioning
Pachyderm jargon
Deploying or installing Pachyderm
Creating data repositories for data versioning
Putting data into data repositories
Getting data out of versioned data repositories
Summary
References
Chapter 2: Matrices, Probability, and Statistics
Matrices and vectors
Vectors
Vector operations
Matrices
Matrix operations
Statistics
Distributions
Statistical measures
Measures of central tendency
Measures of spread or dispersion
Visualizing distributions
Histograms
Box plots
Bivariate analysis
Probability
Random variables
Probability measures
Independent and conditional probability
Hypothesis testing
Test statistics
Calculating p-values
Summary
References
Chapter 3: Evaluating and Validating
Evaluating
Continuous metrics
Categorical metrics
Individual evaluation metrics for categorical variables
Confusion matrices, AUC, and ROC
Validating
Training and test sets
Holdout set
Cross-validation
Summary
References
Section 2: Machine Learning Techniques
Chapter 4: Regression
Understanding regression model jargon
Linear regression
Overview of linear regression
Linear regression assumptions and pitfalls
Linear regression example
Profiling the data
Choosing our independent variable
Creating our training and test sets
Training our model
Evaluating the trained model
Multiple linear regression
Nonlinear and other types of regression
Summary
References
Chapter 5: Classification
Understanding classification model jargon
Logistic regression
Overview of logistic regression
Logistic regression assumptions and pitfalls
Logistic regression example
Cleaning and profiling data
Creating our training and test sets
Training and testing the logistic regression model
k-nearest neighbors
Overview of kNN
kNN assumptions and pitfalls
kNN example
Decision trees and random forests
Overview of decision trees and random forests
Decision tree and random forest assumptions and pitfalls
Decision tree example
Random forest example
Naive Bayes
Overview of Naive Bayes and its big assumption
Naive Bayes example
Summary
References
Chapter 6: Clustering
Understanding clustering model jargon
Measuring distance or similarity
Evaluating clustering techniques
Internal clustering evaluation
External clustering evaluation
k-means clustering
Overview of k-means clustering
k-means assumptions and pitfalls
k-means clustering example
Profiling the data
Generating clusters with k-means
Evaluating the generated clusters
Other clustering techniques
Summary
References
Chapter 7: Time Series and Anomaly Detection
Representing time series data in Go
Understanding time series jargon
Statistics related to time series
Autocorrelation
Partial autocorrelation
Auto-regressive models for forecasting
Auto-regressive model overview
Auto-regressive model assumptions and pitfalls
Auto-regressive model example
Transforming into a stationary series
Analyzing the ACF and choosing an AR order
Fitting and evaluating an AR(2) model
Auto-regressive moving averages and other time series models
Anomaly detection
Summary
References
Section 3: Advanced Machine Learning, Deployment, and Scaling
Chapter 8: Neural Networks
Understanding neural net jargon
Building a simple neural network
Nodes in the network
Network architecture
Why do we expect this architecture to work?
Training our neural network
Utilizing the simple neural network
Training the neural network on real data
Evaluating the neural network
Summary
References
Chapter 9: Deep Learning
Deep learning techniques and jargon
Deep learning with Go
Using the TensorFlow Go bindings
Install TensorFlow for Go
Retrieving and calling a pretrained TensorFlow model
Object detection using TensorFlow from Go
Using TensorFlow models from GoCV
Installing GoCV
Streaming webcam object detection with GoCV
Summary
References
Chapter 10: Deploying and Distributing Analyses and Models
Running models reliably on remote machines
A brief introduction to Docker and Docker jargon
Dockerizing a machine learning application
Dockerizing the model training and export
Dockerizing model predictions
Testing the Docker images locally
Running the Docker images on remote machines
Building a scalable and reproducible machine learning pipeline
Setting up a Pachyderm and a Kubernetes cluster
Building a Pachyderm machine learning pipeline
Creating and filling the input repositories
Creating and running the processing stages
Updating pipelines and examining provenance
Scaling pipeline stages
Summary
References
Appendix: Algorithms/Techniques Related to Machine Learning
Gradient descent
Entropy, information gain, and related methods
Backpropagation
Other Books You May Enjoy
Index
📜 SIMILAR VOLUMES
Code .<p><b>Infuse an extra layer of intelligence into your Go applications with machine learning and AI</b></p> <h4>Key Features</h4> <ul><li>Build simple, maintainable, and easy to deploy machine learning applications with popular Go packages </li> <li>Learn the statistics, algorithms, and techniq
Learn the skills necessary to design, build, and deploy applications powered by machine learning (ML). Through the course of this hands-on book, you’ll build an example ML-driven application from initial idea to deployed product. Data scientists, software engineers, and product managers—including ex
Learn the skills necessary to design, build, and deploy applications powered by machine learning (ML). Through the course of this hands-on book, you’ll build an example ML-driven application from initial idea to deployed product. Data scientists, software engineers, and product managers—including ex
<p><span>Learn the skills necessary to design, build, and deploy applications powered by machine learning (ML). Through the course of this hands-on book, you’ll build an example ML-driven application from initial idea to deployed product. Data scientists, software engineers, and product managers―inc
Microsoft has revamped its Project Oxford to launch the all new Cognitive Services platform-a set of 30 APIs to add speech, vision, language, and knowledge capabilities to apps. This book will introduce you to 24 of the APIs released as part of Cognitive Services platform and show you how to leverag