Practical Machine Learning with Rust (eBook)
XV, 354 Seiten
Apress (Verlag)
978-1-4842-5121-8 (ISBN)
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 Learn
- Write machine learning algorithms in Rust
- Use Rust libraries for different tasks in machine learning
- Create concise Rust packages for your machine learning applications
- Implement NLP and computer vision in Rust
- Deploy 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.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.
Table of Contents 5
About the Author 10
Acknowledgments 11
Introduction 12
Chapter 1: Basics of Rust 13
1.1 Why Rust? 13
1.2 A Better Reference 14
1.3 Rust Installation 17
1.4 Package Manager and Cargo 19
1.5 Creating New Applications in Rust 19
1.6 Variables in Rust 21
1.6.1 Mutation and Shadowing 23
1.6.2 Variable Scoping 25
1.7 Data Types 25
1.8 Functions 26
1.9 Conditions 27
1.9.1 If Conditions 27
1.9.2 Pattern Matching 28
1.10 References and Borrowing 29
1.10.1 Mutable References 32
1.11 Object-Oriented Programming 34
1.11.1 Structures 34
1.11.2 Traits 35
1.11.3 Methods and impl 36
1.11.4 Enumerations 38
1.12 Writing Tests 39
1.13 Summary 40
1.14 References 41
Chapter 2: Supervised Learning 43
2.1 What Is Machine Learning? 43
2.2 Dataset Specific Code 44
2.3 Rusty_Machine Library 53
2.4 Linear Regression 54
2.5 Gaussian Process 64
2.6 Generalized Linear Models 66
2.7 Evaluation of Regression Models 69
2.7.1 MAE and MSE 69
2.7.2 R-Squared Error 71
2.8 Classification Algorithms 73
2.8.1 Iris Dataset 74
2.8.2 Logistic Regression 79
2.8.3 Decision Trees 80
2.8.4 Random Forest 82
2.8.5 XGBoost 84
2.8.6 Support Vector Machines 89
2.8.7 K Nearest Neighbors 91
2.8.8 Neural Networks 96
2.8.8.1 Torch and tch-rs 98
2.8.9 Model Evaluation 106
2.9 Conclusion 114
2.10 Bibliography 114
Chapter 3: Unsupervised and Reinforcement Learning 118
3.1 K-Means Clustering 119
3.2 Gaussian Mixture Model 123
3.3 Density-Based Spatial Clustering of Applications with Noise (DBSCAN) 130
3.4 Principal Component Analysis 132
3.5 Testing an Unsupervised Model 134
3.6 Reinforcement Learning 138
3.7 Conclusion 148
3.8 Bibliography 148
Chapter 4: Working with Data 151
4.1 JSON 151
4.2 XML 159
4.3 Scraping 164
4.4 SQL 168
4.5 NoSQL 176
4.6 Data on s3 182
4.7 Data Transformations 188
4.8 Working with Matrices 193
4.9 Conclusion 196
4.10 Bibliography 196
Chapter 5: Natural Language Processing 197
5.1 Sentence Classification 198
5.2 Named Entity Recognition 211
5.3 Chatbots and Natural Language Understanding (NLU) 223
5.3.1 Building an Inference Engine 229
5.4 Conclusion 237
Chapter 6: Computer Vision 238
6.1 Image Classification 238
6.1.1 Convolutional Neural Networks (CNN) 239
6.1.2 Rust and Torch 241
6.1.3 Torch Dataset 241
6.1.4 CNN Model 249
6.1.5 Model Building and Debugging 255
6.1.6 Pretrained Models 258
6.2 Transfer Learning 263
6.2.1 Training 265
6.2.2 Neural Style Transfer 266
6.3 Tensorflow and Face Detection 273
6.4 Conclusion 284
6.5 Bibliography 285
Chapter 7: Machine Learning Domains 286
7.1 Statistical Analysis 286
7.2 Writing High Performance Code 299
7.3 Recommender Systems 303
7.3.1 Command Line 305
7.3.2 Downloading Data 308
7.3.3 Data 309
7.3.4 Model Building 311
7.3.5 Model Prediction 316
7.4 Conclusion 321
7.5 Bibliography 322
Chapter 8: Using Rust Applications 323
8.1 Rust Plug-n-Play 323
8.1.1 Python 324
8.1.2 Java 335
8.2 Rust in the Cloud 344
8.3 Conclusion 354
8.4 Bibliography 354
Index 355
Erscheint lt. Verlag | 10.12.2019 |
---|---|
Zusatzinfo | XV, 354 p. 28 illus. |
Sprache | englisch |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Informatik ► Theorie / Studium ► Compilerbau | |
Informatik ► Theorie / Studium ► Künstliche Intelligenz / Robotik | |
Schlagworte | algorithms • Artificial Intelligence • audio processing • computer vision • GPU programming • machine learning • Native Code • Natural Language Processing • Rust |
ISBN-10 | 1-4842-5121-0 / 1484251210 |
ISBN-13 | 978-1-4842-5121-8 / 9781484251218 |
Haben Sie eine Frage zum Produkt? |
![PDF](/img/icon_pdf_big.jpg)
Größe: 3,9 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich