E-Book, Englisch, 362 Seiten
Bhattacharjee Practical Machine Learning with Rust
1. ed
ISBN: 978-1-4842-5121-8
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
Creating Intelligent Applications in Rust
E-Book, Englisch, 362 Seiten
ISBN: 978-1-4842-5121-8
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark
Explore machine learning in Rust and learn about the intricacies of creating machine learning applications. This book begins by covering the important concepts of machine learning such as supervised, unsupervised, and reinforcement learning, and the basics of Rust. Further, you'll dive into the more specific fields of machine learning, such as computer vision and natural language processing, and look at the Rust libraries that help create applications for those domains. We will also look at how to deploy these applications either on site or over the cloud. After reading Practical Machine Learning with Rust, you will have a solid understanding of creating high computation libraries using Rust. Armed with the knowledge of this amazing language, you will be able to create applications that are more performant, memory safe, and less resource heavy. What You Will LearnWrite machine learning algorithms in RustUse Rust libraries for different tasks in machine learningCreate concise Rust packages for your machine learning applicationsImplement NLP and computer vision in RustDeploy your code in the cloud and on bare metal servers Who This Book Is For Machine learning engineers and software engineers interested in building machine learning applications in Rust.
Joydeep Bhattacharjee is a machine learning engineer. He likes creating software tools and processes with a focus on clean code. He is a huge believer in tech and the ability of tech to move the world forward. His expertise includes data exploration, statistical modeling, machine learning algorithms, and data visualization. His is currently working at Nineleaps as a principal engineer.
Autoren/Hrsg.
Weitere Infos & Material
1;Table of Contents;5
2;About the Author;10
3;Acknowledgments;11
4;Introduction;12
5;Chapter 1: Basics of Rust;13
5.1;1.1 Why Rust?;13
5.2;1.2 A Better Reference;14
5.3;1.3 Rust Installation;17
5.4;1.4 Package Manager and Cargo;19
5.5;1.5 Creating New Applications in Rust;19
5.6;1.6 Variables in Rust;21
5.6.1;1.6.1 Mutation and Shadowing;23
5.6.2;1.6.2 Variable Scoping;25
5.7;1.7 Data Types;25
5.8;1.8 Functions;26
5.9;1.9 Conditions;27
5.9.1;1.9.1 If Conditions;27
5.9.2;1.9.2 Pattern Matching;28
5.10;1.10 References and Borrowing;29
5.10.1;1.10.1 Mutable References;32
5.11;1.11 Object-Oriented Programming;34
5.11.1;1.11.1 Structures;34
5.11.2;1.11.2 Traits;35
5.11.3;1.11.3 Methods and impl;36
5.11.4;1.11.4 Enumerations;38
5.12;1.12 Writing Tests;39
5.13;1.13 Summary;40
5.14;1.14 References;41
6;Chapter 2: Supervised Learning;43
6.1;2.1 What Is Machine Learning?;43
6.2;2.2 Dataset Specific Code;44
6.3;2.3 Rusty_Machine Library;53
6.4;2.4 Linear Regression;54
6.5;2.5 Gaussian Process;64
6.6;2.6 Generalized Linear Models;66
6.7;2.7 Evaluation of Regression Models;69
6.7.1;2.7.1 MAE and MSE;69
6.7.2;2.7.2 R-Squared Error;71
6.8;2.8 Classification Algorithms;73
6.8.1;2.8.1 Iris Dataset;74
6.8.2;2.8.2 Logistic Regression;79
6.8.3;2.8.3 Decision Trees;80
6.8.4;2.8.4 Random Forest;82
6.8.5;2.8.5 XGBoost;84
6.8.6;2.8.6 Support Vector Machines;89
6.8.7;2.8.7 K Nearest Neighbors;91
6.8.8;2.8.8 Neural Networks;96
6.8.8.1;2.8.8.1 Torch and tch-rs;98
6.8.9;2.8.9 Model Evaluation;106
6.9;2.9 Conclusion;114
6.10;2.10 Bibliography;114
7;Chapter 3: Unsupervised and Reinforcement Learning;118
7.1;3.1 K-Means Clustering;119
7.2;3.2 Gaussian Mixture Model;123
7.3;3.3 Density-Based Spatial Clustering of Applications with Noise (DBSCAN);130
7.4;3.4 Principal Component Analysis;132
7.5;3.5 Testing an Unsupervised Model;134
7.6;3.6 Reinforcement Learning;138
7.7;3.7 Conclusion;148
7.8;3.8 Bibliography;148
8;Chapter 4: Working with Data;151
8.1;4.1 JSON;151
8.2;4.2 XML;159
8.3;4.3 Scraping;164
8.4;4.4 SQL;168
8.5;4.5 NoSQL;176
8.6;4.6 Data on s3;182
8.7;4.7 Data Transformations;188
8.8;4.8 Working with Matrices;193
8.9;4.9 Conclusion;196
8.10;4.10 Bibliography;196
9;Chapter 5: Natural Language Processing;197
9.1;5.1 Sentence Classification;198
9.2;5.2 Named Entity Recognition;211
9.3;5.3 Chatbots and Natural Language Understanding (NLU);223
9.3.1;5.3.1 Building an Inference Engine;229
9.4;5.4 Conclusion;237
10;Chapter 6: Computer Vision;238
10.1;6.1 Image Classification;238
10.1.1;6.1.1 Convolutional Neural Networks (CNN);239
10.1.2;6.1.2 Rust and Torch;241
10.1.3;6.1.3 Torch Dataset;241
10.1.4;6.1.4 CNN Model;249
10.1.5;6.1.5 Model Building and Debugging;255
10.1.6;6.1.6 Pretrained Models;258
10.2;6.2 Transfer Learning;263
10.2.1;6.2.1 Training;265
10.2.2;6.2.2 Neural Style Transfer;266
10.3;6.3 Tensorflow and Face Detection;273
10.4;6.4 Conclusion;284
10.5;6.5 Bibliography;285
11;Chapter 7: Machine Learning Domains;286
11.1;7.1 Statistical Analysis;286
11.2;7.2 Writing High Performance Code;299
11.3;7.3 Recommender Systems;303
11.3.1;7.3.1 Command Line;305
11.3.2;7.3.2 Downloading Data;308
11.3.3;7.3.3 Data;309
11.3.4;7.3.4 Model Building;311
11.3.5;7.3.5 Model Prediction;316
11.4;7.4 Conclusion;321
11.5;7.5 Bibliography;322
12;Chapter 8: Using Rust Applications;323
12.1;8.1 Rust Plug-n-Play;323
12.1.1;8.1.1 Python;324
12.1.2;8.1.2 Java;335
12.2;8.2 Rust in the Cloud;344
12.3;8.3 Conclusion;354
12.4;8.4 Bibliography;354
13;Index;355




